Cosmicmo, cosmicm2 : Turned 2 cabinet switches into 1, and fixed cocktail mode.
This commit is contained in:
parent
f14393d3b5
commit
3ab95208b5
@ -1042,6 +1042,12 @@ MACHINE_CONFIG_END
|
||||
/*******************************************************/
|
||||
/* */
|
||||
/* Universal "Cosmic Monsters" */
|
||||
/* The dipswitches are as stated in the manual, but */
|
||||
/* some of them are incorrect. */
|
||||
/* - You need at the very least 3000 points to get */
|
||||
/* a bonus life. */
|
||||
/* - The cabinet switch does nothing in the cpu, it */
|
||||
/* is all done by wires. */
|
||||
/* */
|
||||
/*******************************************************/
|
||||
|
||||
@ -1063,14 +1069,58 @@ static INPUT_PORTS_START( cosmicmo )
|
||||
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:4")
|
||||
PORT_DIPSETTING( 0x00, "1500" )
|
||||
PORT_DIPSETTING( 0x08, "2500" )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_PLAYER(2)
|
||||
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
|
||||
|
||||
// PORT_MODIFY(CABINET_PORT_TAG)
|
||||
// PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_MODIFY(CABINET_PORT_TAG)
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
INPUT_PORTS_END
|
||||
|
||||
WRITE8_MEMBER(_8080bw_state::cosmicmo_05_w)
|
||||
{
|
||||
invaders_audio_2_w(space, offset, data);
|
||||
m_flip_screen = BIT(data, 5) & BIT(ioport("IN2")->read(), 2);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( cosmicmo_io_map, AS_IO, 8, _8080bw_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0x7)
|
||||
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
|
||||
AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(invrvnge_02_r)
|
||||
AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_DEVREAD_LEGACY("mb14241", mb14241_shift_result_r)
|
||||
|
||||
AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_count_w)
|
||||
AM_RANGE(0x03, 0x03) AM_WRITE(invaders_audio_1_w)
|
||||
AM_RANGE(0x04, 0x04) AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_data_w)
|
||||
AM_RANGE(0x05, 0x05) AM_WRITE(cosmicmo_05_w)
|
||||
AM_RANGE(0x06, 0x06) AM_WRITE(watchdog_reset_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED_CLASS( cosmicmo, mw8080bw_root, _8080bw_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_IO_MAP(cosmicmo_io_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", _8080bw_state, irq0_line_hold)
|
||||
|
||||
MCFG_MACHINE_START_OVERRIDE(_8080bw_state,extra_8080bw)
|
||||
|
||||
MCFG_WATCHDOG_VBLANK_INIT(255)
|
||||
|
||||
/* add shifter */
|
||||
MCFG_MB14241_ADD("mb14241")
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_FRAGMENT_ADD(invaders_audio)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(_8080bw_state, screen_update_invaders)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
/*******************************************************/
|
||||
@ -3747,6 +3797,8 @@ ROM_START( cosmicmo )
|
||||
ROM_LOAD( "cosmicmo.5", 0x4000, 0x0400, CRC(b13f228e) SHA1(a0de05aa36435e72c77f5333f3ad964ec448a8f0) )
|
||||
ROM_LOAD( "cosmicmo.6", 0x4400, 0x0400, CRC(4ae1b9c4) SHA1(8eed87eebe68caa775fa679363b0fe3728d98c34) )
|
||||
ROM_LOAD( "cosmicmo.7", 0x4800, 0x0400, CRC(6a13b15b) SHA1(dc03a6c3e938cfd08d16bd1660899f951ba72ea2) )
|
||||
|
||||
/* The manual says it uses color TV components, which means that proms need dumping */
|
||||
ROM_END
|
||||
|
||||
ROM_START( cosmicm2 )
|
||||
@ -4277,8 +4329,8 @@ GAMEL(1978, invadrmr, invaders, invaders, invadrmr, driver_device, 0, ROT270
|
||||
GAMEL(1978, invaderl, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Logitec", "Space Invaders (Logitec)", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1978, spcewars, invaders, spcewars, spcewars, driver_device, 0, ROT270, "Taito / Sanritsu", "Space War (Sanritsu)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1978, spceking, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Leijac Corporation", "Space King", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1979, cosmicmo, invaders, invaders, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1979, cosmicm2, invaders, invaders, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters 2", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1979, cosmicmo, invaders, cosmicmo, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1979, cosmicm2, invaders, cosmicmo, cosmicmo, driver_device, 0, ROT270, "Taito / Universal", "Cosmic Monsters 2", GAME_SUPPORTS_SAVE, layout_cosmicm ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1980?,sinvzen, invaders, invaders, sinvzen, driver_device, 0, ROT270, "Taito / Zenitone-Microsec Ltd.", "Super Invaders (Zenitone-Microsec)", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1980, ultrainv, invaders, invaders, sicv, driver_device, 0, ROT270, "Taito / Konami", "Ultra Invaders", GAME_SUPPORTS_SAVE, layout_invaders ) // unclassified, licensed or bootleg?
|
||||
GAMEL(1978, spaceatt, invaders, invaders, sicv, driver_device, 0, ROT270, "bootleg (Video Games GmbH)", "Space Attack (bootleg of Space Invaders)", GAME_SUPPORTS_SAVE, layout_invaders )
|
||||
|
@ -57,6 +57,7 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(spcewars_sh_port_w);
|
||||
DECLARE_WRITE8_MEMBER(lrescue_sh_port_1_w);
|
||||
DECLARE_WRITE8_MEMBER(lrescue_sh_port_2_w);
|
||||
DECLARE_WRITE8_MEMBER(cosmicmo_05_w);
|
||||
DECLARE_WRITE8_MEMBER(cosmo_sh_port_2_w);
|
||||
DECLARE_READ8_MEMBER(darthvdr_01_r);
|
||||
DECLARE_WRITE8_MEMBER(darthvdr_00_w);
|
||||
|
Loading…
Reference in New Issue
Block a user