aboutsummaryrefslogtreecommitdiff
path: root/source/nds/gui.c
diff options
context:
space:
mode:
authorNebuleon Fumika2013-05-20 17:22:38 -0400
committerNebuleon Fumika2013-05-20 17:22:38 -0400
commit48eb438a24f6427a17e6a14e37003bd894c5743c (patch)
tree3930664103ab511e7ae6dd89fc5bd81bcc49ac1b /source/nds/gui.c
parent4b5a5a15d73f8aafb3f2951c2517574eacbee84e (diff)
downloadsnes9x2005-48eb438a24f6427a17e6a14e37003bd894c5743c.tar.gz
snes9x2005-48eb438a24f6427a17e6a14e37003bd894c5743c.tar.bz2
snes9x2005-48eb438a24f6427a17e6a14e37003bd894c5743c.zip
Fix a bug whereby quick saved states would have a screenshot of "Saving state...".
Diffstat (limited to 'source/nds/gui.c')
-rw-r--r--source/nds/gui.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/nds/gui.c b/source/nds/gui.c
index 4b9c129..7502fcd 100644
--- a/source/nds/gui.c
+++ b/source/nds/gui.c
@@ -4678,10 +4678,17 @@ void QuickSaveState (void)
{
char BaseName[MAX_PATH + 1];
get_savestate_filename(0, BaseName);
+ void* screen_addr = emu_config.BottomScreenGame
+ ? down_screen_addr
+ : up_screen_addr;
SCREEN_ID screen_num = emu_config.BottomScreenGame
? DOWN_SCREEN
: UP_SCREEN;
+ S9xDeinitUpdate(256, 224, TRUE);
+ unsigned short screen[256*192];
+ copy_screen((void*)screen, screen_addr, 0, 0, 256, 192);
+
mdelay(100); // needed to avoid ds2_setBacklight crashing
ds2_setBacklight((3 - DOWN_SCREEN) | (3 - screen_num));
@@ -4691,8 +4698,6 @@ void QuickSaveState (void)
ds2_flipScreen(DOWN_SCREEN, DOWN_SCREEN_UPDATE_METHOD);
HighFrequencyCPU();
- unsigned short screen[256*192];
- copy_screen((void*)screen, up_screen_addr, 0, 0, 256, 192);
int flag = save_state(BaseName, screen);
GameFrequencyCPU();
if(flag < 0)