mirror of
https://github.com/RaySollium99/libpicofe.git
synced 2025-09-05 06:47:45 -04:00
always check for .mds and .mds.gz
git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@746 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
parent
7a5f959362
commit
609d0c070d
2 changed files with 38 additions and 29 deletions
59
common/emu.c
59
common/emu.c
|
@ -785,44 +785,53 @@ char *emu_get_save_fname(int load, int is_sram, int slot)
|
|||
|
||||
if (is_sram)
|
||||
{
|
||||
romfname_ext(saveFname, (PicoAHW & PAHW_MCD) ? "brm"PATH_SEP : "srm"PATH_SEP,
|
||||
(PicoAHW & PAHW_MCD) ? ".brm" : ".srm");
|
||||
if (load) {
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
// try in current dir..
|
||||
romfname_ext(saveFname, NULL, (PicoAHW & PAHW_MCD) ? ".brm" : ".srm");
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
return NULL; // give up
|
||||
}
|
||||
strcpy(ext, (PicoAHW & PAHW_MCD) ? ".brm" : ".srm");
|
||||
romfname_ext(saveFname, (PicoAHW & PAHW_MCD) ? "brm"PATH_SEP : "srm"PATH_SEP, ext);
|
||||
if (!load)
|
||||
return saveFname;
|
||||
|
||||
if (try_ropen_file(saveFname))
|
||||
return saveFname;
|
||||
|
||||
romfname_ext(saveFname, NULL, ext);
|
||||
if (try_ropen_file(saveFname))
|
||||
return saveFname;
|
||||
}
|
||||
else
|
||||
{
|
||||
const char *ext_main = (currentConfig.EmuOpt & EOPT_GZIP_SAVES) ? ".mds.gz" : ".mds";
|
||||
const char *ext_othr = (currentConfig.EmuOpt & EOPT_GZIP_SAVES) ? ".mds" : ".mds.gz";
|
||||
ext[0] = 0;
|
||||
if(slot > 0 && slot < 10) sprintf(ext, ".%i", slot);
|
||||
strcat(ext, (currentConfig.EmuOpt & EOPT_GZIP_SAVES) ? ".mds.gz" : ".mds");
|
||||
if (slot > 0 && slot < 10)
|
||||
sprintf(ext, ".%i", slot);
|
||||
strcat(ext, ext_main);
|
||||
|
||||
if (!load) {
|
||||
romfname_ext(saveFname, "mds" PATH_SEP, ext);
|
||||
if (load) {
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
return saveFname;
|
||||
}
|
||||
else {
|
||||
romfname_ext(saveFname, "mds" PATH_SEP, ext);
|
||||
if (try_ropen_file(saveFname))
|
||||
return saveFname;
|
||||
|
||||
romfname_ext(saveFname, NULL, ext);
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
// no gzipped states, search for non-gzipped
|
||||
if (currentConfig.EmuOpt & EOPT_GZIP_SAVES)
|
||||
{
|
||||
if (try_ropen_file(saveFname))
|
||||
return saveFname;
|
||||
|
||||
// try the other ext
|
||||
ext[0] = 0;
|
||||
if(slot > 0 && slot < 10) sprintf(ext, ".%i", slot);
|
||||
strcat(ext, ".mds");
|
||||
if (slot > 0 && slot < 10)
|
||||
sprintf(ext, ".%i", slot);
|
||||
strcat(ext, ext_othr);
|
||||
|
||||
romfname_ext(saveFname, "mds"PATH_SEP, ext);
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
romfname_ext(saveFname, NULL, ext);
|
||||
if (try_ropen_file(saveFname)) return saveFname;
|
||||
}
|
||||
return NULL;
|
||||
if (try_ropen_file(saveFname))
|
||||
return saveFname;
|
||||
}
|
||||
}
|
||||
|
||||
return saveFname;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int emu_check_save_file(int slot)
|
||||
|
|
|
@ -971,7 +971,7 @@ static void draw_savestate_bg(int slot)
|
|||
unsigned short tmp_cram[0x40];
|
||||
unsigned short tmp_vsram[0x40];
|
||||
void *tmp_vram;
|
||||
char *fname;
|
||||
const char *fname;
|
||||
|
||||
fname = emu_get_save_fname(1, 0, slot);
|
||||
if (!fname) return;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue