diff --git a/zsnes/src/init.asm b/zsnes/src/init.asm index ec8767b2..dd742202 100644 --- a/zsnes/src/init.asm +++ b/zsnes/src/init.asm @@ -126,6 +126,7 @@ EXTSYM SplittedROM EXTSYM addOnStart EXTSYM addOnSize EXTSYM SPC7PackIndexLoad,SPC7110IndexSize +EXTSYM DumpROMLoadInfo EXTSYM SetaCmdEnable,setaramdata EXTSYM setaaccessbankr8,setaaccessbankw8,setaaccessbankr8a,setaaccessbankw8a @@ -3551,7 +3552,7 @@ NEWSYM convertsram SECTION .data NEWSYM CSStatus, db ' TYPE: ',0 -NEWSYM CSStatus2, db 'INTERLEAVED:No BANK:Lo CHSUM:OK ',0 +NEWSYM CSStatus2, db 'INTERLEAVED:No BANK:Lo CHKSUM:OK ',0 NEWSYM CSStatus3, db 'VIDEO: CRC32: ',0 crc32_table: @@ -3797,6 +3798,9 @@ NEWSYM showinfogui .failed mov dword[CSStatus2+36],'FAIL' .passed + pushad + call DumpROMLoadInfo + popad mov dword[MessageOn],300 mov dword[Msgptr],CSStatus mov eax,[MsgCount] diff --git a/zsnes/src/initc.c b/zsnes/src/initc.c index bda23431..904abe98 100755 --- a/zsnes/src/initc.c +++ b/zsnes/src/initc.c @@ -58,7 +58,6 @@ void Debug_WriteString(char *str) fclose(fp); } - //I want to port over the more complicated //functions from init.asm, or replace with //better versions from NSRT. -Nach @@ -390,10 +389,35 @@ void MirrorROM() NumofBanks = curromspace >> 15; } + //File loading code extern char *ZOpenFileName; bool Header512; + +extern char CSStatus[41]; +extern char CSStatus2[41]; +extern char CSStatus3[41]; +char *lastROMFileName; +void DumpROMLoadInfo() +{ + FILE *fp = 0; + fp = fopen("rominfo.txt", "w"); + if (!fp) { return; } + fputs("This is the info for the last game you ran.\n\nFile: ", fp); + fputs(lastROMFileName, fp); + fputs(" Header: ", fp); + fputs(Header512 ? "Yes\n" : "No\n", fp); + fputs(CSStatus, fp); + fputs("\n", fp); + fputs(CSStatus2, fp); + fputs("\n", fp); + fputs(CSStatus3, fp); + fputs("\n", fp); + fclose(fp); +} + + void loadFile(char *filename) { bool multifile = false; @@ -757,6 +781,8 @@ void loadROM() if (Sup48mbit) { maxromspace += 2097152; } if (Sup16mbit) { maxromspace -= 2097152; } //I don't get it either + lastROMFileName = ZOpenFileName; + if (strlen(ZOpenFileName) >= 5) //Char + ".zip" { char *ext = ZOpenFileName+strlen(ZOpenFileName)-4;