|
|
|
@@ -81,7 +81,7 @@ int nes_cart_load_mem(void* data, int size, nes* sys) { |
|
|
|
LOGE("Failed to allocate mapper data"); |
|
|
|
status = -1; |
|
|
|
} else { |
|
|
|
// Default PGM ROM |
|
|
|
// Default PRG ROM |
|
|
|
if (mem->n_rom_banks > 2) { |
|
|
|
mem->rom_bank[0] = prg_rom_page(mem, 0); |
|
|
|
mem->rom_bank[1] = prg_rom_page(mem, 1); |
|
|
|
@@ -94,6 +94,9 @@ int nes_cart_load_mem(void* data, int size, nes* sys) { |
|
|
|
mem->rom_bank[3] = prg_rom_page(mem, 1); |
|
|
|
} |
|
|
|
|
|
|
|
// Default SRAM bank |
|
|
|
mem->sram_bank = mem->sram; |
|
|
|
|
|
|
|
// PPU Bank 0 - 7: Default pattern tables |
|
|
|
for (int page = 0; page < 8; ++page) { |
|
|
|
mem->ppu.bank[page] = chr_page(&mem->ppu, page); |
|
|
|
@@ -109,11 +112,6 @@ int nes_cart_load_mem(void* data, int size, nes* sys) { |
|
|
|
mem->ppu.bank[page] = mem->ppu.pal_bank; |
|
|
|
} |
|
|
|
|
|
|
|
// Map the SRAM bank to battery-backed SRAM if present |
|
|
|
if (hdr->flags_6 & ines_Flag_Battery) { |
|
|
|
mem->sram_bank = mem->sram; |
|
|
|
} |
|
|
|
|
|
|
|
if (mem->mapper.init) { |
|
|
|
status = mem->mapper.init(&mem->mapper, |
|
|
|
hdr, mem); |
|
|
|
|