From 2d7b42dbf28988549b63aec1a3ac63971b8df6fd Mon Sep 17 00:00:00 2001 From: zeromus Date: Wed, 23 Nov 2011 21:15:23 +0000 Subject: [PATCH] fix host memory clobber crash in new TSC code when the arm7 is acting wacky --- desmume/src/MMU.cpp | 3 ++- desmume/src/saves.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/desmume/src/MMU.cpp b/desmume/src/MMU.cpp index 89f3f5413..1ffaf8a30 100644 --- a/desmume/src/MMU.cpp +++ b/desmume/src/MMU.cpp @@ -1101,7 +1101,7 @@ u16 DSI_TSC::write16(u16 val) switch(state) { case 0: - reg_selection = val>>1; + reg_selection = (val>>1)&0x7F; read_flag = val&1; state = 1; return read16(); @@ -1114,6 +1114,7 @@ u16 DSI_TSC::write16(u16 val) } ret = read16(); reg_selection++; + reg_selection &= 0x7F; return ret; } return 0; diff --git a/desmume/src/saves.cpp b/desmume/src/saves.cpp index d2f6d20ac..a1c47dac1 100644 --- a/desmume/src/saves.cpp +++ b/desmume/src/saves.cpp @@ -1152,7 +1152,7 @@ bool savestate_load(EMUFILE* is) if((nds._DebugConsole!=0) != CommonSettings.DebugConsole) { printf("WARNING: forcing console debug mode to: debugmode=%s\n",nds._DebugConsole?"TRUE":"FALSE"); - } + } return true;