X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=common%2Femu.c;h=cab0925e00f0e9ff4b0e5969be8c00cd3c24e2d1;hb=e99d80480196f551f7e6c06deae3750de19b4c0e;hp=822d7aab9cb598628517fd8f0147b2648d6f0d97;hpb=a33164fffe6463cd0aa698fac2bcc1fc213af18e;p=libpicofe.git diff --git a/common/emu.c b/common/emu.c index 822d7aa..cab0925 100644 --- a/common/emu.c +++ b/common/emu.c @@ -497,11 +497,13 @@ int emu_reload_rom(char *rom_fname) get_ext(rom_fname, ext); - // check for movie file + // early cleanup + PicoPatchUnload(); if (movie_data) { free(movie_data); movie_data = 0; } + if (!strcmp(ext, ".gmv")) { // check for both gmv and rom @@ -558,7 +560,6 @@ int emu_reload_rom(char *rom_fname) } shutdown_MCD(); - PicoPatchUnload(); PicoCartUnload(); rom_loaded = 0; @@ -1011,7 +1012,7 @@ char *emu_get_save_fname(int load, int is_sram, int slot) return NULL; } -int emu_check_save_file(int slot) +int emu_check_save_file(int slot, int *time) { return emu_get_save_fname(1, 0, slot) ? 1 : 0; } @@ -1238,7 +1239,7 @@ static void run_events_ui(unsigned int which) if (which & (PEV_STATE_LOAD|PEV_STATE_SAVE)) { int do_it = 1; - if ( emu_check_save_file(state_slot) && + if ( emu_check_save_file(state_slot, NULL) && (((which & PEV_STATE_LOAD) && (currentConfig.confirm_save & EOPT_CONFIRM_LOAD)) || ((which & PEV_STATE_SAVE) && (currentConfig.confirm_save & EOPT_CONFIRM_SAVE))) ) { @@ -1291,7 +1292,7 @@ static void run_events_ui(unsigned int which) } emu_status_msg("SAVE SLOT %i [%s]", state_slot, - emu_check_save_file(state_slot) ? "USED" : "FREE"); + emu_check_save_file(state_slot, NULL) ? "USED" : "FREE"); } if (which & PEV_MENU) engineState = PGS_Menu; @@ -1356,6 +1357,7 @@ void emu_cmn_forced_frame(int no_scale, int do_emu) memset32(g_screen_ptr, 0, g_screen_width * g_screen_height * 2 / 4); + PicoOpt &= ~POPT_ALT_RENDERER; PicoOpt |= POPT_ACC_SPRITES; if (!no_scale) PicoOpt |= POPT_EN_SOFTSCALE;