mirror of
https://github.com/TomHarte/CLK.git
synced 2025-01-12 15:31:09 +00:00
Added an attempt to distinguish the MegaBoy (now with proper capitalisation) and a test for it.
This commit is contained in:
parent
582da14a14
commit
a6897ebde0
@ -287,6 +287,7 @@ static NSDictionary<NSString *, AtariROMRecord *> *romRecordsBySHA1 = @{
|
|||||||
Record(@"18fac606400c08a0469aebd9b071ae3aec2a3cf2", None, NO) // Math Gran Prix
|
Record(@"18fac606400c08a0469aebd9b071ae3aec2a3cf2", None, NO) // Math Gran Prix
|
||||||
Record(@"aba25089d87cd6fee8d206b880baa5d938aae255", None, NO) // Maze Craze
|
Record(@"aba25089d87cd6fee8d206b880baa5d938aae255", None, NO) // Maze Craze
|
||||||
Record(@"0ae118373c7bda97da2f8d9c113e1e09ea7e49e1", None, NO) // Mega Force
|
Record(@"0ae118373c7bda97da2f8d9c113e1e09ea7e49e1", None, NO) // Mega Force
|
||||||
|
Record(@"46977baf0e1ee6124b524258879c46f80d624fae", MegaBoy, NO) // MegaBoy
|
||||||
Record(@"9c5748b38661dbadcbc9cd1ec6a6b0c550b0e3da", None, NO) // MegaMania
|
Record(@"9c5748b38661dbadcbc9cd1ec6a6b0c550b0e3da", None, NO) // MegaMania
|
||||||
Record(@"debb1572eadb20beb0e4cd2df8396def8eb02098", None, NO) // Meltdown
|
Record(@"debb1572eadb20beb0e4cd2df8396def8eb02098", None, NO) // Meltdown
|
||||||
Record(@"7fcf95459ea597a332bf5b6f56c8f891307b45b4", Atari16k, NO) // Midnight Magic
|
Record(@"7fcf95459ea597a332bf5b6f56c8f891307b45b4", Atari16k, NO) // Midnight Magic
|
||||||
|
@ -116,6 +116,14 @@ static void DeterminePagingFor16kCartridge(StaticAnalyser::Target &target, const
|
|||||||
if(mnetwork_access_count > atari_access_count) target.atari.paging_model = StaticAnalyser::Atari2600PagingModel::MNetwork;
|
if(mnetwork_access_count > atari_access_count) target.atari.paging_model = StaticAnalyser::Atari2600PagingModel::MNetwork;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void DeterminePagingFor64kCartridge(StaticAnalyser::Target &target, const Storage::Cartridge::Cartridge::Segment &segment, const StaticAnalyser::MOS6502::Disassembly &disassembly)
|
||||||
|
{
|
||||||
|
// make an assumption that this is a Tigervision if there is a write to 3F
|
||||||
|
target.atari.paging_model =
|
||||||
|
(disassembly.external_stores.find(0x3f) != disassembly.external_stores.end()) ?
|
||||||
|
StaticAnalyser::Atari2600PagingModel::Tigervision : StaticAnalyser::Atari2600PagingModel::MegaBoy;
|
||||||
|
}
|
||||||
|
|
||||||
static void DeterminePagingForCartridge(StaticAnalyser::Target &target, const Storage::Cartridge::Cartridge::Segment &segment)
|
static void DeterminePagingForCartridge(StaticAnalyser::Target &target, const Storage::Cartridge::Cartridge::Segment &segment)
|
||||||
{
|
{
|
||||||
if(segment.data.size() == 2048)
|
if(segment.data.size() == 2048)
|
||||||
@ -154,6 +162,9 @@ static void DeterminePagingForCartridge(StaticAnalyser::Target &target, const St
|
|||||||
case 32768:
|
case 32768:
|
||||||
target.atari.paging_model = StaticAnalyser::Atari2600PagingModel::Atari32k;
|
target.atari.paging_model = StaticAnalyser::Atari2600PagingModel::Atari32k;
|
||||||
break;
|
break;
|
||||||
|
case 65536:
|
||||||
|
DeterminePagingFor64kCartridge(target, segment, disassembly);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -36,7 +36,7 @@ enum class Atari2600PagingModel {
|
|||||||
Tigervision,
|
Tigervision,
|
||||||
CBSRamPlus,
|
CBSRamPlus,
|
||||||
MNetwork,
|
MNetwork,
|
||||||
Megaboy,
|
MegaBoy,
|
||||||
Pitfall2
|
Pitfall2
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user