This commit is contained in:
MetalliC 2014-10-25 21:33:42 +03:00
commit 3ac8c0fc14
3 changed files with 62 additions and 15 deletions

View File

@ -6,7 +6,12 @@
Known issues:
- plunger doesn't work in test mode - bug in the game code?
videopin
- plunger doesn't work in test mode - bug in the game code?
solarwar
- coins not working (free play is default for now)
- needs correct layout file
*************************************************************************/
@ -17,11 +22,6 @@
#include "sound/discrete.h"
void videopin_state::update_plunger()
{
UINT8 val = ioport("IN2")->read();
@ -235,26 +235,26 @@ static INPUT_PORTS_START( videopin )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("DSW") /* IN1 */
PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Coinage ) )
PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Coinage ) ) PORT_DIPLOCATION("DSW:8,7")
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x30, 0x00, DEF_STR( Language ) )
PORT_DIPNAME( 0x30, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("DSW:6,5")
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
PORT_DIPSETTING( 0x10, DEF_STR( German ) )
PORT_DIPSETTING( 0x20, DEF_STR( French ) )
PORT_DIPSETTING( 0x30, DEF_STR( Spanish ) )
PORT_DIPNAME( 0x08, 0x08, "Balls" )
PORT_DIPNAME( 0x08, 0x08, "Balls" ) PORT_DIPLOCATION("DSW:4")
PORT_DIPSETTING( 0x08, "3" )
PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x04, 0x00, "Replay" )
PORT_DIPNAME( 0x04, 0x00, "Replay" ) PORT_DIPLOCATION("DSW:3")
PORT_DIPSETTING( 0x04, "Off (award 80000 points instead)" )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x00, "Extra Ball" )
PORT_DIPNAME( 0x02, 0x00, "Extra Ball" ) PORT_DIPLOCATION("DSW:2")
PORT_DIPSETTING( 0x02, "Off (award 50000 points instead)" )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x01, 0x01, "Replay Level" )
PORT_DIPNAME( 0x01, 0x01, "Replay Level" ) PORT_DIPLOCATION("DSW:1")
PORT_DIPSETTING( 0x00, "180000 (3 balls) / 300000 (5 balls)" )
PORT_DIPSETTING( 0x01, "210000 (3 balls) / 350000 (5 balls)" )
@ -272,6 +272,19 @@ static INPUT_PORTS_START( videopin )
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_NAME("Ball Shooter") PORT_CODE(KEYCODE_DOWN)
INPUT_PORTS_END
static INPUT_PORTS_START( solarwar )
PORT_INCLUDE( videopin )
PORT_MODIFY("DSW")
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("DSW:8,7")
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPUNKNOWN_DIPLOC( 0x30, 0x30, "DSW:6,5" )
PORT_DIPNAME( 0x01, 0x01, "Replay Level" ) PORT_DIPLOCATION("DSW:1")
PORT_DIPSETTING( 0x00, "180000 (3 balls) / 300000 (5 balls)" )
PORT_DIPSETTING( 0x01, "300000 (3 balls) / 500000 (5 balls)" )
INPUT_PORTS_END
/*************************************
@ -395,6 +408,37 @@ ROM_START( videopin )
ROM_LOAD( "9402-01.h4", 0x0000, 0x0100, CRC(b8094b4c) SHA1(82dc6799a19984f3b204ee3aeeb007e55afc8be3) ) /* sync */
ROM_END
ROM_START( solarwar )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD_NIB_LOW ( "36159-01.e0", 0x2000, 0x0400, CRC(0db9f0fc) SHA1(191429a25b43727694f75c0ae9cbff705fbc4d77) )
ROM_LOAD_NIB_HIGH( "36154-01.k0", 0x2000, 0x0400, CRC(64629efc) SHA1(4da3870c35e693ed334502ea17ae023a0073ff85) )
ROM_LOAD_NIB_LOW ( "36160-01.d0", 0x2400, 0x0400, CRC(63a25dee) SHA1(cff0f1c4d381eb99a30f2fe09ff6f42ca994a19f) )
ROM_LOAD_NIB_HIGH( "36155-01.j0", 0x2400, 0x0400, CRC(5fa64f47) SHA1(64e37380be0df761ba81c516592fef87bba30b91) )
ROM_LOAD_NIB_LOW ( "36167-01.h1", 0x2800, 0x0400, CRC(5a85bca8) SHA1(7af9895c2e567d569ed60305fa1245081e346fc1) )
ROM_LOAD_NIB_HIGH( "36166-01.h1", 0x2800, 0x0400, CRC(6ce095a6) SHA1(e3bb534487d3cd0cecccff47c0742de8f951b46c) )
ROM_LOAD_NIB_LOW ( "36161-01.c0", 0x2c00, 0x0400, CRC(a9e2e08f) SHA1(5539a86d4fb69735182762e21cf3cc26d16eff80) )
ROM_LOAD_NIB_HIGH( "36157-01.h0", 0x2c00, 0x0400, CRC(30b6eb18) SHA1(ae819dd97c6a7e26981731e7706cbfa3699b6a0b) )
ROM_LOAD_NIB_LOW ( "36169-01.e1", 0x3000, 0x0400, CRC(f702127c) SHA1(7fb83c616671e4ea9697282a04662ec035d5d8ed) )
ROM_LOAD_NIB_HIGH( "36164-01.k1", 0x3000, 0x0400, CRC(3dcded96) SHA1(eacdf017b08a7c3305fd79430fbbf07292d0cfa0) )
ROM_LOAD_NIB_LOW ( "36163-02.a0", 0x3400, 0x0400, CRC(3e176619) SHA1(9b6a9a5fa02b1d87bdaa43fad8971ff3317b132d) )
ROM_LOAD_NIB_HIGH( "36156-02.h0", 0x3400, 0x0400, CRC(e51363fb) SHA1(c01b263dfd6d448a18ff855a93aa4e48afc6d725) )
ROM_LOAD_NIB_LOW ( "36168-01.f1", 0x3800, 0x0400, CRC(5ccbcf7e) SHA1(10f8932265abe6e62e9f243c653d7fad770a2ff5) )
ROM_LOAD_NIB_HIGH( "36165-01.j1", 0x3800, 0x0400, CRC(e2ee4f7d) SHA1(be2f602a5bcfe404509ac8d6914a03213573b0a6) )
ROM_LOAD_NIB_LOW ( "36162-02.b0", 0x3c00, 0x0400, CRC(cec1baaa) SHA1(15c130b01a7b8b9aa07e01f7c84c4c26494f39d8) )
ROM_RELOAD( 0xfc00, 0x0400 )
ROM_LOAD_NIB_HIGH( "36158-02.f0", 0x3c00, 0x0400, CRC(2606b87e) SHA1(ea72e36837eccf29cd5c82fe9a6a018a1a94730c) )
ROM_RELOAD( 0xfc00, 0x0400 )
ROM_REGION( 0x0200, "gfx1", 0 ) /* tiles */
ROM_LOAD_NIB_LOW ( "34259-01.d5", 0x0000, 0x0200, CRC(6cd98c06) SHA1(48bf077b7abbd2f529a19bdf85700b93014f39f9) )
ROM_LOAD_NIB_HIGH( "34258-01.c5", 0x0000, 0x0200, CRC(91a5f117) SHA1(03ac6b0b3da0ed5faf1ba6695d16918d12ceeff5) )
ROM_REGION( 0x0020, "gfx2", 0 ) /* ball */
ROM_LOAD( "34257-01.m1", 0x0000, 0x0020, CRC(50245866) SHA1(b0692bc8d44f127f6e7182a1ce75a785e22ac5b9) )
ROM_REGION( 0x0100, "proms", 0 )
ROM_LOAD( "9402-01.h4", 0x0000, 0x0100, CRC(b8094b4c) SHA1(82dc6799a19984f3b204ee3aeeb007e55afc8be3) ) /* sync */
ROM_END
/*************************************
@ -404,3 +448,4 @@ ROM_END
*************************************/
GAMEL( 1979, videopin, 0, videopin, videopin, driver_device, 0, ROT270, "Atari", "Video Pinball", 0, layout_videopin )
GAMEL( 1979, solarwar, 0, videopin, solarwar, driver_device, 0, ROT270, "Atari", "Solar War", 0, layout_videopin )

View File

@ -729,7 +729,7 @@ ROM_START( xsleenaj )
ROM_LOAD( "pt-0.ic59", 0x00000, 0x0100, CRC(fed32888) SHA1(4e9330456b20f7198c1e27ca1ae7200f25595599) ) /* BPROM type MB7114E Priority (not used) */
ROM_END
ROM_START( solarwar )
ROM_START( solrwarr )
ROM_REGION( 0x14000, "maincpu", 0 )
ROM_LOAD( "p9-02.ic66", 0x08000, 0x8000, CRC(8ff372a8) SHA1(0fc396e662419fb9cb5bea11748aa8e0e8d072e6) )
ROM_LOAD( "pa-03.ic65", 0x04000, 0x4000, CRC(154f946f) SHA1(25b776eb9c494e5302795ae79e494cbfc7c104b1) )
@ -837,5 +837,5 @@ ROM_END
GAME( 1986, xsleena, 0, xsleena, xsleena, driver_device, 0, ROT0, "Technos Japan (Taito license)", "Xain'd Sleena (World)", 0 )
GAME( 1986, xsleenaj, xsleena, xsleena, xsleena, driver_device, 0, ROT0, "Technos Japan", "Xain'd Sleena (Japan)", 0 )
GAME( 1986, solarwar, xsleena, xsleena, xsleena, driver_device, 0, ROT0, "Technos Japan (Taito / Memetron license)", "Solar-Warrior (US)", 0 )
GAME( 1986, solrwarr, xsleena, xsleena, xsleena, driver_device, 0, ROT0, "Technos Japan (Taito / Memetron license)", "Solar-Warrior (US)", 0 )
GAME( 1986, xsleenab, xsleena, xsleenab, xsleena, driver_device, 0, ROT0, "bootleg", "Xain'd Sleena (bootleg)", 0 )

