From 22f4172f406243905ad2c7387077ab5a862d8c65 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Fri, 24 Mar 2017 02:13:48 +0100 Subject: [PATCH] We don't need these file I/O functions --- src/cheat.c | 140 +++----------------------------------------------- src/fceu.c | 2 - src/general.c | 7 --- src/state.c | 29 ----------- src/state.h | 3 -- 5 files changed, 6 insertions(+), 175 deletions(-) diff --git a/src/cheat.c b/src/cheat.c index 9ebe329..79be91f 100644 --- a/src/cheat.c +++ b/src/cheat.c @@ -159,146 +159,18 @@ static int AddCheatEntry(char *name, uint32 addr, uint8 val, int compare, int st return(1); } -void FCEU_LoadGameCheats(FILE *override) { - FILE *fp; - uint32 addr; - uint32 val; - uint32 status; - uint32 type; - uint32 compare; - int x; - - char linebuf[2048]; - char *namebuf; - int tc = 0; - char *fn; - - numsubcheats = savecheats = 0; - - if (override) - fp = override; - else { - fn = FCEU_MakeFName(FCEUMKF_CHEAT, 0, 0); - fp = FCEUD_UTF8fopen(fn, "rb"); - free(fn); - if (!fp) return; - } - - while (fgets(linebuf, 2048, fp) > 0) { - char *tbuf = linebuf; - int doc = 0; - - addr = val = compare = status = type = 0; - - if (tbuf[0] == 'S') { - tbuf++; - type = 1; - } else type = 0; - - if (tbuf[0] == 'C') { - tbuf++; - doc = 1; - } - - if (tbuf[0] == ':') { - tbuf++; - status = 0; - } else status = 1; - - if (doc) { - char *neo = &tbuf[4 + 2 + 2 + 1 + 1 + 1]; - if (sscanf(tbuf, "%04x%*[:]%02x%*[:]%02x", &addr, &val, &compare) != 3) - continue; - namebuf = malloc(strlen(neo) + 1); - strcpy(namebuf, neo); - } else { - char *neo = &tbuf[4 + 2 + 1 + 1]; - if (sscanf(tbuf, "%04x%*[:]%02x", &addr, &val) != 2) - continue; - namebuf = malloc(strlen(neo) + 1); - strcpy(namebuf, neo); - } - - for (x = 0; x < strlen(namebuf); x++) { - if (namebuf[x] == 10 || namebuf[x] == 13) { - namebuf[x] = 0; - break; - } else if (namebuf[x] < 0x20) namebuf[x] = ' '; - } - - AddCheatEntry(namebuf, addr, val, doc ? compare : -1, status, type); - tc++; - } - RebuildSubCheats(); - if (!override) - fclose(fp); +void FCEU_LoadGameCheats(FILE *override) +{ + numsubcheats = savecheats = 0; + RebuildSubCheats(); } void FCEU_FlushGameCheats(FILE *override, int nosave) { - if (CheatComp) { + if (CheatComp) + { free(CheatComp); CheatComp = 0; } - if ((!savecheats || nosave) && !override) { /* Always save cheats if we're being overridden. */ - if (cheats) { - struct CHEATF *next = cheats; - for (;; ) { - struct CHEATF *last = next; - next = next->next; - free(last->name); - free(last); - if (!next) break; - } - cheats = cheatsl = 0; - } - } else { - char *fn = 0; - - if (!override) - fn = FCEU_MakeFName(FCEUMKF_CHEAT, 0, 0); - - if (cheats) { - struct CHEATF *next = cheats; - FILE *fp; - - if (override) - fp = override; - else - fp = FCEUD_UTF8fopen(fn, "wb"); - - if (fp) { - for (;; ) { - struct CHEATF *t; - if (next->type) - fputc('S', fp); - if (next->compare >= 0) - fputc('C', fp); - - if (!next->status) - fputc(':', fp); - - if (next->compare >= 0) - fprintf(fp, "%04x:%02x:%02x:%s\n", next->addr, next->val, next->compare, next->name); - else - fprintf(fp, "%04x:%02x:%s\n", next->addr, next->val, next->name); - - free(next->name); - t = next; - next = next->next; - free(t); - if (!next) break; - } - if (!override) - fclose(fp); - } else - FCEUD_PrintError("Error saving cheats."); - cheats = cheatsl = 0; - } else if (!override) - remove(fn); - if (!override) - free(fn); - } - RebuildSubCheats(); /* Remove memory handlers. */ } diff --git a/src/fceu.c b/src/fceu.c index 24952f0..cb3a047 100644 --- a/src/fceu.c +++ b/src/fceu.c @@ -279,7 +279,6 @@ endlseq: FCEU_OpenGenie(); PowerNES(); - FCEUSS_CheckStates(); if (GameInfo->type != GIT_NSF) { FCEU_LoadGamePalette(); @@ -323,7 +322,6 @@ FCEUGI *FCEUI_CopyFamiStart(void) FCEU_OpenGenie(); PowerNES(); - FCEUSS_CheckStates(); if (GameInfo->type != GIT_NSF) { FCEU_LoadGamePalette(); diff --git a/src/general.c b/src/general.c index 0b343cb..b516df8 100644 --- a/src/general.c +++ b/src/general.c @@ -65,13 +65,6 @@ static char *odirs[FCEUIOD__COUNT] = { 0, 0, 0, 0, 0, 0 }; // odirs, odors. ^_^ void FCEUI_SetDirOverride(int which, char *n) { odirs[which] = n; - - /* Rebuild cache of present states/movies. */ - if (GameInfo) - { - if (which == FCEUIOD_STATE) - FCEUSS_CheckStates(); - } } char *FCEU_MakeFName(int type, int id1, char *cd1) diff --git a/src/state.c b/src/state.c index 46bc4a3..6a0c71d 100644 --- a/src/state.c +++ b/src/state.c @@ -242,7 +242,6 @@ endo: return ret; } -int CurrentState = 0; extern int geniestage; void FCEUSS_Save_Mem(void) @@ -316,34 +315,6 @@ void FCEUSS_Load_Mem(void) memstream_close(mem); } -void FCEUSS_CheckStates(void) -{ - MEM_TYPE *st = NULL; - char *fn; - int ssel; - - for (ssel = 0; ssel < 10; ssel++) - { - fn = FCEU_MakeFName(FCEUMKF_STATE, ssel, 0); - - if (fn) - { - st = fopen(fn, "rb"); - free(fn); - } - - if (st) - { - SaveStateStatus[ssel] = 1; - fclose(st); - } - else - SaveStateStatus[ssel] = 0; - } - - CurrentState = 0; -} - void ResetExState(void (*PreSave)(void), void (*PostSave)(void)) { SPreSave = PreSave; diff --git a/src/state.h b/src/state.h index c32c7ef..22893dc 100644 --- a/src/state.h +++ b/src/state.h @@ -31,9 +31,6 @@ int FCEUSS_LoadFP(MEM_TYPE *); void FCEUSS_Load_Mem(void); void FCEUSS_Save_Mem(void); -extern int CurrentState; -void FCEUSS_CheckStates(void); - typedef struct { void *v; uint32 s;