From 2c2cff0bd3bd09291c83ec5b50652c078dcb1331 Mon Sep 17 00:00:00 2001 From: Andrew Gardner Date: Mon, 1 Sep 2008 17:47:24 +0000 Subject: [PATCH] Part 2 of "The big IO_MAP merge of 2008". (Andrew Gardner) --- src/mame/drivers/egghunt.c | 25 ++++++++-------------- src/mame/drivers/hyhoo.c | 32 +++++++++++----------------- src/mame/drivers/mosaic.c | 39 ++++++++++++---------------------- src/mame/drivers/mrflea.c | 42 ++++++++++++++----------------------- src/mame/drivers/namcos22.c | 2 +- src/mame/drivers/prehisle.c | 12 ++++------- src/mame/drivers/speedspn.c | 18 ++++++---------- src/mame/drivers/suprslam.c | 18 ++++++---------- src/mame/drivers/timelimt.c | 18 +++++++--------- 9 files changed, 75 insertions(+), 131 deletions(-) diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c index 7cda68a2053..fe33659ac18 100644 --- a/src/mame/drivers/egghunt.c +++ b/src/mame/drivers/egghunt.c @@ -202,26 +202,18 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) 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_PORT("DSW1") - AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") - AM_RANGE(0x02, 0x02) AM_READ_PORT("P1") - AM_RANGE(0x03, 0x03) AM_READ_PORT("P2") - AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2") - AM_RANGE(0x06, 0x06) AM_READ_PORT("UNK") -ADDRESS_MAP_END -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(egghunt_vidram_bank_w) - AM_RANGE(0x01, 0x01) AM_WRITE(egghunt_gfx_banking_w) - AM_RANGE(0x03, 0x03) AM_WRITE(egghunt_soundlatch_w) - AM_RANGE(0x06, 0x06) AM_WRITENOP + AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(egghunt_vidram_bank_w) + AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(egghunt_gfx_banking_w) + AM_RANGE(0x02, 0x02) AM_READ_PORT("P1") + AM_RANGE(0x03, 0x03) AM_READ_PORT("P2") AM_WRITE(egghunt_soundlatch_w) + AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2") + AM_RANGE(0x06, 0x06) AM_READ_PORT("UNK") AM_WRITENOP AM_RANGE(0x07, 0x07) AM_WRITENOP ADDRESS_MAP_END - static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -387,7 +379,7 @@ static MACHINE_DRIVER_START( egghunt ) /* basic machine hardware */ MDRV_CPU_ADD("main", Z80,12000000/2) /* 6 MHz ?*/ MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport,writeport) + MDRV_CPU_IO_MAP(io_map,0) MDRV_CPU_VBLANK_INT("main", irq0_line_hold) // or 2 like mitchell.c? MDRV_CPU_ADD("audio", Z80,12000000/2) /* 6 MHz ?*/ @@ -441,3 +433,4 @@ ROM_START( egghunt ) ROM_END GAME( 1995, egghunt, 0, egghunt, egghunt, 0, ROT0, "Invi Image", "Egg Hunt", 0 ) + diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c index b574573c358..29ac1cef9cd 100644 --- a/src/mame/drivers/hyhoo.c +++ b/src/mame/drivers/hyhoo.c @@ -64,35 +64,26 @@ static ADDRESS_MAP_START( writemem_hyhoo, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_WRITE(SMH_RAM) AM_BASE(&nb1413m3_nvram) AM_SIZE(&nb1413m3_nvram_size) ADDRESS_MAP_END - -static ADDRESS_MAP_START( readport_hyhoo, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) - AM_RANGE(0x81, 0x81) AM_READ(ay8910_read_port_0_r) - AM_RANGE(0x90, 0x90) AM_READ_PORT("SYSTEM") - AM_RANGE(0xa0, 0xa0) AM_READ(nb1413m3_inputport1_r) - AM_RANGE(0xb0, 0xb0) AM_READ(nb1413m3_inputport2_r) - AM_RANGE(0xd0, 0xd0) AM_READ(SMH_NOP) // unknown - AM_RANGE(0xe0, 0xe1) AM_READ(nb1413m3_gfxrom_r) - AM_RANGE(0xf0, 0xf0) AM_READ(nb1413m3_dipsw1_r) - AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writeport_hyhoo, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( hyhoo_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) + AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) + AM_RANGE(0x81, 0x81) AM_READ(ay8910_read_port_0_r) AM_RANGE(0x82, 0x82) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x83, 0x83) AM_WRITE(ay8910_control_port_0_w) + AM_RANGE(0x90, 0x90) AM_READ_PORT("SYSTEM") AM_RANGE(0x90, 0x97) AM_WRITE(hyhoo_blitter_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE(nb1413m3_inputportsel_w) - AM_RANGE(0xb0, 0xb0) AM_WRITE(nb1413m3_sndrombank1_w) + AM_RANGE(0xa0, 0xa0) AM_READWRITE(nb1413m3_inputport1_r, nb1413m3_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_READWRITE(nb1413m3_inputport2_r, nb1413m3_sndrombank1_w) AM_RANGE(0xc0, 0xcf) AM_WRITE(SMH_RAM) AM_BASE(&hyhoo_clut) - AM_RANGE(0xd0, 0xd0) AM_WRITE(DAC_0_WRITE) + AM_RANGE(0xd0, 0xd0) AM_READWRITE(SMH_NOP, DAC_0_WRITE) // unknown read AM_RANGE(0xe0, 0xe0) AM_WRITE(hyhoo_romsel_w) + AM_RANGE(0xe0, 0xe1) AM_READ(nb1413m3_gfxrom_r) + AM_RANGE(0xf0, 0xf0) AM_READ(nb1413m3_dipsw1_r) // AM_RANGE(0xf0, 0xf0) AM_WRITE(SMH_NOP) + AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END - static INPUT_PORTS_START( hyhoo ) PORT_START("DSWA") PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) ) @@ -271,7 +262,7 @@ static MACHINE_DRIVER_START( hyhoo ) /* basic machine hardware */ MDRV_CPU_ADD("main", Z80, 5000000/1) /* 5.00 MHz ?? */ MDRV_CPU_PROGRAM_MAP(readmem_hyhoo, writemem_hyhoo) - MDRV_CPU_IO_MAP(readport_hyhoo, writeport_hyhoo) + MDRV_CPU_IO_MAP(hyhoo_io_map,0) MDRV_CPU_VBLANK_INT("main", nb1413m3_interrupt) MDRV_MACHINE_RESET(nb1413m3) @@ -345,3 +336,4 @@ ROM_END GAME( 1987, hyhoo, 0, hyhoo, hyhoo, hyhoo, ROT90, "Nichibutsu", "Taisen Quiz HYHOO (Japan)", 0 ) GAME( 1987, hyhoo2, 0, hyhoo, hyhoo2, hyhoo2, ROT90, "Nichibutsu", "Taisen Quiz HYHOO 2 (Japan)", 0 ) + diff --git a/src/mame/drivers/mosaic.c b/src/mame/drivers/mosaic.c index cf87b84ce05..710dec61269 100644 --- a/src/mame/drivers/mosaic.c +++ b/src/mame/drivers/mosaic.c @@ -126,43 +126,29 @@ static ADDRESS_MAP_START( gfire2_writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x24000, 0x241ff) AM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE(&paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) + +static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) + AM_RANGE(0x00, 0x3f) AM_WRITE(SMH_NOP) /* Z180 internal registers */ AM_RANGE(0x30, 0x30) AM_READ(SMH_NOP) /* Z180 internal registers */ - AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r) - AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r) - AM_RANGE(0x72, 0x72) AM_READ(protection_r) + AM_RANGE(0x70, 0x70) AM_READWRITE(ym2203_status_port_0_r, ym2203_control_port_0_w) + AM_RANGE(0x71, 0x71) AM_READWRITE(ym2203_read_port_0_r, ym2203_write_port_0_w) + AM_RANGE(0x72, 0x72) AM_READWRITE(protection_r, protection_w) AM_RANGE(0x74, 0x74) AM_READ_PORT("P1") AM_RANGE(0x76, 0x76) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( gfire2_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_WRITE(SMH_NOP) /* Z180 internal registers */ - AM_RANGE(0x70, 0x70) AM_WRITE(ym2203_control_port_0_w) - AM_RANGE(0x71, 0x71) AM_WRITE(ym2203_write_port_0_w) - AM_RANGE(0x72, 0x72) AM_WRITE(protection_w) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( gfire2_readport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x30, 0x30) AM_READ(SMH_NOP) /* Z180 internal registers */ - AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r) - AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r) - AM_RANGE(0x72, 0x72) AM_READ(gfire2_protection_r) + AM_RANGE(0x70, 0x70) AM_READWRITE(ym2203_status_port_0_r, ym2203_control_port_0_w) + AM_RANGE(0x71, 0x71) AM_READWRITE(ym2203_read_port_0_r, ym2203_write_port_0_w) + AM_RANGE(0x72, 0x72) AM_READWRITE(gfire2_protection_r, gfire2_protection_w) AM_RANGE(0x74, 0x74) AM_READ_PORT("P1") AM_RANGE(0x76, 0x76) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( gfire2_writeport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x3f) AM_WRITE(SMH_NOP) /* Z180 internal registers */ - AM_RANGE(0x70, 0x70) AM_WRITE(ym2203_control_port_0_w) - AM_RANGE(0x71, 0x71) AM_WRITE(ym2203_write_port_0_w) - AM_RANGE(0x72, 0x72) AM_WRITE(gfire2_protection_w) -ADDRESS_MAP_END - - static INPUT_PORTS_START( mosaic ) PORT_START("P1") @@ -292,7 +278,7 @@ static const ym2203_interface ym2203_config = static MACHINE_DRIVER_START( mosaic ) MDRV_CPU_ADD("main", Z180, 7000000) /* ??? */ MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport,writeport) + MDRV_CPU_IO_MAP(io_map,0) MDRV_CPU_VBLANK_INT("main", irq0_line_hold) /* video hardware */ @@ -321,7 +307,7 @@ static MACHINE_DRIVER_START( gfire2 ) MDRV_IMPORT_FROM(mosaic) MDRV_CPU_MODIFY("main") MDRV_CPU_PROGRAM_MAP(gfire2_readmem,gfire2_writemem) - MDRV_CPU_IO_MAP(gfire2_readport,gfire2_writeport) + MDRV_CPU_IO_MAP(gfire2_io_map,0) MACHINE_DRIVER_END @@ -388,3 +374,4 @@ ROM_END GAME( 1990, mosaic, 0, mosaic, mosaic, 0, ROT0, "Space", "Mosaic", 0 ) GAME( 1990, mosaica, mosaic, mosaic, mosaic, 0, ROT0, "Space (Fuuki license)", "Mosaic (Fuuki)", 0 ) GAME( 1992, gfire2, 0, gfire2, gfire2, 0, ROT0, "Topis Corp", "Golden Fire II", 0 ) + diff --git a/src/mame/drivers/mrflea.c b/src/mame/drivers/mrflea.c index 100306b538e..4070626031d 100644 --- a/src/mame/drivers/mrflea.c +++ b/src/mame/drivers/mrflea.c @@ -170,16 +170,12 @@ static READ8_HANDLER( mrflea_interrupt_type_r ){ /*******************************************************/ -static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x41, 0x41) AM_READ(mrflea_main_r) - AM_RANGE(0x42, 0x42) AM_READ(mrflea_main_status_r) -ADDRESS_MAP_END - -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(SMH_NOP) /* watchdog? */ AM_RANGE(0x40, 0x40) AM_WRITE(mrflea_io_w) + AM_RANGE(0x41, 0x41) AM_READ(mrflea_main_r) + AM_RANGE(0x42, 0x42) AM_READ(mrflea_main_status_r) AM_RANGE(0x43, 0x43) AM_WRITE(SMH_NOP) /* 0xa6,0x0d,0x05 */ AM_RANGE(0x60, 0x60) AM_WRITE(mrflea_gfx_bank_w) ADDRESS_MAP_END @@ -230,17 +226,6 @@ static READ8_HANDLER( mrflea_input3_r ) /*******************************************************/ -static ADDRESS_MAP_START( readport_io, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x10, 0x10) AM_READ(mrflea_interrupt_type_r) /* ? */ - AM_RANGE(0x20, 0x20) AM_READ(mrflea_io_r) - AM_RANGE(0x22, 0x22) AM_READ(mrflea_io_status_r) - AM_RANGE(0x40, 0x40) AM_READ(mrflea_input0_r) - AM_RANGE(0x42, 0x42) AM_READ(mrflea_input1_r) - AM_RANGE(0x44, 0x44) AM_READ(mrflea_input2_r) - AM_RANGE(0x46, 0x46) AM_READ(mrflea_input3_r) -ADDRESS_MAP_END - static WRITE8_HANDLER( mrflea_data0_w ){ ay8910_control_port_0_w( machine, offset, mrflea_select0 ); ay8910_write_port_0_w( machine, offset, data ); @@ -259,34 +244,38 @@ static WRITE8_HANDLER( mrflea_data3_w ){ ay8910_write_port_2_w( machine, offset, data ); } -static ADDRESS_MAP_START( writeport_io, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( inout_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP) /* watchdog */ - AM_RANGE(0x10, 0x10) AM_WRITE(SMH_NOP) /* irq ACK */ + AM_RANGE(0x10, 0x10) AM_READWRITE(mrflea_interrupt_type_r, SMH_NOP) /* ? / irq ACK */ AM_RANGE(0x11, 0x11) AM_WRITE(SMH_NOP) /* 0x83,0x00,0xfc */ + AM_RANGE(0x20, 0x20) AM_READ(mrflea_io_r) AM_RANGE(0x21, 0x21) AM_WRITE(mrflea_main_w) + AM_RANGE(0x22, 0x22) AM_READ(mrflea_io_status_r) AM_RANGE(0x23, 0x23) AM_WRITE(SMH_NOP) /* 0xb4,0x09,0x05 */ - AM_RANGE(0x40, 0x40) AM_WRITE(mrflea_data0_w) + AM_RANGE(0x40, 0x40) AM_READWRITE(mrflea_input0_r, mrflea_data0_w) AM_RANGE(0x41, 0x41) AM_WRITE(mrflea_select0_w) - AM_RANGE(0x42, 0x42) AM_WRITE(mrflea_data1_w) + AM_RANGE(0x42, 0x42) AM_READWRITE(mrflea_input1_r, mrflea_data1_w) AM_RANGE(0x43, 0x43) AM_WRITE(mrflea_select1_w) - AM_RANGE(0x44, 0x44) AM_WRITE(mrflea_data2_w) + AM_RANGE(0x44, 0x44) AM_READWRITE(mrflea_input2_r, mrflea_data2_w) AM_RANGE(0x45, 0x45) AM_WRITE(mrflea_select2_w) - AM_RANGE(0x46, 0x46) AM_WRITE(mrflea_data3_w) + AM_RANGE(0x46, 0x46) AM_READWRITE(mrflea_input3_r, mrflea_data3_w) AM_RANGE(0x47, 0x47) AM_WRITE(mrflea_select3_w) ADDRESS_MAP_END +/*******************************************************/ + static MACHINE_DRIVER_START( mrflea ) /* basic machine hardware */ MDRV_CPU_ADD("main", Z80, 4000000) /* 4 MHz? */ MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport,writeport) + MDRV_CPU_IO_MAP(io_map,0) MDRV_CPU_VBLANK_INT("main", irq0_line_hold) /* NMI resets the game */ MDRV_CPU_ADD("sub", Z80, 6000000) MDRV_CPU_PROGRAM_MAP(readmem_io,writemem_io) - MDRV_CPU_IO_MAP(readport_io,writeport_io) + MDRV_CPU_IO_MAP(inout_io_map,0) MDRV_CPU_VBLANK_INT_HACK(mrflea_io_interrupt,2) MDRV_INTERLEAVE(100) @@ -425,3 +414,4 @@ INPUT_PORTS_END GAME( 1982, mrflea, 0, mrflea, mrflea, 0, ROT270, "Pacific Novelty", "The Amazing Adventures of Mr. F. Lea" , 0 ) + diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c index 5c08ee07df4..cdf64360839 100644 --- a/src/mame/drivers/namcos22.c +++ b/src/mame/drivers/namcos22.c @@ -3798,7 +3798,7 @@ ROM_START( raveracw ) ROM_REGION( 0x100000, "user4", 0 ) /* sound data and MCU BIOS */ ROM_LOAD( "rv1data.6r", 0, 0x080000, CRC(d358ec20) SHA1(140c513349240417bb546dd2d151f3666b818e91) ) - ROM_REGION( 0x200000*8, "textile", ROMREGION_DISPOSE) /* 16x16x8bpp texture tiles */ + ROM_REGION( 0x200000*8, "textile", ROMREGION_DISPOSE) /* 16x16x8bpp texture tiles */ ROM_LOAD( "rv1cg0.1a", 0x200000*0x0, 0x200000,CRC(c518f06b) SHA1(4c01d453244192dd13087bdc72a7f7be80b47cbc) ) /* rv1cg0.2a */ ROM_LOAD( "rv1cg1.1c", 0x200000*0x1, 0x200000,CRC(6628f792) SHA1(7a5405c5fcb2f3f001ae17df393c31e61a834f2b) ) /* rv1cg1.2c */ ROM_LOAD( "rv1cg2.1d", 0x200000*0x2, 0x200000,CRC(0b707cc5) SHA1(38e1a554b278062edc369565353497ac4b016f78) ) /* rv1cg2.2d */ diff --git a/src/mame/drivers/prehisle.c b/src/mame/drivers/prehisle.c index 3b4d510ca97..6eb7301575c 100644 --- a/src/mame/drivers/prehisle.c +++ b/src/mame/drivers/prehisle.c @@ -76,14 +76,9 @@ static ADDRESS_MAP_START( prehisle_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_WRITE(SMH_NOP) // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( prehisle_sound_readport, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( prehisle_sound_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ(ym3812_status_port_0_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( prehisle_sound_writeport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_WRITE(ym3812_control_port_0_w) + AM_RANGE(0x00, 0x00) AM_READWRITE(ym3812_status_port_0_r, ym3812_control_port_0_w) AM_RANGE(0x20, 0x20) AM_WRITE(ym3812_write_port_0_w) AM_RANGE(0x40, 0x40) AM_WRITE(D7759_write_port_0_w) AM_RANGE(0x80, 0x80) AM_WRITE(upd7759_0_reset_w) @@ -235,7 +230,7 @@ static MACHINE_DRIVER_START( prehisle ) MDRV_CPU_ADD("audio", Z80, XTAL_4MHz) /* verified on pcb */ MDRV_CPU_PROGRAM_MAP(prehisle_sound_readmem,prehisle_sound_writemem) - MDRV_CPU_IO_MAP(prehisle_sound_readport,prehisle_sound_writeport) + MDRV_CPU_IO_MAP(prehisle_sound_io_map,0) /* video hardware */ MDRV_SCREEN_ADD("main", RASTER) @@ -354,3 +349,4 @@ ROM_END GAME( 1989, prehisle, 0, prehisle, prehisle, 0, ROT0, "SNK", "Prehistoric Isle in 1930 (World)", GAME_SUPPORTS_SAVE ) GAME( 1989, prehislu, prehisle, prehisle, prehisle, 0, ROT0, "SNK of America", "Prehistoric Isle in 1930 (US)", GAME_SUPPORTS_SAVE ) GAME( 1989, gensitou, prehisle, prehisle, prehisle, 0, ROT0, "SNK", "Genshi-Tou 1930's", GAME_SUPPORTS_SAVE ) + diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c index dd47dcca017..bf2363dfbee 100644 --- a/src/mame/drivers/speedspn.c +++ b/src/mame/drivers/speedspn.c @@ -137,25 +137,18 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_WRITE(SMH_ROM) /* banked ROM */ ADDRESS_MAP_END -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(0x07, 0x07) AM_WRITE(speedspn_global_display_w) - AM_RANGE(0x12, 0x12) AM_WRITE(speedspn_banked_rom_change) - AM_RANGE(0x13, 0x13) AM_WRITE(speedspn_sound_w) - AM_RANGE(0x17, 0x17) AM_WRITE(speedspn_banked_vidram_change) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_READ_PORT("SYSTEM") AM_RANGE(0x11, 0x11) AM_READ_PORT("P1") - AM_RANGE(0x12, 0x12) AM_READ_PORT("P2") - AM_RANGE(0x13, 0x13) AM_READ_PORT("DSW1") + AM_RANGE(0x12, 0x12) AM_READ_PORT("P2") AM_WRITE(speedspn_banked_rom_change) + AM_RANGE(0x13, 0x13) AM_READ_PORT("DSW1") AM_WRITE(speedspn_sound_w) AM_RANGE(0x14, 0x14) AM_READ_PORT("DSW2") AM_RANGE(0x16, 0x16) AM_READ(speedspn_irq_ack_r) // @@@ could be watchdog, value is discarded + AM_RANGE(0x17, 0x17) AM_WRITE(speedspn_banked_vidram_change) ADDRESS_MAP_END - /* sound cpu */ static ADDRESS_MAP_START( readmem2, ADDRESS_SPACE_PROGRAM, 8 ) @@ -304,7 +297,7 @@ static MACHINE_DRIVER_START( speedspn ) /* basic machine hardware */ MDRV_CPU_ADD("main",Z80,6000000) /* 6 MHz */ MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport, writeport) + MDRV_CPU_IO_MAP(io_map,0) MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_ADD("audio", Z80,6000000) /* 6 MHz */ @@ -374,3 +367,4 @@ ROM_END /*** GAME DRIVERS ************************************************************/ GAME( 1994, speedspn, 0, speedspn, speedspn, 0, ROT180, "TCH", "Speed Spin", GAME_IMPERFECT_GRAPHICS ) + diff --git a/src/mame/drivers/suprslam.c b/src/mame/drivers/suprslam.c index eace373850b..e69f28175cd 100644 --- a/src/mame/drivers/suprslam.c +++ b/src/mame/drivers/suprslam.c @@ -176,20 +176,13 @@ 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( suprslam_sound_readport, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x04, 0x04) AM_READ(soundlatch_r) - AM_RANGE(0x08, 0x08) AM_READ(ym2610_status_port_0_a_r) - AM_RANGE(0x0a, 0x0a) AM_READ(ym2610_status_port_0_b_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( suprslam_sound_writeport, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( suprslam_sound_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(suprslam_sh_bankswitch_w) - AM_RANGE(0x04, 0x04) AM_WRITE(pending_command_clear_w) - AM_RANGE(0x08, 0x08) AM_WRITE(ym2610_control_port_0_a_w) + AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, pending_command_clear_w) + AM_RANGE(0x08, 0x08) AM_READWRITE(ym2610_status_port_0_a_r, 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(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) ADDRESS_MAP_END @@ -329,7 +322,7 @@ static MACHINE_DRIVER_START( suprslam ) MDRV_CPU_ADD("audio", Z80,8000000/2) /* 4 MHz ??? */ MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem) - MDRV_CPU_IO_MAP(suprslam_sound_readport,suprslam_sound_writeport) + MDRV_CPU_IO_MAP(suprslam_sound_io_map,0) MDRV_GFXDECODE(suprslam) @@ -392,3 +385,4 @@ ROM_END GAME( 1995, suprslam, 0, suprslam, suprslam, 0, ROT0, "Banpresto / Toei Animation", "Super Slams", GAME_IMPERFECT_GRAPHICS ) + diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c index 20cafcec2d7..4c4dfe3a8be 100644 --- a/src/mame/drivers/timelimt.c +++ b/src/mame/drivers/timelimt.c @@ -52,6 +52,7 @@ static WRITE8_HANDLER( sound_reset_w ) cpunum_set_input_line(machine, 1, INPUT_LINE_RESET, PULSE_LINE ); } +/***************************************************************************/ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) /* rom */ @@ -81,7 +82,7 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xc804, 0xc804) AM_WRITE(SMH_NOP) /* ???? not used */ ADDRESS_MAP_END -static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(watchdog_reset_r) ADDRESS_MAP_END @@ -96,18 +97,14 @@ static ADDRESS_MAP_START( writemem_sound, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x3800, 0x3bff) AM_WRITE(SMH_RAM) ADDRESS_MAP_END -static ADDRESS_MAP_START( readport_sound, ADDRESS_SPACE_IO, 8 ) - ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x8c, 0x8d) AM_READ(ay8910_read_port_0_r) - AM_RANGE(0x8e, 0x8f) AM_READ(ay8910_read_port_1_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writeport_sound, 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_WRITE(soundlatch_clear_w) AM_RANGE(0x8c, 0x8c) AM_WRITE(ay8910_control_port_0_w) + AM_RANGE(0x8c, 0x8d) AM_READ(ay8910_read_port_0_r) AM_RANGE(0x8d, 0x8d) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x8e, 0x8e) AM_WRITE(ay8910_control_port_1_w) + AM_RANGE(0x8e, 0x8f) AM_READ(ay8910_read_port_1_r) AM_RANGE(0x8f, 0x8f) AM_WRITE(ay8910_write_port_1_w) ADDRESS_MAP_END @@ -265,12 +262,12 @@ static MACHINE_DRIVER_START( timelimt ) /* basic machine hardware */ MDRV_CPU_ADD("main", Z80, 5000000) /* 5.000 MHz */ MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport,0) + MDRV_CPU_IO_MAP(io_map,0) MDRV_CPU_VBLANK_INT("main", timelimt_irq) MDRV_CPU_ADD("audio", Z80,18432000/6) /* 3.072 MHz */ MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound) - MDRV_CPU_IO_MAP(readport_sound,writeport_sound) + MDRV_CPU_IO_MAP(sound_io_map,0) MDRV_CPU_VBLANK_INT("main", irq0_line_hold) /* ? */ MDRV_INTERLEAVE(50) @@ -380,3 +377,4 @@ ROM_END GAME( 1983, timelimt, 0, timelimt, timelimt, 0, ROT90, "Chuo Co. Ltd", "Time Limit", GAME_IMPERFECT_COLORS ) GAME( 1984, progress, 0, progress, progress, 0, ROT90, "Chuo Co. Ltd", "Progress", 0 ) +