Moved moonwar and moonwara from scobra.c to galaxian.c

This commit is contained in:
Couriersud 2008-06-12 19:33:02 +00:00
parent a701f8537e
commit 284b13c277
8 changed files with 205 additions and 190 deletions

View File

@ -154,6 +154,18 @@ Notes about 'calipso' :
It's possible that there is a cocktail version of the game.
Notes about 'moonwar' :
---------------------
Moonwar: 8255 Port C bit 4 was originally designed so when bit4=0, 1P spinner
is selected, and when bit4=1, 2P spinner gets selected. But they forgot to
change the 8255 initialization value and Port C was set to input, setting the
spinner select bit to HI regardless what was written to it. This bug has been
corrected in the newer set, but, to maintain hardware compatibility with
older PCB's, they had to reverse to active status of the select bit. So in the
newer set, Bit4=1 selects the 1P spinner and Bit4=0 selects the 2P spinner.
TO DO :
-------
@ -207,6 +219,8 @@ static UINT8 protection_result;
static UINT8 konami_sound_control;
static UINT8 sfx_sample_control;
static UINT8 moonwar_port_select;
static UINT8 irq_enabled;
static int irq_line;
@ -1094,6 +1108,51 @@ static READ8_HANDLER( dingoe_3001_r )
}
/*************************************
*
* Moon War I/O
*
*************************************/
static WRITE8_HANDLER( moonwar_port_select_w )
{
moonwar_port_select = data & 0x10;
}
static READ8_HANDLER( moonwar_input_port_0_r )
{
UINT8 sign;
UINT8 delta;
delta = (moonwar_port_select ? input_port_read(machine, "IN3") : input_port_read(machine, "IN4"));
sign = (delta & 0x80) >> 3;
delta &= 0x0f;
return ((input_port_read(machine, "IN0") & 0xe0) | delta | sign );
}
static const ppi8255_interface moonwar_ppi8255_intf[2] =
{
{
moonwar_input_port_0_r, /* Port A read */
konami_portb_0_r, /* Port B read */
konami_portc_0_r, /* Port C read */
NULL, /* Port A write */
NULL, /* Port B write */
moonwar_port_select_w /* Port C write */
},
{
NULL, /* Port A read */
NULL, /* Port B read */
konami_portc_1_r, /* Port C read */
soundlatch_w, /* Port A write */
konami_sound_control_w, /* Port B write */
konami_portc_1_w /* Port C write */
}
};
/*************************************
*
@ -2084,6 +2143,22 @@ static MACHINE_DRIVER_START( anteater )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.1)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( moonwar )
/* basic machine hardware */
/* same as regular type 1, the only difference is that the bullets are less yellow */
MDRV_IMPORT_FROM(scobra)
/* device config overrides */
MDRV_DEVICE_MODIFY( "ppi8255_0", PPI8255 )
MDRV_DEVICE_CONFIG( moonwar_ppi8255_intf[0] )
MDRV_DEVICE_MODIFY( "ppi8255_1", PPI8255 )
MDRV_DEVICE_CONFIG( moonwar_ppi8255_intf[1] )
MDRV_PALETTE_INIT(moonwar)
MACHINE_DRIVER_END
/*************************************
*
@ -2848,4 +2923,15 @@ static DRIVER_INIT( calipso )
}
static DRIVER_INIT( moonwar )
{
/* video extensions */
common_init(machine, scramble_draw_bullet, scramble_draw_background, NULL, NULL);
state_save_register_global(moonwar_port_select);
}
#include "galdrvr.c"

View File

