Fixed a debugger crash error I introduced while adding .deb saving, fixed an internal Unif/FDS filename issue that was affecting .deb saving/loading, and enabled bank display in the debugger for NSF and NES. FDS and Unif banks displayed aren't right, but shouldn't be a serious problem, even if not fixed.

This commit is contained in:
ugetab 2009-10-08 17:55:21 +00:00
parent 2e8e6ccdcd
commit 18cd4d6569
7 changed files with 27 additions and 6 deletions

View File

@ -1,3 +1,4 @@
08-october-2009 - ugetab - win32 - fixed a debugger crash error, Unif/FDS filename issue, and enabled debugger bank display
01-october-2009 - gocha - win32 - movie play dialog displays movie time based on ~60.1 (~50.1 PAL) instead of 60 & 50
26-september-2009 - qeed - fixed action 52 game that was broken in fceux >2.0.3
16-september-2009 - ugetab - win32 - Restored DPCM Logging when Code/Data Logger is active

View File

@ -21,6 +21,7 @@
#include "common.h"
#include "debuggersp.h"
#include "debugger.h"
#include "../../fceu.h"
#include "../../debug.h"
#include "../../conddebug.h"
@ -98,7 +99,16 @@ void replaceString(char* src, const char* r, const char* w)
**/
int getBank(int offs)
{
int addr = 0; //MBG TODO GetNesFileAddress(offs);
//NSF data is easy to overflow the return on.
//Anything over FFFFF will kill it.
//GetNesFileAddress doesn't work well with Unif files
int addr = GetNesFileAddress(offs)-16;
if (GameInfo->type==GIT_NSF) {
return addr != -1 ? addr / 0x1000 : -1;
}
return addr != -1 ? addr / 0x4000 : -1;
}

View File

@ -182,6 +182,13 @@ int storePreferences(char* romname)
return result;
}
void DoDebuggerRunCheck()
{
if (wasinDebugger){
DoDebug(0);
}
}
int myNumWPs = 0;
int loadDebugDataFailed = 0;
@ -343,10 +350,6 @@ int loadPreferences(char* romname)
watchpoint[i].flags = 0;
}
if (wasinDebugger){
DoDebug(0);
}
// Attempt to load the preferences
return result;
}

View File

@ -25,4 +25,4 @@ extern bool inDebugger;
int storePreferences(char* romname);
int loadPreferences(char* romname);
void DoDebuggerRunCheck();

View File

@ -482,6 +482,8 @@ endlseq:
if(GameInfo->type!=GIT_NSF)
FCEU_LoadGameCheats(0);
DoDebuggerRunCheck(); //Can't safely do it in loadPreferences
return GameInfo;
}

View File

@ -828,6 +828,9 @@ if (!disableBatteryLoading)
free(fn);
}
extern char LoadedRomFName[2048];
strcpy(LoadedRomFName,name); //For the debugger list
GameInfo->type=GIT_FDS;
GameInterface=FDSGI;

View File

@ -593,6 +593,8 @@ int UNIFLoad(const char *name, FCEUFILE *fp)
goto aborto;
FCEU_LoadGameSave(&UNIFCart);
strcpy(LoadedRomFName,name); //For the debugger list
GameInterface=UNIFGI;
return 1;