32x: preliminary PWM implementation. 32x opts in menu
authornotaz <notasas@gmail.com>
Tue, 22 Sep 2009 19:38:49 +0000 (19:38 +0000)
committernotaz <notasas@gmail.com>
Tue, 22 Sep 2009 19:38:49 +0000 (19:38 +0000)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@790 be3aeb3a-fb24-0410-a615-afba39da0efa

common/menu.c
common/menu.h
gp2x/Makefile
gp2x/emu.c
linux/Makefile

index 4393ed5..fa0480b 100644 (file)
@@ -1424,6 +1424,21 @@ static int menu_loop_cd_options(menu_id id, int keys)
        return 0;\r
 }\r
 \r
+// ------------ 32X options menu ------------\r
+\r
+static menu_entry e_menu_32x_options[] =\r
+{\r
+       mee_onoff("32X enabled",          MA_32XOPT_ENABLE_32X,   PicoOpt, POPT_EN_32X),\r
+       mee_onoff("PWM sound",            MA_32XOPT_PWM,          PicoOpt, POPT_EN_PWM),\r
+};\r
+\r
+static int menu_loop_32x_options(menu_id id, int keys)\r
+{\r
+       static int sel = 0;\r
+       me_loop(e_menu_32x_options, &sel, NULL);\r
+       return 0;\r
+}\r
+\r
 // ------------ adv options menu ------------\r
 \r
 static menu_entry e_menu_adv_options[] =\r
@@ -1672,6 +1687,7 @@ static menu_entry e_menu_options[] =
        mee_range     (cpu_clk_name,               MA_OPT_CPU_CLOCKS,    currentConfig.CPUclock, 20, 900),\r
        mee_handler   ("[Display options]",        menu_loop_gfx_options),\r
        mee_handler   ("[Sega/Mega CD options]",   menu_loop_cd_options),\r
+       mee_handler   ("[32X options]",            menu_loop_32x_options),\r
        mee_handler   ("[Advanced options]",       menu_loop_adv_options),\r
        mee_handler_mkname_id(MA_OPT_SAVECFG, mh_saveloadcfg, mgn_savecfg),\r
        mee_handler_id("Save cfg for current game only", MA_OPT_SAVECFG_GAME, mh_saveloadcfg),\r
@@ -2079,6 +2095,7 @@ static menu_entry *e_menu_table[] =
        e_menu_gfx_options,\r
        e_menu_adv_options,\r
        e_menu_cd_options,\r
+       e_menu_32x_options,\r
        e_menu_keyconfig,\r
        e_menu_hidden,\r
 };\r
index d6397e4..d3e49b2 100644 (file)
@@ -85,6 +85,8 @@ typedef enum
        MA_CDOPT_SCALEROT_CHIP,
        MA_CDOPT_BETTER_SYNC,
        MA_CDOPT_DONE,
+       MA_32XOPT_ENABLE_32X,
+       MA_32XOPT_PWM,
        MA_CTRL_PLAYER1,
        MA_CTRL_PLAYER2,
        MA_CTRL_EMU,
index 329da36..fedadf3 100644 (file)
@@ -73,7 +73,7 @@ OBJS += pico/cd/pico.o pico/cd/memory.o pico/cd/sek.o pico/cd/LC89510.o \
                pico/cd/area.o pico/cd/misc.o pico/cd/pcm.o pico/cd/buffering.o\r
 endif\r
 # Pico - 32X\r
-OBJS += pico/32x/32x.o pico/32x/memory.o pico/32x/draw.o\r
+OBJS += pico/32x/32x.o pico/32x/memory.o pico/32x/draw.o pico/32x/pwm.o\r
 # Pico - Pico\r
 OBJS += pico/pico/pico.o pico/pico/memory.o pico/pico/xpcm.o\r
 # Pico - carthw\r
index 757bea6..49f7149 100644 (file)
@@ -78,7 +78,9 @@ void pemu_prep_defconfig(void)
 \r
        memset(&defaultConfig, 0, sizeof(defaultConfig));\r
        defaultConfig.EmuOpt    = 0x9d | EOPT_RAM_TIMINGS|EOPT_CONFIRM_SAVE|EOPT_EN_CD_LEDS;\r
-       defaultConfig.s_PicoOpt = 0x0f | POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_SVP_DRC|POPT_ACC_SPRITES;\r
+       defaultConfig.s_PicoOpt = POPT_EN_STEREO|POPT_EN_FM|POPT_EN_PSG|POPT_EN_Z80 |\r
+                                 POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_SVP_DRC|POPT_ACC_SPRITES |\r
+                                 POPT_EN_32X|POPT_EN_PWM;\r
        defaultConfig.s_PsndRate = 44100;\r
        defaultConfig.s_PicoRegion = 0; // auto\r
        defaultConfig.s_PicoAutoRgnOrder = 0x184; // US, EU, JP\r
index 1fecdd7..8d83aaf 100644 (file)
@@ -40,7 +40,7 @@ OBJS += pico/cd/pico.o pico/cd/memory.o pico/cd/sek.o pico/cd/LC89510.o \
        pico/cd/cd_sys.o pico/cd/cd_file.o pico/cd/cue.o pico/cd/gfx_cd.o \
        pico/cd/area.o pico/cd/misc.o pico/cd/pcm.o pico/cd/buffering.o
 # Pico - 32X
-OBJS += pico/32x/32x.o pico/32x/memory.o pico/32x/draw.o
+OBJS += pico/32x/32x.o pico/32x/memory.o pico/32x/draw.o pico/32x/pwm.o
 # Pico - Pico
 OBJS += pico/pico/pico.o pico/pico/memory.o pico/pico/xpcm.o
 # Pico - sound