@ -2196,6 +2196,74 @@ static INPUT_PORTS_START( calipso )
INPUT_PORTS_END
static INPUT_PORTS_START( moonwar_common )
PORT_START_TAG("IN0")
PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_SPECIAL ) /* the spinner */
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START_TAG("IN1")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x01, "4" )
PORT_DIPSETTING( 0x02, "5" )
PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
INPUT_PORTS_END
static INPUT_PORTS_START( moonwar )
PORT_INCLUDE( moonwar_common )
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_DIPNAME( 0x06, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) /* output bits */
PORT_START_TAG("IN3") /* IN3/4 - dummy ports for the dial */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET
PORT_START_TAG("IN4")
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET PORT_COCKTAIL
INPUT_PORTS_END
/* same as above, but coinage is different */
static INPUT_PORTS_START( moonwara )
PORT_INCLUDE( moonwar_common )
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) /* output bits */
PORT_START_TAG("IN3") /* IN3/4 - dummy ports for the dial */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET
PORT_START_TAG("IN4") /* doesn't actually work due to bug in game code */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET PORT_COCKTAIL
INPUT_PORTS_END
/*************************************
*
* ROM definitions
@ -4780,6 +4848,45 @@ ROM_START( calipso )
ROM_END
ROM_START( moonwar )
ROM_REGION( 0x10000, REGION_CPU1, 0 )
ROM_LOAD( "mw2.2c", 0x0000, 0x1000, CRC(7c11b4d9) SHA1(a27bdff6ce728647ec811df843ac235c32c293d6) )
ROM_LOAD( "mw2.2e", 0x1000, 0x1000, CRC(1b6362be) SHA1(2fbd95869146adcc0c8be1df653251fda8849e8e) )
ROM_LOAD( "mw2.2f", 0x2000, 0x1000, CRC(4fd8ba4b) SHA1(3da784267a96d05f66b00626a22cb3f06211d202) )
ROM_LOAD( "mw2.2h", 0x3000, 0x1000, CRC(56879f0d) SHA1(d1e9932863aebc5761e71fca8d24f3c400e1250d) )
ROM_REGION( 0x10000, REGION_CPU2, 0 )
ROM_LOAD( "mw2.5c", 0x0000, 0x0800, CRC(c26231eb) SHA1(5b19edfaefe1a535059311d067ea53405879d627) )
ROM_LOAD( "mw2.5d", 0x0800, 0x0800, CRC(bb48a646) SHA1(cf51202d16b03bbed12ff24501be68683f28c992) )
ROM_REGION( 0x1000, REGION_GFX1, ROMREGION_DISPOSE )
ROM_LOAD( "mw2.5f", 0x0000, 0x0800, CRC(c5fa1aa0) SHA1(6c6b5b2ce5de278ff436d3e7252ece5b086cc41d) )
ROM_LOAD( "mw2.5h", 0x0800, 0x0800, CRC(a6ccc652) SHA1(286b3dc1f3a7da3ac66664e774b441ef075745f1) )
ROM_REGION( 0x0020, REGION_PROMS, 0 )
ROM_LOAD( "mw2.clr", 0x0000, 0x0020, CRC(99614c6c) SHA1(f068985f3c5e0cd88551a02c32f9baeabfd50241) )
ROM_END
ROM_START( moonwara )
ROM_REGION( 0x10000, REGION_CPU1, 0 )
ROM_LOAD( "2c", 0x0000, 0x1000, CRC(bc20b734) SHA1(c6fe550987d0052979aad43c67aa1b9248049669) )
ROM_LOAD( "2e", 0x1000, 0x1000, CRC(db6ffec2) SHA1(0fcd55b1e415e2e7041d10778052a235251f85fe) )
ROM_LOAD( "2f", 0x2000, 0x1000, CRC(378931b8) SHA1(663f1eea9b0e8dc38de818df66c5211dac41c33b) )
ROM_LOAD( "2h", 0x3000, 0x1000, CRC(031dbc2c) SHA1(5f2ca8b8763398bf161ee0c2c748a12d36cb40ec) )
ROM_REGION( 0x10000, REGION_CPU2, 0 )
ROM_LOAD( "mw2.5c", 0x0000, 0x0800, CRC(c26231eb) SHA1(5b19edfaefe1a535059311d067ea53405879d627) )
ROM_LOAD( "mw2.5d", 0x0800, 0x0800, CRC(bb48a646) SHA1(cf51202d16b03bbed12ff24501be68683f28c992) )
ROM_REGION( 0x1000, REGION_GFX1, ROMREGION_DISPOSE )
ROM_LOAD( "mw2.5f", 0x0000, 0x0800, CRC(c5fa1aa0) SHA1(6c6b5b2ce5de278ff436d3e7252ece5b086cc41d) )
ROM_LOAD( "mw2.5h", 0x0800, 0x0800, CRC(a6ccc652) SHA1(286b3dc1f3a7da3ac66664e774b441ef075745f1) )
ROM_REGION( 0x0020, REGION_PROMS, 0 )
ROM_LOAD( "moonwara.clr", 0x0000, 0x0020, CRC(f58d4f58) SHA1(12a80d1edf3c80dafa0e1e3622d2a03224b62f14) ) /* olive, instead of white */
ROM_END
/*************************************
*
* Game drivers
@ -4987,6 +5094,9 @@ GAME( 1985, superbon, 0, scobra, superbon, superbon, ROT90, "Signatron
GAME( 1982, calipso, 0, scobra, calipso, calipso, ROT90, "[Stern] (Tago license)", "Calipso", GAME_SUPPORTS_SAVE )
GAME( 1981, moonwar, 0, moonwar, moonwar, moonwar, ROT90, "Stern", "Moonwar", GAME_SUPPORTS_SAVE )
GAME( 1981, moonwara, moonwar, moonwar, moonwara, moonwar, ROT90, "Stern", "Moonwar (older)", GAME_SUPPORTS_SAVE )
/* currently in galaxold.c and should be moved here */
@ -5036,8 +5146,6 @@ GAME( 1982, calipso, 0, scobra, calipso, calipso, ROT90, "[Stern] (
/* currently in scobra.c and should be moved here */
//GAME( 1981, stratgyx, 0, scobra/*stratgyx*/, stratgyx, stratgyx, ROT0, "Konami", "Strategy X", GAME_SUPPORTS_SAVE )
//GAME( 1981, stratgys, stratgyx, scobra/*stratgyx*/, stratgyx, stratgyx, ROT0, "[Konami] (Stern license)", "Strategy X (Stern)", GAME_SUPPORTS_SAVE )
//GAME( 1981, moonwar, 0, scobra/*moonwar*/, moonwar, moonwar, ROT90, "Stern", "Moonwar", GAME_SUPPORTS_SAVE )
//GAME( 1981, moonwara, moonwar, scobra/*moonwar*/, moonwara, moonwar, ROT90, "Stern", "Moonwar (older)", GAME_SUPPORTS_SAVE )
//GAME( 1982, darkplnt, 0, scobra/*darkplnt*/, darkplnt, darkplnt, ROT180, "Stern", "Dark Planet", GAME_SUPPORTS_SAVE )
//GAME( 1982, tazmani2, tazmania, scobra/*type2*/, tazmania, tazmani2, ROT90, "Stern", "Tazz-Mania (set 2)", GAME_SUPPORTS_SAVE )
//GAME( 1983, anteatg, anteater, scobra/*anteatg*/, anteatg, scramble_ppi, ROT90, "TV-Tuning (F.E.G. license)", "Ameisenbaer (German)", GAME_SUPPORTS_SAVE )

View File

@ -19,14 +19,6 @@ TODO:
Notes/Tidbits:
-------------
- Moonwar: 8255 Port C bit 4 was originally designed so when bit4=0, 1P spinner
is selected, and when bit4=1, 2P spinner gets selected. But they forgot to
change the 8255 initialization value and Port C was set to input, setting the
spinner select bit to HI regardless what was written to it. This bug has been
corrected in the newer set, but, to maintain hardware compatibility with
older PCB's, they had to reverse to active status of the select bit. So in the
newer set, Bit4=1 selects the 1P spinner and Bit4=0 selects the 2P spinner.
- Armored Car sets Port C as well, but it's input only and the games uses other
bits for the 2nd player controls. Maybe the games was meant to use 2 joysticks
at one time.
@ -596,69 +588,6 @@ SCOBRA_IN0
PORT_DIPSETTING( 0x00, "A 1/99 B 1/3" )
INPUT_PORTS_END
#define MOONWAR_COMMON\
PORT_START_TAG("IN0")\
PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_SPECIAL ) /* the spinner */\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_START_TAG("IN1")\
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )\
PORT_DIPSETTING( 0x00, "3" )\
PORT_DIPSETTING( 0x01, "4" )\
PORT_DIPSETTING( 0x02, "5" )\
PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) )\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
static INPUT_PORTS_START( moonwar )
MOONWAR_COMMON
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_DIPNAME( 0x06, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) /* output bits */
PORT_START_TAG("IN3") /* IN3/4 - dummy ports for the dial */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET
PORT_START_TAG("IN4")
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET PORT_COCKTAIL
INPUT_PORTS_END
/* same as above, but coinage is different */
static INPUT_PORTS_START( moonwara )
MOONWAR_COMMON
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) /* output bits */
PORT_START_TAG("IN3") /* IN3/4 - dummy ports for the dial */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET
PORT_START_TAG("IN4") /* doesn't actually work due to bug in game code */
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(10) PORT_RESET PORT_COCKTAIL
INPUT_PORTS_END
/* cocktail mode is N/A */
@ -1228,26 +1157,6 @@ MACHINE_DRIVER_END
/* same as regular type 1, the only difference is that the bullets are less yellow */
static MACHINE_DRIVER_START( moonwar )
/* basic machine hardware */
MDRV_IMPORT_FROM(type1)
/* device config overrides */
MDRV_DEVICE_MODIFY( "ppi8255_0", PPI8255 )
MDRV_DEVICE_CONFIG( moonwar_ppi8255_intf[0] )
MDRV_DEVICE_MODIFY( "ppi8255_1", PPI8255 )
MDRV_DEVICE_CONFIG( moonwar_ppi8255_intf[1] )
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2+1) /* 32 for characters, 64 for stars, 2 for bullets, 1 for bg */
MDRV_PALETTE_INIT(moonwar)
MACHINE_DRIVER_END
/* Rescue, Minefield and Strategy X have extra colors, and custom video initialise */
/* routines to set up the graduated color backgound they use */
static MACHINE_DRIVER_START( rescue )
@ -1559,44 +1468,6 @@ ROM_START( stratgys )
ROM_LOAD( "strategy.10k", 0x0000, 0x0020, CRC(d95c0318) SHA1(83e5355fdca7b4e1fb5a0e6eeaacfbf9561e2c36) )
ROM_END
ROM_START( moonwar )
ROM_REGION( 0x10000, REGION_CPU1, 0 )
ROM_LOAD( "mw2.2c", 0x0000, 0x1000, CRC(7c11b4d9) SHA1(a27bdff6ce728647ec811df843ac235c32c293d6) )
ROM_LOAD( "mw2.2e", 0x1000, 0x1000, CRC(1b6362be) SHA1(2fbd95869146adcc0c8be1df653251fda8849e8e) )
ROM_LOAD( "mw2.2f", 0x2000, 0x1000, CRC(4fd8ba4b) SHA1(3da784267a96d05f66b00626a22cb3f06211d202) )
ROM_LOAD( "mw2.2h", 0x3000, 0x1000, CRC(56879f0d) SHA1(d1e9932863aebc5761e71fca8d24f3c400e1250d) )
ROM_REGION( 0x10000, REGION_CPU2, 0 )
ROM_LOAD( "mw2.5c", 0x0000, 0x0800, CRC(c26231eb) SHA1(5b19edfaefe1a535059311d067ea53405879d627) )
ROM_LOAD( "mw2.5d", 0x0800, 0x0800, CRC(bb48a646) SHA1(cf51202d16b03bbed12ff24501be68683f28c992) )
ROM_REGION( 0x1000, REGION_GFX1, ROMREGION_DISPOSE )
ROM_LOAD( "mw2.5f", 0x0000, 0x0800, CRC(c5fa1aa0) SHA1(6c6b5b2ce5de278ff436d3e7252ece5b086cc41d) )
ROM_LOAD( "mw2.5h", 0x0800, 0x0800, CRC(a6ccc652) SHA1(286b3dc1f3a7da3ac66664e774b441ef075745f1) )
ROM_REGION( 0x0020, REGION_PROMS, 0 )
ROM_LOAD( "mw2.clr", 0x0000, 0x0020, CRC(99614c6c) SHA1(f068985f3c5e0cd88551a02c32f9baeabfd50241) )
ROM_END
ROM_START( moonwara )
ROM_REGION( 0x10000, REGION_CPU1, 0 )
ROM_LOAD( "2c", 0x0000, 0x1000, CRC(bc20b734) SHA1(c6fe550987d0052979aad43c67aa1b9248049669) )
ROM_LOAD( "2e", 0x1000, 0x1000, CRC(db6ffec2) SHA1(0fcd55b1e415e2e7041d10778052a235251f85fe) )
ROM_LOAD( "2f", 0x2000, 0x1000, CRC(378931b8) SHA1(663f1eea9b0e8dc38de818df66c5211dac41c33b) )
ROM_LOAD( "2h", 0x3000, 0x1000, CRC(031dbc2c) SHA1(5f2ca8b8763398bf161ee0c2c748a12d36cb40ec) )
ROM_REGION( 0x10000, REGION_CPU2, 0 )
ROM_LOAD( "mw2.5c", 0x0000, 0x0800, CRC(c26231eb) SHA1(5b19edfaefe1a535059311d067ea53405879d627) )
ROM_LOAD( "mw2.5d", 0x0800, 0x0800, CRC(bb48a646) SHA1(cf51202d16b03bbed12ff24501be68683f28c992) )
ROM_REGION( 0x1000, REGION_GFX1, ROMREGION_DISPOSE )
ROM_LOAD( "mw2.5f", 0x0000, 0x0800, CRC(c5fa1aa0) SHA1(6c6b5b2ce5de278ff436d3e7252ece5b086cc41d) )
ROM_LOAD( "mw2.5h", 0x0800, 0x0800, CRC(a6ccc652) SHA1(286b3dc1f3a7da3ac66664e774b441ef075745f1) )
ROM_REGION( 0x0020, REGION_PROMS, 0 )
ROM_LOAD( "moonwara.clr", 0x0000, 0x0020, CRC(f58d4f58) SHA1(12a80d1edf3c80dafa0e1e3622d2a03224b62f14) ) /* olive, instead of white */
ROM_END
ROM_START( darkplnt )
ROM_REGION( 0x10000, REGION_CPU1, 0 )
@ -1935,8 +1806,6 @@ ROM_END
GAME( 1981, stratgyx, 0, stratgyx, stratgyx, stratgyx, ROT0, "Konami", "Strategy X", GAME_SUPPORTS_SAVE )
GAME( 1981, stratgys, stratgyx, stratgyx, stratgyx, stratgyx, ROT0, "[Konami] (Stern license)", "Strategy X (Stern)", GAME_SUPPORTS_SAVE )
GAME( 1981, moonwar, 0, moonwar, moonwar, moonwar, ROT90, "Stern", "Moonwar", GAME_SUPPORTS_SAVE )
GAME( 1981, moonwara, moonwar, moonwar, moonwara, moonwar, ROT90, "Stern", "Moonwar (older)", GAME_SUPPORTS_SAVE )
GAME( 1982, darkplnt, 0, darkplnt, darkplnt, darkplnt, ROT180, "Stern", "Dark Planet", GAME_SUPPORTS_SAVE )
GAME( 1982, tazmani2, tazmania, type2, tazmania, tazmani2, ROT90, "Stern", "Tazz-Mania (set 2)", GAME_SUPPORTS_SAVE )
GAME( 1983, anteatg, anteater, anteatg, anteatg, scramble_ppi, ROT90, "TV-Tuning (F.E.G. license)", "Ameisenbaer (German)", GAME_SUPPORTS_SAVE )

