diff --git a/Machines/MSX/Cartridges/ASCII16kb.hpp b/Machines/MSX/Cartridges/ASCII16kb.hpp index cc2175423..644a9f69e 100644 --- a/Machines/MSX/Cartridges/ASCII16kb.hpp +++ b/Machines/MSX/Cartridges/ASCII16kb.hpp @@ -26,11 +26,11 @@ class ASCII16kbROMSlotHandler: public ROMSlotHandler { break; case 0xc: if(address == 0x6000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x4000, 0x4000); + map_.map(slot_, value * 0x4000, 0x4000, 0x4000); break; case 0xe: if(address == 0x7000 || address == 0x77ff) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x8000, 0x4000); + map_.map(slot_, value * 0x4000, 0x8000, 0x4000); break; } } diff --git a/Machines/MSX/Cartridges/ASCII8kb.hpp b/Machines/MSX/Cartridges/ASCII8kb.hpp index dfc76f4ab..8230ded1d 100644 --- a/Machines/MSX/Cartridges/ASCII8kb.hpp +++ b/Machines/MSX/Cartridges/ASCII8kb.hpp @@ -25,20 +25,20 @@ class ASCII8kbROMSlotHandler: public ROMSlotHandler { confidence_counter_.add_miss(); break; case 0xc: - if(address == 0x6000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x4000, 0x2000); + if(address == 0x6000 || address == 0x60ff) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); + map_.map(slot_, value * 0x2000, 0x4000, 0x2000); break; case 0xd: - if(address == 0x6800) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x6000, 0x2000); + if(address == 0x6800 || address == 0x68ff) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); + map_.map(slot_, value * 0x2000, 0x6000, 0x2000); break; case 0xe: - if(address == 0x7000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x8000, 0x2000); + if(address == 0x7000 || address == 0x70ff) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); + map_.map(slot_, value * 0x2000, 0x8000, 0x2000); break; case 0xf: - if(address == 0x7800) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0xa000, 0x2000); + if(address == 0x7800 || address == 0x78ff) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); + map_.map(slot_, value * 0x2000, 0xa000, 0x2000); break; } } diff --git a/Machines/MSX/Cartridges/Konami.hpp b/Machines/MSX/Cartridges/Konami.hpp index 1fff998ae..a4d7fb594 100644 --- a/Machines/MSX/Cartridges/Konami.hpp +++ b/Machines/MSX/Cartridges/Konami.hpp @@ -26,15 +26,15 @@ class KonamiROMSlotHandler: public ROMSlotHandler { break; case 3: if(address == 0x6000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x6000, 0x2000); + map_.map(slot_, value * 0x2000, 0x6000, 0x2000); break; case 4: if(address == 0x8000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x8000, 0x2000); + map_.map(slot_, value * 0x2000, 0x8000, 0x2000); break; case 5: if(address == 0xa000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0xa000, 0x2000); + map_.map(slot_, value * 0x2000, 0xa000, 0x2000); break; } } diff --git a/Machines/MSX/Cartridges/KonamiWithSCC.hpp b/Machines/MSX/Cartridges/KonamiWithSCC.hpp index 6133b5f12..7ecdfd2af 100644 --- a/Machines/MSX/Cartridges/KonamiWithSCC.hpp +++ b/Machines/MSX/Cartridges/KonamiWithSCC.hpp @@ -27,11 +27,11 @@ class KonamiWithSCCROMSlotHandler: public ROMSlotHandler { break; case 0x0a: if(address == 0x5000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x4000, 0x2000); + map_.map(slot_, value * 0x2000, 0x4000, 0x2000); break; case 0x0e: if(address == 0x7000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0x6000, 0x2000); + map_.map(slot_, value * 0x2000, 0x6000, 0x2000); break; case 0x12: if(address == 0x9000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); @@ -40,7 +40,7 @@ class KonamiWithSCCROMSlotHandler: public ROMSlotHandler { map_.unmap(slot_, 0x8000, 0x2000); } else { scc_is_visible_ = false; - map_.map(slot_, value * 8192, 0x8000, 0x2000); + map_.map(slot_, value * 0x2000, 0x8000, 0x2000); } break; case 0x13: @@ -53,7 +53,7 @@ class KonamiWithSCCROMSlotHandler: public ROMSlotHandler { break; case 0x16: if(address == 0xb000) confidence_counter_.add_hit(); else confidence_counter_.add_equivocal(); - map_.map(slot_, value * 8192, 0xa000, 0x2000); + map_.map(slot_, value * 0x2000, 0xa000, 0x2000); break; } }