From c88e673ebb2f4abfb76914c20f9a08aab24a1e48 Mon Sep 17 00:00:00 2001 From: Brian Troha Date: Wed, 29 Jul 2009 19:25:38 +0000 Subject: [PATCH] adds dip port location to DECO Cassette System driver. Adds game specific settings for: Terranean, Super Astro Fighter, Lock'n'Chase, Pro Golf, Explorer, Tornado, Mission-X, Cluster Buster / Graplop, Night Star, Pro Soccer, Scrum Try, Fighting Ice Hockey and Boulder Dash. [Brian Troha] --- src/mame/drivers/decocass.c | 403 ++++++++++++++++++++++++++++-------- 1 file changed, 318 insertions(+), 85 deletions(-) diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c index 3eeadc4ea5d..37cbc73c399 100644 --- a/src/mame/drivers/decocass.c +++ b/src/mame/drivers/decocass.c @@ -149,82 +149,315 @@ static INPUT_PORTS_START( decocass ) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(2) PORT_START("DSW1") - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x30, 0x30, "Board type" ) /* used by the "bios" */ - PORT_DIPSETTING( 0x00, "old" ) - PORT_DIPSETTING( 0x10, "invalid?" ) - PORT_DIPSETTING( 0x20, "invalid?" ) - PORT_DIPSETTING( 0x30, "new" ) - PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) + PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2") + PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) + PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:3,4") + PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) + PORT_DIPNAME( 0x30, 0x30, "Type of Tape" ) PORT_DIPLOCATION("SW1:5,6") /* Used by the "bios" */ + PORT_DIPSETTING( 0x00, "MT (Big)" ) /* Was listed as "Board Type" with this being "OLD" */ + PORT_DIPSETTING( 0x10, "invalid?" ) + PORT_DIPSETTING( 0x20, "invalid?" ) + PORT_DIPSETTING( 0x30, "MD (Small)" ) /* Was listed as "Board Type" with this being "NEW" */ + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:7") + PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) + PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK) - PORT_START("DSW2") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) + PORT_START("DSW2") /* Start with all Unknown as each can change per game */ + PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW2:1") /* Most Dipswitch Settings sheets show this as "Number of Players" (Lives) */ + PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW2:2") /* Most Dipswitch Settings sheets show 2 & 3 as "Bonus Players" */ + PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW2:3") + PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW2:4") /* Most Dipswitch Settings sheets show 4 (with/without 5) as some form of Diffculty */ + PORT_DIPUNKNOWN_DIPLOC( 0x10, 0x10, "SW2:5") + PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW2:6") /* Most Dipswitch Settings sheets show 6-7 as Country Code, listed as Don't Change */ + PORT_DIPUNKNOWN_DIPLOC( 0x40, 0x40, "SW2:7") + PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x80, "SW2:8") INPUT_PORTS_END static INPUT_PORTS_START( cbtime ) PORT_INCLUDE( decocass ) PORT_MODIFY("DSW2") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) - PORT_DIPSETTING( 0x01, "3" ) - PORT_DIPSETTING( 0x00, "5" ) - PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) - PORT_DIPSETTING( 0x06, "20000" ) - PORT_DIPSETTING( 0x04, "30000" ) - PORT_DIPSETTING( 0x02, "40000" ) - PORT_DIPSETTING( 0x00, "50000" ) - PORT_DIPNAME( 0x08, 0x08, "Enemies" ) - PORT_DIPSETTING( 0x08, "4" ) - PORT_DIPSETTING( 0x00, "6" ) - PORT_DIPNAME( 0x10, 0x10, "End of Level Pepper" ) - PORT_DIPSETTING( 0x10, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x06, "20000" ) + PORT_DIPSETTING( 0x04, "30000" ) + PORT_DIPSETTING( 0x02, "40000" ) + PORT_DIPSETTING( 0x00, "50000" ) + PORT_DIPNAME( 0x08, 0x08, "Enemies" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, "4" ) + PORT_DIPSETTING( 0x00, "6" ) + PORT_DIPNAME( 0x10, 0x10, "End of Level Pepper" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) INPUT_PORTS_END +static INPUT_PORTS_START( cnightst ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x06, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x04, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x02, "Every 70000" ) + PORT_DIPSETTING( 0x00, "30000 Only" ) + PORT_DIPNAME( 0x08, 0x08, "Number of Missles" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, "Few" ) + PORT_DIPSETTING( 0x00, "Many" ) + PORT_DIPNAME( 0x10, 0x10, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, "Slow" ) + PORT_DIPSETTING( 0x00, "Fast" ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( ctornado ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "10000" ) + PORT_DIPSETTING( 0x04, "20000" ) + PORT_DIPSETTING( 0x02, "30000" ) + PORT_DIPNAME( 0x08, 0x08, "Hero Destructor" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x10, 0x10, "Alens' Speed" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, "Slow" ) + PORT_DIPSETTING( 0x00, "Fast" ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cbdash ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "20000" ) + PORT_DIPSETTING( 0x04, "30000" ) + PORT_DIPSETTING( 0x02, "40000" ) + PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") + PORT_DIPSETTING( 0x18, DEF_STR( Normal ) ) /* Number of Diamonds Little, Timer: Long */ + PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) /* Number of Diamonds Little, Timer: Long */ + PORT_DIPSETTING( 0x08, DEF_STR( Harder ) ) /* Number of Diamonds Many, Timer: Short */ + PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) /* Number of Diamonds Many, Timer: Short */ + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cprogolf ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "2" ) + PORT_DIPSETTING( 0x00, "3" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") /* You must shoot equal to or under the listed value for a bonus */ + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x02, "6 Under" ) + PORT_DIPSETTING( 0x04, "3 Under" ) + PORT_DIPSETTING( 0x06, "1 Under" ) + PORT_DIPNAME( 0x08, 0x08, "Number of Strokes" ) PORT_DIPLOCATION("SW2:4") /* You must shoot equal to or under to continue, else you loose a life */ + PORT_DIPSETTING( 0x00, "Par +2" ) + PORT_DIPSETTING( 0x08, "Par +3" ) + PORT_DIPNAME( 0x10, 0x10, "Show Stroke Power/Ball Direction" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( csuperas ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "20000" ) + PORT_DIPSETTING( 0x04, "30000" ) + PORT_DIPSETTING( 0x02, "40000" ) + PORT_DIPNAME( 0x08, 0x08, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cscrtry ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "2" ) + PORT_DIPSETTING( 0x00, "4" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "30000" ) + PORT_DIPSETTING( 0x04, "50000" ) + PORT_DIPSETTING( 0x02, "70000" ) + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + /* Switches 5, 6, 7 & 8 are listed as "Special Purpose" and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cprosocc ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") /* Listed as "Number of Balls" */ + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, "Number of Nice Goal" ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "5" ) + PORT_DIPSETTING( 0x04, "10" ) + PORT_DIPSETTING( 0x02, "20" ) + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x08, DEF_STR( On ) ) + PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Class" */ + PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cterrani ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "3000" ) + PORT_DIPSETTING( 0x04, "5000" ) + PORT_DIPSETTING( 0x02, "7000" ) + PORT_DIPNAME( 0x08, 0x08, "Player's Rocket Movement" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + PORT_DIPNAME( 0x10, 0x10, "Alien Craft Movement" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + /* Switches 6, 7 & 8 are shown as completly blank */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cmissnx ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "5000" ) + PORT_DIPSETTING( 0x04, "10000" ) + PORT_DIPSETTING( 0x02, "15000" ) + PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,5") /* Listed as "Game Level" */ + PORT_DIPSETTING( 0x10, DEF_STR( Very_Easy ) ) + PORT_DIPSETTING( 0x18, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x08, DEF_STR( Difficult ) ) + PORT_DIPSETTING( 0x08, DEF_STR( Very_Difficult ) ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cfghtice ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Very_Difficult ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x04, DEF_STR( Very_Easy ) ) + PORT_DIPSETTING( 0x06, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + PORT_DIPSETTING( 0x02, DEF_STR( Very_Difficult ) ) + PORT_DIPNAME( 0x08, 0x08, "Enemy's Speed" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00, "Fast" ) + PORT_SERVICE_DIPLOC( 0x10, IP_ACTIVE_LOW, "SW2:5" ) /* Listed as Test Mode, but doesn't seem to work??? */ + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( clocknch ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "15000" ) + PORT_DIPSETTING( 0x04, "20000" ) + PORT_DIPSETTING( 0x02, "30000" ) + /* Switches 4, 5, 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cgraplop ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "20000" ) + PORT_DIPSETTING( 0x04, "50000" ) + PORT_DIPSETTING( 0x02, "70000" ) + PORT_DIPNAME( 0x08, 0x08, "Number of UPs" ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x08, "Few" ) + PORT_DIPSETTING( 0x00, "Many" ) + PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5") /* Listed as "Falling Speed" */ + PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + /* Switches 6, 7 & 8 are listed as "Not Used" and "Don't Change" */ +INPUT_PORTS_END + +static INPUT_PORTS_START( cexplore ) + PORT_INCLUDE( decocass ) + + PORT_MODIFY("DSW2") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1") + PORT_DIPSETTING( 0x01, "3" ) + PORT_DIPSETTING( 0x00, "5" ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:2,3") + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + PORT_DIPSETTING( 0x06, "10000" ) + PORT_DIPSETTING( 0x04, "1500000" ) + PORT_DIPSETTING( 0x02, "30000" ) + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4") /* Listed as "Missle" */ + PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Difficult ) ) + PORT_DIPNAME( 0x10, 0x10, "Number of UFOs" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x10, "Few" ) + PORT_DIPSETTING( 0x00, "Many" ) + /* Switches 6, 7 & 8 are listed as "Country Code" A through F and "Don't Change" */ +INPUT_PORTS_END + + static const gfx_layout charlayout = { 8,8, @@ -1093,38 +1326,38 @@ static DRIVER_INIT( decocrom ) GAME( 1981, decocass, 0, decocass, decocass, decocass, ROT270, "Data East Corporation", "DECO Cassette System", GAME_IS_BIOS_ROOT ) GAME( 1981, ctsttape, decocass, ctsttape, decocass, decocass, ROT270, "Data East Corporation", "Test Tape (Cassette)", 0 ) /* 01 */ GAME( 1980, chwy, decocass, chwy, decocass, decocass, ROT270, "Data East Corporation", "Highway Chase (Cassette)", 0 ) -/* 04 */ GAME( 1981, cterrani, decocass, cterrani, decocass, decocass, ROT270, "Data East Corporation", "Terranean (Cassette)", 0 ) +/* 04 */ GAME( 1981, cterrani, decocass, cterrani, cterrani, decocass, ROT270, "Data East Corporation", "Terranean (Cassette)", 0 ) /* 07 */ GAME( 1981, castfant, decocass, castfant, decocass, decocass, ROT270, "Data East Corporation", "Astro Fantasia (Cassette)", 0 ) -/* 09 */ GAME( 1981, csuperas, decocass, csuperas, decocass, decocass, ROT270, "Data East Corporation", "Super Astro Fighter (Cassette)", 0 ) -/* 11 */ GAME( 1981, clocknch, decocass, clocknch, decocass, decocass, ROT270, "Data East Corporation", "Lock'n'Chase (Cassette)", 0 ) -/* 13 */ GAME( 1981, cprogolf, decocass, cprogolf, decocass, decocass, ROT270, "Data East Corporation", "Pro Golf (Cassette)", 0 ) +/* 09 */ GAME( 1981, csuperas, decocass, csuperas, csuperas, decocass, ROT270, "Data East Corporation", "Super Astro Fighter (Cassette)", 0 ) +/* 11 */ GAME( 1981, clocknch, decocass, clocknch, clocknch, decocass, ROT270, "Data East Corporation", "Lock'n'Chase (Cassette)", 0 ) +/* 13 */ GAME( 1981, cprogolf, decocass, cprogolf, cprogolf, decocass, ROT270, "Data East Corporation", "Pro Golf (Cassette)", 0 ) /* 15 */ GAME( 1981, cluckypo, decocass, cluckypo, decocass, decocass, ROT270, "Data East Corporation", "Lucky Poker (Cassette)", 0 ) /* 16 */ GAME( 1981, ctisland, decocass, ctisland, decocass, decocrom, ROT270, "Data East Corporation", "Treasure Island (Cassette, set 1)", 0 ) /* 16 */ GAME( 1981, ctisland2,ctisland, ctisland, decocass, decocrom, ROT270, "Data East Corporation", "Treasure Island (Cassette, set 2)", 0 ) /* 16 */ GAME( 1981, ctisland3,ctisland, ctisland, decocass, decocrom, ROT270, "Data East Corporation", "Treasure Island (Cassette, set 3)", GAME_NOT_WORKING ) /* Different Bitswap? */ -/* 18 */ GAME( 1982, cexplore, decocass, cexplore, decocass, decocass, ROT270, "Data East Corporation", "Explorer (Cassette)", GAME_NOT_WORKING ) +/* 18 */ GAME( 1982, cexplore, decocass, cexplore, cexplore, decocass, ROT270, "Data East Corporation", "Explorer (Cassette)", GAME_NOT_WORKING ) /* 19 */ GAME( 1982, cdiscon1, decocass, cdiscon1, decocass, decocass, ROT270, "Data East Corporation", "Disco No.1 (Cassette)", 0 ) /* 19 */ GAME( 1982, csweetht, cdiscon1, cdiscon1, decocass, decocass, ROT270, "Data East Corporation", "Sweet Heart (Cassette)", 0 ) -/* 20 */ GAME( 1982, ctornado, decocass, ctornado, decocass, decocass, ROT270, "Data East Corporation", "Tornado (Cassette)", 0 ) -/* 21 */ GAME( 1982, cmissnx, decocass, cmissnx, decocass, decocass, ROT270, "Data East Corporation", "Mission-X (Cassette)", 0 ) +/* 20 */ GAME( 1982, ctornado, decocass, ctornado, ctornado, decocass, ROT270, "Data East Corporation", "Tornado (Cassette)", 0 ) +/* 21 */ GAME( 1982, cmissnx, decocass, cmissnx, cmissnx, decocass, ROT270, "Data East Corporation", "Mission-X (Cassette)", 0 ) /* 22 */ GAME( 1982, cptennis, decocass, cptennis, decocass, decocass, ROT270, "Data East Corporation", "Pro Tennis (Cassette)", 0 ) /* 26 */ GAME( 1983, cbtime, decocass, cbtime, cbtime, decocass, ROT270, "Data East Corporation", "Burger Time (Cassette)", 0 ) /* 27 */ GAME( 1982, cburnrub, decocass, cburnrub, decocass, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (Cassette, set 1)", 0 ) /* 27 */ GAME( 1982, cburnrub2,cburnrub, cburnrub, decocass, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (Cassette, set 2)", 0 ) /* 27 */ GAME( 1982, cbnj, cburnrub, cbnj, decocass, decocass, ROT270, "Data East Corporation", "Bump N Jump (Cassette)", 0 ) -/* 28 */ GAME( 1983, cgraplop, decocass, cgraplop, decocass, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (Cassette, set 1)", 0 ) -/* 28 */ GAME( 1983, cgraplop2,cgraplop, cgraplp2, decocass, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (Cassette, set 2)", GAME_NOT_WORKING ) +/* 28 */ GAME( 1983, cgraplop, decocass, cgraplop, cgraplop, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (Cassette, set 1)", 0 ) +/* 28 */ GAME( 1983, cgraplop2,cgraplop, cgraplp2, cgraplop, decocass, ROT270, "Data East Corporation", "Cluster Buster / Graplop (Cassette, set 2)", GAME_NOT_WORKING ) /* 29 */ GAME( 1983, clapapa, decocass, clapapa, decocass, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' / La-Pa-Pa (Cassette)" , 0) /* Displays 'La-Pa-Pa during attract */ -/* 29 */ GAME( 1983, clapapa2, clapapa, clapapa, decocass, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' (Cassette)" , 0) /* Displays 'Rootin' Tootin' during attract */ +/* 29 */ GAME( 1983, clapapa2, clapapa, clapapa, decocass, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' (Cassette)" , 0) /* Displays 'Rootin' Tootin' during attract */ /* 31 */ GAME( 1983, cprobowl, decocass, cprobowl, decocass, decocass, ROT270, "Data East Corporation", "Pro Bowling (Cassette)", 0 ) -/* 32 */ GAME( 1983, cnightst, decocass, cnightst, decocass, decocass, ROT270, "Data East Corporation", "Night Star (Cassette, set 1)", 0 ) -/* 32 */ GAME( 1983, cnightst2,cnightst, cnightst, decocass, decocass, ROT270, "Data East Corporation", "Night Star (Cassette, set 2)", 0 ) -/* 33 */ GAME( 1983, cprosocc, decocass, cprosocc, decocass, decocass, ROT270, "Data East Corporation", "Pro Soccer (Cassette)", 0 ) +/* 32 */ GAME( 1983, cnightst, decocass, cnightst, cnightst, decocass, ROT270, "Data East Corporation", "Night Star (Cassette, set 1)", 0 ) +/* 32 */ GAME( 1983, cnightst2,cnightst, cnightst, cnightst, decocass, ROT270, "Data East Corporation", "Night Star (Cassette, set 2)", 0 ) +/* 33 */ GAME( 1983, cprosocc, decocass, cprosocc, cprosocc, decocass, ROT270, "Data East Corporation", "Pro Soccer (Cassette)", 0 ) /* 37 */ GAME( 1983, czeroize, decocass, czeroize, decocass, decocass, ROT270, "Data East Corporation", "Zeroize (Cassette)", 0 ) -/* 38 */ GAME( 1984, cscrtry, decocass, cscrtry, decocass, decocass, ROT270, "Data East Corporation", "Scrum Try (Cassette, set 1)", 0 ) -/* 38 */ GAME( 1984, cscrtry2, cscrtry, cscrtry, decocass, decocass, ROT270, "Data East Corporation", "Scrum Try (Cassette, set 2)", 0 ) +/* 38 */ GAME( 1984, cscrtry, decocass, cscrtry, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (Cassette, set 1)", 0 ) +/* 38 */ GAME( 1984, cscrtry2, cscrtry, cscrtry, cscrtry, decocass, ROT270, "Data East Corporation", "Scrum Try (Cassette, set 2)", 0 ) /* 39 */ GAME( 1984, cppicf, decocass, cppicf, decocass, decocass, ROT270, "Data East Corporation", "Peter Pepper's Ice Cream Factory (Cassette, set 1)", 0 ) -/* 39 */ GAME( 1984, cppicf2, cppicf, cppicf, decocass, decocass, ROT270, "Data East Corporation", "Peter Pepper's Ice Cream Factory (Cassette, set 2)", 0 ) -/* 40 */ GAME( 1984, cfghtice, decocass, cfghtice, decocass, decocass, ROT270, "Data East Corporation", "Fighting Ice Hockey (Cassette)", 0 ) -/* 44 */ GAME( 1985, cbdash, decocass, cbdash, decocass, decocass, ROT270, "Data East Corporation", "Boulder Dash (Cassette)", 0 ) +/* 39 */ GAME( 1984, cppicf2, cppicf, cppicf, decocass, decocass, ROT270, "Data East Corporation", "Peter Pepper's Ice Cream Factory (Cassette, set 2)", 0 ) +/* 40 */ GAME( 1984, cfghtice, decocass, cfghtice, cfghtice, decocass, ROT270, "Data East Corporation", "Fighting Ice Hockey (Cassette)", 0 ) +/* 44 */ GAME( 1985, cbdash, decocass, cbdash, cbdash, decocass, ROT270, "Data East Corporation", "Boulder Dash (Cassette)", 0 ) GAME( 1985, cflyball, decocass, cflyball, decocass, decocass, ROT270, "Data East Corporation", "Flying Ball (Cassette)", 0 )