Undid revision 1386. It broke the Trace Logger.

Altered the 0x3800-0x3824 NSF exclusion code to be more efficient and more effective.
This commit is contained in:
ugetab 2009-08-08 05:20:52 +00:00
parent aaff248c59
commit cacf932939
2 changed files with 7 additions and 4 deletions

View File

@ -611,7 +611,7 @@ void breakpoint() {
//bbit edited: this is the end of the inserted code
int debug_tracing;
int logging;
//int logging; //UGETAB: This is turning it into a local variable. Prevents logging.
void DebugCycle() {
if (scanline == 240)
@ -624,6 +624,11 @@ void DebugCycle() {
else
vblankScanLines = 0;
if (GameInfo->type==GIT_NSF)
{
if ((_PC >= 0x3801) && (_PC <= 0x3824)) return;
}
if (numWPs || dbgstate.step || dbgstate.runline || dbgstate.stepout || watchpoint[64].flags || dbgstate.badopbreak)
breakpoint();
if(debug_loggingCD) LogCDData();
@ -631,6 +636,6 @@ void DebugCycle() {
//mbg 6/30/06 - this was commented out when i got here. i dont understand it anyway
//if(logging || (hMemView && (EditingMode == 2))) LogInstruction();
// extern volatile int logging;
extern volatile int logging; //UGETAB: This is required to be an extern, because the info isn't set here
if(logging) FCEUD_TraceInstruction();
}

View File

@ -319,8 +319,6 @@ void FCEUD_TraceInstruction(){
uint8 opcode[3], tmp;
static int unloggedlines;
if((GameInfo->type==GIT_NSF) && (addr >= 0x3800) && (addr <= 0x3824)) return;
if(((logging_options & LOG_NEW_INSTRUCTIONS) && (oldcodecount != codecount)) ||
((logging_options & LOG_NEW_DATA) && (olddatacount != datacount))){//something new was logged
oldcodecount = codecount;