diff options
| author | 2010-12-22 23:31:12 +0000 | |
|---|---|---|
| committer | 2010-12-22 23:31:12 +0000 | |
| commit | 0f0bdc3623b2a4d638fe29e01718cd2d447938ac (patch) | |
| tree | 3472f162e54de941ee6a374745288ef1125f2939 /src | |
| parent | 766ad337a65d2bc2e001088056cff8a8e0e046cb (diff) | |
Improvement to X Se Dae, no whatsnew
Diffstat (limited to 'src')
| -rw-r--r-- | src/mame/drivers/raiden2.c | 109 |
1 files changed, 96 insertions, 13 deletions
diff --git a/src/mame/drivers/raiden2.c b/src/mame/drivers/raiden2.c index 19db1768b8b..43a7379eed5 100644 --- a/src/mame/drivers/raiden2.c +++ b/src/mame/drivers/raiden2.c @@ -845,10 +845,7 @@ WRITE16_MEMBER(raiden2_state::raiden2_sound_comms_w) /* MEMORY MAPS */ - -static ADDRESS_MAP_START( raiden2_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) - AM_RANGE(0x00000, 0x003ff) AM_RAM - +static ADDRESS_MAP_START( raiden2_cop_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) AM_RANGE(0x00420, 0x00421) AM_WRITE(cop_itoa_low_w) AM_RANGE(0x00422, 0x00423) AM_WRITE(cop_itoa_high_w) AM_RANGE(0x00424, 0x00425) AM_WRITE(cop_itoa_digit_count_w) @@ -886,6 +883,12 @@ static ADDRESS_MAP_START( raiden2_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state AM_RANGE(0x006cc, 0x006cd) AM_WRITE(tile_bank_01_w) AM_RANGE(0x006ce, 0x006cf) AM_WRITE(sprcpt_flags_2_w) AM_RANGE(0x006fc, 0x006fd) AM_WRITE(cop_dma_trigger_w) +ADDRESS_MAP_END + +static ADDRESS_MAP_START( raiden2_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) + AM_RANGE(0x00000, 0x003ff) AM_RAM + + AM_IMPORT_FROM( raiden2_cop_mem ) AM_RANGE(0x00700, 0x0071f) AM_READWRITE(raiden2_sound_comms_r,raiden2_sound_comms_w) @@ -909,33 +912,56 @@ static ADDRESS_MAP_START( raiden2_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ADDRESS_MAP_END static ADDRESS_MAP_START( zeroteam_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) + AM_RANGE(0x00000, 0x003ff) AM_RAM - AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(raiden2_midground_w) AM_BASE(mid_data) - AM_RANGE(0x0d000, 0x0dfff) AM_RAM_WRITE(raiden2_text_w) AM_BASE(text_data) - AM_RANGE(0x0e000, 0x0efff) AM_RAM AM_WRITE_LEGACY(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) + AM_IMPORT_FROM( raiden2_cop_mem ) + + 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(0x0074c, 0x0074d) AM_READ_PORT("SYSTEM") /* unknown ranges of the following two! (we can't test enough of this so far) */ AM_RANGE(0x0b800, 0x0bfff) AM_RAM_WRITE(raiden2_foreground_w) AM_BASE(fore_data) AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(raiden2_background_w) AM_BASE(back_data) + AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(raiden2_midground_w) AM_BASE(mid_data) + AM_RANGE(0x0d000, 0x0dfff) AM_RAM_WRITE(raiden2_text_w) AM_BASE(text_data) + AM_RANGE(0x0e000, 0x0efff) AM_RAM AM_WRITE_LEGACY(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) + AM_RANGE(0x00800, 0x0ffff) AM_RAM AM_RANGE(0x10000, 0x1ffff) AM_RAM - AM_IMPORT_FROM( raiden2_mem ) + + AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("mainbank") + AM_RANGE(0x40000, 0xfffff) AM_ROM AM_REGION("mainprg", 0x40000) ADDRESS_MAP_END static ADDRESS_MAP_START( xsedae_mem, ADDRESS_SPACE_PROGRAM, 16, raiden2_state ) + AM_RANGE(0x00000, 0x003ff) AM_RAM - AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(raiden2_midground_w) AM_BASE(mid_data) - AM_RANGE(0x0d000, 0x0dfff) AM_RAM_WRITE(raiden2_text_w) AM_BASE(text_data) - AM_RANGE(0x0e000, 0x0efff) AM_RAM AM_WRITE_LEGACY(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) + AM_IMPORT_FROM( raiden2_cop_mem ) + + 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(0x0074c, 0x0074d) AM_READ_PORT("SYSTEM") /* unknown ranges of the following two! (we can't test enough of this so far) */ AM_RANGE(0x0b800, 0x0bfff) AM_RAM_WRITE(raiden2_foreground_w) AM_BASE(fore_data) AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(raiden2_background_w) AM_BASE(back_data) + AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(raiden2_midground_w) AM_BASE(mid_data) + AM_RANGE(0x0d000, 0x0dfff) AM_RAM_WRITE(raiden2_text_w) AM_BASE(text_data) + /* TODO: probably needs a DMA */ + AM_RANGE(0x14800, 0x157ff) AM_RAM AM_WRITE_LEGACY(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) + AM_RANGE(0x00800, 0x0ffff) AM_RAM AM_RANGE(0x10000, 0x1ffff) AM_RAM - AM_IMPORT_FROM( raiden2_mem ) + + AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("mainbank") + AM_RANGE(0x40000, 0xfffff) AM_ROM AM_REGION("mainprg", 0x40000) ADDRESS_MAP_END @@ -1175,6 +1201,60 @@ static INPUT_PORTS_START( zeroteam ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) INPUT_PORTS_END +static INPUT_PORTS_START( xsedae ) + PORT_INCLUDE( raiden2 ) + + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x0001, 0x0001, "DSW0" ) + PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0010, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0100, 0x0100, "DSW1" ) + 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_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0800, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + 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 + /************************************* * * Graphics layouts @@ -1269,6 +1349,9 @@ static MACHINE_CONFIG_DERIVED( xsedae, raiden2 ) MDRV_CPU_MODIFY("maincpu") MDRV_CPU_PROGRAM_MAP(xsedae_mem) + MDRV_SCREEN_MODIFY("screen") + MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0, 32*8-1) + MACHINE_CONFIG_END static MACHINE_CONFIG_START( zeroteam, raiden2_state ) @@ -2122,4 +2205,4 @@ GAME( 1993, zeroteamb,zeroteam,zeroteam, zeroteam, raiden2, ROT0, "Seibu Kai GAME( 1993, zeroteamc,zeroteam,zeroteam, zeroteam, raiden2, ROT0, "Seibu Kaihatsu", "Zero Team (set 4)", GAME_NOT_WORKING|GAME_NO_SOUND) GAME( 1993, zeroteams,zeroteam,zeroteam, zeroteam, raiden2, ROT0, "Seibu Kaihatsu", "Zero Team Selection", GAME_NOT_WORKING|GAME_NO_SOUND) -GAME( 1995, xsedae, 0, xsedae, raiden2, xsedae, ROT0, "Dream Island", "X Se Dae Quiz", GAME_NOT_WORKING|GAME_NO_SOUND) +GAME( 1995, xsedae, 0, xsedae, xsedae, xsedae, ROT0, "Dream Island", "X Se Dae Quiz", GAME_NOT_WORKING|GAME_NO_SOUND) |
