From 25e96d49723a9db38600ef2e577aad10ae68d783 Mon Sep 17 00:00:00 2001 From: Nathaniel Walizer Date: Wed, 5 Feb 2025 07:01:17 -0600 Subject: [PATCH] Don't clobber CHR RAM limit estimation on MMC3 restore --- src/map/mmc3.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/map/mmc3.c b/src/map/mmc3.c index 41d1268..06408c8 100644 --- a/src/map/mmc3.c +++ b/src/map/mmc3.c @@ -376,7 +376,9 @@ static int mmc3_state_read(void* _map, const void* data, int base_size = mmc3_state_size(map) - map->chr_ram_lim; int size = base_size + mmc3_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->r, data, size); uint8_t new_bank_select = map->bank_select;