summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author DavidHaywood <28625134+DavidHaywood@users.noreply.github.com>2020-11-02 17:45:23 +0000
committer DavidHaywood <28625134+DavidHaywood@users.noreply.github.com>2020-11-02 17:45:23 +0000
commit42ea8bef23c4af5537d8a538101069c320bc62dc (patch)
treee67225016b5b0af35af3f01b89d52eb871c0318e
parent06832489551c6cb6bb8defe83b4f8cf85d2936b8 (diff)
- fixed out of bounds access in vt1682_alu.cpp
new WORKING machines ----- Plug 'N' Play Rockstar Guitar / Guitar Rock (PAL) [Peter Wilhelmsen, David Haywood, Team Europe] new NOT WORKING clones ----- Zippity (UK) [David Haywood, Team Europe]
-rw-r--r--src/mame/drivers/generalplus_gpl32612.cpp7
-rw-r--r--src/mame/drivers/spg2xx_shredmjr.cpp27
-rw-r--r--src/mame/machine/vt1682_alu.cpp7
-rw-r--r--src/mame/mame.lst2
4 files changed, 30 insertions, 13 deletions
diff --git a/src/mame/drivers/generalplus_gpl32612.cpp b/src/mame/drivers/generalplus_gpl32612.cpp
index 1c9df04d370..4132440e503 100644
--- a/src/mame/drivers/generalplus_gpl32612.cpp
+++ b/src/mame/drivers/generalplus_gpl32612.cpp
@@ -190,6 +190,11 @@ ROM_START( zippity )
ROM_LOAD( "zippity_mt29f2g08aacwp_2cda8015.bin", 0x0000, 0x10800000, CRC(16248b63) SHA1(3607337588a68052ef5c495b496aa3e0449d3eb6) )
ROM_END
+ROM_START( zippityuk )
+ ROM_REGION( 0x10800000, "nandrom", ROMREGION_ERASE00 )
+ ROM_LOAD( "29f2c08aacwp.u2", 0x0000, 0x10800000, CRC(27d172ae) SHA1(9ade19d7aa28fba13581e6879b39e3a7702260b0) )
+ROM_END
+
void generalplus_gpl32612_game_state::nand_init(int blocksize, int blocksize_stripped)
{
uint8_t* rom = memregion("nand")->base();
@@ -241,3 +246,5 @@ CONS( 200?, jak_dchp, 0, 0, gpl32612, gpl32612, generalplus_gp
// Might not belong here, SoC is marked GPL32300A instead, but is still ARM based, and has GPNAND strings
CONS( 201?, zippity, 0, 0, gpl32612, gpl32612, generalplus_gpl32612_game_state, empty_init, "LeapFrog", "Zippity (US)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING)
+// TODO, check if code differs, or just unused areas of the NAND
+CONS( 201?, zippityuk, zippity, 0, gpl32612, gpl32612, generalplus_gpl32612_game_state, empty_init, "LeapFrog", "Zippity (UK)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING)
diff --git a/src/mame/drivers/spg2xx_shredmjr.cpp b/src/mame/drivers/spg2xx_shredmjr.cpp
index f6df4ca0dcb..1ffdcb3f7bd 100644
--- a/src/mame/drivers/spg2xx_shredmjr.cpp
+++ b/src/mame/drivers/spg2xx_shredmjr.cpp
@@ -203,6 +203,11 @@ ROM_START( taikeegr )
ROM_LOAD16_WORD_SWAP( "taikee_guitar.bin", 0x000000, 0x800000, CRC(8cbe2feb) SHA1(d72e816f259ba6a6260d6bbaf20c5e9b2cf7140b) )
ROM_END
+ROM_START( rockstar )
+ ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
+ ROM_LOAD16_WORD_SWAP( "29gl064.bin", 0x000000, 0x800000, CRC(40de50ff) SHA1(b33ae7a3d32911addf833998d7419f4830be5a07) )
+ROM_END
+
ROM_START( shredmjr )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "shredmasterjr.bin", 0x000000, 0x800000, CRC(95a6dcf1) SHA1(44893cd6ebe6b7f33a73817b72ae7be70c3126dc) )
@@ -221,16 +226,24 @@ ROM_END
-// there are multiple versions of this with different songs, was also sold by dreamGEAR as 'Shredmaster Jr.' (different title screen)
-// for the UK version the title screen always shows "Guitar Rock", however there are multiple boxes with different titles and song selections.
-// ROM is glued on the underside and soldered to the PCB, very difficult to remove without damaging.
-CONS( 2007, taikeegr, 0, 0, taikeegrp, taikeegr, shredmjr_game_state, init_taikeegr, "TaiKee", "Rockstar Guitar / Guitar Rock (PAL)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // timing not quite correct yet
-CONS( 2007, shredmjr, taikeegr, 0, shredmjr, taikeegr, shredmjr_game_state, init_taikeegr, "dreamGEAR", "Shredmaster Jr (NTSC)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // ^
-// doesn't have a Senario logo ingame, but does on box.
+
+// These were all sold as different products, use a different sets of songs / presentation styles (2D or perspective gameplay, modified titlescreens etc.)
+// and sometimes even slightly different hardware, so aren't set as clones of each other
+
+// box title not confirmed, Guitar Rock on title screen, has Bon Jovi etc.
+CONS( 2007, taikeegr, 0, 0, taikeegrp, taikeegr, shredmjr_game_state, init_taikeegr, "TaiKee", "Guitar Rock (PAL)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // timing not quite correct yet
+
+// Plug 'N' Play Rockstar Guitar on box, Guitar Rock on title screen, has Manic Street Preachers etc.
+CONS( 2007, rockstar, 0, 0, taikeegrp, taikeegr, shredmjr_game_state, init_taikeegr, "Ultimate Products / TaiKee", "Plug 'N' Play Rockstar Guitar / Guitar Rock (PAL)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // timing not quite correct yet
+
+// dreamGEAR branded presentation, modified hardware (buttons read in a different way) same song seletion as taikeegr
+CONS( 2007, shredmjr, 0, 0, shredmjr, taikeegr, shredmjr_game_state, init_taikeegr, "dreamGEAR", "Shredmaster Jr (NTSC)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // ^
+
+// doesn't have a Senario logo ingame, but does on box. unique song selection
CONS( 200?, guitarst, 0, 0, taikeegr, taikeegr, shredmjr_game_state, init_taikeegr, "Senario", "Guitar Star (US, Senario, NTSC)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // ^
-// this one has a different song selection (same as one in the alt undumped Rockstar Guitar / Guitar Rock. It was sold as a different product, so hasn't been set as a clone.
+// This one has the same songs as 'rockstar' but different game style / presentation.
// Unit found in Ireland "imported by Cathay Product Sourcing Ltd." on the box, with address in Ireland
// ITEM #01109 on instruction sheet, no manufacturer named on either box or instructions
CONS( 200?, guitarstp, 0, 0, taikeegrp, guitarstp,shredmjr_game_state, init_taikeegr, "<unknown>", "Guitar Star (Europe, PAL)", MACHINE_IMPERFECT_TIMING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // ^
diff --git a/src/mame/machine/vt1682_alu.cpp b/src/mame/machine/vt1682_alu.cpp
index 5a1956209f7..59ed242e154 100644
--- a/src/mame/machine/vt1682_alu.cpp
+++ b/src/mame/machine/vt1682_alu.cpp
@@ -283,9 +283,7 @@ void vrt_vt1682_alu_device::alu_oprand_6_mult_w(uint8_t data)
m_alu_out[1] = (result >> 8) & 0xff;
m_alu_out[2] = (result >> 16) & 0xff;
m_alu_out[3] = (result >> 24) & 0xff;
- // 4/5 untouched?
- m_alu_out[6] = 0x00;
- m_alu_out[7] = 0x00;
+ // 4/5 untouched? or set to 0?
}
@@ -345,8 +343,5 @@ void vrt_vt1682_alu_device::alu_oprand_6_div_w(uint8_t data)
m_alu_out[4] = remainder & 0xff;
m_alu_out[5] = (remainder >> 8) & 0xff;
-
- m_alu_out[6] = 0x00;
- m_alu_out[7] = 0x00;
}
}
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index c0a539e02ec..4ed25526608 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -14898,6 +14898,7 @@ jak_dchp
jak_ddhp
jak_prhp
zippity
+zippityuk
@source:geneve.cpp
geneve // 1987 Myarc Geneve 9640
@@ -38336,6 +38337,7 @@ sentx6pd
@source:spg2xx_shredmjr.cpp
taikeegr //
+rockstar
shredmjr //
guitarst
guitarstp