diff --git a/src/mame/drivers/blmbycar.c b/src/mame/drivers/blmbycar.c index cc09cac33c3..ba9badba849 100644 --- a/src/mame/drivers/blmbycar.c +++ b/src/mame/drivers/blmbycar.c @@ -113,45 +113,31 @@ static READ16_HANDLER( blmbycar_opt_wheel_r ) ***************************************************************************/ -static ADDRESS_MAP_START( blmbycar_readmem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x0fffff) AM_READ(SMH_ROM ) // ROM - AM_RANGE(0xfec000, 0xfeffff) AM_READ(SMH_RAM ) // RAM - AM_RANGE(0x200000, 0x2005ff) AM_READ(SMH_RAM ) // Palette - AM_RANGE(0x200600, 0x203fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x204000, 0x2045ff) AM_READ(SMH_RAM ) // Palette - AM_RANGE(0x204600, 0x207fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x104000, 0x105fff) AM_READ(SMH_RAM ) // Layer 1 - AM_RANGE(0x106000, 0x107fff) AM_READ(SMH_RAM ) // Layer 0 - AM_RANGE(0x440000, 0x441fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x444000, 0x445fff) AM_READ(SMH_RAM ) // Sprites (size?) - AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW") - AM_RANGE(0x700002, 0x700003) AM_READ_PORT("P1_P2") - AM_RANGE(0x700004, 0x700005) AM_READ(blmbycar_opt_wheel_r ) // Wheel (optical) - AM_RANGE(0x700006, 0x700007) AM_READ_PORT("UNK") - AM_RANGE(0x700008, 0x700009) AM_READ(blmbycar_pot_wheel_r ) // Wheel (potentiometer) - AM_RANGE(0x70000e, 0x70000f) AM_READ(OKIM6295_status_0_lsb_r ) // Sound -ADDRESS_MAP_END - -static ADDRESS_MAP_START( blmbycar_writemem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x0fffff) AM_WRITE(SMH_ROM ) // ROM - AM_RANGE(0xfec000, 0xfeffff) AM_WRITE(SMH_RAM ) // RAM - AM_RANGE(0x100000, 0x103fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x104000, 0x105fff) AM_WRITE(blmbycar_vram_1_w) AM_BASE(&blmbycar_vram_1 ) // Layer 1 - AM_RANGE(0x106000, 0x107fff) AM_WRITE(blmbycar_vram_0_w) AM_BASE(&blmbycar_vram_0 ) // Layer 0 - AM_RANGE(0x108000, 0x10bfff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x10c000, 0x10c003) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_1 ) // Scroll 1 - AM_RANGE(0x10c004, 0x10c007) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_0 ) // Scroll 0 - AM_RANGE(0x200000, 0x2005ff) AM_WRITE(blmbycar_palette_w ) // Palette - AM_RANGE(0x200600, 0x203fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x204000, 0x2045ff) AM_WRITE(blmbycar_palette_w) AM_BASE(&paletteram16 ) // Palette - AM_RANGE(0x204600, 0x207fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x440000, 0x441fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x444000, 0x445fff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram16) AM_SIZE(&spriteram_size ) // Sprites (size?) - AM_RANGE(0x70000a, 0x70000b) AM_WRITE(SMH_NOP ) // ? Wheel - AM_RANGE(0x70000c, 0x70000d) AM_WRITE(blmbycar_okibank_w ) // Sound - AM_RANGE(0x70000e, 0x70000f) AM_WRITE(OKIM6295_data_0_lsb_w ) // - AM_RANGE(0x70006a, 0x70006b) AM_WRITE(blmbycar_pot_wheel_reset_w ) // Wheel (potentiometer) - AM_RANGE(0x70007a, 0x70007b) AM_WRITE(blmbycar_pot_wheel_shift_w ) // +static ADDRESS_MAP_START( blmbycar_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x0fffff) AM_ROM + AM_RANGE(0xfec000, 0xfeffff) AM_RAM + AM_RANGE(0x100000, 0x103fff) AM_WRITE(SMH_RAM ) // + AM_RANGE(0x104000, 0x105fff) AM_RAM_WRITE(blmbycar_vram_1_w) AM_BASE(&blmbycar_vram_1 ) // Layer 1 + AM_RANGE(0x106000, 0x107fff) AM_RAM_WRITE(blmbycar_vram_0_w) AM_BASE(&blmbycar_vram_0 ) // Layer 0 + AM_RANGE(0x108000, 0x10bfff) AM_WRITE(SMH_RAM ) // + AM_RANGE(0x10c000, 0x10c003) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_1 ) // Scroll 1 + AM_RANGE(0x10c004, 0x10c007) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_0 ) // Scroll 0 + AM_RANGE(0x200000, 0x2005ff) AM_RAM_WRITE(blmbycar_palette_w ) // Palette + AM_RANGE(0x200600, 0x203fff) AM_RAM + AM_RANGE(0x204000, 0x2045ff) AM_RAM_WRITE(blmbycar_palette_w) AM_BASE(&paletteram16 ) // Palette + AM_RANGE(0x204600, 0x207fff) AM_RAM + AM_RANGE(0x440000, 0x441fff) AM_RAM + AM_RANGE(0x444000, 0x445fff) AM_RAM_WRITE(SMH_RAM) AM_BASE(&spriteram16) AM_SIZE(&spriteram_size ) // Sprites (size?) + AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW" ) + AM_RANGE(0x700002, 0x700003) AM_READ_PORT("P1_P2" ) + AM_RANGE(0x700004, 0x700005) AM_READ(blmbycar_opt_wheel_r ) // Wheel (optical) + AM_RANGE(0x700006, 0x700007) AM_READ_PORT("UNK" ) + AM_RANGE(0x700008, 0x700009) AM_READ(blmbycar_pot_wheel_r ) // Wheel (potentiometer) + AM_RANGE(0x70000a, 0x70000b) AM_WRITE(SMH_NOP ) // ? Wheel + AM_RANGE(0x70000c, 0x70000d) AM_WRITE(blmbycar_okibank_w ) // Sound + AM_RANGE(0x70000e, 0x70000f) AM_READWRITE(OKIM6295_status_0_lsb_r, OKIM6295_data_0_lsb_w) // Sound + AM_RANGE(0x70006a, 0x70006b) AM_WRITE(blmbycar_pot_wheel_reset_w ) // Wheel (potentiometer) + AM_RANGE(0x70007a, 0x70007b) AM_WRITE(blmbycar_pot_wheel_shift_w ) // ADDRESS_MAP_END static READ16_HANDLER( waterball_unk_r ) @@ -163,42 +149,28 @@ static READ16_HANDLER( waterball_unk_r ) return retvalue; } -static ADDRESS_MAP_START( watrball_readmem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x0fffff) AM_READ(SMH_ROM ) // ROM - AM_RANGE(0xfec000, 0xfeffff) AM_READ(SMH_RAM ) // RAM - AM_RANGE(0x200000, 0x2005ff) AM_READ(SMH_RAM ) // Palette - AM_RANGE(0x200600, 0x203fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x204000, 0x2045ff) AM_READ(SMH_RAM ) // Palette - AM_RANGE(0x204600, 0x207fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x104000, 0x105fff) AM_READ(SMH_RAM ) // Layer 1 - AM_RANGE(0x106000, 0x107fff) AM_READ(SMH_RAM ) // Layer 0 - AM_RANGE(0x440000, 0x441fff) AM_READ(SMH_RAM ) // - AM_RANGE(0x444000, 0x445fff) AM_READ(SMH_RAM ) // Sprites (size?) - AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW") - AM_RANGE(0x700002, 0x700003) AM_READ_PORT("P1_P2") - AM_RANGE(0x700006, 0x700007) AM_READ(SMH_NOP ) // read - AM_RANGE(0x700008, 0x700009) AM_READ(waterball_unk_r ) // 0x0008 must toggle - AM_RANGE(0x70000e, 0x70000f) AM_READ(OKIM6295_status_0_lsb_r ) // Sound -ADDRESS_MAP_END - -static ADDRESS_MAP_START( watrball_writemem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x0fffff) AM_WRITE(SMH_ROM ) // ROM - AM_RANGE(0xfec000, 0xfeffff) AM_WRITE(SMH_RAM ) // RAM - AM_RANGE(0x100000, 0x103fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x104000, 0x105fff) AM_WRITE(blmbycar_vram_1_w) AM_BASE(&blmbycar_vram_1 ) // Layer 1 - AM_RANGE(0x106000, 0x107fff) AM_WRITE(blmbycar_vram_0_w) AM_BASE(&blmbycar_vram_0 ) // Layer 0 - AM_RANGE(0x108000, 0x10bfff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x10c000, 0x10c003) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_1 ) // Scroll 1 - AM_RANGE(0x10c004, 0x10c007) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_0 ) // Scroll 0 - AM_RANGE(0x200000, 0x2005ff) AM_WRITE(blmbycar_palette_w ) // Palette - AM_RANGE(0x200600, 0x203fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x204000, 0x2045ff) AM_WRITE(blmbycar_palette_w) AM_BASE(&paletteram16 ) // Palette - AM_RANGE(0x204600, 0x207fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x440000, 0x441fff) AM_WRITE(SMH_RAM ) // - AM_RANGE(0x444000, 0x445fff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram16) AM_SIZE(&spriteram_size ) // Sprites (size?) - AM_RANGE(0x70000a, 0x70000b) AM_WRITE(SMH_NOP ) // ?? busy - AM_RANGE(0x70000c, 0x70000d) AM_WRITE(blmbycar_okibank_w ) // Sound - AM_RANGE(0x70000e, 0x70000f) AM_WRITE(OKIM6295_data_0_lsb_w ) // +static ADDRESS_MAP_START( watrball_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x0fffff) AM_ROM + AM_RANGE(0xfec000, 0xfeffff) AM_RAM + AM_RANGE(0x100000, 0x103fff) AM_WRITE(SMH_RAM ) // + AM_RANGE(0x104000, 0x105fff) AM_RAM_WRITE(blmbycar_vram_1_w) AM_BASE(&blmbycar_vram_1 ) // Layer 1 + AM_RANGE(0x106000, 0x107fff) AM_RAM_WRITE(blmbycar_vram_0_w) AM_BASE(&blmbycar_vram_0 ) // Layer 0 + AM_RANGE(0x108000, 0x10bfff) AM_WRITE(SMH_RAM ) // + AM_RANGE(0x10c000, 0x10c003) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_1 ) // Scroll 1 + AM_RANGE(0x10c004, 0x10c007) AM_WRITE(SMH_RAM) AM_BASE(&blmbycar_scroll_0 ) // Scroll 0 + AM_RANGE(0x200000, 0x2005ff) AM_RAM_WRITE(blmbycar_palette_w ) // Palette + AM_RANGE(0x200600, 0x203fff) AM_RAM + AM_RANGE(0x204000, 0x2045ff) AM_RAM_WRITE(blmbycar_palette_w) AM_BASE(&paletteram16 ) // Palette + AM_RANGE(0x204600, 0x207fff) AM_RAM + AM_RANGE(0x440000, 0x441fff) AM_RAM + AM_RANGE(0x444000, 0x445fff) AM_RAM_WRITE(SMH_RAM) AM_BASE(&spriteram16) AM_SIZE(&spriteram_size ) // Sprites (size?) + AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW" ) + AM_RANGE(0x700002, 0x700003) AM_READ_PORT("P1_P2" ) + AM_RANGE(0x700006, 0x700007) AM_READ(SMH_NOP ) // read + AM_RANGE(0x700008, 0x700009) AM_READ(waterball_unk_r ) // 0x0008 must toggle + AM_RANGE(0x70000a, 0x70000b) AM_WRITE(SMH_NOP ) // ?? busy + AM_RANGE(0x70000c, 0x70000d) AM_WRITE(blmbycar_okibank_w ) // Sound + AM_RANGE(0x70000e, 0x70000f) AM_READWRITE(OKIM6295_status_0_lsb_r, OKIM6295_data_0_lsb_w) // ADDRESS_MAP_END /*************************************************************************** @@ -367,7 +339,7 @@ static const gfx_layout layout_16x16x4 = /* Layers both use the first $20 color codes. Sprites the next $10 */ static GFXDECODE_START( blmbycar ) - GFXDECODE_ENTRY( "gfx1", 0, layout_16x16x4, 0x0, 0x30 ) // [0] Layers + Sprites + GFXDECODE_ENTRY( "sprites", 0, layout_16x16x4, 0x0, 0x30 ) // [0] Layers + Sprites GFXDECODE_END @@ -384,7 +356,7 @@ static MACHINE_DRIVER_START( blmbycar ) /* basic machine hardware */ MDRV_CPU_ADD("main", M68000, 10000000) /* ? */ - MDRV_CPU_PROGRAM_MAP(blmbycar_readmem,blmbycar_writemem) + MDRV_CPU_PROGRAM_MAP(blmbycar_map,0) MDRV_CPU_VBLANK_INT("main", irq1_line_hold) /* video hardware */ @@ -414,7 +386,7 @@ static MACHINE_DRIVER_START( watrball ) /* basic machine hardware */ MDRV_CPU_ADD("main", M68000, 10000000) /* ? */ - MDRV_CPU_PROGRAM_MAP(watrball_readmem,watrball_writemem) + MDRV_CPU_PROGRAM_MAP(watrball_map,0) MDRV_CPU_VBLANK_INT("main", irq1_line_hold) /* video hardware */ @@ -467,7 +439,7 @@ ROM_START( blmbycar ) ROM_LOAD16_BYTE( "bcrom4.bin", 0x000000, 0x080000, CRC(06d490ba) SHA1(6d113561b474bf613c6b91c9525a52025ae65ab7) ) ROM_LOAD16_BYTE( "bcrom6.bin", 0x000001, 0x080000, CRC(33aca664) SHA1(04fff492654d3edac62e9d35808e5946bcc78cbb) ) - ROM_REGION( 0x200000, "gfx1", ROMREGION_DISPOSE ) /* Sprites */ + ROM_REGION( 0x200000, "sprites", ROMREGION_DISPOSE ) /* Sprites */ ROM_LOAD( "bc_rom7", 0x000000, 0x080000, CRC(e55ca79b) SHA1(4453a6ae0518832f437ab701c28cb2f32920f8ba) ) ROM_LOAD( "bc_rom8", 0x080000, 0x080000, CRC(cdf38c96) SHA1(3273c29b6a01a7296d06fc653120f8c615195d2c) ) ROM_LOAD( "bc_rom9", 0x100000, 0x080000, CRC(0337ab3d) SHA1(18c72cd640c7b599390dffaeb670f5832202bf06) ) @@ -484,7 +456,7 @@ ROM_START( blmbycau ) ROM_LOAD16_BYTE( "bc_rom4", 0x000000, 0x080000, CRC(76f054a2) SHA1(198efd152b13033e5249119ca48b9e0f6351b0b9) ) ROM_LOAD16_BYTE( "bc_rom6", 0x000001, 0x080000, CRC(2570b4c5) SHA1(706465950023a6ef7c85ceb9c76246d7556b3859) ) - ROM_REGION( 0x200000, "gfx1", ROMREGION_DISPOSE ) /* Sprites */ + ROM_REGION( 0x200000, "sprites", ROMREGION_DISPOSE ) /* Sprites */ ROM_LOAD( "bc_rom7", 0x000000, 0x080000, CRC(e55ca79b) SHA1(4453a6ae0518832f437ab701c28cb2f32920f8ba) ) ROM_LOAD( "bc_rom8", 0x080000, 0x080000, CRC(cdf38c96) SHA1(3273c29b6a01a7296d06fc653120f8c615195d2c) ) ROM_LOAD( "bc_rom9", 0x100000, 0x080000, CRC(0337ab3d) SHA1(18c72cd640c7b599390dffaeb670f5832202bf06) ) @@ -517,7 +489,7 @@ ROM_START( watrball ) ROM_LOAD16_BYTE( "rom4.bin", 0x000000, 0x020000, CRC(bfbfa720) SHA1(d6d14c0ba545eb7adee7190da2d3db1c6dd00d75) ) ROM_LOAD16_BYTE( "rom6.bin", 0x000001, 0x020000, CRC(acff9b01) SHA1(b85671bcc4f03fdf05eb1c9b5d4143e33ec1d7db) ) - ROM_REGION( 0x200000, "gfx1", ROMREGION_DISPOSE ) /* Sprites */ + ROM_REGION( 0x200000, "sprites", ROMREGION_DISPOSE ) /* Sprites */ ROM_LOAD( "rom7.bin", 0x000000, 0x080000, CRC(e7e5c311) SHA1(5af1a666bf23c5505d120d81fb942f5c49341861) ) ROM_LOAD( "rom8.bin", 0x080000, 0x080000, CRC(fd27ce6e) SHA1(a472a8cc25818427d2870518649780146e51835b) ) ROM_LOAD( "rom9.bin", 0x100000, 0x080000, CRC(122cc0ad) SHA1(27cdb19fa082089e47c5cdb44742cfd93aa23a00) ) diff --git a/src/mame/drivers/blockade.c b/src/mame/drivers/blockade.c index 0d769c75669..3b7cafc7851 100644 --- a/src/mame/drivers/blockade.c +++ b/src/mame/drivers/blockade.c @@ -109,27 +109,17 @@ static WRITE8_HANDLER( blockade_coin_latch_w ) } -static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x07ff) AM_READ(SMH_ROM) AM_MIRROR(0x6000) - AM_RANGE(0x8000, 0x83ff) AM_READ(SMH_RAM) AM_MIRROR(0x6c00) - AM_RANGE(0x9000, 0x90ff) AM_READ(SMH_RAM) AM_MIRROR(0x6f00) +static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x07ff) AM_ROM AM_MIRROR(0x6000) + AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(blockade_videoram_w) AM_BASE(&videoram) AM_MIRROR(0x6c00) + AM_RANGE(0x9000, 0x90ff) AM_RAM AM_MIRROR(0x6f00) ADDRESS_MAP_END -static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x07ff) AM_WRITE(SMH_ROM) AM_MIRROR(0x6000) - AM_RANGE(0x8000, 0x83ff) AM_WRITE(blockade_videoram_w) AM_BASE(&videoram) AM_MIRROR(0x6c00) - AM_RANGE(0x9000, 0x90ff) AM_WRITE(SMH_RAM) AM_MIRROR(0x6f00) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) - AM_RANGE(0x01, 0x01) AM_READ(blockade_input_port_0_r) +static ADDRESS_MAP_START( main_io_map, ADDRESS_SPACE_IO, 8 ) + AM_RANGE(0x01, 0x01) AM_READWRITE(blockade_input_port_0_r, blockade_coin_latch_w) AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") - AM_RANGE(0x04, 0x04) AM_READ_PORT("IN2") -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) - AM_RANGE(0x01, 0x01) AM_WRITE(blockade_coin_latch_w) AM_RANGE(0x02, 0x02) AM_WRITE(blockade_sound_freq_w) + AM_RANGE(0x04, 0x04) AM_READ_PORT("IN2") AM_RANGE(0x04, 0x04) AM_WRITE(blockade_env_on_w) AM_RANGE(0x08, 0x08) AM_WRITE(blockade_env_off_w) ADDRESS_MAP_END @@ -450,8 +440,8 @@ static MACHINE_DRIVER_START( blockade ) /* basic machine hardware */ MDRV_CPU_ADD("main", 8080, 2079000) - MDRV_CPU_PROGRAM_MAP(readmem,writemem) - MDRV_CPU_IO_MAP(readport,writeport) + MDRV_CPU_PROGRAM_MAP(main_map,0) + MDRV_CPU_IO_MAP(main_io_map,0) MDRV_CPU_VBLANK_INT("main", blockade_interrupt) /* video hardware */ diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c index e24893bdb2f..a8948354c39 100644 --- a/src/mame/drivers/blockhl.c +++ b/src/mame/drivers/blockhl.c @@ -66,45 +66,32 @@ static WRITE8_HANDLER( blockhl_sh_irqtrigger_w ) -static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) + AM_RANGE(0x1f88, 0x1f88) AM_WRITE(blockhl_sh_irqtrigger_w) + AM_RANGE(0x1f8c, 0x1f8c) AM_WRITE(watchdog_reset_w) AM_RANGE(0x1f94, 0x1f94) AM_READ_PORT("DSW3") AM_RANGE(0x1f95, 0x1f95) AM_READ_PORT("P1") AM_RANGE(0x1f96, 0x1f96) AM_READ_PORT("P2") AM_RANGE(0x1f97, 0x1f97) AM_READ_PORT("DSW1") AM_RANGE(0x1f98, 0x1f98) AM_READ_PORT("DSW2") - AM_RANGE(0x0000, 0x3fff) AM_READ(K052109_051960_r) - AM_RANGE(0x4000, 0x57ff) AM_READ(SMH_RAM) - AM_RANGE(0x5800, 0x5fff) AM_READ(bankedram_r) - AM_RANGE(0x6000, 0x7fff) AM_READ(SMH_BANK1) - AM_RANGE(0x8000, 0xffff) AM_READ(SMH_ROM) + AM_RANGE(0x0000, 0x3fff) AM_READWRITE(K052109_051960_r, K052109_051960_w) + AM_RANGE(0x4000, 0x57ff) AM_RAM + AM_RANGE(0x5800, 0x5fff) AM_READWRITE(bankedram_r, bankedram_w) AM_BASE(&ram) + AM_RANGE(0x6000, 0x7fff) AM_READWRITE(SMH_BANK1, SMH_ROM) + AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) - AM_RANGE(0x1f88, 0x1f88) AM_WRITE(blockhl_sh_irqtrigger_w) - AM_RANGE(0x1f8c, 0x1f8c) AM_WRITE(watchdog_reset_w) - AM_RANGE(0x0000, 0x3fff) AM_WRITE(K052109_051960_w) - AM_RANGE(0x4000, 0x57ff) AM_WRITE(SMH_RAM) - AM_RANGE(0x5800, 0x5fff) AM_WRITE(bankedram_w) AM_BASE(&ram) - AM_RANGE(0x6000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_READ(SMH_RAM) +static ADDRESS_MAP_START( audio_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x7fff) AM_ROM + AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) - AM_RANGE(0xc001, 0xc001) AM_READ(YM2151_status_port_0_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_WRITE(SMH_RAM) AM_RANGE(0xc000, 0xc000) AM_WRITE(YM2151_register_port_0_w) - AM_RANGE(0xc001, 0xc001) AM_WRITE(YM2151_data_port_0_w) + AM_RANGE(0xc001, 0xc001) AM_READWRITE(YM2151_status_port_0_r, YM2151_data_port_0_w) AM_RANGE(0xe00c, 0xe00d) AM_WRITE(SMH_NOP) /* leftover from missing 007232? */ ADDRESS_MAP_END + /*************************************************************************** Input Ports @@ -209,11 +196,11 @@ static MACHINE_DRIVER_START( blockhl ) /* basic machine hardware */ MDRV_CPU_ADD("main", KONAMI,3000000) /* Konami custom 052526 */ - MDRV_CPU_PROGRAM_MAP(readmem,writemem) + MDRV_CPU_PROGRAM_MAP(main_map,0) MDRV_CPU_VBLANK_INT("main", blockhl_interrupt) MDRV_CPU_ADD("audio", Z80, 3579545) - MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem) + MDRV_CPU_PROGRAM_MAP(audio_map,0) MDRV_MACHINE_RESET(blockhl) diff --git a/src/mame/drivers/blockout.c b/src/mame/drivers/blockout.c index 259966299b8..a444f22a4a5 100644 --- a/src/mame/drivers/blockout.c +++ b/src/mame/drivers/blockout.c @@ -45,48 +45,31 @@ static WRITE16_HANDLER( blockout_sound_command_w ) } -static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x03ffff) AM_READ(SMH_ROM) +static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P1") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P2") AM_RANGE(0x100004, 0x100005) AM_READ_PORT("SYSTEM") AM_RANGE(0x100006, 0x100007) AM_READ_PORT("DSW1") AM_RANGE(0x100008, 0x100009) AM_READ_PORT("DSW2") - AM_RANGE(0x180000, 0x1bffff) AM_READ(SMH_RAM) - AM_RANGE(0x1d4000, 0x1dffff) AM_READ(SMH_RAM) - AM_RANGE(0x1f4000, 0x1fffff) AM_READ(SMH_RAM) - AM_RANGE(0x200000, 0x207fff) AM_READ(SMH_RAM) - AM_RANGE(0x208000, 0x21ffff) AM_READ(SMH_RAM) - AM_RANGE(0x280200, 0x2805ff) AM_READ(SMH_RAM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x03ffff) AM_WRITE(SMH_ROM) AM_RANGE(0x100014, 0x100015) AM_WRITE(blockout_sound_command_w) AM_RANGE(0x100016, 0x100017) AM_WRITE(SMH_NOP) /* don't know, maybe reset sound CPU */ - AM_RANGE(0x180000, 0x1bffff) AM_WRITE(blockout_videoram_w) AM_BASE(&blockout_videoram) - AM_RANGE(0x1d4000, 0x1dffff) AM_WRITE(SMH_RAM) /* work RAM */ - AM_RANGE(0x1f4000, 0x1fffff) AM_WRITE(SMH_RAM) /* work RAM */ - AM_RANGE(0x200000, 0x207fff) AM_WRITE(SMH_RAM) AM_BASE(&blockout_frontvideoram) - AM_RANGE(0x208000, 0x21ffff) AM_WRITE(SMH_RAM) /* ??? */ + AM_RANGE(0x180000, 0x1bffff) AM_RAM_WRITE(blockout_videoram_w) AM_BASE(&blockout_videoram) + AM_RANGE(0x1d4000, 0x1dffff) AM_RAM /* work RAM */ + AM_RANGE(0x1f4000, 0x1fffff) AM_RAM /* work RAM */ + AM_RANGE(0x200000, 0x207fff) AM_RAM_WRITE(SMH_RAM) AM_BASE(&blockout_frontvideoram) + AM_RANGE(0x208000, 0x21ffff) AM_RAM /* ??? */ AM_RANGE(0x280002, 0x280003) AM_WRITE(blockout_frontcolor_w) - AM_RANGE(0x280200, 0x2805ff) AM_WRITE(blockout_paletteram_w) AM_BASE(&paletteram16) + AM_RANGE(0x280200, 0x2805ff) AM_RAM_WRITE(blockout_paletteram_w) AM_BASE(&paletteram16) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_READ(SMH_RAM) - AM_RANGE(0x8801, 0x8801) AM_READ(YM2151_status_port_0_r) - AM_RANGE(0x9800, 0x9800) AM_READ(OKIM6295_status_0_r) - AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_WRITE(SMH_RAM) +static ADDRESS_MAP_START( audio_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x7fff) AM_ROM + AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8800) AM_WRITE(YM2151_register_port_0_w) - AM_RANGE(0x8801, 0x8801) AM_WRITE(YM2151_data_port_0_w) - AM_RANGE(0x9800, 0x9800) AM_WRITE(OKIM6295_data_0_w) + AM_RANGE(0x8801, 0x8801) AM_READWRITE(YM2151_status_port_0_r, YM2151_data_port_0_w) + AM_RANGE(0x9800, 0x9800) AM_READWRITE(OKIM6295_status_0_r, OKIM6295_data_0_w) + AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) ADDRESS_MAP_END @@ -201,11 +184,11 @@ static MACHINE_DRIVER_START( blockout ) /* basic machine hardware */ MDRV_CPU_ADD("main", M68000, 10000000) /* MRH - 8.76 makes gfx/adpcm samples sync better -- but 10 is correct speed*/ - MDRV_CPU_PROGRAM_MAP(readmem,writemem) + MDRV_CPU_PROGRAM_MAP(main_map,0) MDRV_CPU_VBLANK_INT_HACK(blockout_interrupt,2) MDRV_CPU_ADD("audio", Z80, 3579545) /* 3.579545 MHz */ - MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem) + MDRV_CPU_PROGRAM_MAP(audio_map,0) /* video hardware */ MDRV_SCREEN_ADD("main", RASTER) diff --git a/src/mame/drivers/bombjack.c b/src/mame/drivers/bombjack.c index a09cd1525c3..39001e79d99 100644 --- a/src/mame/drivers/bombjack.c +++ b/src/mame/drivers/bombjack.c @@ -138,47 +138,34 @@ static READ8_HANDLER( bombjack_soundlatch_r ) } - -static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) - AM_RANGE(0x8000, 0x97ff) AM_READ(SMH_RAM) /* including video and color RAM */ - AM_RANGE(0xb000, 0xb000) AM_READ_PORT("P1") - AM_RANGE(0xb001, 0xb001) AM_READ_PORT("P2") - AM_RANGE(0xb002, 0xb002) AM_READ_PORT("SYSTEM") - AM_RANGE(0xb003, 0xb003) AM_READ(SMH_NOP) /* watchdog reset? */ - AM_RANGE(0xb004, 0xb004) AM_READ_PORT("DSW1") - AM_RANGE(0xb005, 0xb005) AM_READ_PORT("DSW2") - AM_RANGE(0xc000, 0xdfff) AM_READ(SMH_ROM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0x8fff) AM_WRITE(SMH_RAM) - AM_RANGE(0x9000, 0x93ff) AM_WRITE(bombjack_videoram_w) AM_BASE(&videoram) - AM_RANGE(0x9400, 0x97ff) AM_WRITE(bombjack_colorram_w) AM_BASE(&colorram) +static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x7fff) AM_ROM + AM_RANGE(0x8000, 0x8fff) AM_RAM + AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(bombjack_videoram_w) AM_BASE(&videoram) + AM_RANGE(0x9400, 0x97ff) AM_RAM_WRITE(bombjack_colorram_w) AM_BASE(&colorram) AM_RANGE(0x9820, 0x987f) AM_WRITE(SMH_RAM) AM_BASE(&spriteram) AM_SIZE(&spriteram_size) AM_RANGE(0x9a00, 0x9a00) AM_WRITE(SMH_NOP) AM_RANGE(0x9c00, 0x9cff) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_le_w) AM_BASE(&paletteram) AM_RANGE(0x9e00, 0x9e00) AM_WRITE(bombjack_background_w) + AM_RANGE(0xb000, 0xb000) AM_READ_PORT("P1") AM_RANGE(0xb000, 0xb000) AM_WRITE(interrupt_enable_w) + AM_RANGE(0xb001, 0xb001) AM_READ_PORT("P2") + AM_RANGE(0xb002, 0xb002) AM_READ_PORT("SYSTEM") + AM_RANGE(0xb003, 0xb003) AM_READ(SMH_NOP) /* watchdog reset? */ + AM_RANGE(0xb004, 0xb004) AM_READ_PORT("DSW1") AM_RANGE(0xb004, 0xb004) AM_WRITE(bombjack_flipscreen_w) + AM_RANGE(0xb005, 0xb005) AM_READ_PORT("DSW2") AM_RANGE(0xb800, 0xb800) AM_WRITE(bombjack_soundlatch_w) - AM_RANGE(0xc000, 0xdfff) AM_WRITE(SMH_ROM) + AM_RANGE(0xc000, 0xdfff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bombjack_sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x1fff) AM_READ(SMH_ROM) - AM_RANGE(0x4000, 0x43ff) AM_READ(SMH_RAM) +static ADDRESS_MAP_START( audio_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x1fff) AM_ROM + AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(bombjack_soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( bombjack_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x1fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x4000, 0x43ff) AM_WRITE(SMH_RAM) -ADDRESS_MAP_END - - -static ADDRESS_MAP_START( bombjack_sound_writeport, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( audio_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(AY8910_control_port_0_w) AM_RANGE(0x01, 0x01) AM_WRITE(AY8910_write_port_0_w) @@ -323,10 +310,10 @@ static const gfx_layout spritelayout2 = }; static GFXDECODE_START( bombjack ) - GFXDECODE_ENTRY( "gfx1", 0x0000, charlayout1, 0, 16 ) /* characters */ - GFXDECODE_ENTRY( "gfx2", 0x0000, charlayout2, 0, 16 ) /* background tiles */ - GFXDECODE_ENTRY( "gfx3", 0x0000, spritelayout1, 0, 16 ) /* normal sprites */ - GFXDECODE_ENTRY( "gfx3", 0x1000, spritelayout2, 0, 16 ) /* large sprites */ + GFXDECODE_ENTRY( "chars", 0x0000, charlayout1, 0, 16 ) /* characters */ + GFXDECODE_ENTRY( "tiles", 0x0000, charlayout2, 0, 16 ) /* background tiles */ + GFXDECODE_ENTRY( "sprites", 0x0000, spritelayout1, 0, 16 ) /* normal sprites */ + GFXDECODE_ENTRY( "sprites", 0x1000, spritelayout2, 0, 16 ) /* large sprites */ GFXDECODE_END @@ -336,12 +323,12 @@ static MACHINE_DRIVER_START( bombjack ) /* basic machine hardware */ MDRV_CPU_ADD("main", Z80, 4000000) /* 4 MHz */ - MDRV_CPU_PROGRAM_MAP(readmem,writemem) + MDRV_CPU_PROGRAM_MAP(main_map,0) MDRV_CPU_VBLANK_INT("main", nmi_line_pulse) MDRV_CPU_ADD("audio", Z80, 3072000) /* 3.072 MHz????? */ - MDRV_CPU_PROGRAM_MAP(bombjack_sound_readmem,bombjack_sound_writemem) - MDRV_CPU_IO_MAP(0,bombjack_sound_writeport) + MDRV_CPU_PROGRAM_MAP(audio_map,0) + MDRV_CPU_IO_MAP(audio_io_map,0) MDRV_CPU_VBLANK_INT("main", nmi_line_pulse) MDRV_MACHINE_START(bombjack) @@ -392,17 +379,17 @@ ROM_START( bombjack ) ROM_REGION( 0x10000, "audio", 0 ) /* 64k for sound board */ ROM_LOAD( "01_h03t.bin", 0x0000, 0x2000, CRC(8407917d) SHA1(318face9f7a7ab6c7eeac773995040425e780aaf) ) - ROM_REGION( 0x3000, "gfx1", ROMREGION_DISPOSE ) + ROM_REGION( 0x3000, "chars", ROMREGION_DISPOSE ) ROM_LOAD( "03_e08t.bin", 0x0000, 0x1000, CRC(9f0470d5) SHA1(94ef52ef47b4399a03528fe3efeac9c1d6983446) ) /* chars */ ROM_LOAD( "04_h08t.bin", 0x1000, 0x1000, CRC(81ec12e6) SHA1(e29ba193f21aa898499187603b25d2e226a07c7b) ) ROM_LOAD( "05_k08t.bin", 0x2000, 0x1000, CRC(e87ec8b1) SHA1(a66808ef2d62fca2854396898b86bac9be5f17a3) ) - ROM_REGION( 0x6000, "gfx2", ROMREGION_DISPOSE ) + ROM_REGION( 0x6000, "tiles", ROMREGION_DISPOSE ) ROM_LOAD( "06_l08t.bin", 0x0000, 0x2000, CRC(51eebd89) SHA1(515128a3971fcb97b60c5b6bdd2b03026aec1921) ) /* background tiles */ ROM_LOAD( "07_n08t.bin", 0x2000, 0x2000, CRC(9dd98e9d) SHA1(6db6006a6e20ff7c243d88293ca53681c4703ea5) ) ROM_LOAD( "08_r08t.bin", 0x4000, 0x2000, CRC(3155ee7d) SHA1(e7897dca4c145f10b7d975b8ef0e4d8aa9354c25) ) - ROM_REGION( 0x6000, "gfx3", ROMREGION_DISPOSE ) + ROM_REGION( 0x6000, "sprites", ROMREGION_DISPOSE ) ROM_LOAD( "16_m07b.bin", 0x0000, 0x2000, CRC(94694097) SHA1(de71bcd67f97d05527f2504fc8430be333fb9ec2) ) /* sprites */ ROM_LOAD( "15_l07b.bin", 0x2000, 0x2000, CRC(013f58f2) SHA1(20c64593ab9fcb04cefbce0cd5d17ce3ff26441b) ) ROM_LOAD( "14_j07b.bin", 0x4000, 0x2000, CRC(101c858d) SHA1(ed1746c15cdb04fae888601d940183d5c7702282) ) @@ -422,17 +409,17 @@ ROM_START( bombjac2 ) ROM_REGION( 0x10000, "audio", 0 ) /* 64k for sound board */ ROM_LOAD( "01_h03t.bin", 0x0000, 0x2000, CRC(8407917d) SHA1(318face9f7a7ab6c7eeac773995040425e780aaf) ) - ROM_REGION( 0x3000, "gfx1", ROMREGION_DISPOSE ) + ROM_REGION( 0x3000, "chars", ROMREGION_DISPOSE ) ROM_LOAD( "03_e08t.bin", 0x0000, 0x1000, CRC(9f0470d5) SHA1(94ef52ef47b4399a03528fe3efeac9c1d6983446) ) /* chars */ ROM_LOAD( "04_h08t.bin", 0x1000, 0x1000, CRC(81ec12e6) SHA1(e29ba193f21aa898499187603b25d2e226a07c7b) ) ROM_LOAD( "05_k08t.bin", 0x2000, 0x1000, CRC(e87ec8b1) SHA1(a66808ef2d62fca2854396898b86bac9be5f17a3) ) - ROM_REGION( 0x6000, "gfx2", ROMREGION_DISPOSE ) + ROM_REGION( 0x6000, "tiles", ROMREGION_DISPOSE ) ROM_LOAD( "06_l08t.bin", 0x0000, 0x2000, CRC(51eebd89) SHA1(515128a3971fcb97b60c5b6bdd2b03026aec1921) ) /* background tiles */ ROM_LOAD( "07_n08t.bin", 0x2000, 0x2000, CRC(9dd98e9d) SHA1(6db6006a6e20ff7c243d88293ca53681c4703ea5) ) ROM_LOAD( "08_r08t.bin", 0x4000, 0x2000, CRC(3155ee7d) SHA1(e7897dca4c145f10b7d975b8ef0e4d8aa9354c25) ) - ROM_REGION( 0x6000, "gfx3", ROMREGION_DISPOSE ) + ROM_REGION( 0x6000, "sprites", ROMREGION_DISPOSE ) ROM_LOAD( "16_m07b.bin", 0x0000, 0x2000, CRC(94694097) SHA1(de71bcd67f97d05527f2504fc8430be333fb9ec2) ) /* sprites */ ROM_LOAD( "15_l07b.bin", 0x2000, 0x2000, CRC(013f58f2) SHA1(20c64593ab9fcb04cefbce0cd5d17ce3ff26441b) ) ROM_LOAD( "14_j07b.bin", 0x4000, 0x2000, CRC(101c858d) SHA1(ed1746c15cdb04fae888601d940183d5c7702282) ) diff --git a/src/mame/drivers/boogwing.c b/src/mame/drivers/boogwing.c index bd6fe8ec904..406d2006e2e 100644 --- a/src/mame/drivers/boogwing.c +++ b/src/mame/drivers/boogwing.c @@ -109,16 +109,16 @@ static ADDRESS_MAP_START( boogwing_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x24e000, 0x24e7ff) AM_WRITE(deco16_104_prot_w) AM_BASE(&deco16_prot_ram) AM_RANGE(0x260000, 0x26000f) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf12_control) - AM_RANGE(0x264000, 0x265fff) AM_READ(SMH_RAM) AM_WRITE(deco16_pf1_data_w) AM_BASE(&deco16_pf1_data) - AM_RANGE(0x266000, 0x267fff) AM_READ(SMH_RAM) AM_WRITE(deco16_pf2_data_w) AM_BASE(&deco16_pf2_data) - AM_RANGE(0x268000, 0x268fff) AM_READ(SMH_RAM) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf1_rowscroll) - AM_RANGE(0x26a000, 0x26afff) AM_READ(SMH_RAM) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf2_rowscroll) + AM_RANGE(0x264000, 0x265fff) AM_RAM_WRITE(deco16_pf1_data_w) AM_BASE(&deco16_pf1_data) + AM_RANGE(0x266000, 0x267fff) AM_RAM_WRITE(deco16_pf2_data_w) AM_BASE(&deco16_pf2_data) + AM_RANGE(0x268000, 0x268fff) AM_RAM AM_BASE(&deco16_pf1_rowscroll) + AM_RANGE(0x26a000, 0x26afff) AM_RAM AM_BASE(&deco16_pf2_rowscroll) AM_RANGE(0x270000, 0x27000f) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf34_control) - AM_RANGE(0x274000, 0x275fff) AM_READ(SMH_RAM) AM_WRITE(deco16_pf3_data_w) AM_BASE(&deco16_pf3_data) - AM_RANGE(0x276000, 0x277fff) AM_READ(SMH_RAM) AM_WRITE(deco16_pf4_data_w) AM_BASE(&deco16_pf4_data) - AM_RANGE(0x278000, 0x278fff) AM_READ(SMH_RAM) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf3_rowscroll) - AM_RANGE(0x27a000, 0x27afff) AM_READ(SMH_RAM) AM_WRITE(SMH_RAM) AM_BASE(&deco16_pf4_rowscroll) + AM_RANGE(0x274000, 0x275fff) AM_RAM_WRITE(deco16_pf3_data_w) AM_BASE(&deco16_pf3_data) + AM_RANGE(0x276000, 0x277fff) AM_RAM_WRITE(deco16_pf4_data_w) AM_BASE(&deco16_pf4_data) + AM_RANGE(0x278000, 0x278fff) AM_RAM AM_BASE(&deco16_pf3_rowscroll) + AM_RANGE(0x27a000, 0x27afff) AM_RAM AM_BASE(&deco16_pf4_rowscroll) AM_RANGE(0x280000, 0x28000f) AM_NOP // ? AM_RANGE(0x282000, 0x282001) AM_NOP // Palette setup? @@ -129,27 +129,19 @@ static ADDRESS_MAP_START( boogwing_map, ADDRESS_SPACE_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x000000, 0x00ffff) AM_READ(SMH_ROM) - AM_RANGE(0x100000, 0x100001) AM_READ(SMH_NOP) - AM_RANGE(0x110000, 0x110001) AM_READ(YM2151_status_port_0_r) - AM_RANGE(0x120000, 0x120001) AM_READ(OKIM6295_status_0_r) - AM_RANGE(0x130000, 0x130001) AM_READ(OKIM6295_status_1_r) +static ADDRESS_MAP_START( audio_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x000000, 0x00ffff) AM_ROM + AM_RANGE(0x100000, 0x100001) AM_NOP + AM_RANGE(0x110000, 0x110001) AM_READWRITE(YM2151_status_port_0_r, YM2151_word_0_w) + AM_RANGE(0x120000, 0x120001) AM_READWRITE(OKIM6295_status_0_r, OKIM6295_data_0_w) + AM_RANGE(0x130000, 0x130001) AM_READWRITE(OKIM6295_status_1_r, OKIM6295_data_1_w) AM_RANGE(0x140000, 0x140001) AM_READ(soundlatch_r) - AM_RANGE(0x1f0000, 0x1f1fff) AM_READ(SMH_BANK8) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x000000, 0x00ffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x100000, 0x100001) AM_WRITE(SMH_NOP) - AM_RANGE(0x110000, 0x110001) AM_WRITE(YM2151_word_0_w) - AM_RANGE(0x120000, 0x120001) AM_WRITE(OKIM6295_data_0_w) - AM_RANGE(0x130000, 0x130001) AM_WRITE(OKIM6295_data_1_w) - AM_RANGE(0x1f0000, 0x1f1fff) AM_WRITE(SMH_BANK8) + AM_RANGE(0x1f0000, 0x1f1fff) AM_READWRITE(SMH_BANK8, SMH_BANK8) AM_RANGE(0x1fec00, 0x1fec01) AM_WRITE(H6280_timer_w) AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(H6280_irq_status_w) ADDRESS_MAP_END + /**********************************************************************************/ static INPUT_PORTS_START( boogwing ) @@ -275,11 +267,11 @@ static const gfx_layout spritelayout = static GFXDECODE_START( boogwing ) - GFXDECODE_ENTRY( "gfx1", 0, tile_8x8_layout, 0, 16 ) /* Tiles (8x8) */ - GFXDECODE_ENTRY( "gfx2", 0, tile_16x16_layout_5bpp, 0x100, 16 ) /* Tiles (16x16) */ - GFXDECODE_ENTRY( "gfx3", 0, tile_16x16_layout, 0x300, 32 ) /* Tiles (16x16) */ - GFXDECODE_ENTRY( "gfx4", 0, spritelayout, 0x500, 32 ) /* Sprites (16x16) */ - GFXDECODE_ENTRY( "gfx5", 0, spritelayout, 0x700, 16 ) /* Sprites (16x16) */ + GFXDECODE_ENTRY( "tiles1", 0, tile_8x8_layout, 0, 16 ) /* Tiles (8x8) */ + GFXDECODE_ENTRY( "tiles2", 0, tile_16x16_layout_5bpp, 0x100, 16 ) /* Tiles (16x16) */ + GFXDECODE_ENTRY( "tiles3", 0, tile_16x16_layout, 0x300, 32 ) /* Tiles (16x16) */ + GFXDECODE_ENTRY( "sprites1", 0, spritelayout, 0x500, 32 ) /* Sprites (16x16) */ + GFXDECODE_ENTRY( "sprites2", 0, spritelayout, 0x700, 16 ) /* Sprites (16x16) */ GFXDECODE_END /**********************************************************************************/ @@ -309,7 +301,7 @@ static MACHINE_DRIVER_START( boogwing ) MDRV_CPU_VBLANK_INT("main", irq6_line_hold) MDRV_CPU_ADD("audio", H6280,32220000/4) - MDRV_CPU_PROGRAM_MAP(sound_readmem, sound_writemem) + MDRV_CPU_PROGRAM_MAP(audio_map,0) /* video hardware */ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM ) @@ -358,24 +350,24 @@ ROM_START( boogwing ) ROM_REGION( 0x10000, "audio", 0 ) ROM_LOAD( "kn06.18p", 0x00000, 0x10000, CRC(3e8bc4e1) SHA1(7e4c357afefa47b8f101727e06485eb9ebae635d) ) - ROM_REGION( 0x20000, "gfx1", ROMREGION_DISPOSE ) /* Tiles 1 */ + ROM_REGION( 0x20000, "tiles1", ROMREGION_DISPOSE ) /* Tiles 1 */ ROM_LOAD16_BYTE( "kn05.9e", 0x00000, 0x010000, CRC(d10aef95) SHA1(a611a35ab312caee19c31da079c647679d31673d) ) ROM_LOAD16_BYTE( "kn04.8e", 0x00001, 0x010000, CRC(329323a8) SHA1(e2ec7b059301c0a2e052dfc683e044c808ad9b33) ) - ROM_REGION( 0x300000, "gfx2", ROMREGION_DISPOSE ) /* Tiles 2 */ + ROM_REGION( 0x300000, "tiles2", ROMREGION_DISPOSE ) /* Tiles 2 */ ROM_LOAD( "mbd-01.9b", 0x000000, 0x100000, CRC(d7de4f4b) SHA1(4747f8795e277ed8106667b6f68e1176d95db684) ) ROM_LOAD( "mbd-00.8b", 0x100000, 0x100000, CRC(adb20ba9) SHA1(2ffa1dd19a438a4d2f5743b1050a8037183a3e7d) ) /* 0x100000 bytes expanded from mbd-02.10e copied here later */ - ROM_REGION( 0x200000, "gfx3", ROMREGION_DISPOSE ) /* Tiles 3 */ + ROM_REGION( 0x200000, "tiles3", ROMREGION_DISPOSE ) /* Tiles 3 */ ROM_LOAD( "mbd-03.13b", 0x000000, 0x100000, CRC(cf798f2c) SHA1(f484a22679d6a4d4b0dcac820de3f1a37cbc478f) ) ROM_LOAD( "mbd-04.14b", 0x100000, 0x100000, CRC(d9764d0b) SHA1(74d6f09d65d073606a6e10556cedf740aa50ff08) ) - ROM_REGION( 0x400000, "gfx4", ROMREGION_DISPOSE ) /* Sprites 1 */ + ROM_REGION( 0x400000, "sprites1", ROMREGION_DISPOSE ) /* Sprites 1 */ ROM_LOAD16_BYTE( "mbd-05.16b", 0x000001, 0x200000, CRC(1768c66a) SHA1(06bf3bb187c65db9dcce959a43a7231e2ac45c17) ) ROM_LOAD16_BYTE( "mbd-06.17b", 0x000000, 0x200000, CRC(7750847a) SHA1(358266ed68a9816094e7aab0905d958284c8ce98) ) - ROM_REGION( 0x400000, "gfx5", ROMREGION_DISPOSE ) /* Sprites 2 */ + ROM_REGION( 0x400000, "sprites2", ROMREGION_DISPOSE ) /* Sprites 2 */ ROM_LOAD16_BYTE( "mbd-07.18b", 0x000001, 0x200000, CRC(241faac1) SHA1(588be0cf2647c1d185a99c987a5a20ab7ad8dea8) ) ROM_LOAD16_BYTE( "mbd-08.19b", 0x000000, 0x200000, CRC(f13b1e56) SHA1(f8f5e8c4e6c159f076d4e6505bd901ade5c6a0ca) ) @@ -402,24 +394,24 @@ ROM_START( boogwina ) ROM_REGION( 0x10000, "audio", 0 ) ROM_LOAD( "km06.18p", 0x00000, 0x10000, CRC(3e8bc4e1) SHA1(7e4c357afefa47b8f101727e06485eb9ebae635d) ) - ROM_REGION( 0x20000, "gfx1", ROMREGION_DISPOSE ) /* Tiles 1 */ + ROM_REGION( 0x20000, "tiles1", ROMREGION_DISPOSE ) /* Tiles 1 */ ROM_LOAD16_BYTE( "kn05.9e", 0x00000, 0x010000, CRC(d10aef95) SHA1(a611a35ab312caee19c31da079c647679d31673d) ) ROM_LOAD16_BYTE( "kn04.8e", 0x00001, 0x010000, CRC(329323a8) SHA1(e2ec7b059301c0a2e052dfc683e044c808ad9b33) ) - ROM_REGION( 0x300000, "gfx2", ROMREGION_DISPOSE ) /* Tiles 2 */ + ROM_REGION( 0x300000, "tiles2", ROMREGION_DISPOSE ) /* Tiles 2 */ ROM_LOAD( "mbd-01.9b", 0x000000, 0x100000, CRC(d7de4f4b) SHA1(4747f8795e277ed8106667b6f68e1176d95db684) ) ROM_LOAD( "mbd-00.8b", 0x100000, 0x100000, CRC(adb20ba9) SHA1(2ffa1dd19a438a4d2f5743b1050a8037183a3e7d) ) /* 0x100000 bytes expanded from mbd-02.10e copied here later */ - ROM_REGION( 0x200000, "gfx3", ROMREGION_DISPOSE ) /* Tiles 3 */ + ROM_REGION( 0x200000, "tiles3", ROMREGION_DISPOSE ) /* Tiles 3 */ ROM_LOAD( "mbd-03.13b", 0x000000, 0x100000, CRC(cf798f2c) SHA1(f484a22679d6a4d4b0dcac820de3f1a37cbc478f) ) ROM_LOAD( "mbd-04.14b", 0x100000, 0x100000, CRC(d9764d0b) SHA1(74d6f09d65d073606a6e10556cedf740aa50ff08) ) - ROM_REGION( 0x400000, "gfx4", ROMREGION_DISPOSE ) /* Sprites 1 */ + ROM_REGION( 0x400000, "sprites1", ROMREGION_DISPOSE ) /* Sprites 1 */ ROM_LOAD16_BYTE( "mbd-05.16b", 0x000001, 0x200000, CRC(1768c66a) SHA1(06bf3bb187c65db9dcce959a43a7231e2ac45c17) ) ROM_LOAD16_BYTE( "mbd-06.17b", 0x000000, 0x200000, CRC(7750847a) SHA1(358266ed68a9816094e7aab0905d958284c8ce98) ) - ROM_REGION( 0x400000, "gfx5", ROMREGION_DISPOSE ) /* Sprites 2 */ + ROM_REGION( 0x400000, "sprites2", ROMREGION_DISPOSE ) /* Sprites 2 */ ROM_LOAD16_BYTE( "mbd-07.18b", 0x000001, 0x200000, CRC(241faac1) SHA1(588be0cf2647c1d185a99c987a5a20ab7ad8dea8) ) ROM_LOAD16_BYTE( "mbd-08.19b", 0x000000, 0x200000, CRC(f13b1e56) SHA1(f8f5e8c4e6c159f076d4e6505bd901ade5c6a0ca) ) @@ -446,24 +438,24 @@ ROM_START( ragtime ) ROM_REGION( 0x10000, "audio", 0 ) ROM_LOAD( "km06.18p", 0x00000, 0x10000, CRC(3e8bc4e1) SHA1(7e4c357afefa47b8f101727e06485eb9ebae635d) ) - ROM_REGION( 0x20000, "gfx1", ROMREGION_DISPOSE ) /* Tiles 1 */ + ROM_REGION( 0x20000, "tiles1", ROMREGION_DISPOSE ) /* Tiles 1 */ ROM_LOAD16_BYTE( "kn05.9e", 0x00000, 0x010000, CRC(d10aef95) SHA1(a611a35ab312caee19c31da079c647679d31673d) ) ROM_LOAD16_BYTE( "kn04.8e", 0x00001, 0x010000, CRC(329323a8) SHA1(e2ec7b059301c0a2e052dfc683e044c808ad9b33) ) - ROM_REGION( 0x300000, "gfx2", ROMREGION_DISPOSE ) /* Tiles 2 */ + ROM_REGION( 0x300000, "tiles2", ROMREGION_DISPOSE ) /* Tiles 2 */ ROM_LOAD( "mbd-01.9b", 0x000000, 0x100000, CRC(d7de4f4b) SHA1(4747f8795e277ed8106667b6f68e1176d95db684) ) ROM_LOAD( "mbd-00.8b", 0x100000, 0x100000, CRC(adb20ba9) SHA1(2ffa1dd19a438a4d2f5743b1050a8037183a3e7d) ) /* 0x100000 bytes expanded from mbd-02.10e copied here later */ - ROM_REGION( 0x200000, "gfx3", ROMREGION_DISPOSE ) /* Tiles 3 */ + ROM_REGION( 0x200000, "tiles3", ROMREGION_DISPOSE ) /* Tiles 3 */ ROM_LOAD( "mbd-03.13b", 0x000000, 0x100000, CRC(cf798f2c) SHA1(f484a22679d6a4d4b0dcac820de3f1a37cbc478f) ) ROM_LOAD( "mbd-04.14b", 0x100000, 0x100000, CRC(d9764d0b) SHA1(74d6f09d65d073606a6e10556cedf740aa50ff08) ) - ROM_REGION( 0x400000, "gfx4", ROMREGION_DISPOSE ) /* Sprites 1 */ + ROM_REGION( 0x400000, "sprites1", ROMREGION_DISPOSE ) /* Sprites 1 */ ROM_LOAD16_BYTE( "mbd-05.16b", 0x000001, 0x200000, CRC(1768c66a) SHA1(06bf3bb187c65db9dcce959a43a7231e2ac45c17) ) ROM_LOAD16_BYTE( "mbd-06.17b", 0x000000, 0x200000, CRC(7750847a) SHA1(358266ed68a9816094e7aab0905d958284c8ce98) ) - ROM_REGION( 0x400000, "gfx5", ROMREGION_DISPOSE ) /* Sprites 2 */ + ROM_REGION( 0x400000, "sprites2", ROMREGION_DISPOSE ) /* Sprites 2 */ ROM_LOAD16_BYTE( "mbd-07.18b", 0x000001, 0x200000, CRC(241faac1) SHA1(588be0cf2647c1d185a99c987a5a20ab7ad8dea8) ) ROM_LOAD16_BYTE( "mbd-08.19b", 0x000000, 0x200000, CRC(f13b1e56) SHA1(f8f5e8c4e6c159f076d4e6505bd901ade5c6a0ca) ) @@ -483,11 +475,11 @@ ROM_END static DRIVER_INIT( boogwing ) { const UINT8* src=memory_region(machine, "gfx6"); - UINT8* dst=memory_region(machine, "gfx2") + 0x200000; + UINT8* dst=memory_region(machine, "tiles2") + 0x200000; - deco56_decrypt_gfx(machine, "gfx1"); - deco56_decrypt_gfx(machine, "gfx2"); - deco56_decrypt_gfx(machine, "gfx3"); + deco56_decrypt_gfx(machine, "tiles1"); + deco56_decrypt_gfx(machine, "tiles2"); + deco56_decrypt_gfx(machine, "tiles3"); deco56_remap_gfx(machine, "gfx6"); deco102_decrypt_cpu(machine, "main", 0x42ba, 0x00, 0x18); memcpy(dst, src, 0x100000); diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c index 55eb537582e..89df1215410 100644 --- a/src/mame/drivers/bottom9.c +++ b/src/mame/drivers/bottom9.c @@ -130,55 +130,37 @@ static WRITE8_HANDLER( sound_bank_w ) } - -static ADDRESS_MAP_START( bottom9_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x07ff) AM_READ(bottom9_bankedram1_r) - AM_RANGE(0x1fd0, 0x1fd0) AM_READ_PORT("SYSTEM") - AM_RANGE(0x1fd1, 0x1fd1) AM_READ_PORT("P1") - AM_RANGE(0x1fd2, 0x1fd2) AM_READ_PORT("P2") - AM_RANGE(0x1fd3, 0x1fd3) AM_READ_PORT("DSW1") - AM_RANGE(0x1fe0, 0x1fe0) AM_READ_PORT("DSW2") - AM_RANGE(0x2000, 0x27ff) AM_READ(bottom9_bankedram2_r) - AM_RANGE(0x0000, 0x3fff) AM_READ(K052109_051960_r) - AM_RANGE(0x4000, 0x5fff) AM_READ(SMH_RAM) - AM_RANGE(0x6000, 0x7fff) AM_READ(SMH_BANK1) - AM_RANGE(0x8000, 0xffff) AM_READ(SMH_ROM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( bottom9_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x07ff) AM_WRITE(bottom9_bankedram1_w) +static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x07ff) AM_READWRITE(bottom9_bankedram1_r, bottom9_bankedram1_w) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(bankswitch_w) AM_RANGE(0x1f90, 0x1f90) AM_WRITE(bottom9_1f90_w) AM_RANGE(0x1fa0, 0x1fa0) AM_WRITE(watchdog_reset_w) AM_RANGE(0x1fb0, 0x1fb0) AM_WRITE(soundlatch_w) AM_RANGE(0x1fc0, 0x1fc0) AM_WRITE(bottom9_sh_irqtrigger_w) + AM_RANGE(0x1fd0, 0x1fd0) AM_READ_PORT("SYSTEM") + AM_RANGE(0x1fd1, 0x1fd1) AM_READ_PORT("P1") + AM_RANGE(0x1fd2, 0x1fd2) AM_READ_PORT("P2") + AM_RANGE(0x1fd3, 0x1fd3) AM_READ_PORT("DSW1") + AM_RANGE(0x1fe0, 0x1fe0) AM_READ_PORT("DSW2") AM_RANGE(0x1ff0, 0x1fff) AM_WRITE(K051316_ctrl_0_w) - AM_RANGE(0x2000, 0x27ff) AM_WRITE(bottom9_bankedram2_w) AM_BASE(&paletteram) - AM_RANGE(0x0000, 0x3fff) AM_WRITE(K052109_051960_w) - AM_RANGE(0x4000, 0x5fff) AM_WRITE(SMH_RAM) - AM_RANGE(0x6000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM) + AM_RANGE(0x2000, 0x27ff) AM_READWRITE(bottom9_bankedram2_r, bottom9_bankedram2_w) AM_BASE(&paletteram) + AM_RANGE(0x0000, 0x3fff) AM_READWRITE(K052109_051960_r, K052109_051960_w) + AM_RANGE(0x4000, 0x5fff) AM_RAM + AM_RANGE(0x6000, 0x7fff) AM_READWRITE(SMH_BANK1, SMH_ROM) + AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bottom9_sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_READ(SMH_RAM) - AM_RANGE(0xa000, 0xa00d) AM_READ(K007232_read_port_0_r) - AM_RANGE(0xb000, 0xb00d) AM_READ(K007232_read_port_1_r) - AM_RANGE(0xd000, 0xd000) AM_READ(soundlatch_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( bottom9_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x7fff) AM_WRITE(SMH_ROM) - AM_RANGE(0x8000, 0x87ff) AM_WRITE(SMH_RAM) +static ADDRESS_MAP_START( audio_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x7fff) AM_ROM + AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w) - AM_RANGE(0xa000, 0xa00d) AM_WRITE(K007232_write_port_0_w) - AM_RANGE(0xb000, 0xb00d) AM_WRITE(K007232_write_port_1_w) + AM_RANGE(0xa000, 0xa00d) AM_READWRITE(K007232_read_port_0_r, K007232_write_port_0_w) + AM_RANGE(0xb000, 0xb00d) AM_READWRITE(K007232_read_port_1_r, K007232_write_port_1_w) + AM_RANGE(0xd000, 0xd000) AM_READ(soundlatch_r) AM_RANGE(0xf000, 0xf000) AM_WRITE(nmi_enable_w) ADDRESS_MAP_END - static INPUT_PORTS_START( bottom9 ) PORT_START_TAG("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) @@ -324,11 +306,11 @@ static MACHINE_DRIVER_START( bottom9 ) /* basic machine hardware */ MDRV_CPU_ADD("main", M6809, 2000000) /* ? */ - MDRV_CPU_PROGRAM_MAP(bottom9_readmem,bottom9_writemem) + MDRV_CPU_PROGRAM_MAP(main_map,0) MDRV_CPU_VBLANK_INT("main", bottom9_interrupt) MDRV_CPU_ADD("audio", Z80, 3579545) - MDRV_CPU_PROGRAM_MAP(bottom9_sound_readmem,bottom9_sound_writemem) + MDRV_CPU_PROGRAM_MAP(audio_map,0) MDRV_CPU_VBLANK_INT_HACK(bottom9_sound_interrupt,8) /* irq is triggered by the main CPU */ /* video hardware */