summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Roberto Fresca <robbie@robertofresca.com>2026-01-04 22:43:00 +0100
committer Roberto Fresca <robbie@robertofresca.com>2026-01-04 22:43:00 +0100
commit4d74ed86a2a4c6d9ac3d27d158e76761dda3fc94 (patch)
treee79c416fbfc155f2a0c3b255e74495317c1d28ac
parent4ec73aac8feaa22569c15cd596fd56ac32262a33 (diff)
Partially descrambling the Cherry Bonus III (ver.3.0) program.
New clones marked not working ----------------------------- Cherry Bonus III (ver.2.20) [Roberto Fresca, Grull Osgo, Ioannis Bampoulas]
-rw-r--r--src/mame/igs/goldstar.cpp45
-rw-r--r--src/mame/mame.lst1
2 files changed, 45 insertions, 1 deletions
diff --git a/src/mame/igs/goldstar.cpp b/src/mame/igs/goldstar.cpp
index 4373accc856..1670db74ea9 100644
--- a/src/mame/igs/goldstar.cpp
+++ b/src/mame/igs/goldstar.cpp
@@ -17908,7 +17908,15 @@ ROM_END
*/
ROM_START( cb3i )
ROM_REGION( 0x10000, "maincpu", 0 )
- ROM_LOAD( "dyna.ic5", 0x00000, 0x10000, CRC(89924713) SHA1(f1334772f4855b492f3de6621803c02f018331a5) )
+ ROM_LOAD( "dyna.ic5", 0x0000, 0x1000, CRC(89924713) SHA1(f1334772f4855b492f3de6621803c02f018331a5) )
+ ROM_CONTINUE( 0x7000, 0x1000) // 1000 to 7000
+ ROM_CONTINUE( 0x1000, 0x1000) // 2000 to 6000 ok
+ ROM_CONTINUE( 0x5000, 0x1000) // 3000 to 5000 ok
+ ROM_CONTINUE( 0x2000, 0x1000) // 4000 to 2000 ok
+ ROM_CONTINUE( 0x4000, 0x1000) // 5000 to 4000
+ ROM_CONTINUE( 0x3000, 0x1000) // 6000 to 3000 ok
+ ROM_CONTINUE( 0x6000, 0x1000) // 7000 to 1000 ok
+ ROM_CONTINUE( 0x8000, 0x8000)
ROM_REGION( 0x18000, "gfx1", 0 )
ROM_LOAD( "dyna.h7", 0x00000, 0x08000, CRC(83650a94) SHA1(e79420ab559d3f74013708767ca3f238fd333fb7) )
@@ -17934,6 +17942,40 @@ ROM_START( cb3i )
ROM_END
/*
+ Cherry Bonus III
+ v2.20
+
+ Main + daughterbord
+
+*/
+ROM_START( cb3j )
+ ROM_REGION( 0x10000, "maincpu", 0 ) // daughterboard
+ ROM_LOAD( "cb3s_v2.20.ic5", 0x00000, 0x10000, CRC(a8379120) SHA1(b31a2f65d610bd24a714e9455d917a8b9c9c452d) )
+
+ ROM_REGION( 0x18000, "gfx1", 0 )
+ ROM_LOAD( "rom5.bin", 0x00000, 0x08000, CRC(83650a94) SHA1(e79420ab559d3f74013708767ca3f238fd333fb7) )
+ ROM_LOAD( "rom6.bin", 0x08000, 0x08000, CRC(2f46a3f5) SHA1(3e6022ee8f84039e48f41aea5e68ee28aabdc556) )
+ ROM_LOAD( "rom7.bin", 0x10000, 0x08000, CRC(dcf97517) SHA1(0a29696e0464c8878c499b1786a17080fd088a72) )
+
+ ROM_REGION( 0x8000, "gfx2", 0 )
+ ROM_LOAD( "rom1.bin", 0x00000, 0x02000, CRC(7cc6d26b) SHA1(de33e8985affce7bd3ead89463117c9aaa93d5e4) )
+ ROM_LOAD( "rom2.bin", 0x02000, 0x02000, CRC(e73ea4e3) SHA1(c9fd56461f6986d6bc170403d298fcc408a524e9) )
+ ROM_LOAD( "rom3.bin", 0x04000, 0x02000, CRC(91162010) SHA1(3acc21e7074602b247f2f392eb181802092d2f21) )
+ ROM_LOAD( "rom4.bin", 0x06000, 0x02000, CRC(cbcc6bfb) SHA1(5bafc934fef1f50d8c182c39d3a7ce795c89d175) )
+
+ ROM_REGION( 0x200, "proms", 0 )
+ ROM_LOAD_NIB_LOW( "n82s129.13g", 0x0000, 0x0100, CRC(59ac98e4) SHA1(5fc0f1a48c49c956cdb8826e20663dc57a9175e4) ) // 1st bank colors, low 4 bits.
+ ROM_LOAD_NIB_HIGH( "n82s129.14g", 0x0000, 0x0100, CRC(0d8f35bd) SHA1(0c2a0145cdaaf9beabdce241731a36b0c65f18a2) ) // 1st bank colors, high 4 bits.
+ ROM_LOAD( "dm74s288.13d", 0x0080, 0x0020, CRC(77a85e21) SHA1(3b41e0ab7cc55c5d78914d23e8289383f5bd5654) ) // 2nd bank colors
+
+ ROM_REGION( 0x100, "unkprom", 0 )
+ ROM_LOAD( "n82s129.3f", 0x0000, 0x0100, CRC(1d668d4a) SHA1(459117f78323ea264d3a29f1da2889bbabe9e4be) )
+
+ ROM_REGION( 0x20, "unkprom2", 0 )
+ ROM_LOAD( "dm74s288.12d", 0x0000, 0x0020, CRC(6df3f972) SHA1(0096a7f7452b70cac6c0752cb62e24b643015b5c) )
+ROM_END
+
+/*
Original Wing W4 PCB + Dyna D9005 subboard with Z80,
ROM, RAM and Xilinx. Dumper says GFX ROMs are identical
to many other sets.
@@ -33674,6 +33716,7 @@ GAMEL( 199?, cb3f, ncb3, ncb3, ncb3, cb3_state, init_cb3f
GAMEL( 199?, cb3g, ncb3, ncb3, ncb3, cb3_state, init_cb3g, ROT0, "Dyna", "Cherry Bonus III (ver.1.40, set 6)", 0, layout_cherryb3 )
GAMEL( 199?, cb3h, ncb3, ncb3, ncb3, cb3_state, init_cb3, ROT0, "Dyna", "Cherry Bonus III (ver.1.40, set 7)", 0, layout_cherryb3 )
GAMEL( 1992, cb3i, ncb3, ncb3, ncb3, cb3_state, empty_init, ROT0, "Dyna", "Cherry Bonus III (ver.3.0)", MACHINE_NOT_WORKING, layout_cherryb3 ) // dated 1992 when Dyna CB3 seems to be from 1996 approx.
+GAMEL( 199?, cb3j, ncb3, ncb3, ncb3, cb3_state, empty_init, ROT0, "Dyna", "Cherry Bonus III (ver.2.20)", MACHINE_NOT_WORKING, layout_cherryb3 ) // dated 1992 when Dyna CB3 seems to be from 1996 approx.
GAMEL( 199?, cb3s51, ncb3, ncb3, ncb3, cb3_state, init_cb3g, ROT0, "Dyna", "Cherry Bonus III (ver.5.1)", 0, layout_cherryb3 )
GAMEL( 199?, chryglda, ncb3, cb3e, chrygld, cb3_state, init_cb3e, ROT0, "bootleg", "Cherry Gold I (set 2, encrypted bootleg)", 0, layout_chrygld ) // Runs in CB3e hardware.
GAME( 1994, chryangla, ncb3, chryangla,ncb3, cb3_state, init_chryangla, ROT0, "bootleg (G.C.I.)", "Cherry Angel (encrypted, W-4 hardware)", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION ) // DYNA CB3 V1.40 string, playable, but still has protections
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index f769166ed75..b880e30d134 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -20661,6 +20661,7 @@ cb3f
cb3g
cb3h
cb3i
+cb3j
cb3micro
cb3s51
cbaai