Skip to content

Commit

Permalink
use correct/actual S2 sound ROM 1.1 for all game roms >= 1.0, as the …
Browse files Browse the repository at this point in the history
…publically available set is mislabeled (contains solely 1.0 sound ROMs)

to make use of the 'old' S2 1.0 (so what was thought to be 1.1), too, for now use it as additional set with game rom 1.1

thanks mjr for the additional investigation/verification (via the DCS OS version which is greater for the 'new' S2 1.1)
  • Loading branch information
toxieainc committed Apr 13, 2024
1 parent 25a3c31 commit 51d190e
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 45 deletions.
3 changes: 2 additions & 1 deletion release/whatsnew.txt
Expand Up @@ -113,6 +113,7 @@ Bell: Cosmic Flash (sound ROM - might need a redump because it contains an illeg
LTD: Space Poker
WMS: Black Knight 2000: redumped LG-1 (German) version, startup text is no longer corrupt
NBA Fastbreak: Changed 2.1, 2.2 & 2.3 to also use the newer sound ROM S3.0
Scared Stiff: The publically available S2 sound ROM is named 1.1, but actually contains 1.0. Game versions 1.2, 1.4 & 1.5 now use the proper 1.1 S2 ROM.
The Shadow: Fix checksum of LH-6 with wrong text index patch
Zaccaria: Star God (correct sound ROMs)

Expand Down Expand Up @@ -153,7 +154,7 @@ Odin (Prototype)
Pinball Champ (French Speech)
Pin-Bot J-2, J-3 (PEMBOT (no relation)) (MOD)
Royal Flush Deluxe rev. 1
Scared Stiff 1.1
Scared Stiff 1.1, 1.1 with Sound 1.0
Sexy Girl (exact clone of Bally Playboy but using an additional image projector)
Shadow, The LF-4 (French)
Shooting the Rapids (Free Play)
Expand Down
1 change: 1 addition & 0 deletions src/wpc/driver.c
Expand Up @@ -3164,6 +3164,7 @@ DRIVER(ss,01) //WPC-548: 09/96 B Scared Stiff (D0.1R Prototype with s
DRIVER(ss,01b) // 09/96 B Scared Stiff (D0.1R Prototype with sound rev.25 Coin Play)
DRIVER(ss,03) // 09/96 B Scared Stiff (0.3 Prototype)
//DRIVER(ss,10)
DRIVER(ss,11s10) // 09/96 B Scared Stiff (1.1 with sound rev.1.0)
DRIVER(ss,11) // 09/96 B Scared Stiff (1.1)
DRIVER(ss,12) // 10/96 B Scared Stiff (1.2)
//DRIVER(ss,13)
Expand Down
8 changes: 4 additions & 4 deletions src/wpc/s7games.c
Expand Up @@ -179,7 +179,7 @@ Whirl L-O-R-D letters with Magna-Save buttons to improve odds with the mini ball
These new tricks are intended to add fun and to encourage lower playfield play and risk taking. Scoring potential of the new Combo Shots and MB Bonus Frenzy are similar to those of Double Trouble and maxed out bonus in the original game.
*/

// Also note that some of these versions may require different/additional lamp mappings (most likely only the 2013 one)
// Also note that some of these versions may require different/additional lamp mappings (most likely only the 2013 one though)
S7_ROMSTART8088(jngld,nt, "ic14.bin", CRC(714bfdaa) SHA1(6d566578d1f6e445bf66e917699c99e91f4f9aca),
"ic17.532", CRC(bb571a17) SHA1(fb0b7f247673dae0744d4188e1a03749a2237165),
"ic20.716", CRC(dfb4b75a) SHA1(bcf017b01236f755cee419e398bbd8955ae3576a),
Expand All @@ -200,7 +200,7 @@ S67S_SPEECHROMS000x( "speech7.532",CRC(83ffb695) SHA1(f9151bdfdefd5c178ca7e
"speech5.532",CRC(754bd474) SHA1(c05f48bb07085683de469603880eafd28dffd9f5),
"speech6.532",CRC(f2ac6a52) SHA1(5b3e743eac382d571fd049f92ea9955342b9ffa0))
S7_ROMEND
CORE_CLONEDEF(jngld,ntl2b,l2,"Jungle Lord (New Tricks L-2beta)",2021,"idealjoker",s7_mS7S,0)
CORE_CLONEDEF(jngld,ntl2b,l2,"Jungle Lord (New Tricks L-2beta)",2021,"idealjoker",s7_mS7S,0) // rev. 23

// "Fairly important fixes for a couple of light problems; correct EPROM checksums"
S7_ROMSTART8088(jngld,ntl2,"JLnt_L2_U14.bin",CRC(3fdc7726) SHA1(738b6d39aad4d197eb9f5144fa843474514ee50a),
Expand All @@ -212,7 +212,7 @@ S67S_SPEECHROMS000x( "speech7.532",CRC(83ffb695) SHA1(f9151bdfdefd5c178ca7e
"speech5.532",CRC(754bd474) SHA1(c05f48bb07085683de469603880eafd28dffd9f5),
"speech6.532",CRC(f2ac6a52) SHA1(5b3e743eac382d571fd049f92ea9955342b9ffa0))
S7_ROMEND
CORE_CLONEDEF(jngld,ntl2,l2,"Jungle Lord (New Tricks L-2)",2022,"idealjoker",s7_mS7S,0)
CORE_CLONEDEF(jngld,ntl2,l2,"Jungle Lord (New Tricks L-2)",2022,"idealjoker",s7_mS7S,0) // rev. 33?

// The next one is considered a beta as it was still WIP when idealjoker sold his machine,
// but it was also the version he sold it with, so it should(!) be save to have it running on real machines, too
Expand All @@ -227,7 +227,7 @@ S67S_SPEECHROMS000x( "speech7.532",CRC(83ffb695) SHA1(f9151bdfdefd5c178ca7e
"speech5.532",CRC(754bd474) SHA1(c05f48bb07085683de469603880eafd28dffd9f5),
"speech6.532",CRC(f2ac6a52) SHA1(5b3e743eac382d571fd049f92ea9955342b9ffa0))
S7_ROMEND
CORE_CLONEDEF(jngld,ntl3,l2,"Jungle Lord (New Tricks L-3beta)",2022,"idealjoker",s7_mS7S,0)
CORE_CLONEDEF(jngld,ntl3,l2,"Jungle Lord (New Tricks L-3beta)",2022,"idealjoker",s7_mS7S,0) // rev. 33?

/*--------------------------------
/ Pharaoh - Sys.7 (Game #504)
Expand Down
3 changes: 3 additions & 0 deletions src/wpc/se.c
Expand Up @@ -23,6 +23,9 @@ Hardware from 1994-2006
Issues:
DMD Timing is still wrong.. FIRQ rate is variable, and it's not fully understood.
TOPS feature: mainly time keeping upgrade chip, see https://drive.google.com/drive/folders/1yAyZNsNdm2fuIsHeWo1hxn0S0IWW-19d
and https://github.com/mamedev/mame/blob/master/src/devices/machine/timekpr.h
*************************************************************************************************/
#include <stdarg.h>
#include "driver.h"
Expand Down
88 changes: 48 additions & 40 deletions src/wpc/sims/wpc/full/ss.c
Expand Up @@ -23,15 +23,15 @@
- Upper Slingshot
WED Jet Bumpers
C Crate
S Spider Hole
S Spider Hole
JKL Skull Lanes
A Secret Passage
V Extra Ball Lane
V Extra Ball Lane
FGH Leaper Targets
BNM Spell Targets
R Missed Right Ramp Target
T Telepathetic Ratget
Q SDTM (Drain Ball)
T Telepathetic Ratget
Q SDTM (Drain Ball)
------------------------------------------------------------------------------*/

#include "driver.h"
Expand Down Expand Up @@ -63,31 +63,31 @@ WPC_INPUT_PORTS_START(ss,4)
COREPORT_BIT(0x0002,"Right Qualifier", KEYCODE_RCONTROL)
COREPORT_BIT(0x0004,"L/R Ramp", KEYCODE_R)
COREPORT_BIT(0x0008,"L/R Outlane", KEYCODE_O)
COREPORT_BIT(0x0010,"L/R Slingshot", KEYCODE_MINUS)
COREPORT_BIT(0x0010,"L/R Slingshot", KEYCODE_MINUS)
COREPORT_BIT(0x0020,"L/R Inlane", KEYCODE_I)
COREPORT_BIT(0x0040,"L/R Loop", KEYCODE_L)
COREPORT_BIT(0x0080,"Upper Jet", KEYCODE_W)
COREPORT_BIT(0x0080,"Upper Jet", KEYCODE_W)
COREPORT_BIT(0x0100,"Center Jet", KEYCODE_E)
COREPORT_BIT(0x0200,"Lower Jet", KEYCODE_D)
COREPORT_BIT(0x0200,"Lower Jet", KEYCODE_D)
COREPORT_BIT(0x0400,"Upper Slingshot", KEYCODE_MINUS)
COREPORT_BIT(0x0800,"Hit Crate", KEYCODE_C)
COREPORT_BIT(0x0800,"Hit Crate", KEYCODE_C)
COREPORT_BIT(0x1000,"Spider Hole", KEYCODE_S)
COREPORT_BIT(0x2000,"L. Skull Lane", KEYCODE_J)
COREPORT_BIT(0x4000,"C. Skull Lane", KEYCODE_K)
COREPORT_BIT(0x8000,"R. Skull Lane", KEYCODE_L)
COREPORT_BIT(0x2000,"L. Skull Lane", KEYCODE_J)
COREPORT_BIT(0x4000,"C. Skull Lane", KEYCODE_K)
COREPORT_BIT(0x8000,"R. Skull Lane", KEYCODE_L)

PORT_START /* 1 */
COREPORT_BIT(0x0001,"Secret Passage", KEYCODE_A)
COREPORT_BIT(0x0002,"Ex. Ball Lane", KEYCODE_V)
COREPORT_BIT(0x0002,"Ex. Ball Lane", KEYCODE_V)
COREPORT_BIT(0x0008,"Left Leaper", KEYCODE_F)
COREPORT_BIT(0x0004,"Center Leaper", KEYCODE_G)
COREPORT_BIT(0x0004,"Center Leaper", KEYCODE_G)
COREPORT_BIT(0x0010,"Right Leaper", KEYCODE_H)
COREPORT_BIT(0x0020,"Lower Spell", KEYCODE_B)
COREPORT_BIT(0x0040,"Middle Spell", KEYCODE_N)
COREPORT_BIT(0x0080,"Upper Spell", KEYCODE_M)
COREPORT_BIT(0x0100,"Missed Right Ramp", KEYCODE_R)
COREPORT_BIT(0x0100,"Missed Right Ramp",KEYCODE_R)
COREPORT_BIT(0x0200,"Telepathetic", KEYCODE_T)
COREPORT_BIT(0x0400,"Drain", KEYCODE_Q)
COREPORT_BIT(0x0400,"Drain", KEYCODE_Q)

WPC_INPUT_PORTS_END

Expand All @@ -96,16 +96,16 @@ WPC_INPUT_PORTS_END
/--------------------*/
#define swNotUsed0 11
#define swWheelIndex 12
#define swStart 13
#define swTilt 14
#define swStart 13
#define swTilt 14
#define swNotUsed1 15
#define swLeftOutlane 16
#define swRightInlane 17
#define swShooter 18

#define swSlamTilt 21
#define swCoinDoor 22
#define swNotUsed2 23
#define swNotUsed2 23
#define swAlwaysClosed 24
#define swExtraBallLane 25
#define swLeftInlane 26
Expand Down Expand Up @@ -184,7 +184,7 @@ WPC_INPUT_PORTS_END
/ Ball state handling
/----------------------*/
enum {stTrough4=SIM_FIRSTSTATE, stTrough3, stTrough2, stTrough1, stTrough, stDrain,
stShooter, stBallLane, stNotEnough, stRightOutlane, stLeftOutlane, stRightInlane, stLeftInlane, stLeftSling, stRightSling, stUpperJet, stCenterJet, stLowerJet, stUpperSling,
stShooter, stBallLane, stNotEnough, stRightOutlane, stLeftOutlane, stRightInlane, stLeftInlane, stLeftSling, stRightSling, stUpperJet, stCenterJet, stLowerJet, stUpperSling,

stLRampEnter, stLRampDone,
stRRampEnter, stRRampDone,
Expand All @@ -201,7 +201,7 @@ enum {stTrough4=SIM_FIRSTSTATE, stTrough3, stTrough2, stTrough1, stTrough, stDra
stSpiderHole, stLSkullLane, stCSkullLane, stRSkullLane,
stSecretPassage1, stSecretPassage2, stExtraBallLane,
stLowerSpell, stMiddleSpell, stUpperSpell,
stLeftLeaper, stCenterLeaper, stRightLeaper, stRRamp10pt, stTelepathetic
stLeftLeaper, stCenterLeaper, stRightLeaper, stRRamp10pt, stTelepathetic
};

static sim_tState ss_stateDef[] = {
Expand Down Expand Up @@ -300,11 +300,11 @@ static int ss_handleBallState(sim_tBallStatus *ball, int *inports) {
if (ball->speed < 40)
return setState(stSkillHole,10);
if (ball->speed < 51)
return setState(stFree,51); /*Ball goes to stFree*/
return setState(stFree,51); /*Ball goes to stFree*/
break;
}
return 0;
}
return 0;
}

/*---------------------------
/ Keyboard conversion table
Expand Down Expand Up @@ -363,39 +363,46 @@ static void ss_drawStatic(BMTYPE **line) {
/*-----------------
/ ROM definitions
/------------------*/
// Note: The S2 ROM available on ipdb and PP named "_11" actually reports-as/is revision 1.0! (state 04/2024)
// We use the proper revisions for all sound ROMs here instead, thus the checksums may differ with the ones downloaded from there!
WPC_ROMSTART(ss,15,"ss_g11.1_5",0x80000,CRC(5de8d0a0) SHA1(91cdd5f4e1654fd4dbde8b9cb03db935cba5d876))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(1b080a72) SHA1(be80e99e6bcc482379fe99519a4122f3b225be30),
"sssnd_11.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_11.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(964974f1) SHA1(9b86d4c192eadbad85cf7676c74feed08b680581),
"sssnd_10.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_10.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND
WPC_ROMSTART(ss,14,"stiffg11.1_4",0x80000,CRC(17359ed6) SHA1(2ae549064a3666ea8b0b09aff9f5551db906d1d2))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(1b080a72) SHA1(be80e99e6bcc482379fe99519a4122f3b225be30),
"sssnd_11.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_11.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(964974f1) SHA1(9b86d4c192eadbad85cf7676c74feed08b680581),
"sssnd_10.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_10.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND
WPC_ROMSTART(ss,12,"stiffg11.1_2",0x80000,CRC(70eca59c) SHA1(07d50a32a4fb287780c4e6c1cb6fbeba97480219))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(1b080a72) SHA1(be80e99e6bcc482379fe99519a4122f3b225be30),
"sssnd_11.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_11.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
DCS_SOUNDROM3m("sssnd_11.s2",CRC(964974f1) SHA1(9b86d4c192eadbad85cf7676c74feed08b680581),
"sssnd_10.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_10.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND
WPC_ROMSTART(ss,11,"Scared Stiff_11gamerom.bin",0x80000,CRC(210615f4) SHA1(8f376c68d072f9b276d45452133107cdd0a3ea68))
DCS_SOUNDROM3m("Scared Stiff_10_s2.bin",CRC(964974f1) SHA1(9b86d4c192eadbad85cf7676c74feed08b680581),
"sssnd_11.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3), // was dumped as Scared Stiff_10_s3.bin with the 1.1 game rom and 1.0 S2 rom
"sssnd_11.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568)) // was dumped as Scared Stiff_10_s4.bin with the 1.1 game rom and 1.0 S2 rom
DCS_SOUNDROM3m("sssnd_11.s2",CRC(964974f1) SHA1(9b86d4c192eadbad85cf7676c74feed08b680581),
"sssnd_10.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3), // was dumped as Scared Stiff_10_s3.bin with the 1.1 game rom and 1.1 S2 rom
"sssnd_10.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568)) // was dumped as Scared Stiff_10_s4.bin with the 1.1 game rom and 1.1 S2 rom
WPC_ROMEND
// we do not know where Sound S2 1.0 should actually go, as even game 1.0 could've used S2 1.1 (given the dates of both), so we duplicate game 1.1 with it for now!
WPC_ROMSTART(ss,11s10,"Scared Stiff_11gamerom.bin",0x80000,CRC(210615f4) SHA1(8f376c68d072f9b276d45452133107cdd0a3ea68))
DCS_SOUNDROM3m("sssnd_10.s2",CRC(1b080a72) SHA1(be80e99e6bcc482379fe99519a4122f3b225be30),
"sssnd_10.s3",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_10.s4",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND
WPC_ROMSTART(ss,03,"ss_g11.0_3",0x80000,CRC(5b9755d6) SHA1(207d9ea858c76c4991747b401dc83183c1ddf7e4))
DCS_SOUNDROM3m("sssnd_s2.22",CRC(12b92d7a) SHA1(69151ffb5d2befe28e1ed2c8153c2227552b681c),
DCS_SOUNDROM3m("sssnd_s2.22",CRC(12b92d7a) SHA1(69151ffb5d2befe28e1ed2c8153c2227552b681c), // = 0.22, came with the game 0.3 dump like this
"sssnd_s3.21",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_s4.21",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND

// The manual mentions a Sound Rev. D.41 for game D.01R, but we got a 0.25 dump
// The manual mentions a Sound Rev. D.41 for game D.01R, but we actually got a 0.25 dump along with it, so we keep it like this for now
WPC_ROMSTART(ss,01,"ss_g11.rom",0x80000,CRC(affd278f) SHA1(e6f41da169fa15c25cfaac22057f3e491da18fc5))
DCS_SOUNDROM3m("ss_s2.rom", CRC(ad079cbc) SHA1(77c7f676fc2f46e22b74b381638725269f7d23f4),
"sssnd_s3.21",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
"sssnd_s4.21",CRC(258b0a27) SHA1(83763b98907cf38e6f7b9fe4f26ce93a54ba3568))
WPC_ROMEND

WPC_ROMSTART(ss,01b,"ss_g11b.rom",0x80000,CRC(52b96952) SHA1(26ad686e178b2ba5c0a0650db4a9ffa4e615caf1))
DCS_SOUNDROM3m("ss_s2.rom", CRC(ad079cbc) SHA1(77c7f676fc2f46e22b74b381638725269f7d23f4),
"sssnd_s3.21",CRC(c4f2e08a) SHA1(e20ff622a3f475db11f1f44d36a6669e160437a3),
Expand All @@ -409,6 +416,7 @@ CORE_GAMEDEF(ss,15,"Scared Stiff (1.5)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,14,15,"Scared Stiff (1.4)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,12,15,"Scared Stiff (1.2)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,11,15,"Scared Stiff (1.1)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,11s10,15,"Scared Stiff (1.1, Sound 1.0)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,03,15,"Scared Stiff (0.3 Prototype)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,01,15,"Scared Stiff (D.01R Prototype, Sound 0.25)",1996,"Bally",wpc_m95S,0)
CORE_CLONEDEF(ss,01b,15,"Scared Stiff (D.01R Prototype Coin Play, Sound 0.25)",1996,"Bally",wpc_m95S,0)
Expand All @@ -417,11 +425,11 @@ CORE_CLONEDEF(ss,01b,15,"Scared Stiff (D.01R Prototype Coin Play, Sound 0.25)",1
/ Simulation Definitions
/-----------------------*/
static sim_tSimData ssSimData = {
2, /* 2 game specific input ports */
2, /* 2 game specific input ports */
ss_stateDef, /* Definition of all states */
ss_inportData, /* Keyboard Entries */
{ stTrough1, stTrough2, stTrough3, stTrough4, stDrain, stDrain, stDrain }, /*Position where balls start.. Max 7 Balls Allowed*/
ss_initSim, /* init */
ss_initSim, /* init */
ss_handleBallState, /* Function to handle ball state changes*/
ss_drawStatic, /* Function to handle mechanical state changes*/
TRUE, /* Simulate manual shooter */
Expand Down

0 comments on commit 51d190e

Please sign in to comment.