summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author mamehaze <140764005+mamehaze@users.noreply.github.com>2024-02-17 16:10:55 +0000
committer GitHub <noreply@github.com>2024-02-18 03:10:55 +1100
commit3bf2a9f2ea5d8f2e630673d8308ea3d08ece221c (patch)
tree2998482f22f90e65e919e215969fb7ae5a1aa0c3
parent7099a5c22cc7c0e24f95ad463343d284652fdfb8 (diff)
tcvames/spg29x.cpp : Added SPG290 internal ROM to Mattel HyperScan. (#12033) [ppcasm]
Not hooked up yet, just loaded into memory region.
-rw-r--r--src/mame/tvgames/spg29x.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mame/tvgames/spg29x.cpp b/src/mame/tvgames/spg29x.cpp
index d7fc9cbbb81..8fe1dada319 100644
--- a/src/mame/tvgames/spg29x.cpp
+++ b/src/mame/tvgames/spg29x.cpp
@@ -386,6 +386,9 @@ void spg29x_game_state::machine_reset()
// disable JTAG
m_maincpu->set_state_int(SCORE_CR + 29, 0x20000000);
+
+ // boot from Internal ROM - doesn't currently work as the internal ROM needs to correctly detect the external configuration before booting
+ // m_maincpu->set_state_int(SCORE_PC, 0x8b000000);
}
void spg29x_nand_game_state::machine_reset()
@@ -555,9 +558,11 @@ ROM_START( hyprscan )
ROM_LOAD32_DWORD("hyperscan.bin", 0x000000, 0x100000, CRC(ce346a14) SHA1(560cb747e7193e6781d4b8b0bd4d7b45d3d28690))
ROM_REGION( 0x008000, "spg290", ROMREGION_32BIT | ROMREGION_LE )
- ROM_LOAD32_DWORD("spg290.bin", 0x000000, 0x008000, NO_DUMP) // 256Kbit SPG290 internal ROM
+ ROM_LOAD32_DWORD("spg290.bin", 0x000000, 0x008000, CRC(41aad748) SHA1(3f65f8e88b1c5e9cbc8b39bb3228ebf616aced5a) ) // 256Kbit SPG290 internal ROM
ROM_END
+// the sets below might be using the same SPG290 internal ROM as the above but configured to load from NAND
+// however as the CPU dies were under epoxy globs the exact chip models are not confirmed
ROM_START( jak_bbh )
ROM_REGION( 0x4200000, "nand", 0 ) // ID returned C25A, read as what appears to be a compatible type.
@@ -601,4 +606,5 @@ COMP( 2011, jak_bbsf, 0, 0, spg29x, hyperscan, spg29x_nand_game_stat
COMP( 201?, zonefamf, 0, 0, spg29x, hyperscan, spg29x_zonefamf_game_state, nand_zonefamf,"Zone", "Zone Family Fit", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
-// see also spg29x_lexibook_jg7425.cpp which may or may not belong here
+// the sets in spg29x_lexibook_jg7425.cpp probably also belong here, as they use an SPG293 which has the same peripheral mappings (but they make use of additional features)
+// see emu293 https://github.com/gatecat/emu293