Cleaned up some code.
This commit is contained in:
parent
379136451f
commit
618d4fccea
|
@ -27,7 +27,7 @@ char *ParseArgies(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
//int x; //mbg merge 7/17/06 removed
|
//int x; //mbg merge 7/17/06 removed
|
||||||
static ARGPSTRUCT FCEUArgs[]={
|
static ARGPSTRUCT FCEUArgs[]={
|
||||||
{"-pal",0,&palyo,0},
|
{"-pal",0,&pal_emulation,0},
|
||||||
{"-noicon",0,&status_icon,0},
|
{"-noicon",0,&status_icon,0},
|
||||||
{"-gg",0,&genie,0},
|
{"-gg",0,&genie,0},
|
||||||
{"-no8lim",0,&eoptions,0x8000|EO_NOSPRLIM},
|
{"-no8lim",0,&eoptions,0x8000|EO_NOSPRLIM},
|
||||||
|
|
|
@ -55,7 +55,7 @@ static CFGSTRUCT fceuconfig[] = {
|
||||||
|
|
||||||
AC(ntsccol),AC(ntsctint),AC(ntschue),
|
AC(ntsccol),AC(ntsctint),AC(ntschue),
|
||||||
|
|
||||||
NAC("palyo",palyo),
|
NAC("palyo",pal_emulation),
|
||||||
NAC("genie",genie),
|
NAC("genie",genie),
|
||||||
NAC("fs",fullscreen),
|
NAC("fs",fullscreen),
|
||||||
NAC("vgamode",vmod),
|
NAC("vgamode",vmod),
|
||||||
|
|
|
@ -191,8 +191,11 @@ static int moviereadonly=1;
|
||||||
|
|
||||||
static int fullscreen=0;
|
static int fullscreen=0;
|
||||||
static int soundflush=0;
|
static int soundflush=0;
|
||||||
|
// Flag that indicates whether Game Genie is enabled or not.
|
||||||
static int genie = 0;
|
static int genie = 0;
|
||||||
static int palyo=0;
|
|
||||||
|
// Flag that indicates whether PAL Emulation is enabled or not.
|
||||||
|
static int pal_emulation = 0;
|
||||||
static int status_icon=1;
|
static int status_icon=1;
|
||||||
static int windowedfailed;
|
static int windowedfailed;
|
||||||
static double saspectw=1, saspecth=1;
|
static double saspectw=1, saspecth=1;
|
||||||
|
@ -514,8 +517,8 @@ int main(int argc,char *argv[])
|
||||||
|
|
||||||
/* Bleh, need to find a better place for this. */
|
/* Bleh, need to find a better place for this. */
|
||||||
{
|
{
|
||||||
palyo &= 1;
|
pal_emulation &= 1;
|
||||||
FCEUI_SetVidSystem(palyo);
|
FCEUI_SetVidSystem(pal_emulation);
|
||||||
|
|
||||||
genie &= 1;
|
genie &= 1;
|
||||||
FCEUI_SetGameGenie(genie);
|
FCEUI_SetGameGenie(genie);
|
||||||
|
@ -564,7 +567,7 @@ int main(int argc,char *argv[])
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
|
|
||||||
if(t)
|
if(t)
|
||||||
{
|
{
|
||||||
|
@ -1078,5 +1081,5 @@ int FCEUD_ShowStatusIcon(void)
|
||||||
void FCEUD_ToggleStatusIcon(void)
|
void FCEUD_ToggleStatusIcon(void)
|
||||||
{
|
{
|
||||||
status_icon=!status_icon;
|
status_icon=!status_icon;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
|
@ -17,6 +17,18 @@
|
||||||
#define MENU_RECORD_AVI 151
|
#define MENU_RECORD_AVI 151
|
||||||
#define MENU_STOP_AVI 152
|
#define MENU_STOP_AVI 152
|
||||||
#define MENU_EXIT 153
|
#define MENU_EXIT 153
|
||||||
|
#define MENU_RESET 200
|
||||||
|
#define MENU_POWER 201
|
||||||
|
#define MENU_EJECT_DISK 202
|
||||||
|
#define MENU_SWITCH_DISK 203
|
||||||
|
#define MENU_INSERT_COIN 204
|
||||||
|
#define MENU_HIDE_MENU 300
|
||||||
|
#define MENU_RUN_IN_BACKGROUND 301
|
||||||
|
#define MENU_BACKGROUND_INPUT 302
|
||||||
|
#define MENU_SHOW_STATUS_ICON 303
|
||||||
|
#define MENU_ENABLE_REWIND 304
|
||||||
|
#define MENU_GAME_GENIE 310
|
||||||
|
#define MENU_PAL 311
|
||||||
#define GUI_BOT_A_1 1000
|
#define GUI_BOT_A_1 1000
|
||||||
#define GUI_BOT_B_1 1001
|
#define GUI_BOT_B_1 1001
|
||||||
#define GUI_BOT_SELECT_1 1002
|
#define GUI_BOT_SELECT_1 1002
|
||||||
|
@ -153,7 +165,7 @@
|
||||||
#ifdef APSTUDIO_INVOKED
|
#ifdef APSTUDIO_INVOKED
|
||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 103
|
#define _APS_NEXT_RESOURCE_VALUE 103
|
||||||
#define _APS_NEXT_COMMAND_VALUE 40025
|
#define _APS_NEXT_COMMAND_VALUE 40037
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1117
|
#define _APS_NEXT_CONTROL_VALUE 1117
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
#define _APS_NEXT_SYMED_VALUE 101
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -47,6 +47,9 @@ static void ConfigTiming(void);
|
||||||
static void ConfigPalette(void);
|
static void ConfigPalette(void);
|
||||||
static void ConfigDirectories(void);
|
static void ConfigDirectories(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Menu handle of the main menu.
|
||||||
|
**/
|
||||||
static HMENU fceumenu=0;
|
static HMENU fceumenu=0;
|
||||||
|
|
||||||
static int tog=0;
|
static int tog=0;
|
||||||
|
@ -98,7 +101,24 @@ void CalcWindowSize(RECT *al)
|
||||||
|
|
||||||
void RedoMenuGI(FCEUGI *gi)
|
void RedoMenuGI(FCEUGI *gi)
|
||||||
{
|
{
|
||||||
int simpled[]={101,111,110,200,201,204,203,141,142,143,151,152,40120,300,40003,40028, 0};
|
int simpled[]= { 101,
|
||||||
|
111,
|
||||||
|
110,
|
||||||
|
MENU_RESET,
|
||||||
|
MENU_POWER,
|
||||||
|
204,
|
||||||
|
203,
|
||||||
|
141,
|
||||||
|
142,
|
||||||
|
143,
|
||||||
|
151,
|
||||||
|
152,
|
||||||
|
40120,
|
||||||
|
MENU_HIDE_MENU,
|
||||||
|
40003,
|
||||||
|
40028,
|
||||||
|
0};
|
||||||
|
|
||||||
int x;
|
int x;
|
||||||
|
|
||||||
x = 0;
|
x = 0;
|
||||||
|
@ -119,37 +139,59 @@ void RedoMenuGI(FCEUGI *gi)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void UpdateMenu(void)
|
/**
|
||||||
|
* Updates menu items which need to be checked or unchecked.
|
||||||
|
**/
|
||||||
|
void UpdateCheckedMenuItems(void)
|
||||||
{
|
{
|
||||||
static int *polo[3]={&genie,&palyo,&status_icon};
|
static int *polo[] = { &genie, &pal_emulation, &status_icon };
|
||||||
static int polo2[3]={310,311,303};
|
static int polo2[]={ MENU_GAME_GENIE, MENU_PAL, MENU_SHOW_STATUS_ICON };
|
||||||
int x;
|
int x;
|
||||||
|
|
||||||
for(x=0;x<3;x++)
|
// Check or uncheck the necessary menu items
|
||||||
|
for(x = 0; x < sizeof(polo) / sizeof(*polo); x++)
|
||||||
|
{
|
||||||
CheckMenuItem(fceumenu, polo2[x], *polo[x] ? MF_CHECKED : MF_UNCHECKED);
|
CheckMenuItem(fceumenu, polo2[x], *polo[x] ? MF_CHECKED : MF_UNCHECKED);
|
||||||
|
}
|
||||||
|
|
||||||
if(eoptions&EO_BGRUN)
|
CheckMenuItem(fceumenu, MENU_RUN_IN_BACKGROUND, eoptions & EO_BGRUN ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu,301,MF_CHECKED);
|
|
||||||
else
|
|
||||||
CheckMenuItem(fceumenu,301,MF_UNCHECKED);
|
|
||||||
|
|
||||||
if(FCEU_BotMode())
|
CheckMenuItem(fceumenu, 40003, FCEU_BotMode() ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu,40003, MF_CHECKED);
|
|
||||||
else
|
|
||||||
CheckMenuItem(fceumenu,40003, MF_UNCHECKED);
|
|
||||||
|
|
||||||
if(GetAutoFireDesynch())
|
CheckMenuItem(fceumenu, 40025, GetAutoFireDesynch() ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu,40025, MF_CHECKED);
|
|
||||||
else
|
|
||||||
CheckMenuItem(fceumenu,40025, MF_UNCHECKED);
|
|
||||||
|
|
||||||
CheckMenuItem(fceumenu,302, EnableBackgroundInput?MF_CHECKED:MF_UNCHECKED);
|
CheckMenuItem(fceumenu, MENU_BACKGROUND_INPUT, EnableBackgroundInput ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu,40029, EnableRewind?MF_CHECKED:MF_UNCHECKED);
|
CheckMenuItem(fceumenu, MENU_ENABLE_REWIND, EnableRewind ? MF_CHECKED : MF_UNCHECKED);
|
||||||
|
|
||||||
int AutoFirePatternIDs[]={40004,40005,40006,40007,40008,40009,40010,40011,40012,40013,40014,40015,40022,40023,40024,0};
|
int AutoFirePatternIDs[] = {
|
||||||
int AutoFireOffsetIDs[]={40016,40017,40018,40019,40020,40021,0};
|
40004,
|
||||||
|
40005,
|
||||||
|
40006,
|
||||||
|
40007,
|
||||||
|
40008,
|
||||||
|
40009,
|
||||||
|
40010,
|
||||||
|
40011,
|
||||||
|
40012,
|
||||||
|
40013,
|
||||||
|
40014,
|
||||||
|
40015,
|
||||||
|
40022,
|
||||||
|
40023,
|
||||||
|
40024,
|
||||||
|
0};
|
||||||
|
|
||||||
|
int AutoFireOffsetIDs[] = {
|
||||||
|
40016,
|
||||||
|
40017,
|
||||||
|
40018,
|
||||||
|
40019,
|
||||||
|
40020,
|
||||||
|
40021,
|
||||||
|
0};
|
||||||
|
|
||||||
x = 0;
|
x = 0;
|
||||||
|
|
||||||
while(AutoFirePatternIDs[x])
|
while(AutoFirePatternIDs[x])
|
||||||
{
|
{
|
||||||
CheckMenuItem(fceumenu, AutoFirePatternIDs[x],
|
CheckMenuItem(fceumenu, AutoFirePatternIDs[x],
|
||||||
|
@ -158,6 +200,7 @@ void UpdateMenu(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
x = 0;
|
x = 0;
|
||||||
|
|
||||||
while(AutoFireOffsetIDs[x])
|
while(AutoFireOffsetIDs[x])
|
||||||
{
|
{
|
||||||
CheckMenuItem(fceumenu, AutoFireOffsetIDs[x],
|
CheckMenuItem(fceumenu, AutoFireOffsetIDs[x],
|
||||||
|
@ -325,11 +368,14 @@ void AddRecentDir(char *fn)
|
||||||
UpdateRMenu(recentdmenu, rdirs, 103, 700);
|
UpdateRMenu(recentdmenu, rdirs, 103, 700);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hides the main menu.
|
||||||
void HideMenu(int h)
|
*
|
||||||
|
* @param hide_menu Flag to turn the main menu on (0) or off (1)
|
||||||
|
**/
|
||||||
|
void HideMenu(unsigned int hide_menu)
|
||||||
{
|
{
|
||||||
if(h)
|
if(hide_menu)
|
||||||
{
|
{
|
||||||
SetMenu(hAppWnd, 0);
|
SetMenu(hAppWnd, 0);
|
||||||
}
|
}
|
||||||
|
@ -366,6 +412,9 @@ void HideFWindow(int h)
|
||||||
SetWindowPos(hAppWnd,0,0,0,0,0,SWP_FRAMECHANGED|SWP_NOACTIVATE|SWP_NOCOPYBITS|SWP_NOMOVE|SWP_NOREPOSITION|SWP_NOSIZE|SWP_NOZORDER);
|
SetWindowPos(hAppWnd,0,0,0,0,0,SWP_FRAMECHANGED|SWP_NOACTIVATE|SWP_NOCOPYBITS|SWP_NOMOVE|SWP_NOREPOSITION|SWP_NOSIZE|SWP_NOZORDER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggles the display status of the main menu.
|
||||||
|
**/
|
||||||
void ToggleHideMenu(void)
|
void ToggleHideMenu(void)
|
||||||
{
|
{
|
||||||
if(!fullscreen && (GameInfo || tog))
|
if(!fullscreen && (GameInfo || tog))
|
||||||
|
@ -376,6 +425,11 @@ void ToggleHideMenu(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggles the display status of the main menu.
|
||||||
|
*
|
||||||
|
* TODO: We could get rid of this one.
|
||||||
|
**/
|
||||||
void FCEUD_HideMenuToggle(void)
|
void FCEUD_HideMenuToggle(void)
|
||||||
{
|
{
|
||||||
ToggleHideMenu();
|
ToggleHideMenu();
|
||||||
|
@ -385,8 +439,8 @@ static void ALoad(char *nameo)
|
||||||
{
|
{
|
||||||
if(FCEUI_LoadGame(nameo,1))
|
if(FCEUI_LoadGame(nameo,1))
|
||||||
{
|
{
|
||||||
palyo=FCEUI_GetCurrentVidSystem(0,0);
|
pal_emulation = FCEUI_GetCurrentVidSystem(0,0);
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
FixFL();
|
FixFL();
|
||||||
SetMainWindowStuff();
|
SetMainWindowStuff();
|
||||||
AddRecent(nameo);
|
AddRecent(nameo);
|
||||||
|
@ -494,7 +548,7 @@ void GetMouseData(uint32 *md)
|
||||||
//static int sizchange=0;
|
//static int sizchange=0;
|
||||||
static int vchanged=0;
|
static int vchanged=0;
|
||||||
|
|
||||||
extern void RestartMovieOrReset(int pow);
|
extern void RestartMovieOrReset(unsigned int pow);
|
||||||
|
|
||||||
int KeyboardSetBackgroundAccess(int on); //mbg merge 7/17/06 YECH had to add
|
int KeyboardSetBackgroundAccess(int on); //mbg merge 7/17/06 YECH had to add
|
||||||
void SetJoystickBackgroundAccess(int background); //mbg merge 7/17/06 YECH had to add
|
void SetJoystickBackgroundAccess(int background); //mbg merge 7/17/06 YECH had to add
|
||||||
|
@ -638,77 +692,77 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
case 40004:
|
case 40004:
|
||||||
SetAutoFirePattern(1,1);
|
SetAutoFirePattern(1,1);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40005:
|
case 40005:
|
||||||
SetAutoFirePattern(1,2);
|
SetAutoFirePattern(1,2);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40006:
|
case 40006:
|
||||||
SetAutoFirePattern(1,3);
|
SetAutoFirePattern(1,3);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40007:
|
case 40007:
|
||||||
SetAutoFirePattern(1,4);
|
SetAutoFirePattern(1,4);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40008:
|
case 40008:
|
||||||
SetAutoFirePattern(1,5);
|
SetAutoFirePattern(1,5);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40009:
|
case 40009:
|
||||||
SetAutoFirePattern(2,1);
|
SetAutoFirePattern(2,1);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40010:
|
case 40010:
|
||||||
SetAutoFirePattern(2,2);
|
SetAutoFirePattern(2,2);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40011:
|
case 40011:
|
||||||
SetAutoFirePattern(2,3);
|
SetAutoFirePattern(2,3);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40012:
|
case 40012:
|
||||||
SetAutoFirePattern(2,4);
|
SetAutoFirePattern(2,4);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40013:
|
case 40013:
|
||||||
SetAutoFirePattern(3,1);
|
SetAutoFirePattern(3,1);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40014:
|
case 40014:
|
||||||
SetAutoFirePattern(3,2);
|
SetAutoFirePattern(3,2);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40015:
|
case 40015:
|
||||||
SetAutoFirePattern(3,3);
|
SetAutoFirePattern(3,3);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40022:
|
case 40022:
|
||||||
SetAutoFirePattern(4,1);
|
SetAutoFirePattern(4,1);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40023:
|
case 40023:
|
||||||
SetAutoFirePattern(4,2);
|
SetAutoFirePattern(4,2);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40024:
|
case 40024:
|
||||||
SetAutoFirePattern(5,1);
|
SetAutoFirePattern(5,1);
|
||||||
CheckedAutoFirePattern = wParam;
|
CheckedAutoFirePattern = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40016:
|
case 40016:
|
||||||
case 40017:
|
case 40017:
|
||||||
|
@ -718,45 +772,77 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
case 40021:
|
case 40021:
|
||||||
SetAutoFireOffset(wParam - 40016);
|
SetAutoFireOffset(wParam - 40016);
|
||||||
CheckedAutoFireOffset = wParam;
|
CheckedAutoFireOffset = wParam;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40025:
|
case 40025:
|
||||||
SetAutoFireDesynch(GetAutoFireDesynch()^1);
|
SetAutoFireDesynch(GetAutoFireDesynch()^1);
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 300:ToggleHideMenu();break;
|
|
||||||
case 301:
|
case MENU_HIDE_MENU:
|
||||||
|
// Hide menu menu was selected
|
||||||
|
ToggleHideMenu();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_RUN_IN_BACKGROUND:
|
||||||
|
// Run in Background menu was selected
|
||||||
|
// TODO: Does this even work?
|
||||||
|
|
||||||
eoptions ^= EO_BGRUN;
|
eoptions ^= EO_BGRUN;
|
||||||
|
|
||||||
if((eoptions & EO_BGRUN) == 0)
|
if((eoptions & EO_BGRUN) == 0)
|
||||||
{
|
{
|
||||||
EnableBackgroundInput = 0;
|
EnableBackgroundInput = 0;
|
||||||
KeyboardSetBackgroundAccess(EnableBackgroundInput);
|
KeyboardSetBackgroundAccess(EnableBackgroundInput);
|
||||||
SetJoystickBackgroundAccess(EnableBackgroundInput);
|
SetJoystickBackgroundAccess(EnableBackgroundInput);
|
||||||
}
|
}
|
||||||
UpdateMenu();
|
|
||||||
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 302:EnableBackgroundInput ^= 1;
|
|
||||||
|
case MENU_BACKGROUND_INPUT:
|
||||||
|
// Enable background input menu was selected
|
||||||
|
// TODO: Does this even work?
|
||||||
|
EnableBackgroundInput ^= 1;
|
||||||
eoptions |= EO_BGRUN * EnableBackgroundInput;
|
eoptions |= EO_BGRUN * EnableBackgroundInput;
|
||||||
KeyboardSetBackgroundAccess(EnableBackgroundInput);
|
KeyboardSetBackgroundAccess(EnableBackgroundInput);
|
||||||
SetJoystickBackgroundAccess(EnableBackgroundInput);
|
SetJoystickBackgroundAccess(EnableBackgroundInput);
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 40029:
|
|
||||||
|
case MENU_ENABLE_REWIND:
|
||||||
EnableRewind^= 1;
|
EnableRewind^= 1;
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
break;
|
break;
|
||||||
case 303:status_icon=!status_icon;UpdateMenu();break;
|
|
||||||
case 310:genie^=1;FCEUI_SetGameGenie(genie);UpdateMenu();break;
|
case MENU_SHOW_STATUS_ICON:
|
||||||
case 311:palyo^=1;
|
// Show status icon menu was selected
|
||||||
FCEUI_SetVidSystem(palyo);
|
// TODO: This does not work.
|
||||||
|
status_icon = !status_icon;
|
||||||
|
UpdateCheckedMenuItems();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_GAME_GENIE:
|
||||||
|
// Game Genie menu was selected
|
||||||
|
|
||||||
|
genie ^= 1;
|
||||||
|
FCEUI_SetGameGenie(genie);
|
||||||
|
UpdateCheckedMenuItems();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_PAL:
|
||||||
|
// PAL Emulation menu was selected
|
||||||
|
pal_emulation ^= 1;
|
||||||
|
FCEUI_SetVidSystem(pal_emulation);
|
||||||
RefreshThrottleFPS();
|
RefreshThrottleFPS();
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
FixFL();
|
FixFL();
|
||||||
// DoVideoConfigFix();
|
// DoVideoConfigFix();
|
||||||
SetMainWindowStuff();
|
SetMainWindowStuff();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 40003: FCEU_SetBotMode(1^FCEU_BotMode());
|
case 40003: FCEU_SetBotMode(1^FCEU_BotMode());
|
||||||
UpdateMenu(); break;
|
UpdateCheckedMenuItems(); break;
|
||||||
case 40002: CreateBasicBot();break;
|
case 40002: CreateBasicBot();break;
|
||||||
// case 40028: DoMemmo(0); break; //mbg merge 7/18/06 removed as part of old debugger
|
// case 40028: DoMemmo(0); break; //mbg merge 7/18/06 removed as part of old debugger
|
||||||
case 320:ConfigDirectories();break;
|
case 320:ConfigDirectories();break;
|
||||||
|
@ -769,11 +855,30 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
case 326:ConfigVideo();break;
|
case 326:ConfigVideo();break;
|
||||||
case 328:MapInput();break;
|
case 328:MapInput();break;
|
||||||
|
|
||||||
case 200:RestartMovieOrReset(0);break;
|
case MENU_RESET:
|
||||||
case 201:RestartMovieOrReset(1);break;
|
// The reset menu was selected
|
||||||
case 40026: FCEUI_FDSSelect();break;
|
RestartMovieOrReset(0);
|
||||||
case 40001: FCEUI_FDSInsert();break;
|
break;
|
||||||
case 40027: FCEUI_VSUniCoin();break;
|
|
||||||
|
case MENU_POWER:
|
||||||
|
// The power menu was selected
|
||||||
|
RestartMovieOrReset(1);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_SWITCH_DISK:
|
||||||
|
// Switch disk menu was selected
|
||||||
|
FCEUI_FDSSelect();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_EJECT_DISK:
|
||||||
|
// Eject disk menu was selected
|
||||||
|
FCEUI_FDSInsert();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_INSERT_COIN:
|
||||||
|
// Insert coin menu was selected
|
||||||
|
FCEUI_VSUniCoin();
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
#ifdef FCEUDEF_DEBUGGER
|
#ifdef FCEUDEF_DEBUGGER
|
||||||
|
@ -900,7 +1005,7 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
{
|
{
|
||||||
if(!(lParam&(1<<30)))
|
if(!(lParam&(1<<30)))
|
||||||
{
|
{
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
changerecursive=1;
|
changerecursive=1;
|
||||||
if(!SetVideoMode(fullscreen^1))
|
if(!SetVideoMode(fullscreen^1))
|
||||||
SetVideoMode(fullscreen);
|
SetVideoMode(fullscreen);
|
||||||
|
@ -2097,8 +2202,8 @@ void FCEUD_MovieReplayFrom(void)
|
||||||
|
|
||||||
free(fn);
|
free(fn);
|
||||||
|
|
||||||
palyo = FCEUI_GetCurrentVidSystem(0,0);
|
pal_emulation = FCEUI_GetCurrentVidSystem(0,0);
|
||||||
UpdateMenu();
|
UpdateCheckedMenuItems();
|
||||||
FixFL();
|
FixFL();
|
||||||
SetMainWindowStuff();
|
SetMainWindowStuff();
|
||||||
RefreshThrottleFPS();
|
RefreshThrottleFPS();
|
||||||
|
|
24
src/fceu.cpp
24
src/fceu.cpp
|
@ -69,7 +69,9 @@ static int EmulationPaused=0;
|
||||||
|
|
||||||
static int RewindStatus[4] = {0, 0, 0, 0}; //is it safe to load rewind state
|
static int RewindStatus[4] = {0, 0, 0, 0}; //is it safe to load rewind state
|
||||||
static int RewindIndex = 0; //which rewind state we're on
|
static int RewindIndex = 0; //which rewind state we're on
|
||||||
int EnableRewind = 0; //is rewind enabled
|
|
||||||
|
// Flag that indicates whether the rewind option is enabled or not
|
||||||
|
int EnableRewind = 0;
|
||||||
|
|
||||||
///a wrapper for unzip.c
|
///a wrapper for unzip.c
|
||||||
extern "C" FILE *FCEUI_UTF8fopen_C(const char *n, const char *m) { return ::FCEUD_UTF8fopen(n,m); }
|
extern "C" FILE *FCEUI_UTF8fopen_C(const char *n, const char *m) { return ::FCEUD_UTF8fopen(n,m); }
|
||||||
|
@ -503,22 +505,33 @@ void FCEUI_CloseGame(void)
|
||||||
CloseGame();
|
CloseGame();
|
||||||
}
|
}
|
||||||
|
|
||||||
void RestartMovieOrReset(int pow)
|
/**
|
||||||
|
* @param do_power_off Power off (1) or reset (0)
|
||||||
|
**/
|
||||||
|
void RestartMovieOrReset(unsigned int do_power_off)
|
||||||
{
|
{
|
||||||
extern int movie_readonly;
|
extern int movie_readonly;
|
||||||
|
extern char curMovieFilename[512];
|
||||||
|
|
||||||
if(FCEUMOV_IsPlaying() || FCEUMOV_IsRecording() && movie_readonly)
|
if(FCEUMOV_IsPlaying() || FCEUMOV_IsRecording() && movie_readonly)
|
||||||
{
|
{
|
||||||
extern char curMovieFilename[512];
|
|
||||||
FCEUI_LoadMovie(curMovieFilename, movie_readonly, 0);
|
FCEUI_LoadMovie(curMovieFilename, movie_readonly, 0);
|
||||||
|
|
||||||
if(FCEUI_IsMovieActive())
|
if(FCEUI_IsMovieActive())
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(pow)
|
if(do_power_off)
|
||||||
|
{
|
||||||
FCEUI_PowerNES();
|
FCEUI_PowerNES();
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
FCEUI_ResetNES();
|
FCEUI_ResetNES();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void ResetNES(void)
|
void ResetNES(void)
|
||||||
{
|
{
|
||||||
|
@ -676,6 +689,9 @@ int FCEUI_GetCurrentVidSystem(int *slstart, int *slend)
|
||||||
return(PAL);
|
return(PAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable or disable Game Genie option.
|
||||||
|
**/
|
||||||
void FCEUI_SetGameGenie(int a)
|
void FCEUI_SetGameGenie(int a)
|
||||||
{
|
{
|
||||||
FSettings.GameGenie = a ? 1 : 0;
|
FSettings.GameGenie = a ? 1 : 0;
|
||||||
|
|
|
@ -507,11 +507,17 @@ void FCEUI_VSUniCoin(void)
|
||||||
FCEU_QSimpleCommand(FCEUNPCMD_VSUNICOIN);
|
FCEU_QSimpleCommand(FCEUNPCMD_VSUNICOIN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the NES
|
||||||
|
**/
|
||||||
void FCEUI_ResetNES(void)
|
void FCEUI_ResetNES(void)
|
||||||
{
|
{
|
||||||
FCEU_QSimpleCommand(FCEUNPCMD_RESET);
|
FCEU_QSimpleCommand(FCEUNPCMD_RESET);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Powers off the NES
|
||||||
|
**/
|
||||||
void FCEUI_PowerNES(void)
|
void FCEUI_PowerNES(void)
|
||||||
{
|
{
|
||||||
FCEU_QSimpleCommand(FCEUNPCMD_POWER);
|
FCEU_QSimpleCommand(FCEUNPCMD_POWER);
|
||||||
|
|
Loading…
Reference in New Issue