From 66b00736661696b4b95189e517977990004fc1da Mon Sep 17 00:00:00 2001 From: CaH4e3 Date: Tue, 18 Dec 2012 15:34:04 +0000 Subject: [PATCH] fixed crash when four-screen bit is set after CRC check --- src/ines.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ines.cpp b/src/ines.cpp index 76d90bc6..f7c4618e 100644 --- a/src/ines.cpp +++ b/src/ines.cpp @@ -743,7 +743,6 @@ int iNESLoad(const char *name, FCEUFILE *fp, int OverwriteVidMode) { if (head.ROM_type & 8) { Mirroring = 2; - ExtraNTARAM = (uint8*)FCEU_gmalloc(2048); } if ((ROM = (uint8*)FCEU_malloc(ROM_size << 14)) == NULL) @@ -832,9 +831,10 @@ int iNESLoad(const char *name, FCEUFILE *fp, int OverwriteVidMode) { if (VROM_size) SetupCartCHRMapping(0, VROM, VROM_size * 0x2000, 0); - if (Mirroring == 2) + if (Mirroring == 2) { + ExtraNTARAM = (uint8*)FCEU_gmalloc(2048); SetupCartMirroring(4, 1, ExtraNTARAM); - else if (Mirroring >= 0x10) + } else if (Mirroring >= 0x10) SetupCartMirroring(2 + (Mirroring & 1), 1, 0); else SetupCartMirroring(Mirroring & 1, (Mirroring & 4) >> 2, 0);