mirror of
https://github.com/RaySollium99/picodrive.git
synced 2025-09-05 15:27:46 -04:00
adding ym2413
squashed commits: YM2413追加中 一通り実装したけどポートへの書き込み方が不明でまだ音が出ない 細かい修正(未テスト) resetで初期化されるのをなんとかしたい sound 初期化と終了を追加してみた SN76496を参考にYM2413のアップデート方法を変更してみた stereoフラグをアップデートサイズに変更 処理順番を整理したら音が出た stateセーブに対応してみた addition: Support for the Japanese Mark-III extended FM sound source unit
This commit is contained in:
parent
7980d47767
commit
a2f24bfa7b
17 changed files with 221 additions and 56 deletions
|
@ -124,6 +124,7 @@ endif
|
|||
# sound
|
||||
SRCS_COMMON += $(R)pico/sound/sound.c
|
||||
SRCS_COMMON += $(R)pico/sound/sn76496.c $(R)pico/sound/ym2612.c
|
||||
SRCS_COMMON += $(R)pico/sound/emu2413/emu2413.c
|
||||
ifneq "$(ARCH)$(asm_mix)" "arm1"
|
||||
SRCS_COMMON += $(R)pico/sound/mix.c
|
||||
endif
|
||||
|
|
|
@ -501,6 +501,7 @@ static menu_entry e_menu_adv_options[] =
|
|||
mee_onoff ("Emulate YM2612 (FM)", MA_OPT2_ENABLE_YM2612, PicoIn.opt, POPT_EN_FM),
|
||||
mee_onoff ("Disable YM2612 SSG-EG", MA_OPT2_DISABLE_YM_SSG,PicoIn.opt, POPT_DIS_FM_SSGEG),
|
||||
mee_onoff ("Emulate SN76496 (PSG)", MA_OPT2_ENABLE_SN76496,PicoIn.opt, POPT_EN_PSG),
|
||||
mee_onoff ("Emulate YM2413 (FM)", MA_OPT2_ENABLE_YM2413 ,PicoIn.opt, POPT_EN_YM2413),
|
||||
mee_onoff ("gzip savestates", MA_OPT2_GZIP_STATES, currentConfig.EmuOpt, EOPT_GZIP_SAVES),
|
||||
mee_onoff ("Don't save last used ROM", MA_OPT2_NO_LAST_ROM, currentConfig.EmuOpt, EOPT_NO_AUTOSVCFG),
|
||||
mee_onoff ("Disable idle loop patching",MA_OPT2_NO_IDLE_LOOPS,PicoIn.opt, POPT_DIS_IDLE_DET),
|
||||
|
|
|
@ -50,6 +50,7 @@ typedef enum
|
|||
MA_OPT2_ENABLE_YM2612,
|
||||
MA_OPT2_DISABLE_YM_SSG,
|
||||
MA_OPT2_ENABLE_SN76496,
|
||||
MA_OPT2_ENABLE_YM2413,
|
||||
MA_OPT2_GZIP_STATES,
|
||||
MA_OPT2_NO_LAST_ROM,
|
||||
MA_OPT2_RAMTIMINGS, /* gp2x */
|
||||
|
|
|
@ -64,6 +64,7 @@ OBJS += pico/sound/sound.o
|
|||
endif
|
||||
OBJS += pico/sound/mix_asm.o
|
||||
OBJS += pico/sound/sn76496.o pico/sound/ym2612.o
|
||||
OBJS += pico/sound/emu2413/emu2413.o
|
||||
# zlib
|
||||
OBJS += zlib/gzio.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o \
|
||||
zlib/deflate.o zlib/crc32.o zlib/adler32.o zlib/zutil.o zlib/compress.o
|
||||
|
|
|
@ -931,6 +931,7 @@ menu_entry opt2_entries[] =
|
|||
{ "Emulate Z80", MB_ONOFF, MA_OPT2_ENABLE_Z80, &PicoIn.opt, 0x00004, 0, 0, 1, 1 },
|
||||
{ "Emulate YM2612 (FM)", MB_ONOFF, MA_OPT2_ENABLE_YM2612, &PicoIn.opt, 0x00001, 0, 0, 1, 1 },
|
||||
{ "Emulate SN76496 (PSG)", MB_ONOFF, MA_OPT2_ENABLE_SN76496,&PicoIn.opt, 0x00002, 0, 0, 1, 1 },
|
||||
{ "Emulate YM2413 (FM)", MB_ONOFF, MA_OPT2_ENABLE_YM2413, &PicoIn.opt, 0x00020, 0, 0, 1, 1 },
|
||||
{ "Double buffering", MB_ONOFF, MA_OPT2_DBLBUFF, ¤tConfig.EmuOpt, 0x8000, 0, 0, 1, 1 },
|
||||
{ "Wait for V-sync (slow)", MB_ONOFF, MA_OPT2_VSYNC, ¤tConfig.EmuOpt, 0x2000, 0, 0, 1, 1 },
|
||||
{ "gzip savestates", MB_ONOFF, MA_OPT2_GZIP_STATES, ¤tConfig.EmuOpt, 0x0008, 0, 0, 1, 1 },
|
||||
|
|
|
@ -1366,7 +1366,7 @@ void retro_init(void)
|
|||
sceBlock = getVMBlock();
|
||||
#endif
|
||||
|
||||
PicoIn.opt = POPT_EN_STEREO|POPT_EN_FM|POPT_EN_PSG|POPT_EN_Z80
|
||||
PicoIn.opt = POPT_EN_STEREO|POPT_EN_FM|POPT_EN_PSG|POPT_EN_Z80|POPT_EN_YM2413
|
||||
| POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_MCD_GFX
|
||||
| POPT_EN_32X|POPT_EN_PWM
|
||||
| POPT_ACC_SPRITES|POPT_DIS_32C_BORDER;
|
||||
|
|
|
@ -1119,6 +1119,7 @@ menu_entry opt2_entries[] =
|
|||
{ "Emulate Z80", MB_ONOFF, MA_OPT2_ENABLE_Z80, &PicoIn.opt, 0x00004, 0, 0, 1, 1 },
|
||||
{ "Emulate YM2612 (FM)", MB_ONOFF, MA_OPT2_ENABLE_YM2612, &PicoIn.opt, 0x00001, 0, 0, 1, 1 },
|
||||
{ "Emulate SN76496 (PSG)", MB_ONOFF, MA_OPT2_ENABLE_SN76496, &PicoIn.opt, 0x00002, 0, 0, 1, 1 },
|
||||
{ "Emulate YM2413 (FM)", MB_ONOFF, MA_OPT2_ENABLE_YM2413, &PicoIn.opt, 0x00020, 0, 0, 1, 1 },
|
||||
{ "gzip savestates", MB_ONOFF, MA_OPT2_GZIP_STATES, ¤tConfig.EmuOpt, 0x00008, 0, 0, 1, 1 },
|
||||
{ "Don't save last used ROM", MB_ONOFF, MA_OPT2_NO_LAST_ROM, ¤tConfig.EmuOpt, 0x00020, 0, 0, 1, 1 },
|
||||
{ "Status line in main menu", MB_ONOFF, MA_OPT2_STATUS_LINE, ¤tConfig.EmuOpt, 0x20000, 0, 0, 1, 1 },
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue