From bd45026e4901f9a83f663d5886d2638bc22b790c Mon Sep 17 00:00:00 2001 From: Angelo Salese Date: Sun, 2 Jan 2011 23:49:24 +0000 Subject: [PATCH] Input changes for Zero Team, not worth --- src/mame/drivers/raiden2.c | 69 ++++++++++++++++++++++++++++++++----- src/mame/includes/raiden2.h | 5 ++- 2 files changed, 63 insertions(+), 11 deletions(-) diff --git a/src/mame/drivers/raiden2.c b/src/mame/drivers/raiden2.c index 4029def90b8..68f48225565 100644 --- a/src/mame/drivers/raiden2.c +++ b/src/mame/drivers/raiden2.c @@ -211,6 +211,11 @@ WRITE16_MEMBER(raiden2_state::cop_dma_dst_w) COMBINE_DATA(&cop_dma_dst[cop_dma_mode]); } +READ16_MEMBER(raiden2_state::cop_dma_mode_r) +{ + return cop_dma_mode; +} + WRITE16_MEMBER(raiden2_state::cop_dma_mode_w) { COMBINE_DATA(&cop_dma_mode); @@ -230,8 +235,6 @@ WRITE16_MEMBER(raiden2_state::cop_dma_trigger_w) { // logerror("COP DMA mode=%x adr=%x size=%x vals=%x %x %x\n", cop_dma_mode, cop_dma_src[cop_dma_mode], cop_dma_size[cop_dma_mode], cop_dma_v1[cop_dma_mode], cop_dma_v2[cop_dma_mode], cop_dma_dst[cop_dma_mode]); - // printf("%08x %08x %08x %02x\n",cop_dma_src[cop_dma_mode] << 6,cop_dma_dst[cop_dma_mode] << 6,cop_dma_size[cop_dma_mode] << 5,cop_dma_mode); - switch(cop_dma_mode) { case 0x14: { /* TODO: this transfers the whole VRAM, not only spriteram! @@ -1037,7 +1040,7 @@ static ADDRESS_MAP_START( raiden2_cop_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_st AM_RANGE(0x00478, 0x00479) AM_WRITE(cop_dma_src_w) AM_RANGE(0x0047a, 0x0047b) AM_WRITE(cop_dma_size_w) AM_RANGE(0x0047c, 0x0047d) AM_WRITE(cop_dma_dst_w) - AM_RANGE(0x0047e, 0x0047f) AM_WRITE(cop_dma_mode_w) + AM_RANGE(0x0047e, 0x0047f) AM_READWRITE(cop_dma_mode_r, cop_dma_mode_w) AM_RANGE(0x004a0, 0x004a9) AM_READWRITE(cop_reg_high_r, cop_reg_high_w) AM_RANGE(0x004c0, 0x004c9) AM_READWRITE(cop_reg_low_r, cop_reg_low_w) AM_RANGE(0x00500, 0x00505) AM_WRITE(cop_cmd_w) @@ -1076,7 +1079,7 @@ static ADDRESS_MAP_START( raiden2_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state AM_RANGE(0x00700, 0x0071f) AM_READWRITE(raiden2_sound_comms_r,raiden2_sound_comms_w) AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW") - AM_RANGE(0x00744, 0x00745) AM_READ_PORT("CONTROLS") + AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2") AM_RANGE(0x0074c, 0x0074d) AM_READ_PORT("SYSTEM") AM_RANGE(0x00800, 0x0bfff) AM_RAM @@ -1115,7 +1118,8 @@ static ADDRESS_MAP_START( zeroteam_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state AM_RANGE(0x00700, 0x0071f) AM_READWRITE(raiden2_sound_comms_r,raiden2_sound_comms_w) AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW") - AM_RANGE(0x00744, 0x00745) AM_READ_PORT("CONTROLS") + AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2") + AM_RANGE(0x00748, 0x00749) AM_READ_PORT("P3_P4") AM_RANGE(0x0074c, 0x0074d) AM_READ_PORT("SYSTEM") AM_RANGE(0x00800, 0x0b7ff) AM_RAM @@ -1142,7 +1146,7 @@ static ADDRESS_MAP_START( xsedae_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) AM_RANGE(0x00700, 0x0071f) AM_READWRITE(raiden2_sound_comms_r,raiden2_sound_comms_w) AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW") - AM_RANGE(0x00744, 0x00745) AM_READ_PORT("CONTROLS") + AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2") AM_RANGE(0x0074c, 0x0074d) AM_READ_PORT("SYSTEM") AM_RANGE(0x00800, 0x0b7ff) AM_RAM @@ -1191,7 +1195,7 @@ READ16_MEMBER(raiden2_state::nzerotea_unknown_r ) static INPUT_PORTS_START( raiden2 ) SEIBU_COIN_INPUTS /* coin inputs read through sound cpu */ - PORT_START("CONTROLS") /* IN0/1 */ + PORT_START("P1_P2") /* IN0/1 */ PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) @@ -1267,7 +1271,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( raidendx ) SEIBU_COIN_INPUTS /* coin inputs read through sound cpu */ - PORT_START("CONTROLS") /* IN0/1 */ + PORT_START("P1_P2") /* IN0/1 */ PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) @@ -1344,6 +1348,28 @@ INPUT_PORTS_END static INPUT_PORTS_START( zeroteam ) PORT_INCLUDE( raiden2 ) + PORT_MODIFY("P1_P2") + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + + PORT_START("P3_P4") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4) + PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(4) + PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) + PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) + PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) + PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) + PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) + PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_MODIFY("DSW") PORT_DIPNAME( 0x0001, 0x0001, "DSW0" ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) @@ -1393,6 +1419,33 @@ static INPUT_PORTS_START( zeroteam ) PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + + PORT_MODIFY("SYSTEM") + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START3 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START4 ) + PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_DIPNAME( 0x0100, 0x0100, "DSW3" ) + PORT_DIPSETTING( 0x0100, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0200, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0400, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_SERVICE( 0x0800, IP_ACTIVE_LOW ) + PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x1000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x2000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x4000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) INPUT_PORTS_END static INPUT_PORTS_START( xsedae ) diff --git a/src/mame/includes/raiden2.h b/src/mame/includes/raiden2.h index 91aa3bfd802..708f0225feb 100644 --- a/src/mame/includes/raiden2.h +++ b/src/mame/includes/raiden2.h @@ -14,6 +14,7 @@ public: DECLARE_WRITE16_MEMBER( cop_dma_src_w ); DECLARE_WRITE16_MEMBER( cop_dma_size_w ); DECLARE_WRITE16_MEMBER( cop_dma_dst_w ); + DECLARE_READ16_MEMBER( cop_dma_mode_r ); DECLARE_WRITE16_MEMBER( cop_dma_mode_w ); DECLARE_READ16_MEMBER ( cop_reg_high_r ); DECLARE_WRITE16_MEMBER( cop_reg_high_w ); @@ -69,15 +70,13 @@ public: DECLARE_READ16_MEMBER( raiden2_sound_comms_r ); DECLARE_WRITE16_MEMBER( raiden2_sound_comms_w ); - DECLARE_WRITE16_MEMBER( test_w ); - void common_reset(); tilemap_t *background_layer,*midground_layer,*foreground_layer,*text_layer; UINT16 *back_data,*fore_data,*mid_data, *text_data, *sprites; int bg_bank, fg_bank, mid_bank; UINT16 raiden2_tilemap_enable; - UINT8 prg_bank; + UINT8 prg_bank,prot_data; UINT16 cop_bank; UINT16 scrollvals[6];