mirror of
https://github.com/RaySollium99/picodrive.git
synced 2025-09-05 15:27:46 -04:00
renderers (interlace and stuff)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive@267 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
parent
f3d1de29da
commit
a8869ad1e8
5 changed files with 58 additions and 27 deletions
|
@ -991,6 +991,7 @@ menu_entry opt2_entries[] =
|
|||
{ "Emulate Z80", MB_ONOFF, MA_OPT2_ENABLE_Z80, ¤tConfig.PicoOpt,0x0004, 0, 0, 1 },
|
||||
{ "Emulate YM2612 (FM)", MB_ONOFF, MA_OPT2_ENABLE_YM2612, ¤tConfig.PicoOpt,0x0001, 0, 0, 1 },
|
||||
{ "Emulate SN76496 (PSG)", MB_ONOFF, MA_OPT2_ENABLE_SN76496,¤tConfig.PicoOpt,0x0002, 0, 0, 1 },
|
||||
{ "Wait for V-sync (slow)", MB_ONOFF, MA_OPT2_VSYNC, ¤tConfig.EmuOpt, 0x2000, 0, 0, 1 },
|
||||
{ "gzip savestates", MB_ONOFF, MA_OPT2_GZIP_STATES, ¤tConfig.EmuOpt, 0x0008, 0, 0, 1 },
|
||||
{ "Don't save last used ROM", MB_ONOFF, MA_OPT2_NO_LAST_ROM, ¤tConfig.EmuOpt, 0x0020, 0, 0, 1 },
|
||||
{ "done", MB_NONE, MA_OPT2_DONE, NULL, 0, 0, 0, 1 },
|
||||
|
@ -1056,16 +1057,17 @@ static void amenu_loop_options(void)
|
|||
menu_entry opt_entries[] =
|
||||
{
|
||||
{ NULL, MB_NONE, MA_OPT_RENDERER, NULL, 0, 0, 0, 1 },
|
||||
{ "Scale low res mode", MB_ONOFF, MA_OPT_SCALING, ¤tConfig.scaling, 0x001, 0, 3, 1 },
|
||||
{ "Accurate timing (slower)", MB_ONOFF, MA_OPT_ACC_TIMING, ¤tConfig.PicoOpt, 0x040, 0, 0, 1 },
|
||||
{ "Accurate sprites (slower)", MB_ONOFF, MA_OPT_ACC_SPRITES, ¤tConfig.PicoOpt, 0x080, 0, 0, 1 },
|
||||
{ "Show FPS", MB_ONOFF, MA_OPT_SHOW_FPS, ¤tConfig.EmuOpt, 0x002, 0, 0, 1 },
|
||||
{ "Interlaced rend. (faster)", MB_ONOFF, MA_OPT_INTERLACED, ¤tConfig.EmuOpt, 0x4000, 0, 0, 1 },
|
||||
{ "Scale low res mode", MB_ONOFF, MA_OPT_SCALING, ¤tConfig.scaling, 0x0001, 0, 3, 1 },
|
||||
{ "Accurate timing (slower)", MB_ONOFF, MA_OPT_ACC_TIMING, ¤tConfig.PicoOpt, 0x0040, 0, 0, 1 },
|
||||
{ "Accurate sprites (slower)", MB_ONOFF, MA_OPT_ACC_SPRITES, ¤tConfig.PicoOpt, 0x0080, 0, 0, 1 },
|
||||
{ "Show FPS", MB_ONOFF, MA_OPT_SHOW_FPS, ¤tConfig.EmuOpt, 0x0002, 0, 0, 1 },
|
||||
{ NULL, MB_RANGE, MA_OPT_FRAMESKIP, ¤tConfig.Frameskip, 0, -1, 16, 1 },
|
||||
{ "Enable sound", MB_ONOFF, MA_OPT_ENABLE_SOUND, ¤tConfig.EmuOpt, 0x004, 0, 0, 1 },
|
||||
{ "Enable sound", MB_ONOFF, MA_OPT_ENABLE_SOUND, ¤tConfig.EmuOpt, 0x0004, 0, 0, 1 },
|
||||
{ NULL, MB_NONE, MA_OPT_SOUND_QUALITY, NULL, 0, 0, 0, 1 },
|
||||
{ "6 button pad", MB_ONOFF, MA_OPT_6BUTTON_PAD, ¤tConfig.PicoOpt, 0x020, 0, 0, 1 },
|
||||
{ "6 button pad", MB_ONOFF, MA_OPT_6BUTTON_PAD, ¤tConfig.PicoOpt, 0x0020, 0, 0, 1 },
|
||||
{ NULL, MB_NONE, MA_OPT_REGION, NULL, 0, 0, 0, 1 },
|
||||
{ "Use SRAM/BRAM savestates", MB_ONOFF, MA_OPT_SRAM_STATES, ¤tConfig.EmuOpt, 0x001, 0, 0, 1 },
|
||||
{ "Use SRAM/BRAM savestates", MB_ONOFF, MA_OPT_SRAM_STATES, ¤tConfig.EmuOpt, 0x0001, 0, 0, 1 },
|
||||
{ NULL, MB_NONE, MA_OPT_CONFIRM_STATES,NULL, 0, 0, 0, 1 },
|
||||
{ "Save slot", MB_RANGE, MA_OPT_SAVE_SLOT, &state_slot, 0, 0, 9, 1 },
|
||||
{ "[Sega/Mega CD options]", MB_NONE, MA_OPT_SCD_OPTS, NULL, 0, 0, 0, 1 },
|
||||
|
@ -1243,18 +1245,20 @@ static int menu_loop_options(void)
|
|||
switch (selected_id) {
|
||||
case MA_OPT_RENDERER:
|
||||
if (inp & BTN_LEFT) {
|
||||
if ( currentConfig.PicoOpt&0x10) currentConfig.PicoOpt&= ~0x10;
|
||||
else if (!(currentConfig.EmuOpt &0x80))currentConfig.EmuOpt |= 0x80;
|
||||
else if ( currentConfig.EmuOpt &0x80) break;
|
||||
if ((currentConfig.PicoOpt&0x10) || !(currentConfig.EmuOpt &0x80)) {
|
||||
currentConfig.PicoOpt&= ~0x10;
|
||||
currentConfig.EmuOpt |= 0x80;
|
||||
}
|
||||
} else {
|
||||
if ( currentConfig.PicoOpt&0x10) break;
|
||||
else if (!(currentConfig.EmuOpt &0x80))currentConfig.PicoOpt|= 0x10;
|
||||
else if ( currentConfig.EmuOpt &0x80) currentConfig.EmuOpt &= ~0x80;
|
||||
if (!(currentConfig.PicoOpt&0x10) || (currentConfig.EmuOpt &0x80)) {
|
||||
currentConfig.PicoOpt|= 0x10;
|
||||
currentConfig.EmuOpt &= ~0x80;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case MA_OPT_SOUND_QUALITY:
|
||||
if ((inp & BTN_RIGHT) && currentConfig.PsndRate == 44100 && !(currentConfig.PicoOpt&0x08)) {
|
||||
currentConfig.PsndRate = 11025; currentConfig.PicoOpt|= 0x08;
|
||||
currentConfig.PsndRate = 11025; currentConfig.PicoOpt|= 0x08;
|
||||
} else if ((inp & BTN_LEFT) && currentConfig.PsndRate == 11025 && (currentConfig.PicoOpt&0x08)) {
|
||||
currentConfig.PsndRate = 44100; currentConfig.PicoOpt&=~0x08;
|
||||
} else currentConfig.PsndRate = sndrate_prevnext(currentConfig.PsndRate, inp & BTN_RIGHT);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue