Hooked up Cobra Command sound ROM. [Jim Hernandez, Aaron Giles]

Also:
From: Xander [xander85@operamail.com]
Sent: Thursday, July 30, 2009 4:55 AM
To: submit@mamedev.org
Subject: cobram3 dip switch (bugs 3352, 3354)

Fixed cobram3 dip switch.

Xander
This commit is contained in:
Aaron Giles 2009-08-02 21:33:05 +00:00
parent 95bce0e30f
commit 422c6c0d60
2 changed files with 78 additions and 3 deletions

View File

@ -300,6 +300,7 @@ static SOUND_START( gottlieb1 )
{
score_sample = 7;
random_offset = 0;
dac_data[0] = dac_data[1] = 0xff;
state_save_register_global_array(machine, votrax_queue);
state_save_register_global(machine, votrax_queuepos);

View File

@ -1462,6 +1462,61 @@ static INPUT_PORTS_START( mach3 )
PORT_INCLUDE(gottlieb2_sound)
INPUT_PORTS_END
static INPUT_PORTS_START( cobram3 )
PORT_START("DSW")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x02, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x08, "5" )
PORT_DIPNAME( 0x14, 0x00, "1st Bonus / 2nd Bonus" )
PORT_DIPSETTING( 0x00, "20000 / None" )
PORT_DIPSETTING( 0x10, "15000 / 30000" )
PORT_DIPSETTING( 0x04, "20000 / 40000" )
PORT_DIPSETTING( 0x14, "30000 / 50000" )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Difficult ) )
PORT_DIPNAME( 0x40, 0x00, "Random 1st Level")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x00, "Self Test")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
PORT_START("IN1")
PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_SERVICE ) PORT_NAME("Select in Service Mode") PORT_CODE(KEYCODE_F1)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN2 )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
PORT_START("IN2") /* trackball H not used */
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN3") /* trackball V not used */
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN4")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_INCLUDE(gottlieb2_sound)
INPUT_PORTS_END
static INPUT_PORTS_START( usvsthem )
PORT_START("DSW")
@ -1950,6 +2005,7 @@ static MACHINE_DRIVER_START( qbert )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( screwloo )
MDRV_IMPORT_FROM(gottlieb2)
@ -1957,6 +2013,17 @@ static MACHINE_DRIVER_START( screwloo )
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( cobram3 )
MDRV_IMPORT_FROM(g2laser)
/* sound hardware */
MDRV_SOUND_MODIFY("dac1")
MDRV_SOUND_ROUTES_RESET()
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_DRIVER_END
/*************************************
*
* ROM definitions
@ -2412,8 +2479,11 @@ ROM_START( cobram3 )
ROM_LOAD( "bh01", 0xc000, 0x2000, CRC(7d86ab08) SHA1(26b7eb089ca3fe3f8b1531316ce8f95e33b380e5) )
ROM_LOAD( "bh00", 0xe000, 0x2000, CRC(c19ad038) SHA1(4d20ae70d8ad1eaa61cb91d7a0cff6932fce30d2) )
ROM_REGION( 0x10000, "audiocpu", ROMREGION_ERASE00 )
ROM_REGION( 0x10000, "speech", ROMREGION_ERASE00 )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "m3drom1.bin", 0xd000, 0x1000, CRC(a6e29212) SHA1(a73aafc2efa99e9ae0aecbb6075a10f7178ac938) )
ROM_REGION( 0x10000, "speech", 0 )
ROM_LOAD( "bh04", 0xe000, 0x2000, CRC(c3f61bc9) SHA1(d02374e6e29238def0cfb01c96c78b206f24d77e) )
ROM_REGION( 0x2000, "bgtiles", 0 )
ROM_LOAD( "bh09", 0x0000, 0x1000, CRC(8c5dfac0) SHA1(5be28f807c4eb9df76a8f7519086ae57953d8c6f) )
@ -2565,18 +2635,22 @@ static DRIVER_INIT( stooges )
memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x05803, 0x05803, 0, 0x07f8, stooges_output_w);
}
static DRIVER_INIT( screwloo )
{
gottlieb_gfxcharlo = 0;
gottlieb_gfxcharhi = 1;
}
static DRIVER_INIT( vidvince )
{
gottlieb_gfxcharlo = 1;
gottlieb_gfxcharhi = 0;
}
/*************************************
*
* Game drivers
@ -2605,7 +2679,7 @@ GAME( 1984, curvebal, 0, gottlieb1, curvebal, romtiles, ROT270, "Mylstar
/* games using rev 2 sound board */
GAME( 1983, screwloo, 0, screwloo, screwloo, screwloo, ROT0, "Mylstar", "Screw Loose (prototype)", 0 )
GAME( 1983, mach3, 0, g2laser, mach3, romtiles, ROT0, "Mylstar", "M.A.C.H. 3", 0 )
GAME( 1984, cobram3, cobra, g2laser, mach3, romtiles, ROT0, "Data East","Cobra Command (M.A.C.H. 3 hardware)", 0 )
GAME( 1984, cobram3, cobra, cobram3, mach3, romtiles, ROT0, "Data East","Cobra Command (M.A.C.H. 3 hardware)", 0 )
GAME( 1984, usvsthem, 0, g2laser, usvsthem, romtiles, ROT0, "Mylstar", "Us vs. Them", 0 )
GAME( 1984, 3stooges, 0, gottlieb2, 3stooges, stooges, ROT0, "Mylstar", "The Three Stooges In Brides Is Brides", 0 )
GAME( 1984, vidvince, 0, gottlieb2, vidvince, vidvince, ROT0, "Mylstar", "Video Vince and the Game Factory (prototype)", GAME_IMPERFECT_GRAPHICS ) // sprite wrapping issues