From 9ff1257907e67c77f119494493967c6a58968379 Mon Sep 17 00:00:00 2001 From: ansstuff Date: Sun, 2 Sep 2012 12:17:50 +0000 Subject: [PATCH] minor fixes for Debugger, Tracer, Hexeditor, Taseditor --- changelog.txt | 2 ++ src/drivers/win/debugger.cpp | 18 ++++++++---------- src/drivers/win/memview.cpp | 13 ++++++++++--- src/drivers/win/taseditor/laglog.cpp | 4 ++-- src/drivers/win/taseditor/splicer.cpp | 1 - src/drivers/win/tracer.cpp | 2 +- src/movie.cpp | 3 +-- 7 files changed, 24 insertions(+), 19 deletions(-) diff --git a/changelog.txt b/changelog.txt index 86ea2edd..370eb0ac 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,5 @@ +01-Sep-2012 - AnS - fixed movie savestates logic, loading post-movie savestates is not allowed in read-only +31-Aug-2012 - zeromus - update mapper 156 from fceu-mm sources 30-Aug-2012 - AnS - fixed savestates filenaming bug when working with a movie 29-Aug-2012 - AnS - added "Force Grayscale" checkbox to Palette config 26-Aug-2012 - AnS - Taseditor: History Log highlights items related to current item diff --git a/src/drivers/win/debugger.cpp b/src/drivers/win/debugger.cpp index 109a3033..e74650d5 100644 --- a/src/drivers/win/debugger.cpp +++ b/src/drivers/win/debugger.cpp @@ -1144,11 +1144,6 @@ void LoadGameDebuggerData(HWND hwndDlg = hDebug) { } } - if (symbDebugEnabled) - { - CheckDlgButton(hwndDlg, IDC_DEBUGGER_ENABLE_SYMBOLIC, BST_CHECKED); - } - ClearBreakList(hwndDlg); numWPs = myNumWPs; @@ -1210,17 +1205,20 @@ BOOL CALLBACK DebuggerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPara { case WM_INITDIALOG: { - CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_CYCLES, break_on_cycles ? MF_CHECKED : MF_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_INSTRUCTIONS, break_on_instructions ? MF_CHECKED : MF_UNCHECKED); + CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_CYCLES, break_on_cycles ? BST_CHECKED : BST_UNCHECKED); + CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_INSTRUCTIONS, break_on_instructions ? BST_CHECKED : BST_UNCHECKED); sprintf(str, "%d", break_cycles_limit); SetDlgItemText(hwndDlg, IDC_DEBUGGER_CYCLES_EXCEED, str); sprintf(str, "%d", break_instructions_limit); SetDlgItemText(hwndDlg, IDC_DEBUGGER_INSTRUCTIONS_EXCEED, str); - CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_BAD_OP, FCEUI_Debugger().badopbreak ? MF_CHECKED : MF_UNCHECKED); + CheckDlgButton(hwndDlg, IDC_DEBUGGER_BREAK_ON_BAD_OP, FCEUI_Debugger().badopbreak ? BST_CHECKED : BST_UNCHECKED); + + CheckDlgButton(hwndDlg, DEBUGLOADDEB, debuggerSaveLoadDEBFiles ? BST_CHECKED : BST_UNCHECKED); + CheckDlgButton(hwndDlg, DEBUGAUTOLOAD, debuggerAutoload ? BST_CHECKED : BST_UNCHECKED); + CheckDlgButton(hwndDlg, IDC_DEBUGGER_ROM_OFFSETS, debuggerDisplayROMoffsets ? BST_CHECKED : BST_UNCHECKED); + CheckDlgButton(hwndDlg, IDC_DEBUGGER_ENABLE_SYMBOLIC, symbDebugEnabled ? BST_CHECKED : BST_UNCHECKED); - CheckDlgButton(hwndDlg, DEBUGLOADDEB, debuggerSaveLoadDEBFiles ? MF_CHECKED : MF_UNCHECKED); - CheckDlgButton(hwndDlg, DEBUGAUTOLOAD, debuggerAutoload ? MF_CHECKED : MF_UNCHECKED); if (DbgPosX==-32000) DbgPosX=0; //Just in case if (DbgPosY==-32000) DbgPosY=0; SetWindowPos(hwndDlg,0,DbgPosX,DbgPosY,0,0,SWP_NOSIZE|SWP_NOZORDER|SWP_NOOWNERZORDER); diff --git a/src/drivers/win/memview.cpp b/src/drivers/win/memview.cpp index e576dfa3..16a7e869 100644 --- a/src/drivers/win/memview.cpp +++ b/src/drivers/win/memview.cpp @@ -518,7 +518,8 @@ void UpdateMemoryView(int draw_all) return; } -void UpdateCaption(){ +void UpdateCaption() +{ char str[100]; char EditString[3][20] = {"RAM","PPU Memory","ROM"}; @@ -1696,7 +1697,8 @@ void DoMemView() { // return; //} - if (!hMemView){ + if (!hMemView) + { memset(&wndclass,0,sizeof(wndclass)); wndclass.cbSize=sizeof(WNDCLASSEX); wndclass.style = CS_HREDRAW | CS_VREDRAW ; @@ -1720,11 +1722,16 @@ void DoMemView() { NULL,NULL,fceu_hInstance,NULL ); ShowWindow (hMemView, SW_SHOW) ; UpdateCaption(); + } else + { + SetWindowPos(hMemView, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE|SWP_NOMOVE|SWP_NOOWNERZORDER); + UpdateCaption(); } DragAcceptFiles(hMemView, 1); - if (hMemView) { + if (hMemView) + { //UpdateMemView(0); //MemViewDoBlit(); } diff --git a/src/drivers/win/taseditor/laglog.cpp b/src/drivers/win/taseditor/laglog.cpp index c003cda2..23287ff2 100644 --- a/src/drivers/win/taseditor/laglog.cpp +++ b/src/drivers/win/taseditor/laglog.cpp @@ -127,12 +127,12 @@ void LAGLOG::SetLagInfo(int frame, bool lagFlag) } void LAGLOG::EraseFrame(int frame) { - if (lag_log.size() > frame) + if (frame < (int)lag_log.size()) lag_log.erase(lag_log.begin() + (currFrameCounter - 1)); } void LAGLOG::InsertFrame(int frame, bool lagFlag, int frames) { - if (lag_log.size() > frame) + if (frame < lag_log.size()) // insert lag_log.insert(lag_log.begin() + frame, frames, (lagFlag) ? 1 : 0); else diff --git a/src/drivers/win/taseditor/splicer.cpp b/src/drivers/win/taseditor/splicer.cpp index 65a8c5aa..30eb7392 100644 --- a/src/drivers/win/taseditor/splicer.cpp +++ b/src/drivers/win/taseditor/splicer.cpp @@ -110,7 +110,6 @@ void SPLICER::CloneFrames() if (!frames) return; selection.ClearSelection(); // Selection will be moved down, so that same frames are selected - int i; bool markers_changed = false; currMovieData.records.reserve(currMovieData.getNumRecords() + frames); // insert frames before each selection, but consecutive Selection lines are accounted as single region diff --git a/src/drivers/win/tracer.cpp b/src/drivers/win/tracer.cpp index 1646b4d2..bf48fb47 100644 --- a/src/drivers/win/tracer.cpp +++ b/src/drivers/win/tracer.cpp @@ -527,7 +527,7 @@ void UpdateLogWindow(void) void UpdateLogText(void){ int i, j; - char str[2048]; + char str[3000]; str[0] = 0; /* for(i = 21;i > 0;i--){ diff --git a/src/movie.cpp b/src/movie.cpp index fb22fd58..4239e1e8 100644 --- a/src/movie.cpp +++ b/src/movie.cpp @@ -1301,8 +1301,7 @@ bool FCEUMOV_ReadState(EMUFILE* is, uint32 size) return false; } else if (movieMode == MOVIEMODE_FINISHED && currFrameCounter > (int)currMovieData.records.size() - && currMovieData.records.size() == tempMovieData.records.size() - && frame_of_mismatch < 0) + && currMovieData.records.size() == tempMovieData.records.size()) { // special case (in MOVIEMODE_FINISHED mode) // allow loading post-movie savestates that were made after finishing current movie