From 9d0e6ecb9ea20f0adef974d19744d5696ad009ba Mon Sep 17 00:00:00 2001 From: adelikat Date: Fri, 8 Aug 2008 19:03:15 +0000 Subject: [PATCH] added input display to the main menu --- changelog.txt | 2 +- src/drivers/win/res.rc | 10 ++++++++- src/drivers/win/resource.h | 17 +++++++++++++-- src/drivers/win/window.cpp | 42 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 67 insertions(+), 4 deletions(-) diff --git a/changelog.txt b/changelog.txt index 1a71a817..33a0bcb7 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,5 @@ ---version 2.0.2 released--- - +08-aug-2008 - adelikat - added input display to the FCEUX main menu 08-aug-2008 - adelikat - fixed the (null) in the default lua directory listing 08-aug-2008 - adelikat - added shift+L as default hotkey for reload lua script 08-aug-2008 - adelikat - removed accel ctrl+x (prevented cut from working in accel dialogs) diff --git a/src/drivers/win/res.rc b/src/drivers/win/res.rc index 9667d866..010181f1 100644 --- a/src/drivers/win/res.rc +++ b/src/drivers/win/res.rc @@ -83,7 +83,15 @@ BEGIN POPUP "Display" BEGIN MENUITEM "Movie Status Icon", MENU_SHOW_STATUS_ICON - MENUITEM "Lag Counter", MENU_DISPLAY_LAGCOUNTER + POPUP "Input Display" + BEGIN + MENUITEM "Off", MENU_INPUTDISPLAY_0 + MENUITEM "1 player", MENU_INPUTDISPLAY_1 + MENUITEM "2 player", MENU_INPUTDISPLAY_2 + MENUITEM "4 player", MENU_INPUTDISPLAY_4 + END + MENUITEM "Lag Counter", ID_DISPLAY_LAGCOUNTER40245 + MENUITEM SEPARATOR MENUITEM "Graphics: BG", MENU_DISPLAY_BG MENUITEM "Graphics: OBJ", MENU_DISPLAY_OBJ END diff --git a/src/drivers/win/resource.h b/src/drivers/win/resource.h index 8d5beca1..ac3e6588 100644 --- a/src/drivers/win/resource.h +++ b/src/drivers/win/resource.h @@ -357,7 +357,6 @@ #define IDC_EDIT1 1147 #define IDC_BUTTON9 1148 #define IDC_LIST2 1149 -#define SOUND_MUTETURBO 1179 #define CHECK_SOUND_MUTETURBO 1179 #define MENU_NETWORK 40040 #define MENU_PALETTE 40041 @@ -519,6 +518,20 @@ #define MENU_DISPLAY_LAGCOUNTER 40237 #define ID_DISPLAY_FRAMEADV 40238 #define MENU_DISPLAY_FA_LAGSKIP 40239 +#define ID_DISPLAY_INPUTDISPLAY40240 40240 +#define ID_LAGCOUNTER_OFF 40241 +#define ID_LAGCOUNTER_1PLAYER 40242 +#define ID_LAGCOUNTER_2PLAYER 40243 +#define ID_LAGCOUNTER_4PLAYER 40244 +#define ID_DISPLAY_LAGCOUNTER40245 40245 +#define MENU_INPUTDISPLAY_OFF 40246 +#define MENU_INPUTDISPLAY_1P 40247 +#define MENU_INPUTDISPLAY_2P 40248 +#define MENU_INPUTDISPLAY_4P 40249 +#define MENU_INPUTDISPLAY_0 40250 +#define MENU_INPUTDISPLAY_1 40251 +#define MENU_INPUTDISPLAY_2 40252 +#define MENU_INPUTDISPLAY_4 40253 #define IDC_DEBUGGER_ICONTRAY 55535 #define MW_ValueLabel2 65423 #define MW_ValueLabel1 65426 @@ -528,7 +541,7 @@ #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 124 -#define _APS_NEXT_COMMAND_VALUE 40240 +#define _APS_NEXT_COMMAND_VALUE 40254 #define _APS_NEXT_CONTROL_VALUE 1180 #define _APS_NEXT_SYMED_VALUE 101 #endif diff --git a/src/drivers/win/window.cpp b/src/drivers/win/window.cpp index 8d1b08f5..aec890fa 100644 --- a/src/drivers/win/window.cpp +++ b/src/drivers/win/window.cpp @@ -358,6 +358,30 @@ void UpdateCheckedMenuItems() AutoFireOffsetIDs[x] == CheckedAutoFireOffset ? MF_CHECKED : MF_UNCHECKED); x++; } + + //Check input display + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_0, MF_UNCHECKED); + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_1, MF_UNCHECKED); + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_2, MF_UNCHECKED); + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_4, MF_UNCHECKED); + switch (input_display) + { + case 0: //Off + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_0, MF_CHECKED); + break; + case 1: //1 player + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_1, MF_CHECKED); + break; + case 2: //2 player + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_2, MF_CHECKED); + break; + //note: input display can actually have a 3 player display option but is skipped in the hotkey toggle so it is skipped here as well + case 4: //4 player + CheckMenuItem(fceumenu, MENU_INPUTDISPLAY_4, MF_CHECKED); + break; + default: + break; + } } /// Updates recent files / recent directories menu @@ -1180,9 +1204,27 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam) case MENU_DISPLAY_LAGCOUNTER: lagCounterDisplay ^= 1; UpdateCheckedMenuItems(); + break; case MENU_DISPLAY_FA_LAGSKIP: frameAdvanceLagSkip ^= 1; UpdateCheckedMenuItems(); + break; + case MENU_INPUTDISPLAY_0: //Input display off + input_display = 0; + UpdateCheckedMenuItems(); + break; + case MENU_INPUTDISPLAY_1: //Input display - 1 player + input_display = 1; + UpdateCheckedMenuItems(); + break; + case MENU_INPUTDISPLAY_2: //Input display - 2 player + input_display = 2; + UpdateCheckedMenuItems(); + break; + case MENU_INPUTDISPLAY_4: //Input display - 4 player + input_display = 4; + UpdateCheckedMenuItems(); + break; } }