@@ -748,6 +748,110 @@ static INPUT_PORTS_START( strkforc )
748748INPUT_PORTS_END
749749
750750
751+ static INPUT_PORTS_START( saurnfrnt )
752+ PORT_START(" IN0" )
753+ PORT_BIT( 0x0001 , IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1 )
754+ PORT_BIT( 0x0002 , IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1 )
755+ PORT_BIT( 0x0004 , IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1 )
756+ PORT_BIT( 0x0008 , IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1 )
757+ PORT_BIT( 0x0010 , IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME(" P1 Fire" ) PORT_PLAYER(1 )
758+ PORT_BIT( 0x0020 , IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME(" P1 Weapon" ) PORT_PLAYER(1 )
759+ PORT_BIT( 0x0040 , IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME(" P1 Weapon Select" ) PORT_PLAYER(1 )
760+ PORT_BIT( 0x0080 , IP_ACTIVE_LOW, IPT_UNUSED )
761+ PORT_BIT( 0x0100 , IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2 )
762+ PORT_BIT( 0x0200 , IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2 )
763+ PORT_BIT( 0x0400 , IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2 )
764+ PORT_BIT( 0x0800 , IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2 )
765+ PORT_BIT( 0x1000 , IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME(" P2 Fire" ) PORT_PLAYER(2 )
766+ PORT_BIT( 0x2000 , IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME(" P2 Weapon" ) PORT_PLAYER(2 )
767+ PORT_BIT( 0x4000 , IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME(" P1 Weapon Select" ) PORT_PLAYER(2 )
768+ PORT_BIT( 0x8000 , IP_ACTIVE_LOW, IPT_UNUSED )
769+
770+ PORT_START(" IN1" )
771+ PORT_BIT( 0x0001 , IP_ACTIVE_LOW, IPT_COIN1 )
772+ PORT_BIT( 0x0002 , IP_ACTIVE_LOW, IPT_COIN2 )
773+ PORT_BIT( 0x0004 , IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME(" P1 Start / Transform" )
774+ PORT_BIT( 0x0008 , IP_ACTIVE_LOW, IPT_TILT ) // Slam Switch
775+ PORT_SERVICE( 0x0010 , IP_ACTIVE_LOW )
776+ PORT_BIT( 0x0020 , IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME(" P2 Start / Transform" )
777+ PORT_BIT( 0x0040 , IP_ACTIVE_LOW, IPT_SERVICE1 )
778+ PORT_BIT( 0x0080 , IP_ACTIVE_LOW, IPT_COIN3 )
779+ PORT_BIT( 0x0100 , IP_ACTIVE_LOW, IPT_UNUSED )
780+ PORT_BIT( 0x0200 , IP_ACTIVE_LOW, IPT_COIN4 )
781+ PORT_BIT( 0xfc00 , IP_ACTIVE_LOW, IPT_UNUSED )
782+
783+ PORT_START(" IN2" )
784+ PORT_BIT( 0xffff , IP_ACTIVE_LOW, IPT_UNKNOWN )
785+
786+ PORT_START(" DSW" )
787+ PORT_DIPNAME( 0x00e0 , 0x00e0 , DEF_STR( Difficulty )) PORT_DIPLOCATION(" DS1:3,2,1" )
788+ PORT_DIPSETTING( 0x0060 , " Level 0" )
789+ PORT_DIPSETTING( 0x0020 , " Level 1" )
790+ PORT_DIPSETTING( 0x0040 , " Level 2" )
791+ PORT_DIPSETTING( 0x0000 , " Level 3" )
792+ PORT_DIPSETTING( 0x0080 , " Level 4" )
793+ PORT_DIPSETTING( 0x00a0 , " Level 5" )
794+ PORT_DIPSETTING( 0x00c0 , " Level 6" )
795+ PORT_DIPSETTING( 0x00e0 , " Level 7" )
796+ PORT_DIPNAME( 0x0010 , 0x0010 , DEF_STR( Lives )) PORT_DIPLOCATION(" DS1:4" )
797+ PORT_DIPSETTING( 0x0000 , " 3" )
798+ PORT_DIPSETTING( 0x0010 , " 4" )
799+ PORT_DIPNAME( 0x000c , 0x000c , " Points for Extra Ship" ) PORT_DIPLOCATION(" DS1:6,5" )
800+ PORT_DIPSETTING( 0x0004 , " 40000" )
801+ PORT_DIPSETTING( 0x0000 , " 50000" )
802+ PORT_DIPSETTING( 0x0008 , " 750000" )
803+ PORT_DIPSETTING( 0x000c , " 100000" )
804+ PORT_DIPNAME( 0x0002 , 0x0002 , " Credits to Start" ) PORT_DIPLOCATION(" DS1:7" )
805+ PORT_DIPSETTING( 0x0002 , " 1" )
806+ PORT_DIPSETTING( 0x0000 , " 2" )
807+ PORT_DIPNAME( 0x0001 , 0x0001 , " Coin Meter" ) PORT_DIPLOCATION(" DS1:8" )
808+ PORT_DIPSETTING( 0x0001 , " Shared" )
809+ PORT_DIPSETTING( 0x0000 , " Independent" )
810+
811+ PORT_DIPNAME( 0x8000 , 0x0000 , DEF_STR( Free_Play )) PORT_DIPLOCATION(" DS2:1" )
812+ PORT_DIPSETTING( 0x0000 , DEF_STR( Off ))
813+ PORT_DIPSETTING( 0x8000 , DEF_STR( On ))
814+ PORT_DIPNAME( 0x4000 , 0x0000 , " Test Switch" ) PORT_DIPLOCATION(" DS2:2" )
815+ PORT_DIPSETTING( 0x0000 , DEF_STR( Off ))
816+ PORT_DIPSETTING( 0x4000 , DEF_STR( On ))
817+ PORT_DIPNAME( 0x3f00 , 0x3600 , DEF_STR( Coinage )) PORT_DIPLOCATION(" DS2:8,7,6,5,4,3" )
818+ PORT_DIPSETTING( 0x3600 , " USA 1" )
819+ PORT_DIPSETTING( 0x3700 , " USA 2" )
820+ PORT_DIPSETTING( 0x3800 , " USA 3" )
821+ PORT_DIPSETTING( 0x2a00 , " Australia 1" )
822+ PORT_DIPSETTING( 0x2d00 , " Austria" )
823+ PORT_DIPSETTING( 0x2e00 , " Belgium 1" )
824+ PORT_DIPSETTING( 0x2f00 , " Belgium 2" )
825+ PORT_DIPSETTING( 0x3500 , " Denmark" )
826+ PORT_DIPSETTING( 0x3c00 , " France 1" )
827+ PORT_DIPSETTING( 0x3d00 , " France 2" )
828+ PORT_DIPSETTING( 0x3e00 , " France 3" )
829+ PORT_DIPSETTING( 0x3300 , " Findland" )
830+ PORT_DIPSETTING( 0x3900 , " German 1" )
831+ PORT_DIPSETTING( 0x3a00 , " German 2" )
832+ PORT_DIPSETTING( 0x3b00 , " German 3" )
833+ PORT_DIPSETTING( 0x2500 , " Italy 1" )
834+ PORT_DIPSETTING( 0x2b00 , " Japan 1" )
835+ PORT_DIPSETTING( 0x2c00 , " Japan 2" )
836+ PORT_DIPSETTING( 0x3200 , " Netherlands" )
837+ PORT_DIPSETTING( 0x3100 , " New Zealand" )
838+ PORT_DIPSETTING( 0x3400 , " Norway" )
839+ PORT_DIPSETTING( 0x2900 , " Spain 1" )
840+ PORT_DIPSETTING( 0x3000 , " Sweden 1" )
841+ PORT_DIPSETTING( 0x3f00 , " Swiss 1" )
842+ PORT_DIPSETTING( 0x2600 , " U.K. 1" )
843+ PORT_DIPSETTING( 0x2700 , " U.K. 2" )
844+ PORT_DIPSETTING( 0x2800 , " U.K. 3" )
845+ PORT_DIPSETTING( 0x2400 , " Swiss 1" )
846+
847+ PORT_START(" UNK0" )
848+ PORT_BIT( 0xffff , IP_ACTIVE_LOW, IPT_UNKNOWN )
849+
850+ PORT_START(" UNK1" )
851+ PORT_BIT( 0xffff , IP_ACTIVE_LOW, IPT_UNKNOWN )
852+ INPUT_PORTS_END
853+
854+
751855static INPUT_PORTS_START( mkla4 )
752856 PORT_START(" IN0" )
753857 PORT_BIT( 0x0001 , IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1 )
@@ -2751,6 +2855,38 @@ ROM_START( strkforc )
27512855ROM_END
27522856
27532857
2858+ ROM_START( saurnfrnt )
2859+ ROM_REGION( 0x90000 , " cvsd:cpu" , 0 ) // sound CPU
2860+ ROM_LOAD ( " pa1_saurian_front_sound_rom_u4.u4" , 0x10000 , 0x10000 , CRC(f22a09b8) SHA1(bf8d627b07c76365cff2ba36cb87ac55bbd6e9d1) )
2861+ ROM_RELOAD( 0x20000 , 0x10000 )
2862+ ROM_LOAD ( " pa1_saurian_front_sound_rom_u19.u19" , 0x30000 , 0x10000 , CRC(a2dfce0f) SHA1(d3956e3a5dece19f71fc716b8ca1e74f1953992b) )
2863+ ROM_RELOAD( 0x40000 , 0x10000 )
2864+ ROM_LOAD ( " pa1_saurian_front_sound_rom_u20.u20" , 0x50000 , 0x10000 , CRC(b0e8f6fd) SHA1(a6129428539d0aa5583009ef526bb6f05cab6af4) )
2865+ ROM_RELOAD( 0x60000 , 0x10000 )
2866+
2867+ ROM_REGION16_LE( 0x100000 , " maindata" , 0 ) // 34010 code
2868+ ROM_LOAD16_BYTE( " pa1_saurian_front_game_rom_u105.u105" , 0xc0000 , 0x20000 , CRC(6cd469f3) SHA1(31cacb172edcc3c956ca799d69d695d8741e7029) ) // v5.0 8/07/90 @ 0x32161 of combined ROMs
2869+ ROM_LOAD16_BYTE( " pa1_saurian_front_game_rom_u89.u89" , 0xc0001 , 0x20000 , CRC(bf5188df) SHA1(1b874adb41ceb1e1cce65fb3796b9532eeb0e817) )
2870+
2871+ ROM_REGION( 0x800000 , " gfx" , 0 )
2872+ ROM_LOAD ( " pa1_saurian_front_game_rom_u111.u111" , 0x000000 , 0x20000 , CRC(ee7a733d) SHA1(90ce8f063e22e91f1493a7403875834be359fc89) )
2873+ ROM_LOAD ( " pa1_saurian_front_game_rom_u112.u112" , 0x020000 , 0x20000 , CRC(3a1a0656) SHA1(76faea73ed95a33461cf09359ba3af507988a42f) )
2874+ ROM_LOAD ( " pa1_saurian_front_game_rom_u113.u113" , 0x040000 , 0x20000 , CRC(0cba3a22) SHA1(fd9f6b673d01f3895dc4cf304a6c3abfc05788b0) )
2875+ ROM_LOAD ( " pa1_saurian_front_game_rom_u114.u114" , 0x060000 , 0x20000 , CRC(1cce75a8) SHA1(31cb260b64fc832e04812b12c3078fa1c5d38744) )
2876+
2877+ ROM_LOAD ( " pa1_saurian_front_game_rom_u106.u106" , 0x080000 , 0x20000 , CRC(5d6a6c39) SHA1(683e2fd1c2e1f453273c21b6ed77475a5c176359) )
2878+ ROM_LOAD ( " pa1_saurian_front_game_rom_u107.u107" , 0x0a0000 , 0x20000 , CRC(5d178b62) SHA1(9abfed38ec3629dd1a1b99dba372689d203ebdc4) )
2879+
2880+ ROM_LOAD ( " pa1_saurian_front_game_rom_u95.u95" , 0x200000 , 0x20000 , CRC(8918d0c3) SHA1(c4c84e97556996b7453eb331401f90d9d7a9ea52) )
2881+ ROM_LOAD ( " pa1_saurian_front_game_rom_u96.u96" , 0x220000 , 0x20000 , CRC(6de6e648) SHA1(9d839295c4c5145ed000ee200b5d6029f3be544d) )
2882+ ROM_LOAD ( " pa1_saurian_front_game_rom_u97.u97" , 0x240000 , 0x20000 , CRC(6fba9290) SHA1(a7fbfe971431924797f3eba0496359501d642828) )
2883+ ROM_LOAD ( " pa1_saurian_front_game_rom_u98.u98" , 0x260000 , 0x20000 , CRC(298939f9) SHA1(d47c0baa36f943976a00dd1866b79cb02bf91665) )
2884+
2885+ ROM_LOAD ( " pa1_saurian_front_game_rom_u90.u90" , 0x280000 , 0x20000 , CRC(ff87ab13) SHA1(f51ba3d7879dfe934e4ac872937463bb972f8ac2) )
2886+ ROM_LOAD ( " pa1_saurian_front_game_rom_u91.u91" , 0x2a0000 , 0x20000 , CRC(67bd128a) SHA1(ceca5cec261c5c82d0c9e56b777077fdd5977097) )
2887+ ROM_END
2888+
2889+
27542890ROM_START( mkla4 )
27552891 ROM_REGION( 0x50000 , " adpcm:cpu" , 0 ) // sound CPU
27562892 ROM_LOAD ( " l1_mortal_kombat_u3_sound_rom.u3" , 0x10000 , 0x40000 , CRC(c615844c) SHA1(5732f9053a5f73b0cc3b0166d7dc4430829d5bc7) ) // same data as the "T-Unit" soundboard, but these are labeled L1 vs SL1
@@ -3716,6 +3852,7 @@ GAME( 1991, shimpactp5, shimpact, yunit_cvsd_6bit_slow, shimpact, midyunit_cv
37163852GAME( 1991 , shimpactp4, shimpact, yunit_cvsd_6bit_slow, shimpact, midyunit_cvsd_state, init_shimpact, ROT0, " Midway" , " Super High Impact (prototype, proto 4.0 09/10/91)" , MACHINE_SUPPORTS_SAVE ) // See notes about factory restore above
37173853
37183854GAME( 1991 , strkforc, 0 , yunit_cvsd_4bit_fast, strkforc, midyunit_cvsd_state, init_strkforc, ROT0, " Midway" , " Strike Force (rev 1 02/25/91)" , MACHINE_SUPPORTS_SAVE )
3855+ GAME( 1991 , saurnfrnt, strkforc, yunit_cvsd_4bit_fast, saurnfrnt,midyunit_cvsd_state, init_strkforc, ROT0, " Williams" , " Saurian Front (proto v5.0 8/07/90)" , MACHINE_SUPPORTS_SAVE )
37193856
37203857GAME( 1991 , term2, 0 , term2, term2, term2_state, init_term2, ORIENTATION_FLIP_X, " Midway" , " Terminator 2 - Judgment Day (rev LA4 08/03/92)" , MACHINE_SUPPORTS_SAVE )
37213858GAME( 1991 , term2la3, term2, term2, term2, term2_state, init_term2la3, ORIENTATION_FLIP_X, " Midway" , " Terminator 2 - Judgment Day (rev LA3 03/27/92)" , MACHINE_SUPPORTS_SAVE )
@@ -3735,7 +3872,7 @@ GAME( 1992, mkyturbo, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_ad
37353872GAME( 1992 , mkyturboe, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_adpcm_state, init_mkyturbo, ROT0, " hack" , " Mortal Kombat (Turbo 3.0 08/31/92, hack)" , MACHINE_SUPPORTS_SAVE )
37363873GAME( 1992 , mknifty, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_adpcm_state, init_mkyturbo, ROT0, " hack" , " Mortal Kombat (Nifty Kombo, hack)" , MACHINE_SUPPORTS_SAVE )
37373874GAME( 1992 , mknifty666, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_adpcm_state, init_mkyturbo, ROT0, " hack" , " Mortal Kombat (Nifty Kombo 666, hack)" , MACHINE_SUPPORTS_SAVE )
3738- GAME( 1992 , mkrep, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_adpcm_state, init_mkyturbo , ROT0, " hack" , " Mortal Kombat (Reptile Man hack)" , MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
3875+ GAME( 1992 , mkrep, mk, yunit_adpcm_6bit_fast, mkla4, midyunit_adpcm_state, init_mkrep , ROT0, " hack" , " Mortal Kombat (Reptile Man hack)" , MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
37393876GAME( 1992 , mkyawdim, mk, mkyawdim, mkyawdim, mkyawdim_state, init_mkyawdim, ROT0, " bootleg (Yawdim)" , " Mortal Kombat (Yawdim bootleg, set 1)" , MACHINE_SUPPORTS_SAVE )
37403877GAME( 1992 , mkyawdim2, mk, mkyawdim2, mkyawdim, mkyawdim_state, init_mkyawdim, ROT0, " bootleg (Yawdim)" , " Mortal Kombat (Yawdim bootleg, set 2)" , MACHINE_SUPPORTS_SAVE ) // some sound effects are missing on real pcb
37413878GAME( 1992 , mkyawdim3, mk, mkyawdim, mkyawdim, mkyawdim_state, init_mkyawdim, ROT0, " bootleg (Yawdim)" , " Mortal Kombat (Yawdim bootleg, set 3)" , MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND) // are some sound effects missing/wrong?
0 commit comments