summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Andrew Gardner <andrew-gardner@users.noreply.github.com>2008-09-03 05:28:28 +0000
committer Andrew Gardner <andrew-gardner@users.noreply.github.com>2008-09-03 05:28:28 +0000
commit8d6c8cf5e88c7dd573a338c839357b2f4a470c37 (patch)
treecd4be79870087eb124b2883e2700790f7628e793
parentec7ac6f0b27fbc5f16c12933caa4dc9b1ffc2c94 (diff)
Part 5 of "The big IO_MAP merge of 2008". (Andrew Gardner)
-rw-r--r--src/mame/drivers/fromanc2.c46
-rw-r--r--src/mame/drivers/gstriker.c20
-rw-r--r--src/mame/drivers/liberate.c15
-rw-r--r--src/mame/drivers/mcatadv.c27
-rw-r--r--src/mame/drivers/tecmosys.c43
5 files changed, 55 insertions, 96 deletions
diff --git a/src/mame/drivers/fromanc2.c b/src/mame/drivers/fromanc2.c
index dc560e6ba33..2d3f042670d 100644
--- a/src/mame/drivers/fromanc2.c
+++ b/src/mame/drivers/fromanc2.c
@@ -449,17 +449,11 @@ static ADDRESS_MAP_START( fromanc2_writemem_sub, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xffff) AM_WRITE(SMH_BANK2) // RAM(BANK)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_readport_sub, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x02, 0x02) AM_READ(fromanc2_maincpu_r_l) // to MAIN CPU
- AM_RANGE(0x04, 0x04) AM_READ(fromanc2_maincpu_r_h) // to MAIN CPU
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( fromanc2_writeport_sub, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( fromanc2_sub_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(fromanc2_subcpu_rombank_w)
- AM_RANGE(0x02, 0x02) AM_WRITE(fromanc2_maincpu_w_l) // from MAIN CPU
- AM_RANGE(0x04, 0x04) AM_WRITE(fromanc2_maincpu_w_h) // from MAIN CPU
+ AM_RANGE(0x02, 0x02) AM_READWRITE(fromanc2_maincpu_r_l, fromanc2_maincpu_w_l) // to/from MAIN CPU
+ AM_RANGE(0x04, 0x04) AM_READWRITE(fromanc2_maincpu_r_h, fromanc2_maincpu_w_h) // to/from MAIN CPU
AM_RANGE(0x06, 0x06) AM_WRITE(fromanc2_subcpu_nmi_clr)
ADDRESS_MAP_END
@@ -478,26 +472,17 @@ static ADDRESS_MAP_START( fromanc2_writemem_sound, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_readport_sound, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) // snd cmd (1P)
- AM_RANGE(0x04, 0x04) AM_READ(soundlatch2_r) // snd cmd (2P)
- AM_RANGE(0x09, 0x09) AM_READ(SMH_NOP) // ?
- AM_RANGE(0x08, 0x08) AM_READ(ym2610_status_port_0_a_r)
- AM_RANGE(0x0a, 0x0a) AM_READ(ym2610_status_port_0_b_r)
- AM_RANGE(0x0c, 0x0c) AM_READ(fromanc2_sndcpu_nmi_clr)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( fromanc2_writeport_sound, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( fromanc2_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP) // ?
- AM_RANGE(0x08, 0x08) AM_WRITE(ym2610_control_port_0_a_w)
- AM_RANGE(0x09, 0x09) AM_WRITE(ym2610_data_port_0_a_w)
- AM_RANGE(0x0a, 0x0a) AM_WRITE(ym2610_control_port_0_b_w)
+ AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_r, SMH_NOP) // snd cmd (1P) / ?
+ AM_RANGE(0x04, 0x04) AM_READ(soundlatch2_r) // snd cmd (2P)
+ AM_RANGE(0x08, 0x08) AM_READWRITE(ym2610_status_port_0_a_r, ym2610_control_port_0_a_w)
+ AM_RANGE(0x09, 0x09) AM_READWRITE(SMH_NOP, ym2610_data_port_0_a_w) // ?
+ AM_RANGE(0x0a, 0x0a) AM_READWRITE(ym2610_status_port_0_b_r, ym2610_control_port_0_b_w)
AM_RANGE(0x0b, 0x0b) AM_WRITE(ym2610_data_port_0_b_w)
+ AM_RANGE(0x0c, 0x0c) AM_READ(fromanc2_sndcpu_nmi_clr)
ADDRESS_MAP_END
-
/* ----------------------------------------------------------------------------
Input Ports
---------------------------------------------------------------------------- */
@@ -679,11 +664,11 @@ static MACHINE_DRIVER_START( fromanc2 )
MDRV_CPU_ADD("audio", Z80,32000000/4) /* 8.00 MHz */
MDRV_CPU_PROGRAM_MAP(fromanc2_readmem_sound,fromanc2_writemem_sound)
- MDRV_CPU_IO_MAP(fromanc2_readport_sound,fromanc2_writeport_sound)
+ MDRV_CPU_IO_MAP(fromanc2_sound_io_map,0)
MDRV_CPU_ADD("sub", Z80,32000000/4) /* 8.00 MHz */
MDRV_CPU_PROGRAM_MAP(fromanc2_readmem_sub,fromanc2_writemem_sub)
- MDRV_CPU_IO_MAP(fromanc2_readport_sub,fromanc2_writeport_sub)
+ MDRV_CPU_IO_MAP(fromanc2_sub_io_map,0)
MDRV_MACHINE_RESET(fromanc2)
@@ -731,11 +716,11 @@ static MACHINE_DRIVER_START( fromancr )
MDRV_CPU_ADD("audio", Z80,32000000/4) /* 8.00 MHz */
MDRV_CPU_PROGRAM_MAP(fromanc2_readmem_sound,fromanc2_writemem_sound)
- MDRV_CPU_IO_MAP(fromanc2_readport_sound,fromanc2_writeport_sound)
+ MDRV_CPU_IO_MAP(fromanc2_sound_io_map,0)
MDRV_CPU_ADD("sub", Z80,32000000/4) /* 8.00 MHz */
MDRV_CPU_PROGRAM_MAP(fromanc2_readmem_sub,fromanc2_writemem_sub)
- MDRV_CPU_IO_MAP(fromanc2_readport_sub,fromanc2_writeport_sub)
+ MDRV_CPU_IO_MAP(fromanc2_sub_io_map,0)
MDRV_MACHINE_RESET(fromancr)
MDRV_NVRAM_HANDLER(93C46)
@@ -782,7 +767,7 @@ static MACHINE_DRIVER_START( fromanc4 )
MDRV_CPU_ADD("audio", Z80,32000000/4) /* 8.00 MHz */
MDRV_CPU_PROGRAM_MAP(fromanc2_readmem_sound,fromanc2_writemem_sound)
- MDRV_CPU_IO_MAP(fromanc2_readport_sound,fromanc2_writeport_sound)
+ MDRV_CPU_IO_MAP(fromanc2_sound_io_map,0)
MDRV_MACHINE_RESET(fromanc4)
MDRV_NVRAM_HANDLER(93C46)
@@ -930,3 +915,4 @@ ROM_END
GAME( 1995, fromanc2, 0, fromanc2, fromanc2, fromanc2, ROT0, "Video System Co.", "Taisen Idol-Mahjong Final Romance 2 (Japan)", 0 )
GAME( 1995, fromancr, 0, fromancr, fromanc2, fromancr, ROT0, "Video System Co.", "Taisen Mahjong FinalRomance R (Japan)", 0 )
GAME( 1998, fromanc4, 0, fromanc4, fromanc4, fromanc4, ROT0, "Video System Co.", "Taisen Mahjong FinalRomance 4 (Japan)", 0 )
+
diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c
index 07b630b4eef..b38dd57a505 100644
--- a/src/mame/drivers/gstriker.c
+++ b/src/mame/drivers/gstriker.c
@@ -326,25 +326,18 @@ static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_readport, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(ym2610_status_port_0_a_r)
- AM_RANGE(0x02, 0x02) AM_READ(ym2610_status_port_0_b_r)
- AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_r)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( sound_writeport, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_WRITE(ym2610_control_port_0_a_w)
+ AM_RANGE(0x00, 0x00) AM_READWRITE(ym2610_status_port_0_a_r, ym2610_control_port_0_a_w)
AM_RANGE(0x01, 0x01) AM_WRITE(ym2610_data_port_0_a_w)
- AM_RANGE(0x02, 0x02) AM_WRITE(ym2610_control_port_0_b_w)
+ AM_RANGE(0x02, 0x02) AM_READWRITE(ym2610_status_port_0_b_r, ym2610_control_port_0_b_w)
AM_RANGE(0x03, 0x03) AM_WRITE(ym2610_data_port_0_b_w)
AM_RANGE(0x04, 0x04) AM_WRITE(gs_sh_bankswitch_w)
AM_RANGE(0x08, 0x08) AM_WRITE(gs_sh_pending_command_clear_w)
+ AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_r)
ADDRESS_MAP_END
-
static ADDRESS_MAP_START( vgoal_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(MB60553_0_vram_w) AM_BASE(&MB60553_0_vram)
@@ -578,7 +571,7 @@ static MACHINE_DRIVER_START( gstriker )
MDRV_CPU_ADD("audio", Z80,8000000/2) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ MDRV_CPU_IO_MAP(sound_io_map,0)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
@@ -618,7 +611,7 @@ static MACHINE_DRIVER_START( vgoal )
MDRV_CPU_ADD("audio", Z80,8000000/2) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ MDRV_CPU_IO_MAP(sound_io_map,0)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
@@ -1030,3 +1023,4 @@ GAME( 199?, vgoalsoc, 0, vgoal, vgoalsoc, vgoalsoc, ROT0, "Tecmo", "
GAME( 199?, vgoalsca, vgoalsoc, vgoal, vgoalsoc, vgoalsoc, ROT0, "Tecmo", "V Goal Soccer (set 2)", GAME_NOT_WORKING )
GAME( 1994, twrldc94, 0, twrldc94, twrldc94, twrldc94, ROT0, "Tecmo", "Tecmo World Cup '94 (set 1)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_GRAPHICS )
GAME( 1994, twrdc94a, twrldc94, twrldc94, twrldc94, twrldc94a, ROT0, "Tecmo", "Tecmo World Cup '94 (set 2)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_GRAPHICS )
+
diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c
index fb3812fbfdc..f9a43bcf3fd 100644
--- a/src/mame/drivers/liberate.c
+++ b/src/mame/drivers/liberate.c
@@ -125,12 +125,8 @@ static ADDRESS_MAP_START( liberate_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( deco16_readport, ADDRESS_SPACE_IO, 8 )
- AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( deco16_writeport, ADDRESS_SPACE_IO, 8 )
- AM_RANGE(0x00, 0x00) AM_WRITE(deco16_bank_w)
+static ADDRESS_MAP_START( deco16_io_map, ADDRESS_SPACE_IO, 8 )
+ AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(deco16_bank_w)
ADDRESS_MAP_END
static ADDRESS_MAP_START( liberatb_readmem, ADDRESS_SPACE_PROGRAM, 8 )
@@ -522,7 +518,7 @@ static MACHINE_DRIVER_START( liberate )
/* basic machine hardware */
MDRV_CPU_ADD("main",DECO16, 2000000)
MDRV_CPU_PROGRAM_MAP(liberate_readmem,liberate_writemem)
- MDRV_CPU_IO_MAP(deco16_readport,deco16_writeport)
+ MDRV_CPU_IO_MAP(deco16_io_map,0)
MDRV_CPU_VBLANK_INT("main", deco16_interrupt)
MDRV_CPU_ADD("audio",M6502, 1500000)
@@ -579,7 +575,7 @@ static MACHINE_DRIVER_START( prosoccr )
/* basic machine hardware */
MDRV_CPU_ADD("main", DECO16, 3000000)
MDRV_CPU_PROGRAM_MAP(liberate_readmem,liberate_writemem)
- MDRV_CPU_IO_MAP(deco16_readport,deco16_writeport)
+ MDRV_CPU_IO_MAP(deco16_io_map,0)
MDRV_IMPORT_FROM(liberate)
MDRV_CPU_REMOVE("main")
@@ -593,7 +589,7 @@ static MACHINE_DRIVER_START( prosport )
/* basic machine hardware */
MDRV_CPU_ADD("main", DECO16, 2000000)
MDRV_CPU_PROGRAM_MAP(prosport_readmem,prosport_writemem)
- MDRV_CPU_IO_MAP(deco16_readport,deco16_writeport)
+ MDRV_CPU_IO_MAP(deco16_io_map,0)
MDRV_CPU_ADD("audio", M6502, 1500000)
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
@@ -965,3 +961,4 @@ GAME( 1984, yellowcb, kamikcab, boomrang, yellowcb, yellowcb, ROT270, "bootleg"
GAME( 1984, liberate, 0, liberate, liberate, liberate, ROT270, "Data East Corporation", "Liberation", 0 )
GAME( 1984, dualaslt, liberate, liberate, dualaslt, liberate, ROT270, "Data East USA", "Dual Assault", 0 )
GAME( 1984, liberatb, liberate, liberatb, liberatb, prosport, ROT270, "bootleg", "Liberation (bootleg)", 0 )
+
diff --git a/src/mame/drivers/mcatadv.c b/src/mame/drivers/mcatadv.c
index b3e6d52d5bb..9ac19d234cf 100644
--- a/src/mame/drivers/mcatadv.c
+++ b/src/mame/drivers/mcatadv.c
@@ -258,14 +258,9 @@ static ADDRESS_MAP_START( mcatadv_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf000, 0xf000) AM_WRITE(mcatadv_sound_bw_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcatadv_sound_readport, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( mcatadv_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( mcatadv_sound_writeport, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x80, 0x80) AM_WRITE(soundlatch2_w)
+ AM_RANGE(0x80, 0x80) AM_READWRITE(soundlatch_r, soundlatch2_w)
ADDRESS_MAP_END
@@ -281,21 +276,16 @@ static ADDRESS_MAP_START( nost_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xdfff) AM_WRITE(SMH_RAM ) // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nost_sound_readport, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x04, 0x05) AM_READ(ym2610_status_port_0_a_r)
- AM_RANGE(0x06, 0x07) AM_READ(ym2610_status_port_0_b_r)
- AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( nost_sound_writeport, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( nost_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(ym2610_control_port_0_a_w)
AM_RANGE(0x01, 0x01) AM_WRITE(ym2610_data_port_0_a_w)
AM_RANGE(0x02, 0x02) AM_WRITE(ym2610_control_port_0_b_w)
AM_RANGE(0x03, 0x03) AM_WRITE(ym2610_data_port_0_b_w)
+ AM_RANGE(0x04, 0x05) AM_READ(ym2610_status_port_0_a_r)
+ AM_RANGE(0x06, 0x07) AM_READ(ym2610_status_port_0_b_r)
AM_RANGE(0x40, 0x40) AM_WRITE(mcatadv_sound_bw_w)
- AM_RANGE(0x80, 0x80) AM_WRITE(soundlatch2_w)
+ AM_RANGE(0x80, 0x80) AM_READWRITE(soundlatch_r, soundlatch2_w)
ADDRESS_MAP_END
/*** Inputs ***/
@@ -494,7 +484,7 @@ static MACHINE_DRIVER_START( mcatadv )
MDRV_CPU_ADD("sound", Z80, XTAL_16MHz/4) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(mcatadv_sound_readmem,mcatadv_sound_writemem)
- MDRV_CPU_IO_MAP(mcatadv_sound_readport,mcatadv_sound_writeport)
+ MDRV_CPU_IO_MAP(mcatadv_sound_io_map,0)
/* video hardware */
MDRV_SCREEN_ADD("main", RASTER)
@@ -529,7 +519,7 @@ static MACHINE_DRIVER_START( nost )
MDRV_CPU_MODIFY("sound")
MDRV_CPU_PROGRAM_MAP(nost_sound_readmem,nost_sound_writemem)
- MDRV_CPU_IO_MAP(nost_sound_readport,nost_sound_writeport)
+ MDRV_CPU_IO_MAP(nost_sound_io_map,0)
MACHINE_DRIVER_END
@@ -725,3 +715,4 @@ GAME( 1993, catt, mcatadv, mcatadv, mcatadv, mcatadv, ROT0, "Wintechno", "
GAME( 1993, nost, 0, nost, nost, mcatadv, ROT270, "Face", "Nostradamus", GAME_NO_COCKTAIL )
GAME( 1993, nostj, nost, nost, nost, mcatadv, ROT270, "Face", "Nostradamus (Japan)", GAME_NO_COCKTAIL )
GAME( 1993, nostk, nost, nost, nost, mcatadv, ROT270, "Face", "Nostradamus (Korea)", GAME_NO_COCKTAIL )
+
diff --git a/src/mame/drivers/tecmosys.c b/src/mame/drivers/tecmosys.c
index ed18f27234b..9f2701497a4 100644
--- a/src/mame/drivers/tecmosys.c
+++ b/src/mame/drivers/tecmosys.c
@@ -542,6 +542,16 @@ static WRITE8_HANDLER( deroon_bankswitch_w )
memory_set_bankptr( 1, memory_region(machine, "audio") + ((data-2) & 0x0f) * 0x4000 + 0x10000 );
}
+static WRITE8_HANDLER( tecmosys_oki_bank_w )
+{
+ UINT8 upperbank = (data & 0x30) >> 4;
+ UINT8 lowerbank = (data & 0x03) >> 0;
+ UINT8* region = memory_region(machine, "oki");
+
+ memcpy( region+0x00000, region+0x80000 + lowerbank * 0x20000, 0x20000 );
+ memcpy( region+0x20000, region+0x80000 + upperbank * 0x20000, 0x20000 );
+}
+
static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM)
AM_RANGE(0x8000, 0xbfff) AM_READ(SMH_BANK1)
@@ -553,42 +563,22 @@ static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xf7ff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
- ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(ymf262_status_0_r)
- AM_RANGE(0x40, 0x40) AM_READ(soundlatch_r)
- AM_RANGE(0x60, 0x60) AM_READ(ymz280b_status_0_r)
-ADDRESS_MAP_END
-
-
-static WRITE8_HANDLER( tecmosys_oki_bank_w )
-{
- UINT8 upperbank = (data & 0x30) >> 4;
- UINT8 lowerbank = (data & 0x03) >> 0;
- UINT8* region = memory_region(machine, "oki");
-
- memcpy( region+0x00000, region+0x80000 + lowerbank * 0x20000, 0x20000 );
- memcpy( region+0x20000, region+0x80000 + upperbank * 0x20000, 0x20000 );
-}
-
-static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
+static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_WRITE(ymf262_register_a_0_w)
+ AM_RANGE(0x00, 0x00) AM_READWRITE(ymf262_status_0_r, ymf262_register_a_0_w)
AM_RANGE(0x01, 0x01) AM_WRITE(ymf262_data_a_0_w)
AM_RANGE(0x02, 0x02) AM_WRITE(ymf262_register_b_0_w)
AM_RANGE(0x03, 0x03) AM_WRITE(ymf262_data_b_0_w)
-
AM_RANGE(0x10, 0x10) AM_WRITE(okim6295_data_0_w)
AM_RANGE(0x20, 0x20) AM_WRITE(tecmosys_oki_bank_w)
-
AM_RANGE(0x30, 0x30) AM_WRITE(deroon_bankswitch_w)
-
+ AM_RANGE(0x40, 0x40) AM_READ(soundlatch_r)
AM_RANGE(0x50, 0x50) AM_WRITE(soundlatch2_w)
-
- AM_RANGE(0x60, 0x60) AM_WRITE(ymz280b_register_0_w)
+ AM_RANGE(0x60, 0x60) AM_READWRITE(ymz280b_status_0_r, ymz280b_register_0_w)
AM_RANGE(0x61, 0x61) AM_WRITE(ymz280b_data_0_w)
ADDRESS_MAP_END
+
static VIDEO_START(deroon)
{
sprite_bitmap = auto_bitmap_alloc(320,240,BITMAP_FORMAT_INDEXED16);
@@ -918,7 +908,7 @@ static MACHINE_DRIVER_START( deroon )
MDRV_CPU_ADD("audio", Z80, 16000000/2 ) /* 8 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_CPU_IO_MAP(readport,writeport)
+ MDRV_CPU_IO_MAP(io_map,0)
MDRV_GFXDECODE(tecmosys)
@@ -1140,3 +1130,4 @@ static DRIVER_INIT( tkdensha )
GAME( 1995, deroon, 0, deroon, deroon, deroon, ROT0, "Tecmo", "Deroon DeroDero", 0 )
GAME( 1996, tkdensho, 0, deroon, deroon, tkdensho, ROT0, "Tecmo", "Touki Denshou -Angel Eyes- (VER. 960614)", 0 )
GAME( 1996, tkdensha, tkdensho, deroon, deroon, tkdensha, ROT0, "Tecmo", "Touki Denshou -Angel Eyes- (VER. 960427)", 0 )
+