View File

@ -34,6 +34,7 @@ extern UINT8 galaxian_sprite_clip_start;
extern UINT8 galaxian_sprite_clip_end;
PALETTE_INIT( galaxian );
PALETTE_INIT( moonwar );
VIDEO_START( galaxian );
VIDEO_UPDATE( galaxian );

View File

@ -31,7 +31,6 @@ extern UINT8 galaxold_stars_on;
PALETTE_INIT( galaxold );
PALETTE_INIT( scrambold );
PALETTE_INIT( moonwar );
PALETTE_INIT( darkplnt );
PALETTE_INIT( rescue );
PALETTE_INIT( minefld );
@ -154,7 +153,6 @@ READ8_HANDLER( gmgalax_input_port_2_r );
extern const ppi8255_interface scramble_ppi_ppi8255_intf[2];
extern const ppi8255_interface stratgyx_ppi8255_intf[2];
extern const ppi8255_interface moonwar_ppi8255_intf[2];
extern const ppi8255_interface darkplnt_ppi8255_intf[2];
extern const ppi8255_interface scramble_ppi8255_intf[2];
extern const ppi8255_interface ckongs_ppi8255_intf[2];
@ -176,7 +174,6 @@ DRIVER_INIT( devilfsh );
DRIVER_INIT( mars );
DRIVER_INIT( hotshock );
DRIVER_INIT( cavelon );
DRIVER_INIT( moonwar );
DRIVER_INIT( darkplnt );
DRIVER_INIT( mimonkey );
DRIVER_INIT( mimonsco );

