diff --git a/trunk/output/taseditor.chm b/trunk/output/taseditor.chm index 17aee62d..521e6b4b 100644 Binary files a/trunk/output/taseditor.chm and b/trunk/output/taseditor.chm differ diff --git a/trunk/src/driver.h b/trunk/src/driver.h index 895e1722..645c2ebd 100644 --- a/trunk/src/driver.h +++ b/trunk/src/driver.h @@ -336,7 +336,7 @@ enum EFCEUI FCEUI_STOPMOVIE, FCEUI_RECORDMOVIE, FCEUI_PLAYMOVIE, FCEUI_OPENGAME, FCEUI_CLOSEGAME, FCEUI_TASEDITOR, - FCEUI_RESET, FCEUI_POWER, FCEUI_PLAYFROMBEGINNING, FCEUI_EJECT_DISK, FCEUI_SWITCH_DISK + FCEUI_RESET, FCEUI_POWER, FCEUI_PLAYFROMBEGINNING, FCEUI_EJECT_DISK, FCEUI_SWITCH_DISK, FCEUI_INSERT_COIN }; //checks whether an EFCEUI is valid right now diff --git a/trunk/src/drivers/win/window.cpp b/trunk/src/drivers/win/window.cpp index 7389aea4..9c41d173 100644 --- a/trunk/src/drivers/win/window.cpp +++ b/trunk/src/drivers/win/window.cpp @@ -2376,6 +2376,7 @@ adelikat: Outsourced this to a remappable hotkey EnableMenuItem(fceumenu,MENU_POWER,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_POWER)?MF_ENABLED:MF_GRAYED)); EnableMenuItem(fceumenu,MENU_EJECT_DISK,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_EJECT_DISK)?MF_ENABLED:MF_GRAYED)); EnableMenuItem(fceumenu,MENU_SWITCH_DISK,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_SWITCH_DISK)?MF_ENABLED:MF_GRAYED)); + EnableMenuItem(fceumenu,MENU_INSERT_COIN,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_INSERT_COIN)?MF_ENABLED:MF_GRAYED)); EnableMenuItem(fceumenu,MENU_TASEDITOR,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_TASEDITOR)?MF_ENABLED:MF_GRAYED)); EnableMenuItem(fceumenu,MENU_CLOSE_FILE,MF_BYCOMMAND | (FCEU_IsValidUI(FCEUI_CLOSEGAME) && GameInfo ?MF_ENABLED:MF_GRAYED)); EnableMenuItem(fceumenu,MENU_RECENT_FILES,MF_BYCOMMAND | ((FCEU_IsValidUI(FCEUI_OPENGAME) && HasRecentFiles()) ?MF_ENABLED:MF_GRAYED)); //adelikat - added && recent_files, otherwise this line prevents recent from ever being gray when TAS Editor is not engaged diff --git a/trunk/src/fceu.cpp b/trunk/src/fceu.cpp index 4096664a..a1bcbaa5 100644 --- a/trunk/src/fceu.cpp +++ b/trunk/src/fceu.cpp @@ -1043,6 +1043,7 @@ bool FCEU_IsValidUI(EFCEUI ui) { case FCEUI_POWER: case FCEUI_EJECT_DISK: case FCEUI_SWITCH_DISK: + case FCEUI_INSERT_COIN: if (!GameInfo) return false; if (FCEUMOV_Mode(MOVIEMODE_RECORD)) return true; #ifdef WIN32 diff --git a/trunk/src/input.cpp b/trunk/src/input.cpp index 502a9cd8..864e35e8 100644 --- a/trunk/src/input.cpp +++ b/trunk/src/input.cpp @@ -581,6 +581,9 @@ void FCEUI_VSUniToggleDIP(int w) void FCEUI_VSUniCoin(void) { + if(!FCEU_IsValidUI(FCEUI_INSERT_COIN)) + return; + FCEU_QSimpleCommand(FCEUNPCMD_VSUNICOIN); } @@ -748,7 +751,7 @@ struct EMUCMDTABLE FCEUI_CommandTable[]= { EMUCMD_FDS_EJECT_INSERT, EMUCMDTYPE_FDS, FCEUI_FDSInsert, 0, 0, "Eject or Insert FDS Disk", EMUCMDFLAG_TASEDITOR }, { EMUCMD_FDS_SIDE_SELECT, EMUCMDTYPE_FDS, FCEUI_FDSSelect, 0, 0, "Switch FDS Disk Side", EMUCMDFLAG_TASEDITOR }, - { EMUCMD_VSUNI_COIN, EMUCMDTYPE_VSUNI, FCEUI_VSUniCoin, 0, 0, "Insert Coin", 0 }, + { EMUCMD_VSUNI_COIN, EMUCMDTYPE_VSUNI, FCEUI_VSUniCoin, 0, 0, "Insert Coin", EMUCMDFLAG_TASEDITOR }, { EMUCMD_VSUNI_TOGGLE_DIP_0, EMUCMDTYPE_VSUNI, CommandToggleDip, 0, 0, "Toggle Dipswitch 0", 0 }, { EMUCMD_VSUNI_TOGGLE_DIP_1, EMUCMDTYPE_VSUNI, CommandToggleDip, 0, 0, "Toggle Dipswitch 1", 0 }, { EMUCMD_VSUNI_TOGGLE_DIP_2, EMUCMDTYPE_VSUNI, CommandToggleDip, 0, 0, "Toggle Dipswitch 2", 0 }, diff --git a/trunk/src/movie.cpp b/trunk/src/movie.cpp index fc839ac8..9647dcf5 100644 --- a/trunk/src/movie.cpp +++ b/trunk/src/movie.cpp @@ -1017,18 +1017,17 @@ void FCEUMOV_AddInputState() _currCommand = 0; } else #endif - if(movieMode == MOVIEMODE_PLAY) + if (movieMode == MOVIEMODE_PLAY) { //stop when we run out of frames - if(currFrameCounter >= (int)currMovieData.records.size()) + if (currFrameCounter >= (int)currMovieData.records.size()) { FinishPlayback(); //tell all drivers to poll input and set up their logical states for(int port=0;port<2;port++) joyports[port].driver->Update(port,joyports[port].ptr,joyports[port].attrib); portFC.driver->Update(portFC.ptr,portFC.attrib); - } - else + } else { MovieRecord* mr = &currMovieData.records[currFrameCounter]; @@ -1049,7 +1048,7 @@ void FCEUMOV_AddInputState() } //if we are on the last frame, then pause the emulator if the player requested it - if(currFrameCounter == currMovieData.records.size()-1) + if (currFrameCounter == currMovieData.records.size()-1) { if(FCEUD_PauseAfterPlayback()) { @@ -1058,14 +1057,13 @@ void FCEUMOV_AddInputState() } //pause the movie at a specified frame - if(FCEUMOV_ShouldPause() && FCEUI_EmulationPaused()==0) + if (FCEUMOV_ShouldPause() && FCEUI_EmulationPaused()==0) { FCEUI_ToggleEmulationPause(); FCEU_DispMessage("Paused at specified movie frame",0); } - } - else if(movieMode == MOVIEMODE_RECORD) + } else if (movieMode == MOVIEMODE_RECORD) { MovieRecord mr; @@ -1492,11 +1490,9 @@ void FCEUI_MovieToggleReadOnly() if(movie_readonly) strcpy(message, "Movie is now Read+Write"); else - { strcpy(message, "Movie is now Read-Only"); - } - if(movieMode == MOVIEMODE_INACTIVE) + if (movieMode == MOVIEMODE_INACTIVE) strcat(message, " (no movie)"); else if (movieMode == MOVIEMODE_FINISHED) strcat(message, " (finished)"); @@ -1516,10 +1512,10 @@ void FCEUI_MoviePlayFromBeginning(void) { if (currMovieData.savestate.empty()) { - movie_readonly=true; + movie_readonly = true; movieMode = MOVIEMODE_PLAY; poweron(true); - currFrameCounter=0; + currFrameCounter = 0; FCEU_DispMessage("Movie is now Read-Only. Playing from beginning.",0); } else