From 584f4fa5546a494860a02775cc15119f8f1b084a Mon Sep 17 00:00:00 2001 From: FIX94 Date: Fri, 25 Aug 2017 20:45:20 +0200 Subject: [PATCH] small mmc3 bugfix --- main.c | 2 +- mapper/m4.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index 87d28ae..d186ca0 100644 --- a/main.c +++ b/main.c @@ -35,7 +35,7 @@ #define DEBUG_KEY 0 #define DEBUG_LOAD_INFO 1 -static const char *VERSION_STRING = "fixNES Alpha v0.9.6"; +static const char *VERSION_STRING = "fixNES Alpha v0.9.7"; static char window_title[256]; static char window_title_pause[256]; diff --git a/mapper/m4.c b/mapper/m4.c index c7d3801..a6c8964 100644 --- a/mapper/m4.c +++ b/mapper/m4.c @@ -250,9 +250,9 @@ uint8_t m4chrGet8(uint16_t addr) if(m4_chr_bank_flip) addr ^= 0x1000; if(addr < 0x800) - return m4_chrROM[(((m4_CHRBank[0]<<10)+(addr&0x7FF))&m4_chrROMand)|m4_chrROMadd]; + return m4_chrROM[((((m4_CHRBank[0]&~1)<<10)+(addr&0x7FF))&m4_chrROMand)|m4_chrROMadd]; else if(addr < 0x1000) - return m4_chrROM[(((m4_CHRBank[1]<<10)+(addr&0x7FF))&m4_chrROMand)|m4_chrROMadd]; + return m4_chrROM[((((m4_CHRBank[1]&~1)<<10)+(addr&0x7FF))&m4_chrROMand)|m4_chrROMadd]; else if(addr < 0x1400) return m4_chrROM[(((m4_CHRBank[2]<<10)+(addr&0x3FF))&m4_chrROMand)|m4_chrROMadd]; else if(addr < 0x1800)