From 16290853978c5c2c174e4dae7e8d341b05716fd1 Mon Sep 17 00:00:00 2001 From: Hairo Date: Tue, 13 May 2025 22:26:28 -0400 Subject: Option to use .srm or .sav for SRAM file. --- core.c | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'core.c') diff --git a/core.c b/core.c index 2521b9a..2a1cf5b 100644 --- a/core.c +++ b/core.c @@ -68,8 +68,12 @@ void sram_write(void) { if (!sram_size) { return; } - - content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".sav"); + + if (use_srm == 1) { + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".srm"); + } else { + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".sav"); + } sram_file = fopen(filename, "w"); if (!sram_file) { @@ -98,7 +102,23 @@ void sram_read(void) { return; } - content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".sav"); + if (use_srm == 1) { + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".srm"); + + sram_file = fopen(filename, "r"); + if (!sram_file) { + memset(filename, 0, sizeof(filename)); + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".sav"); + } + } else { + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".sav"); + + sram_file = fopen(filename, "r"); + if (!sram_file) { + memset(filename, 0, sizeof(filename)); + content_based_name(content, filename, MAX_PATH, save_dir, NULL, ".srm"); + } + } sram_file = fopen(filename, "r"); if (!sram_file) { -- cgit v1.2.3