diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c index 96bb1dc135e..8eb3d30bb47 100644 --- a/src/mame/drivers/astrocde.c +++ b/src/mame/drivers/astrocde.c @@ -104,6 +104,7 @@ DIP locations verified for: - seawolf2 (manual) - wow (manual) + - spacezap (manual) - gorf (manual) - robby (manual) - profpac (manual) @@ -119,6 +120,7 @@ #include "sound/samples.h" #include "sound/astrocde.h" #include "sound/ay8910.h" + #include "tenpindx.lh" #include "gorf.lh" @@ -835,7 +837,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( spacezap ) PORT_START("P1HANDLE") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) // manual says this dip is unused on cocktail cabs PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) PORT_SERVICE( 0x08, IP_ACTIVE_LOW ) @@ -844,19 +846,19 @@ static INPUT_PORTS_START( spacezap ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("P2HANDLE") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_NAME("P2 Aim Up") + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL PORT_NAME("P2 Aim Down") + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_COCKTAIL PORT_NAME("P2 Aim Left") + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_COCKTAIL PORT_NAME("P2 Aim Right") PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "JU:1" ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("P3HANDLE") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("P1 Aim Up") PORT_CODE(KEYCODE_UP) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("P1 Aim Down") PORT_CODE(KEYCODE_DOWN) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("P1 Aim Left") PORT_CODE(KEYCODE_LEFT) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("P1 Aim Right") PORT_CODE(KEYCODE_RIGHT) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_DIPNAME( 0x20, 0x20, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("JU:2") PORT_DIPSETTING( 0x20, DEF_STR( Upright ) ) @@ -1381,6 +1383,9 @@ static MACHINE_CONFIG_DERIVED( spacezap, astrocade_base ) MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(spacezap_map) MCFG_CPU_IO_MAP(port_map_mono_pattern) + + /* video hardware */ + MCFG_PALETTE_INIT(astrocde_bw) MACHINE_CONFIG_END @@ -1821,7 +1826,7 @@ GAME( 1978, seawolf2, 0, seawolf2, seawolf2, seawolf2, ROT0, "Midway", "Sea /* 91354 CPU board + 90700 game board + 91356 RAM board */ GAME( 1980, ebases, 0, ebases, ebases, ebases, ROT0, "Midway", "Extra Bases", GAME_SUPPORTS_SAVE ) -/* 91354 CPU board + 90706 game board + 91356 RAM board + 91355 pattern board */ +/* 91354 CPU board + 90706 game board + 91356 RAM board + 91355 pattern board. Has B/W monitor and color overlay */ GAME( 1980, spacezap, 0, spacezap, spacezap, spacezap, ROT0, "Midway", "Space Zap", GAME_SUPPORTS_SAVE ) /* 91354 CPU board + 90708 game board + 91356 RAM board + 91355 pattern board + 91397 memory board */ diff --git a/src/mame/includes/astrocde.h b/src/mame/includes/astrocde.h index 65dc218384b..391ca44cd8f 100644 --- a/src/mame/includes/astrocde.h +++ b/src/mame/includes/astrocde.h @@ -27,6 +27,7 @@ extern UINT8 astrocade_video_config; extern UINT8 astrocade_sparkle[4]; PALETTE_INIT( astrocde ); +PALETTE_INIT( astrocde_bw ); PALETTE_INIT( profpac ); VIDEO_START( astrocde ); diff --git a/src/mame/video/astrocde.c b/src/mame/video/astrocde.c index 763e17d77a4..be0c0af9b84 100644 --- a/src/mame/video/astrocde.c +++ b/src/mame/video/astrocde.c @@ -167,6 +167,18 @@ PALETTE_INIT( astrocde ) } +PALETTE_INIT( astrocde_bw ) +{ + int i; + + PALETTE_INIT_CALL(astrocde); + + // B/W: set whole palette to luma only + for (i = 16; i < 512; i++) + palette_set_color(machine, i, palette_get_color(machine, i & 15)); +} + + PALETTE_INIT( profpac ) { /* Professor Pac-Man uses a more standard 12-bit RGB palette layout */