From 851b4bc733b1d59f070aa4bab20d98474ef1f90d Mon Sep 17 00:00:00 2001 From: Nathaniel Walizer Date: Tue, 4 Feb 2025 08:51:40 -0600 Subject: [PATCH] Don't clobber CHR RAM limit estimation on MMC1 restore --- src/map/mmc1.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/map/mmc1.c b/src/map/mmc1.c index 7da9522..ebe86dc 100644 --- a/src/map/mmc1.c +++ b/src/map/mmc1.c @@ -263,7 +263,9 @@ static int mmc1_state_read(void* _map, const void* data, int base_size = mmc1_state_size(map) - map->chr_ram_lim; int size = base_size + mmc1_chr_ram_size(map); if (size > data_len) size = data_len; - map->chr_ram_lim = data_len - base_size; + if (data_len - base_size > map->chr_ram_lim) { + map->chr_ram_lim = data_len - base_size; + } memcpy(&(map->reg_shift), data, size); mmc1_update_prg(map);