View File

@ -6849,6 +6849,7 @@ boxer // ?????? prototype 1978 [6502]
wolfpack // ?????? prototype [6502]
mgolf // ?????? prototype 1978 [6502]
videopin // 034253-034267 1979/02 [6502]
solarwar // 036154-036169 1979 [6502]
atarifb4 // 034754 1979/04 [6502]
subs // 033714 1979/05 [6502]
bsktball // 034756-034766 1979/05 [6502]
@ -6857,6 +6858,7 @@ abaseb2 // 034711-034738 1979/06 [6502]
montecar // 035763-035780 1980/04 [6502]
soccer // 035222-035260 1980/04 [6502]
// Atari "Missile Command hardware" games
missile // 035820-035825 (c) 1980, 1 ROM update to rev 2 board
missile2 // 035820-035825 (c) 1980
@ -7782,7 +7784,7 @@ kuniokunb // bootleg
xsleena // TA-0019 (c) 1986 + Taito license
xsleenaj // TA-0019 (c) 1986
xsleenab // bootleg
solarwar // TA-0019 (c) 1986 + Taito / Memetron license
solrwarr // TA-0019 (c) 1986 + Taito / Memetron license
battlane // -0215, -0216 (Data East part number) (c) 1986 + Taito license
battlane2 // -0215, -0216 (Data East part number) (c) 1986 + Taito license
battlane3 // -0215, -0216 (Data East part number) (c) 1986 + Taito license