X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=fceu.git;a=blobdiff_plain;f=state.c;h=106d5edb4e972b1a4ae16d6d1187c5255941e5f1;hp=5e4308d62670b5884a796aa215e2534d0bd8b4c9;hb=4fdfab079f3f006ae215ab453072a25588aa951d;hpb=92e249b10ad9e479eddb18974555366dba725ef3 diff --git a/state.c b/state.c index 5e4308d..106d5ed 100644 --- a/state.c +++ b/state.c @@ -330,19 +330,9 @@ void SaveState(void) } static int LoadStateOld(FILE *st); -void LoadState(void) +int FCEUSS_LoadFP(FILE *st, int make_backup) { int x; - FILE *st=NULL; - - if(geniestage==1) - { - FCEU_DispMessage("Cannot load FCS in GG screen."); - return; - } - - st=fopen(FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0),"rb"); - if(st!=NULL) { uint8 header[16]; @@ -381,9 +371,27 @@ void LoadState(void) lerror: FCEU_DispMessage("State %d load error.",CurrentState); SaveStateStatus[CurrentState]=0; - return; + return 0; + } + return 1; +} + +void LoadState(void) +{ + FILE *st=NULL; + + if(geniestage==1) + { + FCEU_DispMessage("Cannot load FCS in GG screen."); + return; + } + + st=fopen(FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0),"rb"); + if (st) + { + FCEUSS_LoadFP(st, 0); + fclose(st); } - fclose(st); } char SaveStateStatus[10];