MMC3: Added Aladdin (Super Game) to DB as MMC3A (game crashes with MMC3C IRQ behavior)
This commit is contained in:
parent
5f59dc1a7f
commit
f2091d1175
3 changed files with 675 additions and 664 deletions
|
@ -223,8 +223,12 @@ void GameDatabase::SetGameInfo(uint32_t romCrc, RomData &romData, bool updateRom
|
|||
|
||||
MessageManager::Log("[DB] Mapper: " + std::to_string(info.MapperID) + " Sub: " + std::to_string(GetSubMapper(info)));
|
||||
MessageManager::Log("[DB] System : " + info.System);
|
||||
MessageManager::Log("[DB] Board: " + info.Board);
|
||||
MessageManager::Log("[DB] Chip: " + info.Chip);
|
||||
if(!info.Board.empty()) {
|
||||
MessageManager::Log("[DB] Board: " + info.Board);
|
||||
}
|
||||
if(!info.Chip.empty()) {
|
||||
MessageManager::Log("[DB] Chip: " + info.Chip);
|
||||
}
|
||||
|
||||
if(!info.Mirroring.empty()) {
|
||||
MessageManager::Log("[DB] Mirroring: " + string(info.Mirroring.compare("h") == 0 ? "Horizontal" : "Vertical"));
|
||||
|
|
|
@ -31,6 +31,8 @@ class MMC3 : public BaseMapper
|
|||
uint32_t _cyclesDown;
|
||||
bool _needIrq;
|
||||
|
||||
bool _forceMmc3RevAIrqs;
|
||||
|
||||
struct {
|
||||
uint8_t Reg8000;
|
||||
uint8_t RegA000;
|
||||
|
@ -83,7 +85,7 @@ class MMC3 : public BaseMapper
|
|||
return _chrMode;
|
||||
}
|
||||
|
||||
virtual bool ForceMmc3RevAIrqs() { return false; }
|
||||
virtual bool ForceMmc3RevAIrqs() { return _forceMmc3RevAIrqs; }
|
||||
|
||||
virtual void UpdateMirroring()
|
||||
{
|
||||
|
@ -189,6 +191,10 @@ class MMC3 : public BaseMapper
|
|||
|
||||
virtual void InitMapper()
|
||||
{
|
||||
//Force MMC3A irqs for boards that are known to use the A revision.
|
||||
//Some MMC3B boards also have the A behavior, but currently no way to tell them apart.
|
||||
_forceMmc3RevAIrqs = _databaseInfo.Chip.substr(0, 5).compare("MMC3A") == 0;
|
||||
|
||||
Reset();
|
||||
SetCpuMemoryMapping(0x6000, 0x7FFF, 0, HasBattery() ? PrgMemoryType::SaveRam : PrgMemoryType::WorkRam);
|
||||
UpdateState();
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue