diff --git a/src/gb/core.c b/src/gb/core.c index 7f9d05c4e..c5569979b 100644 --- a/src/gb/core.c +++ b/src/gb/core.c @@ -644,8 +644,10 @@ static void _GBCoreReset(struct mCore* core) { size_t i; for (i = 0; i < sizeof(gbcore->memoryBlocks) / sizeof(*gbcore->memoryBlocks); ++i) { if (gbcore->memoryBlocks[i].id == GB_REGION_CART_BANK0) { + gbcore->memoryBlocks[i].size = gb->memory.romSize; gbcore->memoryBlocks[i].maxSegment = gb->memory.romSize / GB_SIZE_CART_BANK0; } else if (gbcore->memoryBlocks[i].id == GB_REGION_EXTERNAL_RAM) { + gbcore->memoryBlocks[i].size = gb->sramSize; gbcore->memoryBlocks[i].maxSegment = gb->sramSize / GB_SIZE_EXTERNAL_RAM; } else { continue;