View File

@ -12,8 +12,6 @@
#include "machine/8255ppi.h"
#include "includes/galaxold.h"
static UINT8 moonwar_port_select;
static UINT8 cavelon_bank;
static UINT8 security_2B_counter;
@ -76,25 +74,6 @@ static READ8_HANDLER( ckongs_input_port_2_r )
}
static WRITE8_HANDLER( moonwar_port_select_w )
{
moonwar_port_select = data & 0x10;
}
static READ8_HANDLER( moonwar_input_port_0_r )
{
UINT8 sign;
UINT8 delta;
delta = (moonwar_port_select ? input_port_read_indexed(machine, 3) : input_port_read_indexed(machine, 4));
sign = (delta & 0x80) >> 3;
delta &= 0x0f;
return ((input_port_read_indexed(machine, 0) & 0xe0) | delta | sign );
}
/* the coinage DIPs are spread accross two input ports */
static READ8_HANDLER( stratgyx_input_port_2_r )
{
@ -265,27 +244,6 @@ const ppi8255_interface stratgyx_ppi8255_intf[2] =
};
const ppi8255_interface moonwar_ppi8255_intf[2] =
{
{
moonwar_input_port_0_r, /* Port A read */
input_port_1_r, /* Port B read */
input_port_2_r, /* Port C read */
NULL, /* Port A write */
NULL, /* Port B write */
moonwar_port_select_w /* Port C write */
},
{
NULL, /* Port A read */
NULL, /* Port B read */
NULL, /* Port C read */
soundlatch_w, /* Port A write */
scramble_sh_irqtrigger_w, /* Port B write */
NULL /* Port C write */
}
};
const ppi8255_interface darkplnt_ppi8255_intf[2] =
{
{
@ -525,10 +483,7 @@ DRIVER_INIT( cavelon )
state_save_register_global(cavelon_bank);
}
DRIVER_INIT( moonwar )
{
state_save_register_global(moonwar_port_select);
}
DRIVER_INIT( darkplnt )
{

View File

@ -423,8 +423,15 @@ PALETTE_INIT( galaxian )
bullet_color[7] = MAKE_RGB(0xff,0xff,0x00);
}
PALETTE_INIT( moonwar )
{
PALETTE_INIT_CALL(galaxian);
/* wire mod to connect the bullet blue output to the 220 ohm resistor */
bullet_color[7] = MAKE_RGB(0xef,0xef,0x97);
}
/*************************************
*
* Common video init

View File

@ -211,14 +211,6 @@ PALETTE_INIT( scrambold )
palette_set_color(machine,BACKGROUND_COLOR_BASE,MAKE_RGB(0,0,0x56));
}
PALETTE_INIT( moonwar )
{
PALETTE_INIT_CALL(scrambold);
/* wire mod to connect the bullet blue output to the 220 ohm resistor */
palette_set_color(machine,BULLETS_COLOR_BASE+0,MAKE_RGB(0xef,0xef,0x97));
}
PALETTE_INIT( stratgyx )
{