diff --git a/src/emu/cpu/mips/psx.c b/src/emu/cpu/mips/psx.c index 2f9e1a1acbc..72a5bde1bf0 100644 --- a/src/emu/cpu/mips/psx.c +++ b/src/emu/cpu/mips/psx.c @@ -1256,16 +1256,16 @@ void psxcpu_device::update_scratchpad() { if( ( m_biu & BIU_RAM ) == 0 ) { - memory_install_readwrite32_device_handler( m_program, this, 0x1f800000, 0x1f8003ff, 0, 0, psx_berr_r, psx_berr_w ); + m_program->install_legacy_readwrite_handler( *this, 0x1f800000, 0x1f8003ff, FUNC(psx_berr_r), FUNC(psx_berr_w) ); } else if( ( m_biu & BIU_DS ) == 0 ) { - memory_install_read32_device_handler( m_program, this, 0x1f800000, 0x1f8003ff, 0, 0, psx_berr_r ); - memory_nop_write( m_program, 0x1f800000, 0x1f8003ff, 0, 0 ); + m_program->install_legacy_read_handler( *this, 0x1f800000, 0x1f8003ff, FUNC(psx_berr_r) ); + m_program->nop_write( 0x1f800000, 0x1f8003ff); } else { - memory_install_ram( m_program, 0x1f800000, 0x1f8003ff, 0, 0, m_dcache ); + m_program->install_ram( 0x1f800000, 0x1f8003ff, m_dcache ); } } diff --git a/src/emu/machine/s3c2400.c b/src/emu/machine/s3c2400.c index d21f36d713b..ed330f124cd 100644 --- a/src/emu/machine/s3c2400.c +++ b/src/emu/machine/s3c2400.c @@ -47,28 +47,28 @@ DEVICE_START( s3c2400 ) { address_space *space = device->machine->device( "maincpu")->memory().space( AS_PROGRAM); DEVICE_START_CALL(s3c24xx); - memory_install_readwrite32_device_handler( space, device, 0x14000000, 0x1400003b, 0, 0, s3c24xx_memcon_r, s3c24xx_memcon_w); - memory_install_readwrite32_device_handler( space, device, 0x14200000, 0x1420005b, 0, 0, s3c24xx_usb_host_r, s3c24xx_usb_host_w); - memory_install_readwrite32_device_handler( space, device, 0x14400000, 0x14400017, 0, 0, s3c24xx_irq_r, s3c24xx_irq_w); - memory_install_readwrite32_device_handler( space, device, 0x14600000, 0x1460001b, 0, 0, s3c24xx_dma_0_r, s3c24xx_dma_0_w); - memory_install_readwrite32_device_handler( space, device, 0x14600020, 0x1460003b, 0, 0, s3c24xx_dma_1_r, s3c24xx_dma_1_w); - memory_install_readwrite32_device_handler( space, device, 0x14600040, 0x1460005b, 0, 0, s3c24xx_dma_2_r, s3c24xx_dma_2_w); - memory_install_readwrite32_device_handler( space, device, 0x14600060, 0x1460007b, 0, 0, s3c24xx_dma_3_r, s3c24xx_dma_3_w); - memory_install_readwrite32_device_handler( space, device, 0x14800000, 0x14800017, 0, 0, s3c24xx_clkpow_r, s3c24xx_clkpow_w); - memory_install_readwrite32_device_handler( space, device, 0x14a00000, 0x14a003ff, 0, 0, s3c2400_lcd_r, s3c24xx_lcd_w); - memory_install_readwrite32_device_handler( space, device, 0x14a00400, 0x14a007ff, 0, 0, s3c24xx_lcd_palette_r, s3c24xx_lcd_palette_w); - memory_install_readwrite32_device_handler( space, device, 0x15000000, 0x1500002b, 0, 0, s3c24xx_uart_0_r, s3c24xx_uart_0_w); - memory_install_readwrite32_device_handler( space, device, 0x15004000, 0x1500402b, 0, 0, s3c24xx_uart_1_r, s3c24xx_uart_1_w); - memory_install_readwrite32_device_handler( space, device, 0x15100000, 0x15100043, 0, 0, s3c24xx_pwm_r, s3c24xx_pwm_w); - memory_install_readwrite32_device_handler( space, device, 0x15200140, 0x152001fb, 0, 0, s3c24xx_usb_device_r, s3c24xx_usb_device_w); - memory_install_readwrite32_device_handler( space, device, 0x15300000, 0x1530000b, 0, 0, s3c24xx_wdt_r, s3c24xx_wdt_w); - memory_install_readwrite32_device_handler( space, device, 0x15400000, 0x1540000f, 0, 0, s3c24xx_iic_r, s3c24xx_iic_w); - memory_install_readwrite32_device_handler( space, device, 0x15508000, 0x15508013, 0, 0, s3c24xx_iis_r, s3c24xx_iis_w); - memory_install_readwrite32_device_handler( space, device, 0x15600000, 0x1560005b, 0, 0, s3c24xx_gpio_r, s3c24xx_gpio_w); - memory_install_readwrite32_device_handler( space, device, 0x15700040, 0x1570008b, 0, 0, s3c24xx_rtc_r, s3c24xx_rtc_w); - memory_install_readwrite32_device_handler( space, device, 0x15800000, 0x15800007, 0, 0, s3c24xx_adc_r, s3c24xx_adc_w); - memory_install_readwrite32_device_handler( space, device, 0x15900000, 0x15900017, 0, 0, s3c24xx_spi_0_r, s3c24xx_spi_0_w); - memory_install_readwrite32_device_handler( space, device, 0x15a00000, 0x15a0003f, 0, 0, s3c24xx_mmc_r, s3c24xx_mmc_w); + space->install_legacy_readwrite_handler( *device, 0x14000000, 0x1400003b, FUNC(s3c24xx_memcon_r), FUNC(s3c24xx_memcon_w)); + space->install_legacy_readwrite_handler( *device, 0x14200000, 0x1420005b, FUNC(s3c24xx_usb_host_r), FUNC(s3c24xx_usb_host_w)); + space->install_legacy_readwrite_handler( *device, 0x14400000, 0x14400017, FUNC(s3c24xx_irq_r), FUNC(s3c24xx_irq_w)); + space->install_legacy_readwrite_handler( *device, 0x14600000, 0x1460001b, FUNC(s3c24xx_dma_0_r), FUNC(s3c24xx_dma_0_w)); + space->install_legacy_readwrite_handler( *device, 0x14600020, 0x1460003b, FUNC(s3c24xx_dma_1_r), FUNC(s3c24xx_dma_1_w)); + space->install_legacy_readwrite_handler( *device, 0x14600040, 0x1460005b, FUNC(s3c24xx_dma_2_r), FUNC(s3c24xx_dma_2_w)); + space->install_legacy_readwrite_handler( *device, 0x14600060, 0x1460007b, FUNC(s3c24xx_dma_3_r), FUNC(s3c24xx_dma_3_w)); + space->install_legacy_readwrite_handler( *device, 0x14800000, 0x14800017, FUNC(s3c24xx_clkpow_r), FUNC(s3c24xx_clkpow_w)); + space->install_legacy_readwrite_handler( *device, 0x14a00000, 0x14a003ff, FUNC(s3c2400_lcd_r), FUNC(s3c24xx_lcd_w)); + space->install_legacy_readwrite_handler( *device, 0x14a00400, 0x14a007ff, FUNC(s3c24xx_lcd_palette_r), FUNC(s3c24xx_lcd_palette_w)); + space->install_legacy_readwrite_handler( *device, 0x15000000, 0x1500002b, FUNC(s3c24xx_uart_0_r), FUNC(s3c24xx_uart_0_w)); + space->install_legacy_readwrite_handler( *device, 0x15004000, 0x1500402b, FUNC(s3c24xx_uart_1_r), FUNC(s3c24xx_uart_1_w)); + space->install_legacy_readwrite_handler( *device, 0x15100000, 0x15100043, FUNC(s3c24xx_pwm_r), FUNC(s3c24xx_pwm_w)); + space->install_legacy_readwrite_handler( *device, 0x15200140, 0x152001fb, FUNC(s3c24xx_usb_device_r), FUNC(s3c24xx_usb_device_w)); + space->install_legacy_readwrite_handler( *device, 0x15300000, 0x1530000b, FUNC(s3c24xx_wdt_r), FUNC(s3c24xx_wdt_w)); + space->install_legacy_readwrite_handler( *device, 0x15400000, 0x1540000f, FUNC(s3c24xx_iic_r), FUNC(s3c24xx_iic_w)); + space->install_legacy_readwrite_handler( *device, 0x15508000, 0x15508013, FUNC(s3c24xx_iis_r), FUNC(s3c24xx_iis_w)); + space->install_legacy_readwrite_handler( *device, 0x15600000, 0x1560005b, FUNC(s3c24xx_gpio_r), FUNC(s3c24xx_gpio_w)); + space->install_legacy_readwrite_handler( *device, 0x15700040, 0x1570008b, FUNC(s3c24xx_rtc_r), FUNC(s3c24xx_rtc_w)); + space->install_legacy_readwrite_handler( *device, 0x15800000, 0x15800007, FUNC(s3c24xx_adc_r), FUNC(s3c24xx_adc_w)); + space->install_legacy_readwrite_handler( *device, 0x15900000, 0x15900017, FUNC(s3c24xx_spi_0_r), FUNC(s3c24xx_spi_0_w)); + space->install_legacy_readwrite_handler( *device, 0x15a00000, 0x15a0003f, FUNC(s3c24xx_mmc_r), FUNC(s3c24xx_mmc_w)); } DEVICE_GET_INFO( s3c2400 ) diff --git a/src/emu/machine/s3c2410.c b/src/emu/machine/s3c2410.c index 09d829c829e..498020ecda3 100644 --- a/src/emu/machine/s3c2410.c +++ b/src/emu/machine/s3c2410.c @@ -47,31 +47,31 @@ DEVICE_START( s3c2410 ) { address_space *space = device->machine->device( "maincpu")->memory().space( AS_PROGRAM); DEVICE_START_CALL(s3c24xx); - memory_install_readwrite32_device_handler( space, device, 0x48000000, 0x4800003b, 0, 0, s3c24xx_memcon_r, s3c24xx_memcon_w); - memory_install_readwrite32_device_handler( space, device, 0x49000000, 0x4900005b, 0, 0, s3c24xx_usb_host_r, s3c24xx_usb_host_w); - memory_install_readwrite32_device_handler( space, device, 0x4a000000, 0x4a00001f, 0, 0, s3c24xx_irq_r, s3c24xx_irq_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000000, 0x4b000023, 0, 0, s3c24xx_dma_0_r, s3c24xx_dma_0_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000040, 0x4b000063, 0, 0, s3c24xx_dma_1_r, s3c24xx_dma_1_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000080, 0x4b0000a3, 0, 0, s3c24xx_dma_2_r, s3c24xx_dma_2_w); - memory_install_readwrite32_device_handler( space, device, 0x4b0000c0, 0x4b0000e3, 0, 0, s3c24xx_dma_3_r, s3c24xx_dma_3_w); - memory_install_readwrite32_device_handler( space, device, 0x4c000000, 0x4c000017, 0, 0, s3c24xx_clkpow_r, s3c24xx_clkpow_w); - memory_install_readwrite32_device_handler( space, device, 0x4d000000, 0x4d000063, 0, 0, s3c2410_lcd_r, s3c24xx_lcd_w); - memory_install_readwrite32_device_handler( space, device, 0x4d000400, 0x4d0007ff, 0, 0, s3c24xx_lcd_palette_r, s3c24xx_lcd_palette_w); - memory_install_readwrite32_device_handler( space, device, 0x4e000000, 0x4e000017, 0, 0, s3c24xx_nand_r, s3c24xx_nand_w); - memory_install_readwrite32_device_handler( space, device, 0x50000000, 0x5000002b, 0, 0, s3c24xx_uart_0_r, s3c24xx_uart_0_w); - memory_install_readwrite32_device_handler( space, device, 0x50004000, 0x5000402b, 0, 0, s3c24xx_uart_1_r, s3c24xx_uart_1_w); - memory_install_readwrite32_device_handler( space, device, 0x50008000, 0x5000802b, 0, 0, s3c24xx_uart_2_r, s3c24xx_uart_2_w); - memory_install_readwrite32_device_handler( space, device, 0x51000000, 0x51000043, 0, 0, s3c24xx_pwm_r, s3c24xx_pwm_w); - memory_install_readwrite32_device_handler( space, device, 0x52000140, 0x5200026f, 0, 0, s3c24xx_usb_device_r, s3c24xx_usb_device_w); - memory_install_readwrite32_device_handler( space, device, 0x53000000, 0x5300000b, 0, 0, s3c24xx_wdt_r, s3c24xx_wdt_w); - memory_install_readwrite32_device_handler( space, device, 0x54000000, 0x5400000f, 0, 0, s3c24xx_iic_r, s3c24xx_iic_w); - memory_install_readwrite32_device_handler( space, device, 0x55000000, 0x55000013, 0, 0, s3c24xx_iis_r, s3c24xx_iis_w); - memory_install_readwrite32_device_handler( space, device, 0x56000000, 0x560000bf, 0, 0, s3c24xx_gpio_r, s3c24xx_gpio_w); - memory_install_readwrite32_device_handler( space, device, 0x57000040, 0x5700008b, 0, 0, s3c24xx_rtc_r, s3c24xx_rtc_w); - memory_install_readwrite32_device_handler( space, device, 0x58000000, 0x58000013, 0, 0, s3c24xx_adc_r, s3c24xx_adc_w); - memory_install_readwrite32_device_handler( space, device, 0x59000000, 0x59000017, 0, 0, s3c24xx_spi_0_r, s3c24xx_spi_0_w); - memory_install_readwrite32_device_handler( space, device, 0x59000020, 0x59000037, 0, 0, s3c24xx_spi_1_r, s3c24xx_spi_1_w); - memory_install_readwrite32_device_handler( space, device, 0x5a000000, 0x5a000043, 0, 0, s3c24xx_sdi_r, s3c24xx_sdi_w); + space->install_legacy_readwrite_handler( *device, 0x48000000, 0x4800003b, FUNC(s3c24xx_memcon_r), FUNC(s3c24xx_memcon_w)); + space->install_legacy_readwrite_handler( *device, 0x49000000, 0x4900005b, FUNC(s3c24xx_usb_host_r), FUNC(s3c24xx_usb_host_w)); + space->install_legacy_readwrite_handler( *device, 0x4a000000, 0x4a00001f, FUNC(s3c24xx_irq_r), FUNC(s3c24xx_irq_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000000, 0x4b000023, FUNC(s3c24xx_dma_0_r), FUNC(s3c24xx_dma_0_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000040, 0x4b000063, FUNC(s3c24xx_dma_1_r), FUNC(s3c24xx_dma_1_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000080, 0x4b0000a3, FUNC(s3c24xx_dma_2_r), FUNC(s3c24xx_dma_2_w)); + space->install_legacy_readwrite_handler( *device, 0x4b0000c0, 0x4b0000e3, FUNC(s3c24xx_dma_3_r), FUNC(s3c24xx_dma_3_w)); + space->install_legacy_readwrite_handler( *device, 0x4c000000, 0x4c000017, FUNC(s3c24xx_clkpow_r), FUNC(s3c24xx_clkpow_w)); + space->install_legacy_readwrite_handler( *device, 0x4d000000, 0x4d000063, FUNC(s3c2410_lcd_r), FUNC(s3c24xx_lcd_w)); + space->install_legacy_readwrite_handler( *device, 0x4d000400, 0x4d0007ff, FUNC(s3c24xx_lcd_palette_r), FUNC(s3c24xx_lcd_palette_w)); + space->install_legacy_readwrite_handler( *device, 0x4e000000, 0x4e000017, FUNC(s3c24xx_nand_r), FUNC(s3c24xx_nand_w)); + space->install_legacy_readwrite_handler( *device, 0x50000000, 0x5000002b, FUNC(s3c24xx_uart_0_r), FUNC(s3c24xx_uart_0_w)); + space->install_legacy_readwrite_handler( *device, 0x50004000, 0x5000402b, FUNC(s3c24xx_uart_1_r), FUNC(s3c24xx_uart_1_w)); + space->install_legacy_readwrite_handler( *device, 0x50008000, 0x5000802b, FUNC(s3c24xx_uart_2_r), FUNC(s3c24xx_uart_2_w)); + space->install_legacy_readwrite_handler( *device, 0x51000000, 0x51000043, FUNC(s3c24xx_pwm_r), FUNC(s3c24xx_pwm_w)); + space->install_legacy_readwrite_handler( *device, 0x52000140, 0x5200026f, FUNC(s3c24xx_usb_device_r), FUNC(s3c24xx_usb_device_w)); + space->install_legacy_readwrite_handler( *device, 0x53000000, 0x5300000b, FUNC(s3c24xx_wdt_r), FUNC(s3c24xx_wdt_w)); + space->install_legacy_readwrite_handler( *device, 0x54000000, 0x5400000f, FUNC(s3c24xx_iic_r), FUNC(s3c24xx_iic_w)); + space->install_legacy_readwrite_handler( *device, 0x55000000, 0x55000013, FUNC(s3c24xx_iis_r), FUNC(s3c24xx_iis_w)); + space->install_legacy_readwrite_handler( *device, 0x56000000, 0x560000bf, FUNC(s3c24xx_gpio_r), FUNC(s3c24xx_gpio_w)); + space->install_legacy_readwrite_handler( *device, 0x57000040, 0x5700008b, FUNC(s3c24xx_rtc_r), FUNC(s3c24xx_rtc_w)); + space->install_legacy_readwrite_handler( *device, 0x58000000, 0x58000013, FUNC(s3c24xx_adc_r), FUNC(s3c24xx_adc_w)); + space->install_legacy_readwrite_handler( *device, 0x59000000, 0x59000017, FUNC(s3c24xx_spi_0_r), FUNC(s3c24xx_spi_0_w)); + space->install_legacy_readwrite_handler( *device, 0x59000020, 0x59000037, FUNC(s3c24xx_spi_1_r), FUNC(s3c24xx_spi_1_w)); + space->install_legacy_readwrite_handler( *device, 0x5a000000, 0x5a000043, FUNC(s3c24xx_sdi_r), FUNC(s3c24xx_sdi_w)); } DEVICE_GET_INFO( s3c2410 ) diff --git a/src/emu/machine/s3c2440.c b/src/emu/machine/s3c2440.c index 510b64ac317..359eb41d5bc 100644 --- a/src/emu/machine/s3c2440.c +++ b/src/emu/machine/s3c2440.c @@ -46,33 +46,33 @@ SCREEN_UPDATE( s3c2440 ) DEVICE_START( s3c2440 ) { address_space *space = device->machine->device( "maincpu")->memory().space( AS_PROGRAM); - memory_install_readwrite32_device_handler( space, device, 0x48000000, 0x4800003b, 0, 0, s3c24xx_memcon_r, s3c24xx_memcon_w); - memory_install_readwrite32_device_handler( space, device, 0x49000000, 0x4900005b, 0, 0, s3c24xx_usb_host_r, s3c24xx_usb_host_w); - memory_install_readwrite32_device_handler( space, device, 0x4a000000, 0x4a00001f, 0, 0, s3c24xx_irq_r, s3c24xx_irq_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000000, 0x4b000023, 0, 0, s3c24xx_dma_0_r, s3c24xx_dma_0_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000040, 0x4b000063, 0, 0, s3c24xx_dma_1_r, s3c24xx_dma_1_w); - memory_install_readwrite32_device_handler( space, device, 0x4b000080, 0x4b0000a3, 0, 0, s3c24xx_dma_2_r, s3c24xx_dma_2_w); - memory_install_readwrite32_device_handler( space, device, 0x4b0000c0, 0x4b0000e3, 0, 0, s3c24xx_dma_3_r, s3c24xx_dma_3_w); - memory_install_readwrite32_device_handler( space, device, 0x4c000000, 0x4c00001b, 0, 0, s3c24xx_clkpow_r, s3c24xx_clkpow_w); - memory_install_readwrite32_device_handler( space, device, 0x4d000000, 0x4d000063, 0, 0, s3c2440_lcd_r, s3c24xx_lcd_w); - memory_install_readwrite32_device_handler( space, device, 0x4d000400, 0x4d0007ff, 0, 0, s3c24xx_lcd_palette_r, s3c24xx_lcd_palette_w); - memory_install_readwrite32_device_handler( space, device, 0x4e000000, 0x4e00003f, 0, 0, s3c24xx_nand_r, s3c24xx_nand_w); - memory_install_readwrite32_device_handler( space, device, 0x4f000000, 0x4f0000a3, 0, 0, s3c24xx_cam_r, s3c24xx_cam_w); - memory_install_readwrite32_device_handler( space, device, 0x50000000, 0x5000002b, 0, 0, s3c24xx_uart_0_r, s3c24xx_uart_0_w); - memory_install_readwrite32_device_handler( space, device, 0x50004000, 0x5000402b, 0, 0, s3c24xx_uart_1_r, s3c24xx_uart_1_w); - memory_install_readwrite32_device_handler( space, device, 0x50008000, 0x5000802b, 0, 0, s3c24xx_uart_2_r, s3c24xx_uart_2_w); - memory_install_readwrite32_device_handler( space, device, 0x51000000, 0x51000043, 0, 0, s3c24xx_pwm_r, s3c24xx_pwm_w); - memory_install_readwrite32_device_handler( space, device, 0x52000140, 0x5200026f, 0, 0, s3c24xx_usb_device_r, s3c24xx_usb_device_w); - memory_install_readwrite32_device_handler( space, device, 0x53000000, 0x5300000b, 0, 0, s3c24xx_wdt_r, s3c24xx_wdt_w); - memory_install_readwrite32_device_handler( space, device, 0x54000000, 0x54000013, 0, 0, s3c24xx_iic_r, s3c24xx_iic_w); - memory_install_readwrite32_device_handler( space, device, 0x55000000, 0x55000013, 0, 0, s3c24xx_iis_r, s3c24xx_iis_w); - memory_install_readwrite32_device_handler( space, device, 0x56000000, 0x560000df, 0, 0, s3c24xx_gpio_r, s3c24xx_gpio_w); - memory_install_readwrite32_device_handler( space, device, 0x57000040, 0x5700008b, 0, 0, s3c24xx_rtc_r, s3c24xx_rtc_w); - memory_install_readwrite32_device_handler( space, device, 0x58000000, 0x58000017, 0, 0, s3c24xx_adc_r, s3c24xx_adc_w); - memory_install_readwrite32_device_handler( space, device, 0x59000000, 0x59000017, 0, 0, s3c24xx_spi_0_r, s3c24xx_spi_0_w); - memory_install_readwrite32_device_handler( space, device, 0x59000020, 0x59000037, 0, 0, s3c24xx_spi_1_r, s3c24xx_spi_1_w); - memory_install_readwrite32_device_handler( space, device, 0x5a000000, 0x5a000043, 0, 0, s3c24xx_sdi_r, s3c24xx_sdi_w); - memory_install_readwrite32_device_handler( space, device, 0x5b000000, 0x5b00001f, 0, 0, s3c24xx_ac97_r, s3c24xx_ac97_w); + space->install_legacy_readwrite_handler( *device, 0x48000000, 0x4800003b, FUNC(s3c24xx_memcon_r), FUNC(s3c24xx_memcon_w)); + space->install_legacy_readwrite_handler( *device, 0x49000000, 0x4900005b, FUNC(s3c24xx_usb_host_r), FUNC(s3c24xx_usb_host_w)); + space->install_legacy_readwrite_handler( *device, 0x4a000000, 0x4a00001f, FUNC(s3c24xx_irq_r), FUNC(s3c24xx_irq_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000000, 0x4b000023, FUNC(s3c24xx_dma_0_r), FUNC(s3c24xx_dma_0_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000040, 0x4b000063, FUNC(s3c24xx_dma_1_r), FUNC(s3c24xx_dma_1_w)); + space->install_legacy_readwrite_handler( *device, 0x4b000080, 0x4b0000a3, FUNC(s3c24xx_dma_2_r), FUNC(s3c24xx_dma_2_w)); + space->install_legacy_readwrite_handler( *device, 0x4b0000c0, 0x4b0000e3, FUNC(s3c24xx_dma_3_r), FUNC(s3c24xx_dma_3_w)); + space->install_legacy_readwrite_handler( *device, 0x4c000000, 0x4c00001b, FUNC(s3c24xx_clkpow_r), FUNC(s3c24xx_clkpow_w)); + space->install_legacy_readwrite_handler( *device, 0x4d000000, 0x4d000063, FUNC(s3c2440_lcd_r), FUNC(s3c24xx_lcd_w)); + space->install_legacy_readwrite_handler( *device, 0x4d000400, 0x4d0007ff, FUNC(s3c24xx_lcd_palette_r), FUNC(s3c24xx_lcd_palette_w)); + space->install_legacy_readwrite_handler( *device, 0x4e000000, 0x4e00003f, FUNC(s3c24xx_nand_r), FUNC(s3c24xx_nand_w)); + space->install_legacy_readwrite_handler( *device, 0x4f000000, 0x4f0000a3, FUNC(s3c24xx_cam_r), FUNC(s3c24xx_cam_w)); + space->install_legacy_readwrite_handler( *device, 0x50000000, 0x5000002b, FUNC(s3c24xx_uart_0_r), FUNC(s3c24xx_uart_0_w)); + space->install_legacy_readwrite_handler( *device, 0x50004000, 0x5000402b, FUNC(s3c24xx_uart_1_r), FUNC(s3c24xx_uart_1_w)); + space->install_legacy_readwrite_handler( *device, 0x50008000, 0x5000802b, FUNC(s3c24xx_uart_2_r), FUNC(s3c24xx_uart_2_w)); + space->install_legacy_readwrite_handler( *device, 0x51000000, 0x51000043, FUNC(s3c24xx_pwm_r), FUNC(s3c24xx_pwm_w)); + space->install_legacy_readwrite_handler( *device, 0x52000140, 0x5200026f, FUNC(s3c24xx_usb_device_r), FUNC(s3c24xx_usb_device_w)); + space->install_legacy_readwrite_handler( *device, 0x53000000, 0x5300000b, FUNC(s3c24xx_wdt_r), FUNC(s3c24xx_wdt_w)); + space->install_legacy_readwrite_handler( *device, 0x54000000, 0x54000013, FUNC(s3c24xx_iic_r), FUNC(s3c24xx_iic_w)); + space->install_legacy_readwrite_handler( *device, 0x55000000, 0x55000013, FUNC(s3c24xx_iis_r), FUNC(s3c24xx_iis_w)); + space->install_legacy_readwrite_handler( *device, 0x56000000, 0x560000df, FUNC(s3c24xx_gpio_r), FUNC(s3c24xx_gpio_w)); + space->install_legacy_readwrite_handler( *device, 0x57000040, 0x5700008b, FUNC(s3c24xx_rtc_r), FUNC(s3c24xx_rtc_w)); + space->install_legacy_readwrite_handler( *device, 0x58000000, 0x58000017, FUNC(s3c24xx_adc_r), FUNC(s3c24xx_adc_w)); + space->install_legacy_readwrite_handler( *device, 0x59000000, 0x59000017, FUNC(s3c24xx_spi_0_r), FUNC(s3c24xx_spi_0_w)); + space->install_legacy_readwrite_handler( *device, 0x59000020, 0x59000037, FUNC(s3c24xx_spi_1_r), FUNC(s3c24xx_spi_1_w)); + space->install_legacy_readwrite_handler( *device, 0x5a000000, 0x5a000043, FUNC(s3c24xx_sdi_r), FUNC(s3c24xx_sdi_w)); + space->install_legacy_readwrite_handler( *device, 0x5b000000, 0x5b00001f, FUNC(s3c24xx_ac97_r), FUNC(s3c24xx_ac97_w)); DEVICE_START_CALL(s3c24xx); } diff --git a/src/emu/memory.c b/src/emu/memory.c index c3614504dad..a87f2e22e32 100644 --- a/src/emu/memory.c +++ b/src/emu/memory.c @@ -906,7 +906,7 @@ public: UINT8 buffer[16]; for (int index = 0; index < 16; index++) buffer[index ^ ((_Endian == ENDIANNESS_NATIVE) ? 0 : (data_width()/8 - 1))] = index * 0x11; - install_ram(0x00, 0x0f, 0x0f, 0, ROW_READWRITE, buffer); + install_ram_generic(0x00, 0x0f, 0x0f, 0, ROW_READWRITE, buffer); printf("\n\naddress_space(%d, %s, %s)\n", NATIVE_BITS, (_Endian == ENDIANNESS_LITTLE) ? "little" : "big", _Large ? "large" : "small"); // walk through the first 8 addresses @@ -2052,15 +2052,15 @@ void address_space::populate_map_entry(const address_map_entry &entry, read_or_w // fall through to the RAM case otherwise case AMH_RAM: - install_ram(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite); + install_ram_generic(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite, NULL); break; case AMH_NOP: - unmap(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite, true); + unmap_generic(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite, true); break; case AMH_UNMAP: - unmap(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite, false); + unmap_generic(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, readorwrite, false); break; case AMH_DRIVER_DELEGATE: @@ -2139,13 +2139,13 @@ void address_space::populate_map_entry(const address_map_entry &entry, read_or_w break; case AMH_PORT: - install_port(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, + install_readwrite_port(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, (readorwrite == ROW_READ) ? data.m_tag : NULL, (readorwrite == ROW_WRITE) ? data.m_tag : NULL); break; case AMH_BANK: - install_bank(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, + install_bank_generic(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, (readorwrite == ROW_READ) ? data.m_tag : NULL, (readorwrite == ROW_WRITE) ? data.m_tag : NULL); break; @@ -2409,7 +2409,7 @@ void address_space::dump_map(FILE *file, read_or_write readorwrite) // unmap - unmap a section of address space //------------------------------------------------- -void address_space::unmap(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, bool quiet) +void address_space::unmap_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, bool quiet) { VPRINTF(("address_space::unmap(%s-%s mask=%s mirror=%s, %s, %s)\n", core_i64_hex_format(addrstart, m_addrchars), core_i64_hex_format(addrend, m_addrchars), @@ -2428,13 +2428,13 @@ void address_space::unmap(offs_t addrstart, offs_t addrend, offs_t addrmask, off //------------------------------------------------- -// install_port - install a new I/O port handler -// into this address space +// install_readwrite_port - install a new I/O port +// handler into this address space //------------------------------------------------- -void address_space::install_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag) +void address_space::install_readwrite_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag) { - VPRINTF(("address_space::install_port(%s-%s mask=%s mirror=%s, read=\"%s\" / write=\"%s\")\n", + VPRINTF(("address_space::install_readwrite_port(%s-%s mask=%s mirror=%s, read=\"%s\" / write=\"%s\")\n", core_i64_hex_format(addrstart, m_addrchars), core_i64_hex_format(addrend, m_addrchars), core_i64_hex_format(addrmask, m_addrchars), core_i64_hex_format(addrmirror, m_addrchars), (rtag != NULL) ? rtag : "(none)", (wtag != NULL) ? wtag : "(none)")); @@ -2470,13 +2470,13 @@ void address_space::install_port(offs_t addrstart, offs_t addrend, offs_t addrma //------------------------------------------------- -// install_bank - install a range as mapping to -// a particular bank +// install_bank_generic - install a range as +// mapping to a particular bank //------------------------------------------------- -void address_space::install_bank(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag) +void address_space::install_bank_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag) { - VPRINTF(("address_space::install_bank(%s-%s mask=%s mirror=%s, read=\"%s\" / write=\"%s\")\n", + VPRINTF(("address_space::install_readwrite_bank(%s-%s mask=%s mirror=%s, read=\"%s\" / write=\"%s\")\n", core_i64_hex_format(addrstart, m_addrchars), core_i64_hex_format(addrend, m_addrchars), core_i64_hex_format(addrmask, m_addrchars), core_i64_hex_format(addrmirror, m_addrchars), (rtag != NULL) ? rtag : "(none)", (wtag != NULL) ? wtag : "(none)")); @@ -2501,15 +2501,15 @@ void address_space::install_bank(offs_t addrstart, offs_t addrend, offs_t addrma //------------------------------------------------- -// install_ram - install a simple fixed RAM -// region into the given address space +// install_ram_generic - install a simple fixed +// RAM region into the given address space //------------------------------------------------- -void *address_space::install_ram(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, void *baseptr) +void *address_space::install_ram_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, void *baseptr) { memory_private *memdata = m_machine.memory_data; - VPRINTF(("address_space::install_ram(%s-%s mask=%s mirror=%s, %s, %p)\n", + VPRINTF(("address_space::install_ram_generic(%s-%s mask=%s mirror=%s, %s, %p)\n", core_i64_hex_format(addrstart, m_addrchars), core_i64_hex_format(addrend, m_addrchars), core_i64_hex_format(addrmask, m_addrchars), core_i64_hex_format(addrmirror, m_addrchars), (readorwrite == ROW_READ) ? "read" : (readorwrite == ROW_WRITE) ? "write" : (readorwrite == ROW_READWRITE) ? "read/write" : "??", @@ -2538,7 +2538,7 @@ void *address_space::install_ram(offs_t addrstart, offs_t addrend, offs_t addrma if (bank.base() == NULL && memdata->initialized) { if (m_machine.phase() >= MACHINE_PHASE_RESET) - fatalerror("Attempted to call memory_install_ram() after initialization time without a baseptr!"); + fatalerror("Attempted to call install_ram_generic() after initialization time without a baseptr!"); memory_block &block = memdata->blocklist.append(*auto_alloc(&m_machine, memory_block(*this, address_to_byte(addrstart), address_to_byte_end(addrend)))); bank.set_base(block.data()); } @@ -2567,7 +2567,7 @@ void *address_space::install_ram(offs_t addrstart, offs_t addrend, offs_t addrma if (bank.base() == NULL && memdata->initialized) { if (m_machine.phase() >= MACHINE_PHASE_RESET) - fatalerror("Attempted to call memory_install_ram() after initialization time without a baseptr!"); + fatalerror("Attempted to call install_ram_generic() after initialization time without a baseptr!"); memory_block &block = memdata->blocklist.append(*auto_alloc(&m_machine, memory_block(*this, address_to_byte(addrstart), address_to_byte_end(addrend)))); bank.set_base(block.data()); } diff --git a/src/emu/memory.h b/src/emu/memory.h index f7174cea448..0984472e7d7 100644 --- a/src/emu/memory.h +++ b/src/emu/memory.h @@ -431,17 +431,45 @@ public: direct_update_delegate set_direct_update_handler(direct_update_delegate function) { return m_direct.set_direct_update(function); } bool set_direct_region(offs_t &byteaddress); - // static handler installation - void unmap(offs_t addrstart, offs_t addrend, read_or_write readorwrite, bool quiet) { unmap(addrstart, addrend, 0, 0, readorwrite, quiet); } - void unmap(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, bool quiet); - void install_port(offs_t addrstart, offs_t addrend, const char *rtag, const char *wtag) { install_port(addrstart, addrend, 0, 0, rtag, wtag); } - void install_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag); - void install_bank(offs_t addrstart, offs_t addrend, const char *rtag, const char *wtag) { install_bank(addrstart, addrend, 0, 0, rtag, wtag); } - void install_bank(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag); - void *install_ram(offs_t addrstart, offs_t addrend, read_or_write readorwrite, void *baseptr = NULL) { return install_ram(addrstart, addrend, 0, 0, readorwrite, baseptr); } - void *install_ram(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, void *baseptr = NULL); + // umap ranges (short form) + void unmap_read(offs_t addrstart, offs_t addrend) { unmap_read(addrstart, addrend, 0, 0); } + void unmap_write(offs_t addrstart, offs_t addrend) { unmap_write(addrstart, addrend, 0, 0); } + void unmap_readwrite(offs_t addrstart, offs_t addrend) { unmap_readwrite(addrstart, addrend, 0, 0); } + void nop_read(offs_t addrstart, offs_t addrend) { nop_read(addrstart, addrend, 0, 0); } + void nop_write(offs_t addrstart, offs_t addrend) { nop_write(addrstart, addrend, 0, 0); } + void nop_readwrite(offs_t addrstart, offs_t addrend) { nop_readwrite(addrstart, addrend, 0, 0); } - // install new-style delegate handlers + // umap ranges (with mirror/mask) + void unmap_read(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READ, false); } + void unmap_write(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READWRITE, false); } + void unmap_readwrite(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READWRITE, false); } + void nop_read(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READ, true); } + void nop_write(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READWRITE, true); } + void nop_readwrite(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror) { unmap_generic(addrstart, addrend, 0, 0, ROW_READWRITE, true); } + + // install ports, banks, RAM (short form) + void install_read_port(offs_t addrstart, offs_t addrend, const char *rtag) { install_read_port(addrstart, addrend, 0, 0, rtag); } + void install_write_port(offs_t addrstart, offs_t addrend, const char *wtag) { install_write_port(addrstart, addrend, 0, 0, wtag); } + void install_readwrite_port(offs_t addrstart, offs_t addrend, const char *rtag, const char *wtag) { install_readwrite_port(addrstart, addrend, 0, 0, rtag, wtag); } + void install_read_bank(offs_t addrstart, offs_t addrend, const char *tag) { install_read_bank(addrstart, addrend, 0, 0, tag); } + void install_write_bank(offs_t addrstart, offs_t addrend, const char *tag) { install_write_bank(addrstart, addrend, 0, 0, tag); } + void install_readwrite_bank(offs_t addrstart, offs_t addrend, const char *tag) { install_readwrite_bank(addrstart, addrend, 0, 0, tag); } + void *install_rom(offs_t addrstart, offs_t addrend, void *baseptr = NULL) { return install_rom(addrstart, addrend, 0, 0, baseptr); } + void *install_writeonly(offs_t addrstart, offs_t addrend, void *baseptr = NULL) { return install_writeonly(addrstart, addrend, 0, 0, baseptr); } + void *install_ram(offs_t addrstart, offs_t addrend, void *baseptr = NULL) { return install_ram(addrstart, addrend, 0, 0, baseptr); } + + // install ports, banks, RAM (with mirror/mask) + void install_read_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag) { install_readwrite_port(addrstart, addrend, addrmask, addrmirror, rtag, NULL); } + void install_write_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *wtag) { install_readwrite_port(addrstart, addrend, addrmask, addrmirror, NULL, wtag); } + void install_readwrite_port(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag); + void install_read_bank(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *tag) { install_bank_generic(addrstart, addrend, addrmask, addrmirror, tag, NULL); } + void install_write_bank(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *tag) { install_bank_generic(addrstart, addrend, addrmask, addrmirror, NULL, tag); } + void install_readwrite_bank(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *tag) { install_bank_generic(addrstart, addrend, addrmask, addrmirror, tag, tag); } + void *install_rom(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, void *baseptr = NULL) { return install_ram_generic(addrstart, addrend, addrmask, addrmirror, ROW_READ, baseptr); } + void *install_writeonly(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, void *baseptr = NULL) { return install_ram_generic(addrstart, addrend, addrmask, addrmirror, ROW_WRITE, baseptr); } + void *install_ram(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, void *baseptr = NULL) { return install_ram_generic(addrstart, addrend, addrmask, addrmirror, ROW_READWRITE, baseptr); } + + // install new-style delegate handlers (short form) UINT8 *install_read_handler(offs_t addrstart, offs_t addrend, read8_delegate rhandler, UINT64 unitmask = 0) { return install_read_handler(addrstart, addrend, 0, 0, rhandler, unitmask); } UINT8 *install_write_handler(offs_t addrstart, offs_t addrend, write8_delegate whandler, UINT64 unitmask = 0) { return install_write_handler(addrstart, addrend, 0, 0, whandler, unitmask); } UINT8 *install_readwrite_handler(offs_t addrstart, offs_t addrend, read8_delegate rhandler, write8_delegate whandler, UINT64 unitmask = 0) { return install_readwrite_handler(addrstart, addrend, 0, 0, rhandler, whandler, unitmask); } @@ -455,6 +483,7 @@ public: UINT64 *install_write_handler(offs_t addrstart, offs_t addrend, write64_delegate whandler, UINT64 unitmask = 0) { return install_write_handler(addrstart, addrend, 0, 0, whandler, unitmask); } UINT64 *install_readwrite_handler(offs_t addrstart, offs_t addrend, read64_delegate rhandler, write64_delegate whandler, UINT64 unitmask = 0) { return install_readwrite_handler(addrstart, addrend, 0, 0, rhandler, whandler, unitmask); } + // install new-style delegate handlers (with mirror/mask) UINT8 *install_read_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_delegate rhandler, UINT64 unitmask = 0); UINT8 *install_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, write8_delegate whandler, UINT64 unitmask = 0); UINT8 *install_readwrite_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_delegate rhandler, write8_delegate whandler, UINT64 unitmask = 0); @@ -468,7 +497,7 @@ public: UINT64 *install_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, write64_delegate whandler, UINT64 unitmask = 0); UINT64 *install_readwrite_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read64_delegate rhandler, write64_delegate whandler, UINT64 unitmask = 0); - // install legacy address space handlers + // install legacy address space handlers (short form) UINT8 *install_legacy_read_handler(offs_t addrstart, offs_t addrend, read8_space_func rhandler, const char *rname, UINT64 unitmask = 0) { return install_legacy_read_handler(addrstart, addrend, 0, 0, rhandler, rname, unitmask); } UINT8 *install_legacy_write_handler(offs_t addrstart, offs_t addrend, write8_space_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_write_handler(addrstart, addrend, 0, 0, whandler, wname, unitmask); } UINT8 *install_legacy_readwrite_handler(offs_t addrstart, offs_t addrend, read8_space_func rhandler, const char *rname, write8_space_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_readwrite_handler(addrstart, addrend, 0, 0, rhandler, rname, whandler, wname, unitmask); } @@ -482,6 +511,7 @@ public: UINT64 *install_legacy_write_handler(offs_t addrstart, offs_t addrend, write64_space_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_write_handler(addrstart, addrend, 0, 0, whandler, wname, unitmask); } UINT64 *install_legacy_readwrite_handler(offs_t addrstart, offs_t addrend, read64_space_func rhandler, const char *rname, write64_space_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_readwrite_handler(addrstart, addrend, 0, 0, rhandler, rname, whandler, wname, unitmask); } + // install legacy address space handlers (with mirror/mask) UINT8 *install_legacy_read_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_space_func rhandler, const char *rname, UINT64 unitmask = 0); UINT8 *install_legacy_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, write8_space_func whandler, const char *wname, UINT64 unitmask = 0); UINT8 *install_legacy_readwrite_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_space_func rhandler, const char *rname, write8_space_func whandler, const char *wname, UINT64 unitmask = 0); @@ -495,7 +525,7 @@ public: UINT64 *install_legacy_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, write64_space_func whandler, const char *wname, UINT64 unitmask = 0); UINT64 *install_legacy_readwrite_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read64_space_func rhandler, const char *rname, write64_space_func whandler, const char *wname, UINT64 unitmask = 0); - // install legacy device handlers + // install legacy device handlers (short form) UINT8 *install_legacy_read_handler(device_t &device, offs_t addrstart, offs_t addrend, read8_device_func rhandler, const char *rname, UINT64 unitmask = 0) { return install_legacy_read_handler(device, addrstart, addrend, 0, 0, rhandler, rname, unitmask); } UINT8 *install_legacy_write_handler(device_t &device, offs_t addrstart, offs_t addrend, write8_device_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_write_handler(device, addrstart, addrend, 0, 0, whandler, wname, unitmask); } UINT8 *install_legacy_readwrite_handler(device_t &device, offs_t addrstart, offs_t addrend, read8_device_func rhandler, const char *rname, write8_device_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_readwrite_handler(device, addrstart, addrend, 0, 0, rhandler, rname, whandler, wname, unitmask); } @@ -509,6 +539,7 @@ public: UINT64 *install_legacy_write_handler(device_t &device, offs_t addrstart, offs_t addrend, write64_device_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_write_handler(device, addrstart, addrend, 0, 0, whandler, wname, unitmask); } UINT64 *install_legacy_readwrite_handler(device_t &device, offs_t addrstart, offs_t addrend, read64_device_func rhandler, const char *rname, write64_device_func whandler, const char *wname, UINT64 unitmask = 0) { return install_legacy_readwrite_handler(device, addrstart, addrend, 0, 0, rhandler, rname, whandler, wname, unitmask); } + // install legacy device handlers (with mirror/mask) UINT8 *install_legacy_read_handler(device_t &device, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_device_func rhandler, const char *rname, UINT64 unitmask = 0); UINT8 *install_legacy_write_handler(device_t &device, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, write8_device_func whandler, const char *wname, UINT64 unitmask = 0); UINT8 *install_legacy_readwrite_handler(device_t &device, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read8_device_func rhandler, const char *rname, write8_device_func whandler, const char *wname, UINT64 unitmask = 0); @@ -533,6 +564,9 @@ private: virtual address_table_read &read() = 0; virtual address_table_write &write() = 0; void populate_map_entry(const address_map_entry &entry, read_or_write readorwrite); + void unmap_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, bool quiet); + void *install_ram_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, read_or_write readorwrite, void *baseptr); + void install_bank_generic(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, const char *rtag, const char *wtag); void bind_and_install_handler(const address_map_entry &entry, read_or_write readorwrite, device_t *device); void adjust_addresses(offs_t &start, offs_t &end, offs_t &mask, offs_t &mirror); void *find_backing_memory(offs_t addrstart, offs_t addrend); @@ -667,97 +701,6 @@ protected: #define DWORD_XOR_LE(a) ((a) ^ NATIVE_ENDIAN_VALUE_LE_BE(0,4)) -// wrappers for dynamic read handler installation -#define memory_install_read8_handler(space, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read16_handler(space, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read32_handler(space, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read64_handler(space, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(start, end, mask, mirror, rhandler, #rhandler) - -#define memory_install_read8_device_handler(space, device, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(*(device), start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read16_device_handler(space, device, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(*(device), start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read32_device_handler(space, device, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(*(device), start, end, mask, mirror, rhandler, #rhandler) -#define memory_install_read64_device_handler(space, device, start, end, mask, mirror, rhandler) \ - (space)->install_legacy_read_handler(*(device), start, end, mask, mirror, rhandler, #rhandler) - -#define memory_install_read_port(space, start, end, mask, mirror, rtag) \ - (space)->install_port(start, end, mask, mirror, rtag, NULL) -#define memory_install_read_bank(space, start, end, mask, mirror, rtag) \ - (space)->install_bank(start, end, mask, mirror, rtag, NULL) -#define memory_install_rom(space, start, end, mask, mirror, baseptr) \ - (space)->install_ram(start, end, mask, mirror, ROW_READ, baseptr) -#define memory_unmap_read(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_READ, false) -#define memory_nop_read(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_READ, true) - -// wrappers for dynamic write handler installation -#define memory_install_write8_handler(space, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(start, end, mask, mirror, whandler, #whandler) -#define memory_install_write16_handler(space, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(start, end, mask, mirror, whandler, #whandler) -#define memory_install_write32_handler(space, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(start, end, mask, mirror, whandler, #whandler) -#define memory_install_write64_handler(space, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(start, end, mask, mirror, whandler, #whandler) - -#define memory_install_write8_device_handler(space, device, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(*(device), start, end, mask, mirror, whandler, #whandler) -#define memory_install_write16_device_handler(space, device, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(*(device), start, end, mask, mirror, whandler, #whandler) -#define memory_install_write32_device_handler(space, device, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(*(device), start, end, mask, mirror, whandler, #whandler) -#define memory_install_write64_device_handler(space, device, start, end, mask, mirror, whandler) \ - (space)->install_legacy_write_handler(*(device), start, end, mask, mirror, whandler, #whandler) - -#define memory_install_write_port(space, start, end, mask, mirror, wtag) \ - (space)->install_port(start, end, mask, mirror, NULL, wtag) -#define memory_install_write_bank(space, start, end, mask, mirror, wtag) \ - (space)->install_bank(start, end, mask, mirror, NULL, wtag) -#define memory_install_writeonly(space, start, end, mask, mirror, baseptr) \ - (space)->install_ram(start, end, mask, mirror, ROW_WRITE, baseptr) -#define memory_unmap_write(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_WRITE, false) -#define memory_nop_write(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_WRITE, true) - -// wrappers for dynamic read/write handler installation -#define memory_install_readwrite8_handler(space, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite16_handler(space, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite32_handler(space, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite64_handler(space, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) - -#define memory_install_readwrite8_device_handler(space, device, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(*(device), start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite16_device_handler(space, device, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(*(device), start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite32_device_handler(space, device, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(*(device), start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) -#define memory_install_readwrite64_device_handler(space, device, start, end, mask, mirror, rhandler, whandler) \ - (space)->install_legacy_readwrite_handler(*(device), start, end, mask, mirror, rhandler, #rhandler, whandler, #whandler) - -#define memory_install_readwrite_port(space, start, end, mask, mirror, rtag, wtag) \ - (space)->install_port(start, end, mask, mirror, rtag, wtag) -#define memory_install_readwrite_bank(space, start, end, mask, mirror, tag) \ - (space)->install_bank(start, end, mask, mirror, tag, tag) -#define memory_install_ram(space, start, end, mask, mirror, baseptr) \ - (space)->install_ram(start, end, mask, mirror, ROW_READWRITE, baseptr) -#define memory_unmap_readwrite(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_READWRITE, false) -#define memory_nop_readwrite(space, start, end, mask, mirror) \ - (space)->unmap(start, end, mask, mirror, ROW_READWRITE, true) - - //************************************************************************** // GLOBAL VARIABLES diff --git a/src/emu/sound/okim6295.c b/src/emu/sound/okim6295.c index f3f05138b72..1b765f31f50 100644 --- a/src/emu/sound/okim6295.c +++ b/src/emu/sound/okim6295.c @@ -258,7 +258,7 @@ void okim6295_device::set_bank_base(offs_t base) if (!m_bank_installed && base != 0) { // override our memory map with a bank - memory_install_read_bank(space(), 0x00000, 0x3ffff, 0, 0, tag()); + space()->install_read_bank(0x00000, 0x3ffff, tag()); m_bank_installed = true; } diff --git a/src/emu/video/pc_vga.c b/src/emu/video/pc_vga.c index abed214b3b2..70eb3cbc52f 100644 --- a/src/emu/video/pc_vga.c +++ b/src/emu/video/pc_vga.c @@ -682,17 +682,17 @@ static void vga_cpu_interface(running_machine *machine) sel = vga.gc.data[6] & 0x0c; if (sel) { - if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler) ); else memory_nop_read(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler) ); else memory_nop_read(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler) ); else memory_nop_read(space, 0xb8000, 0xbffff, 0, 0); - if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler)); else memory_nop_write(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler)); else memory_nop_write(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler)); else memory_nop_write(space, 0xb8000, 0xbffff, 0, 0); + if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler) ); else space->nop_read(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler) ); else space->nop_read(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler) ); else space->nop_read(0xb8000, 0xbffff); + if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler)); else space->nop_write(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler)); else space->nop_write(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler)); else space->nop_write(0xb8000, 0xbffff); } else { - memory_install_read_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); - memory_install_write_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); + space->install_read_bank(0xa0000, 0xbffff, "vgabank" ); + space->install_write_bank(0xa0000, 0xbffff, "vgabank" ); memory_set_bankptr(machine,"vgabank", vga.memory); } break; @@ -701,17 +701,17 @@ static void vga_cpu_interface(running_machine *machine) sel = vga.gc.data[6] & 0x0c; if (sel) { - if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler16) ); else memory_nop_read(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler16) ); else memory_nop_read(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler16) ); else memory_nop_read(space, 0xb8000, 0xbffff, 0, 0); - if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler16)); else memory_nop_write(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler16)); else memory_nop_write(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler16)); else memory_nop_write(space, 0xb8000, 0xbffff, 0, 0); + if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler16) ); else space->nop_read(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler16) ); else space->nop_read(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler16) ); else space->nop_read(0xb8000, 0xbffff); + if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler16)); else space->nop_write(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler16)); else space->nop_write(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler16)); else space->nop_write(0xb8000, 0xbffff); } else { - memory_install_read_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); - memory_install_write_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); + space->install_read_bank(0xa0000, 0xbffff, "vgabank" ); + space->install_write_bank(0xa0000, 0xbffff, "vgabank" ); memory_set_bankptr(machine,"vgabank", vga.memory); } break; @@ -720,17 +720,17 @@ static void vga_cpu_interface(running_machine *machine) sel = vga.gc.data[6] & 0x0c; if (sel) { - if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler32) ); else memory_nop_read(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler32) ); else memory_nop_read(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler32) ); else memory_nop_read(space, 0xb8000, 0xbffff, 0, 0); - if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler32)); else memory_nop_write(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler32)); else memory_nop_write(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler32)); else memory_nop_write(space, 0xb8000, 0xbffff, 0, 0); + if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler32) ); else space->nop_read(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler32) ); else space->nop_read(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler32) ); else space->nop_read(0xb8000, 0xbffff); + if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler32)); else space->nop_write(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler32)); else space->nop_write(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler32)); else space->nop_write(0xb8000, 0xbffff); } else { - memory_install_read_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); - memory_install_write_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); + space->install_read_bank(0xa0000, 0xbffff, "vgabank" ); + space->install_write_bank(0xa0000, 0xbffff, "vgabank" ); memory_set_bankptr(machine,"vgabank", vga.memory); } break; @@ -739,17 +739,17 @@ static void vga_cpu_interface(running_machine *machine) sel = vga.gc.data[6] & 0x0c; if (sel) { - if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler64) ); else memory_nop_read(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler64) ); else memory_nop_read(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler64) ); else memory_nop_read(space, 0xb8000, 0xbffff, 0, 0); - if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler64)); else memory_nop_write(space, 0xa0000, 0xaffff, 0, 0); - if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler64)); else memory_nop_write(space, 0xb0000, 0xb7fff, 0, 0); - if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler64)); else memory_nop_write(space, 0xb8000, 0xbffff, 0, 0); + if (sel == 0x04) space->install_legacy_read_handler(0xa0000, 0xaffff, FUNC(read_handler64) ); else space->nop_read(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_read_handler(0xb0000, 0xb7fff, FUNC(read_handler64) ); else space->nop_read(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_read_handler(0xb8000, 0xbffff, FUNC(read_handler64) ); else space->nop_read(0xb8000, 0xbffff); + if (sel == 0x04) space->install_legacy_write_handler(0xa0000, 0xaffff, FUNC(write_handler64)); else space->nop_write(0xa0000, 0xaffff); + if (sel == 0x08) space->install_legacy_write_handler(0xb0000, 0xb7fff, FUNC(write_handler64)); else space->nop_write(0xb0000, 0xb7fff); + if (sel == 0x0C) space->install_legacy_write_handler(0xb8000, 0xbffff, FUNC(write_handler64)); else space->nop_write(0xb8000, 0xbffff); } else { - memory_install_read_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); - memory_install_write_bank(space, 0xa0000, 0xbffff, 0, 0, "vgabank" ); + space->install_read_bank(0xa0000, 0xbffff, "vgabank" ); + space->install_write_bank(0xa0000, 0xbffff, "vgabank" ); memory_set_bankptr(machine,"vgabank", vga.memory); } break; diff --git a/src/mame/audio/atarijsa.c b/src/mame/audio/atarijsa.c index 778d0b34b05..81968c8fcb6 100644 --- a/src/mame/audio/atarijsa.c +++ b/src/mame/audio/atarijsa.c @@ -147,7 +147,7 @@ void atarijsa_init(running_machine *machine, const char *testport, int testmask) /* install POKEY memory handlers */ if (pokey != NULL) - memory_install_readwrite8_device_handler(jsacpu->memory().space(AS_PROGRAM), pokey, 0x2c00, 0x2c0f, 0, 0, pokey_r, pokey_w); + jsacpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*pokey, 0x2c00, 0x2c0f, FUNC(pokey_r), FUNC(pokey_w)); init_save_state(machine); atarijsa_reset(); diff --git a/src/mame/audio/cage.c b/src/mame/audio/cage.c index f26e1886d18..00beada9528 100644 --- a/src/mame/audio/cage.c +++ b/src/mame/audio/cage.c @@ -172,7 +172,7 @@ void cage_init(running_machine *machine, offs_t speedup) timer[1] = machine->device("cage_timer1"); if (speedup) - speedup_ram = memory_install_write32_handler(cage_cpu->memory().space(AS_PROGRAM), speedup, speedup, 0, 0, speedup_w); + speedup_ram = cage_cpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(speedup, speedup, FUNC(speedup_w)); for (chan = 0; chan < DAC_BUFFER_CHANNELS; chan++) { diff --git a/src/mame/audio/cinemat.c b/src/mame/audio/cinemat.c index 9a7fdb37559..5da3bf54707 100644 --- a/src/mame/audio/cinemat.c +++ b/src/mame/audio/cinemat.c @@ -1622,7 +1622,7 @@ static WRITE8_HANDLER( qb3_sound_w ) static MACHINE_RESET( qb3_sound ) { MACHINE_RESET_CALL(demon_sound); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x04, 0, 0, qb3_sound_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x04, 0x04, FUNC(qb3_sound_w)); /* this patch prevents the sound ROM from eating itself when command $0A is sent */ /* on a cube rotate */ diff --git a/src/mame/audio/dcs.c b/src/mame/audio/dcs.c index dc9c4b47a48..89b3bc929b4 100644 --- a/src/mame/audio/dcs.c +++ b/src/mame/audio/dcs.c @@ -1035,7 +1035,7 @@ void dcs2_init(running_machine *machine, int dram_in_mb, offs_t polling_offset) /* install the speedup handler */ dcs.polling_offset = polling_offset; if (polling_offset) - dcs_polling_base = memory_install_readwrite16_handler(dcs.cpu->space(AS_DATA), polling_offset, polling_offset, 0, 0, dcs_polling_r, dcs_polling_w); + dcs_polling_base = dcs.cpu->space(AS_DATA)->install_legacy_readwrite_handler(polling_offset, polling_offset, FUNC(dcs_polling_r), FUNC(dcs_polling_w)); /* allocate a watchdog timer for HLE transfers */ transfer.hle_enabled = (ENABLE_HLE_TRANSFERS && dram_in_mb != 0); @@ -1126,31 +1126,31 @@ static void sdrc_remap_memory(running_machine *machine) /* if SRAM disabled, clean it out */ if (SDRC_SM_EN == 0) { - memory_unmap_readwrite(dcs.program, 0x0800, 0x3fff, 0, 0); - memory_unmap_readwrite(dcs.data, 0x0800, 0x37ff, 0, 0); + dcs.program->unmap_readwrite(0x0800, 0x3fff); + dcs.data->unmap_readwrite(0x0800, 0x37ff); } /* otherwise, map the SRAM */ else { /* first start with a clean program map */ - memory_install_ram(dcs.program, 0x0800, 0x3fff, 0, 0, dcs_sram + 0x4800); + dcs.program->install_ram(0x0800, 0x3fff, dcs_sram + 0x4800); /* set up the data map based on the SRAM banking */ /* map 0: ram from 0800-37ff */ if (SDRC_SM_BK == 0) { - memory_install_ram(dcs.data, 0x0800, 0x17ff, 0, 0, dcs_sram + 0x0000); - memory_install_ram(dcs.data, 0x1800, 0x27ff, 0, 0, dcs_sram + 0x1000); - memory_install_ram(dcs.data, 0x2800, 0x37ff, 0, 0, dcs_sram + 0x2000); + dcs.data->install_ram(0x0800, 0x17ff, dcs_sram + 0x0000); + dcs.data->install_ram(0x1800, 0x27ff, dcs_sram + 0x1000); + dcs.data->install_ram(0x2800, 0x37ff, dcs_sram + 0x2000); } /* map 1: nothing from 0800-17ff, alternate RAM at 1800-27ff, same RAM at 2800-37ff */ else { - memory_unmap_readwrite(dcs.data, 0x0800, 0x17ff, 0, 0); - memory_install_ram(dcs.data, 0x1800, 0x27ff, 0, 0, dcs_sram + 0x3000); - memory_install_ram(dcs.data, 0x2800, 0x37ff, 0, 0, dcs_sram + 0x2000); + dcs.data->unmap_readwrite(0x0800, 0x17ff); + dcs.data->install_ram(0x1800, 0x27ff, dcs_sram + 0x3000); + dcs.data->install_ram(0x2800, 0x37ff, dcs_sram + 0x2000); } } @@ -1159,14 +1159,14 @@ static void sdrc_remap_memory(running_machine *machine) { int baseaddr = (SDRC_ROM_ST == 0) ? 0x0000 : (SDRC_ROM_ST == 1) ? 0x3000 : 0x3400; int pagesize = (SDRC_ROM_SZ == 0 && SDRC_ROM_ST != 0) ? 4096 : 1024; - memory_install_read_bank(dcs.data, baseaddr, baseaddr + pagesize - 1, 0, 0, "rompage"); + dcs.data->install_read_bank(baseaddr, baseaddr + pagesize - 1, "rompage"); } /* map the DRAM page as bank 26 */ if (SDRC_DM_ST != 0) { int baseaddr = (SDRC_DM_ST == 1) ? 0x0000 : (SDRC_DM_ST == 2) ? 0x3000 : 0x3400; - memory_install_readwrite_bank(dcs.data, baseaddr, baseaddr + 0x3ff, 0, 0, "drampage"); + dcs.data->install_readwrite_bank(baseaddr, baseaddr + 0x3ff, "drampage"); } /* update the bank pointers */ @@ -1174,7 +1174,7 @@ static void sdrc_remap_memory(running_machine *machine) /* reinstall the polling hotspot */ if (dcs.polling_offset) - dcs_polling_base = memory_install_readwrite16_handler(dcs.cpu->space(AS_DATA), dcs.polling_offset, dcs.polling_offset, 0, 0, dcs_polling_r, dcs_polling_w); + dcs_polling_base = dcs.cpu->space(AS_DATA)->install_legacy_readwrite_handler(dcs.polling_offset, dcs.polling_offset, FUNC(dcs_polling_r), FUNC(dcs_polling_w)); } diff --git a/src/mame/audio/jaguar.c b/src/mame/audio/jaguar.c index 7637528c8cb..9f70fd88a42 100644 --- a/src/mame/audio/jaguar.c +++ b/src/mame/audio/jaguar.c @@ -262,7 +262,7 @@ void cojag_sound_init(running_machine *machine) } #if ENABLE_SPEEDUP_HACKS - memory_install_write32_handler(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0xf1a100, 0xf1a103, 0, 0, dsp_flags_w); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf1a100, 0xf1a103, FUNC(dsp_flags_w)); #endif } diff --git a/src/mame/audio/leland.c b/src/mame/audio/leland.c index 4147fab418e..e77eb0cd8d5 100644 --- a/src/mame/audio/leland.c +++ b/src/mame/audio/leland.c @@ -1511,12 +1511,12 @@ static WRITE16_DEVICE_HANDLER( i80186_internal_port_w ) temp = (state->i80186.mem.peripheral & 0xffc0) << 4; if (state->i80186.mem.middle_size & 0x0040) { - memory_install_readwrite16_device_handler(state->i80186.cpu->memory().space(AS_PROGRAM), device, temp, temp + 0x2ff, 0, 0, peripheral_r, peripheral_w); + state->i80186.cpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*device, temp, temp + 0x2ff, FUNC(peripheral_r), FUNC(peripheral_w)); } else { temp &= 0xffff; - memory_install_readwrite16_device_handler(state->i80186.cpu->memory().space(AS_IO), device, temp, temp + 0x2ff, 0, 0, peripheral_r, peripheral_w); + state->i80186.cpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*device, temp, temp + 0x2ff, FUNC(peripheral_r), FUNC(peripheral_w)); } /* we need to do this at a time when the 80186 context is swapped in */ @@ -1582,12 +1582,12 @@ static WRITE16_DEVICE_HANDLER( i80186_internal_port_w ) temp = (data & 0x0fff) << 8; if (data & 0x1000) { - memory_install_readwrite16_device_handler(state->i80186.cpu->memory().space(AS_PROGRAM), device, temp, temp + 0xff, 0, 0, i80186_internal_port_r, i80186_internal_port_w); + state->i80186.cpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*device, temp, temp + 0xff, FUNC(i80186_internal_port_r), FUNC(i80186_internal_port_w)); } else { temp &= 0xffff; - memory_install_readwrite16_device_handler(state->i80186.cpu->memory().space(AS_IO), device, temp, temp + 0xff, 0, 0, i80186_internal_port_r, i80186_internal_port_w); + state->i80186.cpu->memory().space(AS_IO)->install_legacy_readwrite_handler(*device, temp, temp + 0xff, FUNC(i80186_internal_port_r), FUNC(i80186_internal_port_w)); } /* popmessage("Sound CPU reset");*/ break; diff --git a/src/mame/audio/mario.c b/src/mame/audio/mario.c index 9265c66d052..cdf729c2567 100644 --- a/src/mame/audio/mario.c +++ b/src/mame/audio/mario.c @@ -425,7 +425,7 @@ static SOUND_START( mario ) if (audiocpu != NULL && audiocpu->type() != Z80) { state->eabank = "bank1"; - memory_install_read_bank(audiocpu->memory().space(AS_PROGRAM), 0x000, 0x7ff, 0, 0, "bank1"); + audiocpu->memory().space(AS_PROGRAM)->install_read_bank(0x000, 0x7ff, "bank1"); memory_configure_bank(machine, "bank1", 0, 1, machine->region("audiocpu")->base(), 0); memory_configure_bank(machine, "bank1", 1, 1, machine->region("audiocpu")->base() + 0x1000, 0x800); } diff --git a/src/mame/audio/namcoc7x.c b/src/mame/audio/namcoc7x.c index 297c11e5310..fcb52ac4e63 100644 --- a/src/mame/audio/namcoc7x.c +++ b/src/mame/audio/namcoc7x.c @@ -90,7 +90,7 @@ void namcoc7x_on_driver_init(running_machine *machine) // install speedup cheat for (cpu = machine->device("maincpu"); cpu != NULL; cpu = cpu->typenext()) if (cpu->type() == M37702) - memory_install_readwrite16_handler(cpu->memory().space(AS_PROGRAM), 0x82, 0x83, 0, 0, speedup_r, speedup_w); + cpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x82, 0x83, FUNC(speedup_r), FUNC(speedup_w)); } void namcoc7x_set_host_ram(UINT32 *hostram) diff --git a/src/mame/drivers/1943.c b/src/mame/drivers/1943.c index 1be4a09d9d7..b4185095240 100644 --- a/src/mame/drivers/1943.c +++ b/src/mame/drivers/1943.c @@ -603,7 +603,7 @@ static DRIVER_INIT( 1943b ) DRIVER_INIT_CALL( 1943 ); //it expects 0x00 to be returned from the protection reads because the protection has been patched out. //AM_RANGE(0xc007, 0xc007) AM_READ(c1943_protection_r) - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc007, 0xc007, 0, 0, _1943b_c007_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc007, 0xc007, FUNC(_1943b_c007_r)); } diff --git a/src/mame/drivers/39in1.c b/src/mame/drivers/39in1.c index 83b0fbb952f..930cedfa9ee 100644 --- a/src/mame/drivers/39in1.c +++ b/src/mame/drivers/39in1.c @@ -1460,7 +1460,7 @@ static DRIVER_INIT( 39in1 ) state->eeprom = machine->device("eeprom"); address_space *space = machine->device("maincpu")->space(AS_PROGRAM); - memory_install_read32_handler (space, 0xa0151648, 0xa015164b, 0, 0, prot_cheater_r); + space->install_legacy_read_handler (0xa0151648, 0xa015164b, FUNC(prot_cheater_r)); } static ADDRESS_MAP_START( 39in1_map, AS_PROGRAM, 32 ) diff --git a/src/mame/drivers/actfancr.c b/src/mame/drivers/actfancr.c index 9e18e80e456..cd8a3753b6a 100644 --- a/src/mame/drivers/actfancr.c +++ b/src/mame/drivers/actfancr.c @@ -616,12 +616,12 @@ static READ8_HANDLER( cyclej_r ) static DRIVER_INIT( actfancr ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f0026, 0x1f0027, 0, 0, cycle_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1f0026, 0x1f0027, FUNC(cycle_r)); } static DRIVER_INIT( actfancrj ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f0026, 0x1f0027, 0, 0, cyclej_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1f0026, 0x1f0027, FUNC(cyclej_r)); } diff --git a/src/mame/drivers/airbustr.c b/src/mame/drivers/airbustr.c index 70185570015..18b4f21d3ad 100644 --- a/src/mame/drivers/airbustr.c +++ b/src/mame/drivers/airbustr.c @@ -798,7 +798,7 @@ ROM_END static DRIVER_INIT( airbustr ) { - memory_install_read8_handler(machine->device("master")->memory().space(AS_PROGRAM), 0xe000, 0xefff, 0, 0, devram_r); // protection device lives here + machine->device("master")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xe000, 0xefff, FUNC(devram_r)); // protection device lives here } diff --git a/src/mame/drivers/alg.c b/src/mame/drivers/alg.c index c596547530a..1e6552a44d7 100644 --- a/src/mame/drivers/alg.c +++ b/src/mame/drivers/alg.c @@ -229,11 +229,11 @@ static WRITE8_DEVICE_HANDLER( alg_cia_0_porta_w ) /* swap the write handlers between ROM and bank 1 based on the bit */ if ((data & 1) == 0) /* overlay disabled, map RAM on 0x000000 */ - memory_install_write_bank(space, 0x000000, 0x07ffff, 0, 0, "bank1"); + space->install_write_bank(0x000000, 0x07ffff, "bank1"); else /* overlay enabled, map Amiga system ROM on 0x000000 */ - memory_unmap_write(space, 0x000000, 0x07ffff, 0, 0); + space->unmap_write(0x000000, 0x07ffff); } diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c index d67b0978963..a3bbc190729 100644 --- a/src/mame/drivers/alpha68k.c +++ b/src/mame/drivers/alpha68k.c @@ -3108,7 +3108,7 @@ static DRIVER_INIT( kyros ) static DRIVER_INIT( jongbou ) { alpha68k_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0c0001, 0, 0, jongbou_inputs_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0c0000, 0x0c0001, FUNC(jongbou_inputs_r)); state->invert_controls = 0; state->microcontroller_id = 0x00ff; state->coin_id = 0x23 | (0x24 << 8); diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c index 02f47256726..9193d976e2a 100644 --- a/src/mame/drivers/arcadia.c +++ b/src/mame/drivers/arcadia.c @@ -75,9 +75,9 @@ public: static WRITE16_HANDLER( arcadia_multibios_change_game ) { if (data == 0) - memory_install_read_bank(space, 0x800000, 0x97ffff, 0, 0, "bank2"); + space->install_read_bank(0x800000, 0x97ffff, "bank2"); else - memory_nop_read(space, 0x800000, 0x97ffff, 0, 0); + space->nop_read(0x800000, 0x97ffff); } @@ -105,11 +105,11 @@ static WRITE8_DEVICE_HANDLER( arcadia_cia_0_porta_w ) /* swap the write handlers between ROM and bank 1 based on the bit */ if ((data & 1) == 0) /* overlay disabled, map RAM on 0x000000 */ - memory_install_write_bank(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0, "bank1"); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x000000, 0x07ffff, "bank1"); else /* overlay enabled, map Amiga system ROM on 0x000000 */ - memory_unmap_write(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x000000, 0x07ffff); /* bit 2 = Power Led on Amiga */ set_led_status(device->machine, 0, (data & 2) ? 0 : 1); diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c index 6990ad3e334..668deed3cdd 100644 --- a/src/mame/drivers/arkanoid.c +++ b/src/mame/drivers/arkanoid.c @@ -1446,10 +1446,10 @@ ROM_END static void arkanoid_bootleg_init( running_machine *machine ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf000, 0xf000, 0, 0, arkanoid_bootleg_f000_r ); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf002, 0xf002, 0, 0, arkanoid_bootleg_f002_r ); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd018, 0xd018, 0, 0, arkanoid_bootleg_d018_w ); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd008, 0xd008, 0, 0, arkanoid_bootleg_d008_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf000, 0xf000, FUNC(arkanoid_bootleg_f000_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf002, 0xf002, FUNC(arkanoid_bootleg_f002_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd018, 0xd018, FUNC(arkanoid_bootleg_d018_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd008, 0xd008, FUNC(arkanoid_bootleg_d008_r) ); } static DRIVER_INIT( arkangc ) @@ -1541,7 +1541,7 @@ static DRIVER_INIT( tetrsark ) ROM[x] = ROM[x] ^ 0x94; } - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd008, 0xd008, 0, 0, tetrsark_d008_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd008, 0xd008, FUNC(tetrsark_d008_w) ); } diff --git a/src/mame/drivers/artmagic.c b/src/mame/drivers/artmagic.c index ceaef5e2160..a22db8b3c76 100644 --- a/src/mame/drivers/artmagic.c +++ b/src/mame/drivers/artmagic.c @@ -1172,7 +1172,7 @@ static DRIVER_INIT( ultennis ) state->protection_handler = ultennis_protection; /* additional (protection?) hack */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x300000, 0x300001, 0, 0, ultennis_hack_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x300000, 0x300001, FUNC(ultennis_hack_r)); } diff --git a/src/mame/drivers/asteroid.c b/src/mame/drivers/asteroid.c index 857bcb57064..5d40efaa74d 100644 --- a/src/mame/drivers/asteroid.c +++ b/src/mame/drivers/asteroid.c @@ -921,14 +921,14 @@ ROM_END static DRIVER_INIT( asteroidb ) { - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2000, 0x2000, 0, 0, "IN0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2003, 0x2003, 0, 0, "HS"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2000, 0x2000, "IN0"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2003, 0x2003, "HS"); } static DRIVER_INIT( asterock ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2000, 0x2007, 0, 0, asterock_IN0_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2000, 0x2007, FUNC(asterock_IN0_r)); } diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c index 5e47be9ced6..a67109fe466 100644 --- a/src/mame/drivers/astrocde.c +++ b/src/mame/drivers/astrocde.c @@ -431,12 +431,12 @@ static WRITE8_HANDLER( profpac_banksw_w ) profpac_bank = data; /* set the main banking */ - memory_install_read_bank(space, 0x4000, 0xbfff, 0, 0, "bank1"); + space->install_read_bank(0x4000, 0xbfff, "bank1"); memory_set_bankptr(space->machine, "bank1", space->machine->region("user1")->base() + 0x8000 * bank); /* bank 0 reads video RAM in the 4000-7FFF range */ if (bank == 0) - memory_install_read8_handler(space, 0x4000, 0x7fff, 0, 0, profpac_videoram_r); + space->install_legacy_read_handler(0x4000, 0x7fff, FUNC(profpac_videoram_r)); /* if we have a 640k EPROM board, map that on top of the 4000-7FFF range if specified */ if ((data & 0x80) && space->machine->region("user2")->base() != NULL) @@ -447,11 +447,11 @@ static WRITE8_HANDLER( profpac_banksw_w ) /* if the bank is in range, map the appropriate bank */ if (bank < 0x28) { - memory_install_read_bank(space, 0x4000, 0x7fff, 0, 0, "bank2"); + space->install_read_bank(0x4000, 0x7fff, "bank2"); memory_set_bankptr(space->machine, "bank2", space->machine->region("user2")->base() + 0x4000 * bank); } else - memory_unmap_read(space, 0x4000, 0x7fff, 0, 0); + space->unmap_read(0x4000, 0x7fff); } } @@ -1729,48 +1729,48 @@ ROM_END static DRIVER_INIT( seawolf2 ) { astrocade_video_config = 0x00; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x40, 0x40, 0, 0xff18, seawolf2_sound_1_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x41, 0x41, 0, 0xff18, seawolf2_sound_2_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x42, 0x43, 0, 0xff18, seawolf2_lamps_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x40, 0x40, 0, 0xff18, FUNC(seawolf2_sound_1_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x41, 0x41, 0, 0xff18, FUNC(seawolf2_sound_2_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x42, 0x43, 0, 0xff18, FUNC(seawolf2_lamps_w)); } static DRIVER_INIT( ebases ) { astrocade_video_config = AC_SOUND_PRESENT; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x20, 0x20, 0, 0xff07, ebases_coin_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x28, 0x28, 0, 0xff07, ebases_trackball_select_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x20, 0x20, 0, 0xff07, FUNC(ebases_coin_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x28, 0x28, 0, 0xff07, FUNC(ebases_trackball_select_w)); } static DRIVER_INIT( spacezap ) { astrocade_video_config = AC_SOUND_PRESENT | AC_MONITOR_BW; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x13, 0x13, 0x03ff, 0xff00, spacezap_io_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x13, 0x13, 0x03ff, 0xff00, FUNC(spacezap_io_r)); } static DRIVER_INIT( wow ) { astrocade_video_config = AC_SOUND_PRESENT | AC_LIGHTPEN_INTS | AC_STARS; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x15, 0x15, 0x0fff, 0xff00, wow_io_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x17, 0x17, 0xffff, 0xff00, wow_speech_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x15, 0x15, 0x0fff, 0xff00, FUNC(wow_io_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x17, 0x17, 0xffff, 0xff00, FUNC(wow_speech_r)); } static DRIVER_INIT( gorf ) { astrocade_video_config = AC_SOUND_PRESENT | AC_LIGHTPEN_INTS | AC_STARS; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x15, 0x15, 0x0fff, 0xff00, gorf_io_1_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x16, 0x16, 0x0fff, 0xff00, gorf_io_2_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x17, 0x17, 0xffff, 0xff00, gorf_speech_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x15, 0x15, 0x0fff, 0xff00, FUNC(gorf_io_1_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x16, 0x16, 0x0fff, 0xff00, FUNC(gorf_io_2_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x17, 0x17, 0xffff, 0xff00, FUNC(gorf_speech_r)); } static DRIVER_INIT( robby ) { astrocade_video_config = AC_SOUND_PRESENT; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x15, 0x15, 0x0fff, 0xff00, robby_io_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x15, 0x15, 0x0fff, 0xff00, FUNC(robby_io_r)); } @@ -1779,8 +1779,8 @@ static DRIVER_INIT( profpac ) address_space *iospace = machine->device("maincpu")->memory().space(AS_IO); astrocade_video_config = AC_SOUND_PRESENT; - memory_install_read8_handler(iospace, 0x14, 0x14, 0x0fff, 0xff00, profpac_io_1_r); - memory_install_read8_handler(iospace, 0x15, 0x15, 0x77ff, 0xff00, profpac_io_2_r); + iospace->install_legacy_read_handler(0x14, 0x14, 0x0fff, 0xff00, FUNC(profpac_io_1_r)); + iospace->install_legacy_read_handler(0x15, 0x15, 0x77ff, 0xff00, FUNC(profpac_io_2_r)); /* reset banking */ profpac_banksw_w(iospace, 0, 0); @@ -1793,10 +1793,10 @@ static DRIVER_INIT( demndrgn ) address_space *iospace = machine->device("maincpu")->memory().space(AS_IO); astrocade_video_config = 0x00; - memory_install_read8_handler(iospace, 0x14, 0x14, 0x1fff, 0xff00, demndrgn_io_r); - memory_install_read_port(iospace, 0x1c, 0x1c, 0x0000, 0xff00, "FIREX"); - memory_install_read_port(iospace, 0x1d, 0x1d, 0x0000, 0xff00, "FIREY"); - memory_install_write8_handler(iospace, 0x97, 0x97, 0x0000, 0xff00, demndrgn_sound_w); + iospace->install_legacy_read_handler(0x14, 0x14, 0x1fff, 0xff00, FUNC(demndrgn_io_r)); + iospace->install_read_port(0x1c, 0x1c, 0x0000, 0xff00, "FIREX"); + iospace->install_read_port(0x1d, 0x1d, 0x0000, 0xff00, "FIREY"); + iospace->install_legacy_write_handler(0x97, 0x97, 0x0000, 0xff00, FUNC(demndrgn_sound_w)); /* reset banking */ profpac_banksw_w(iospace, 0, 0); @@ -1809,15 +1809,15 @@ static DRIVER_INIT( tenpindx ) address_space *iospace = machine->device("maincpu")->memory().space(AS_IO); astrocade_video_config = 0x00; - memory_install_read_port(iospace, 0x60, 0x60, 0x0000, 0xff00, "P60"); - memory_install_read_port(iospace, 0x61, 0x61, 0x0000, 0xff00, "P61"); - memory_install_read_port(iospace, 0x62, 0x62, 0x0000, 0xff00, "P62"); - memory_install_read_port(iospace, 0x63, 0x63, 0x0000, 0xff00, "P63"); - memory_install_read_port(iospace, 0x64, 0x64, 0x0000, 0xff00, "P64"); - memory_install_write8_handler(iospace, 0x65, 0x66, 0x0000, 0xff00, tenpindx_lamp_w); - memory_install_write8_handler(iospace, 0x67, 0x67, 0x0000, 0xff00, tenpindx_counter_w); - memory_install_write8_handler(iospace, 0x68, 0x68, 0x0000, 0xff00, tenpindx_lights_w); - memory_install_write8_handler(iospace, 0x97, 0x97, 0x0000, 0xff00, tenpindx_sound_w); + iospace->install_read_port(0x60, 0x60, 0x0000, 0xff00, "P60"); + iospace->install_read_port(0x61, 0x61, 0x0000, 0xff00, "P61"); + iospace->install_read_port(0x62, 0x62, 0x0000, 0xff00, "P62"); + iospace->install_read_port(0x63, 0x63, 0x0000, 0xff00, "P63"); + iospace->install_read_port(0x64, 0x64, 0x0000, 0xff00, "P64"); + iospace->install_legacy_write_handler(0x65, 0x66, 0x0000, 0xff00, FUNC(tenpindx_lamp_w)); + iospace->install_legacy_write_handler(0x67, 0x67, 0x0000, 0xff00, FUNC(tenpindx_counter_w)); + iospace->install_legacy_write_handler(0x68, 0x68, 0x0000, 0xff00, FUNC(tenpindx_lights_w)); + iospace->install_legacy_write_handler(0x97, 0x97, 0x0000, 0xff00, FUNC(tenpindx_sound_w)); /* reset banking */ profpac_banksw_w(iospace, 0, 0); diff --git a/src/mame/drivers/astrof.c b/src/mame/drivers/astrof.c index 4b825b751c0..167c8313a74 100644 --- a/src/mame/drivers/astrof.c +++ b/src/mame/drivers/astrof.c @@ -1308,8 +1308,8 @@ static DRIVER_INIT( abattle ) rom[i] = prom[rom[i]]; /* set up protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa003, 0xa003, 0, 0, shoot_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa004, 0xa004, 0, 0, abattle_coin_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa003, 0xa003, FUNC(shoot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa004, 0xa004, FUNC(abattle_coin_prot_r)); } @@ -1322,8 +1322,8 @@ static DRIVER_INIT( afire ) rom[i] = ~rom[i]; /* set up protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa003, 0xa003, 0, 0, shoot_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa004, 0xa004, 0, 0, afire_coin_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa003, 0xa003, FUNC(shoot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa004, 0xa004, FUNC(afire_coin_prot_r)); } @@ -1336,8 +1336,8 @@ static DRIVER_INIT( sstarbtl ) rom[i] = ~rom[i]; /* set up protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa003, 0xa003, 0, 0, shoot_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa004, 0xa004, 0, 0, abattle_coin_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa003, 0xa003, FUNC(shoot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa004, 0xa004, FUNC(abattle_coin_prot_r)); } diff --git a/src/mame/drivers/atarig1.c b/src/mame/drivers/atarig1.c index 192641791a5..ebebbfcced4 100644 --- a/src/mame/drivers/atarig1.c +++ b/src/mame/drivers/atarig1.c @@ -192,7 +192,7 @@ static void pitfightb_cheap_slapstic_init(running_machine *machine) atarig1_state *state = machine->driver_data(); /* install a read handler */ - state->bslapstic_base = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x038000, 0x03ffff, 0, 0, pitfightb_cheap_slapstic_r); + state->bslapstic_base = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x038000, 0x03ffff, FUNC(pitfightb_cheap_slapstic_r)); /* allocate memory for a copy of bank 0 */ state->bslapstic_bank0 = auto_alloc_array(machine, UINT8, 0x2000); diff --git a/src/mame/drivers/atarig42.c b/src/mame/drivers/atarig42.c index cc172ddfd91..4073b7f3d06 100644 --- a/src/mame/drivers/atarig42.c +++ b/src/mame/drivers/atarig42.c @@ -801,7 +801,7 @@ static DRIVER_INIT( roadriot ) state->playfield_base = 0x400; address_space *main = machine->device("maincpu")->space(AS_PROGRAM); - state->sloop_base = memory_install_readwrite16_handler(main, 0x000000, 0x07ffff, 0, 0, roadriot_sloop_data_r, roadriot_sloop_data_w); + state->sloop_base = main->install_legacy_readwrite_handler(0x000000, 0x07ffff, FUNC(roadriot_sloop_data_r), FUNC(roadriot_sloop_data_w)); main->set_direct_update_handler(direct_update_delegate_create_static(atarig42_sloop_direct_handler, *machine)); asic65_config(machine, ASIC65_ROMBASED); @@ -840,7 +840,7 @@ static DRIVER_INIT( guardian ) *(UINT16 *)&machine->region("maincpu")->base()[0x80000] = 0x4E75; address_space *main = machine->device("maincpu")->space(AS_PROGRAM); - state->sloop_base = memory_install_readwrite16_handler(main, 0x000000, 0x07ffff, 0, 0, guardians_sloop_data_r, guardians_sloop_data_w); + state->sloop_base = main->install_legacy_readwrite_handler(0x000000, 0x07ffff, FUNC(guardians_sloop_data_r), FUNC(guardians_sloop_data_w)); main->set_direct_update_handler(direct_update_delegate_create_static(atarig42_sloop_direct_handler, *machine)); asic65_config(machine, ASIC65_GUARDIANS); diff --git a/src/mame/drivers/atarigt.c b/src/mame/drivers/atarigt.c index c5d012cd159..4922c82088c 100644 --- a/src/mame/drivers/atarigt.c +++ b/src/mame/drivers/atarigt.c @@ -1282,7 +1282,7 @@ static DRIVER_INIT( tmek ) state->protection_w = tmek_protection_w; /* temp hack */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd72000, 0xd75fff, 0, 0, tmek_pf_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd72000, 0xd75fff, FUNC(tmek_pf_w)); } diff --git a/src/mame/drivers/atarigx2.c b/src/mame/drivers/atarigx2.c index 404e770579e..11c0ae73da0 100644 --- a/src/mame/drivers/atarigx2.c +++ b/src/mame/drivers/atarigx2.c @@ -2246,7 +2246,7 @@ static DRIVER_INIT( rrreveng ) state->playfield_base = 0x000; - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xca0fc0, 0xca0fc3, 0, 0, rrreveng_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xca0fc0, 0xca0fc3, FUNC(rrreveng_prot_r)); } diff --git a/src/mame/drivers/ataxx.c b/src/mame/drivers/ataxx.c index 2f807511f5d..f2cff6bb05a 100644 --- a/src/mame/drivers/ataxx.c +++ b/src/mame/drivers/ataxx.c @@ -711,7 +711,7 @@ static DRIVER_INIT( ataxx ) leland_rotate_memory(machine, "slave"); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x00, 0x03, 0, 0, ataxx_trackball_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x03, FUNC(ataxx_trackball_r)); } @@ -721,7 +721,7 @@ static DRIVER_INIT( ataxxj ) leland_rotate_memory(machine, "slave"); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x00, 0x03, 0, 0, ataxx_trackball_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x03, FUNC(ataxx_trackball_r)); } @@ -731,9 +731,9 @@ static DRIVER_INIT( wsf ) leland_rotate_memory(machine, "slave"); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0d, 0x0d, 0, 0, "P1_P2"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0e, 0x0e, 0, 0, "P3_P4"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0f, 0x0f, 0, 0, "BUTTONS"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0d, 0x0d, "P1_P2"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0e, 0x0e, "P3_P4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0f, 0x0f, "BUTTONS"); } @@ -743,14 +743,14 @@ static DRIVER_INIT( indyheat ) leland_rotate_memory(machine, "slave"); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x00, 0x02, 0, 0, indyheat_wheel_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x08, 0x0b, 0, 0, indyheat_analog_r); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0d, 0x0d, 0, 0, "P1"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0e, 0x0e, 0, 0, "P2"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0f, 0x0f, 0, 0, "P3"); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x02, FUNC(indyheat_wheel_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x08, 0x0b, FUNC(indyheat_analog_r)); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0d, 0x0d, "P1"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0e, 0x0e, "P2"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0f, 0x0f, "P3"); /* set up additional output ports */ - memory_install_write8_handler(machine->device("master")->memory().space(AS_IO), 0x08, 0x0b, 0, 0, indyheat_analog_w); + machine->device("master")->memory().space(AS_IO)->install_legacy_write_handler(0x08, 0x0b, FUNC(indyheat_analog_w)); } @@ -760,9 +760,9 @@ static DRIVER_INIT( brutforc ) leland_rotate_memory(machine, "slave"); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0d, 0x0d, 0, 0, "P2"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0e, 0x0e, 0, 0, "P1"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0f, 0x0f, 0, 0, "P3"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0d, 0x0d, "P2"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0e, 0x0e, "P1"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0f, 0x0f, "P3"); } @@ -772,12 +772,12 @@ static DRIVER_INIT( asylum ) leland_rotate_memory(machine, "slave"); /* asylum appears to have some extra RAM for the slave CPU */ - memory_install_ram(machine->device("slave")->memory().space(AS_PROGRAM), 0xf000, 0xfffb, 0, 0, NULL); + machine->device("slave")->memory().space(AS_PROGRAM)->install_ram(0xf000, 0xfffb); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0d, 0x0d, 0, 0, "P2"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0e, 0x0e, 0, 0, "P1"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x0f, 0x0f, 0, 0, "P3"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0d, 0x0d, "P2"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0e, 0x0e, "P1"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x0f, 0x0f, "P3"); } diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c index a86a02688cd..bc86e0d1e7a 100644 --- a/src/mame/drivers/backfire.c +++ b/src/mame/drivers/backfire.c @@ -685,7 +685,7 @@ static DRIVER_INIT( backfire ) deco156_decrypt(machine); machine->device("maincpu")->set_clock_scale(4.0f); /* core timings aren't accurate */ descramble_sound(machine); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0170018, 0x017001b, 0, 0, backfire_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0170018, 0x017001b, FUNC(backfire_speedup_r) ); } GAME( 1995, backfire, 0, backfire, backfire, backfire, ROT0, "Data East Corporation", "Backfire! (set 1)", GAME_SUPPORTS_SAVE ) diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c index ed3b81b8991..8037504551b 100644 --- a/src/mame/drivers/bagman.c +++ b/src/mame/drivers/bagman.c @@ -934,7 +934,7 @@ static DRIVER_INIT( bagman ) /* Unmap video enable register, not available on earlier hardware revision(s) Bagman is supposed to have glitches during screen transitions */ - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa003, 0xa003, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0xa003, 0xa003); *state->video_enable = 1; } diff --git a/src/mame/drivers/balsente.c b/src/mame/drivers/balsente.c index 0b02bec0c75..0d120ed7826 100644 --- a/src/mame/drivers/balsente.c +++ b/src/mame/drivers/balsente.c @@ -2135,47 +2135,47 @@ static DRIVER_INIT( toggle ) { expand_roms(machine, EXPAND_ALL); config_shoot static DRIVER_INIT( nametune ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_write8_handler(space, 0x9f00, 0x9f00, 0, 0, balsente_rombank2_select_w); + space->install_legacy_write_handler(0x9f00, 0x9f00, FUNC(balsente_rombank2_select_w)); expand_roms(machine, EXPAND_NONE | SWAP_HALVES); config_shooter_adc(machine, FALSE, 0 /* noanalog */); } static DRIVER_INIT( nstocker ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_write8_handler(space, 0x9f00, 0x9f00, 0, 0, balsente_rombank2_select_w); + space->install_legacy_write_handler(0x9f00, 0x9f00, FUNC(balsente_rombank2_select_w)); expand_roms(machine, EXPAND_NONE | SWAP_HALVES); config_shooter_adc(machine, TRUE, 1); } static DRIVER_INIT( sfootbal ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_write8_handler(space, 0x9f00, 0x9f00, 0, 0, balsente_rombank2_select_w); + space->install_legacy_write_handler(0x9f00, 0x9f00, FUNC(balsente_rombank2_select_w)); expand_roms(machine, EXPAND_ALL | SWAP_HALVES); config_shooter_adc(machine, FALSE, 0); } static DRIVER_INIT( spiker ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_readwrite8_handler(space, 0x9f80, 0x9f8f, 0, 0, spiker_expand_r, spiker_expand_w); - memory_install_write8_handler(space, 0x9f00, 0x9f00, 0, 0, balsente_rombank2_select_w); + space->install_legacy_readwrite_handler(0x9f80, 0x9f8f, FUNC(spiker_expand_r), FUNC(spiker_expand_w)); + space->install_legacy_write_handler(0x9f00, 0x9f00, FUNC(balsente_rombank2_select_w)); expand_roms(machine, EXPAND_ALL | SWAP_HALVES); config_shooter_adc(machine, FALSE, 1); } static DRIVER_INIT( stompin ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_write8_handler(space, 0x9f00, 0x9f00, 0, 0, balsente_rombank2_select_w); + space->install_legacy_write_handler(0x9f00, 0x9f00, FUNC(balsente_rombank2_select_w)); expand_roms(machine, 0x0c | SWAP_HALVES); config_shooter_adc(machine, FALSE, 32); } static DRIVER_INIT( rescraid ) { expand_roms(machine, EXPAND_NONE); config_shooter_adc(machine, FALSE, 0 /* noanalog */); } static DRIVER_INIT( grudge ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_read8_handler(space, 0x9400, 0x9400, 0, 0, grudge_steering_r); + space->install_legacy_read_handler(0x9400, 0x9400, FUNC(grudge_steering_r)); expand_roms(machine, EXPAND_NONE); config_shooter_adc(machine, FALSE, 0); } static DRIVER_INIT( shrike ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_readwrite8_handler(space, 0x9e00, 0x9fff, 0, 0, shrike_shared_6809_r, shrike_shared_6809_w); - memory_install_write8_handler(space, 0x9e01, 0x9e01, 0, 0, shrike_sprite_select_w ); - memory_install_readwrite16_handler(machine->device("68k")->memory().space(AS_PROGRAM), 0x10000, 0x1001f, 0, 0, shrike_io_68k_r, shrike_io_68k_w); + space->install_legacy_readwrite_handler(0x9e00, 0x9fff, FUNC(shrike_shared_6809_r), FUNC(shrike_shared_6809_w)); + space->install_legacy_write_handler(0x9e01, 0x9e01, FUNC(shrike_sprite_select_w) ); + machine->device("68k")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x10000, 0x1001f, FUNC(shrike_io_68k_r), FUNC(shrike_io_68k_w)); expand_roms(machine, EXPAND_ALL); config_shooter_adc(machine, FALSE, 32); } diff --git a/src/mame/drivers/berzerk.c b/src/mame/drivers/berzerk.c index 4f73d67f13e..41ca0e44afe 100644 --- a/src/mame/drivers/berzerk.c +++ b/src/mame/drivers/berzerk.c @@ -1210,8 +1210,8 @@ ROM_END static DRIVER_INIT( moonwarp ) { address_space *io = machine->device("maincpu")->memory().space(AS_IO); - memory_install_read8_handler (io, 0x48, 0x48, 0, 0, moonwarp_p1_r); - memory_install_read8_handler (io, 0x4a, 0x4a, 0, 0, moonwarp_p2_r); + io->install_legacy_read_handler (0x48, 0x48, FUNC(moonwarp_p1_r)); + io->install_legacy_read_handler (0x4a, 0x4a, FUNC(moonwarp_p2_r)); } /************************************* diff --git a/src/mame/drivers/btime.c b/src/mame/drivers/btime.c index d36c324e31f..f5d74c05f75 100644 --- a/src/mame/drivers/btime.c +++ b/src/mame/drivers/btime.c @@ -2176,7 +2176,7 @@ static DRIVER_INIT( cookrace ) btime_state *state = machine->driver_data(); decrypt_C10707_cpu(machine, "maincpu"); - memory_install_read_bank(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x0200, 0x0fff, 0, 0, "bank10"); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0200, 0x0fff, "bank10"); memory_set_bankptr(machine, "bank10", machine->region("audiocpu")->base() + 0xe200); state->audio_nmi_enable_type = AUDIO_ENABLE_DIRECT; } @@ -2193,9 +2193,9 @@ static DRIVER_INIT( wtennis ) btime_state *state = machine->driver_data(); decrypt_C10707_cpu(machine, "maincpu"); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc15f, 0xc15f, 0, 0, wtennis_reset_hack_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc15f, 0xc15f, FUNC(wtennis_reset_hack_r)); - memory_install_read_bank(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x0200, 0x0fff, 0, 0, "bank10"); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0200, 0x0fff, "bank10"); memory_set_bankptr(machine, "bank10", machine->region("audiocpu")->base() + 0xe200); state->audio_nmi_enable_type = AUDIO_ENABLE_AY8910; } diff --git a/src/mame/drivers/bublbobl.c b/src/mame/drivers/bublbobl.c index ae0cf426024..d675f681de0 100644 --- a/src/mame/drivers/bublbobl.c +++ b/src/mame/drivers/bublbobl.c @@ -1555,7 +1555,7 @@ static DRIVER_INIT( tokiob ) { DRIVER_INIT_CALL(tokio); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe00, 0xfe00, 0, 0, tokiob_mcu_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfe00, 0xfe00, FUNC(tokiob_mcu_r) ); } static DRIVER_INIT( dland ) diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c index ff63911bf82..4737ecaac13 100644 --- a/src/mame/drivers/bzone.c +++ b/src/mame/drivers/bzone.c @@ -798,11 +798,11 @@ static WRITE8_HANDLER( analog_select_w ) static DRIVER_INIT( bradley ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_install_ram(space, 0x400, 0x7ff, 0, 0, NULL); - memory_install_read_port(space, 0x1808, 0x1808, 0, 0, "1808"); - memory_install_read_port(space, 0x1809, 0x1809, 0, 0, "1809"); - memory_install_read8_handler(space, 0x180a, 0x180a, 0, 0, analog_data_r); - memory_install_write8_handler(space, 0x1848, 0x1850, 0, 0, analog_select_w); + space->install_ram(0x400, 0x7ff); + space->install_read_port(0x1808, 0x1808, "1808"); + space->install_read_port(0x1809, 0x1809, "1809"); + space->install_legacy_read_handler(0x180a, 0x180a, FUNC(analog_data_r)); + space->install_legacy_write_handler(0x1848, 0x1850, FUNC(analog_select_w)); } diff --git a/src/mame/drivers/cd32.c b/src/mame/drivers/cd32.c index 714b97dc600..0e097900e95 100644 --- a/src/mame/drivers/cd32.c +++ b/src/mame/drivers/cd32.c @@ -60,10 +60,10 @@ static WRITE32_HANDLER( aga_overlay_w ) /* swap the write handlers between ROM and bank 1 based on the bit */ if ((data & 1) == 0) /* overlay disabled, map RAM on 0x000000 */ - memory_install_write_bank(space, 0x000000, 0x1fffff, 0, 0, "bank1"); + space->install_write_bank(0x000000, 0x1fffff, "bank1"); else /* overlay enabled, map Amiga system ROM on 0x000000 */ - memory_unmap_write(space, 0x000000, 0x1fffff, 0, 0); + space->unmap_write(0x000000, 0x1fffff); } } diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c index db7e6b38068..3f179a9120c 100644 --- a/src/mame/drivers/centiped.c +++ b/src/mame/drivers/centiped.c @@ -1987,8 +1987,8 @@ static DRIVER_INIT( caterplr ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); device_t *device = machine->device("pokey"); - memory_install_readwrite8_device_handler(space, device, 0x1000, 0x100f, 0, 0, caterplr_AY8910_r, caterplr_AY8910_w); - memory_install_read8_device_handler(space, device, 0x1780, 0x1780, 0, 0, caterplr_rand_r); + space->install_legacy_readwrite_handler(*device, 0x1000, 0x100f, FUNC(caterplr_AY8910_r), FUNC(caterplr_AY8910_w)); + space->install_legacy_read_handler(*device, 0x1780, 0x1780, FUNC(caterplr_rand_r)); } @@ -1996,8 +1996,8 @@ static DRIVER_INIT( magworm ) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); device_t *device = machine->device("pokey"); - memory_install_write8_device_handler(space, device, 0x1001, 0x1001, 0, 0, ay8910_address_w); - memory_install_readwrite8_device_handler(space, device, 0x1003, 0x1003, 0, 0, ay8910_r, ay8910_data_w); + space->install_legacy_write_handler(*device, 0x1001, 0x1001, FUNC(ay8910_address_w)); + space->install_legacy_readwrite_handler(*device, 0x1003, 0x1003, FUNC(ay8910_r), FUNC(ay8910_data_w)); } diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c index f25c41fae84..19a85a8aa0f 100644 --- a/src/mame/drivers/cham24.c +++ b/src/mame/drivers/cham24.c @@ -304,7 +304,7 @@ static MACHINE_START( cham24 ) memcpy(&dst[0xc000], &src[0x0f8000], 0x4000); /* uses 8K swapping, all ROM!*/ - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank1"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank1"); memory_set_bankptr(machine, "bank1", machine->region("gfx1")->base()); /* need nametable ram, though. I doubt this uses more than 2k, but it starts up configured for 4 */ @@ -315,7 +315,7 @@ static MACHINE_START( cham24 ) state->nt_page[3] = state->nt_ram + 0xc00; /* and read/write handlers */ - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, nt_r, nt_w); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(nt_r), FUNC(nt_w)); } static DRIVER_INIT( cham24 ) diff --git a/src/mame/drivers/chqflag.c b/src/mame/drivers/chqflag.c index 28fadfc456a..d095d4ff698 100644 --- a/src/mame/drivers/chqflag.c +++ b/src/mame/drivers/chqflag.c @@ -55,19 +55,19 @@ static WRITE8_HANDLER( chqflag_bankswitch_w ) /* bit 5 = memory bank select */ if (data & 0x20) { - memory_install_read_bank(space, 0x1800, 0x1fff, 0, 0, "bank5"); - memory_install_write8_handler(space, 0x1800, 0x1fff, 0, 0, paletteram_xBBBBBGGGGGRRRRR_be_w); + space->install_read_bank(0x1800, 0x1fff, "bank5"); + space->install_legacy_write_handler(0x1800, 0x1fff, FUNC(paletteram_xBBBBBGGGGGRRRRR_be_w)); memory_set_bankptr(space->machine, "bank5", space->machine->generic.paletteram.v); if (state->k051316_readroms) - memory_install_readwrite8_device_handler(space, state->k051316_1, 0x1000, 0x17ff, 0, 0, k051316_rom_r, k051316_w); /* 051316 #1 (ROM test) */ + space->install_legacy_readwrite_handler(*state->k051316_1, 0x1000, 0x17ff, FUNC(k051316_rom_r), FUNC(k051316_w)); /* 051316 #1 (ROM test) */ else - memory_install_readwrite8_device_handler(space, state->k051316_1, 0x1000, 0x17ff, 0, 0, k051316_r, k051316_w); /* 051316 #1 */ + space->install_legacy_readwrite_handler(*state->k051316_1, 0x1000, 0x17ff, FUNC(k051316_r), FUNC(k051316_w)); /* 051316 #1 */ } else { - memory_install_readwrite_bank(space, 0x1000, 0x17ff, 0, 0, "bank1"); /* RAM */ - memory_install_readwrite_bank(space, 0x1800, 0x1fff, 0, 0, "bank2"); /* RAM */ + space->install_readwrite_bank(0x1000, 0x17ff, "bank1"); /* RAM */ + space->install_readwrite_bank(0x1800, 0x1fff, "bank2"); /* RAM */ } /* other bits unknown/unused */ @@ -85,9 +85,9 @@ static WRITE8_HANDLER( chqflag_vreg_w ) state->k051316_readroms = (data & 0x10); if (state->k051316_readroms) - memory_install_read8_device_handler(space, state->k051316_2, 0x2800, 0x2fff, 0, 0, k051316_rom_r); /* 051316 (ROM test) */ + space->install_legacy_read_handler(*state->k051316_2, 0x2800, 0x2fff, FUNC(k051316_rom_r)); /* 051316 (ROM test) */ else - memory_install_read8_device_handler(space, state->k051316_2, 0x2800, 0x2fff, 0, 0, k051316_r); /* 051316 */ + space->install_legacy_read_handler(*state->k051316_2, 0x2800, 0x2fff, FUNC(k051316_r)); /* 051316 */ /* Bits 3-7 probably control palette dimming in a similar way to TMNT2/Sunset Riders, */ /* however I don't have enough evidence to determine the exact behaviour. */ diff --git a/src/mame/drivers/cinemat.c b/src/mame/drivers/cinemat.c index d7f120d4230..6abaaa799d0 100644 --- a/src/mame/drivers/cinemat.c +++ b/src/mame/drivers/cinemat.c @@ -1460,35 +1460,35 @@ static DRIVER_INIT( speedfrk ) { cinemat_state *state = machine->driver_data(); state->gear = 0xe; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x03, 0, 0, speedfrk_wheel_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x06, 0, 0, speedfrk_gear_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x03, FUNC(speedfrk_wheel_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x04, 0x06, FUNC(speedfrk_gear_r)); } static DRIVER_INIT( sundance ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x0f, 0, 0, sundance_inputs_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x0f, FUNC(sundance_inputs_r)); } static DRIVER_INIT( tailg ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x07, 0x07, 0, 0, mux_select_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x07, 0x07, FUNC(mux_select_w)); } static DRIVER_INIT( boxingb ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0c, 0x0f, 0, 0, boxingb_dial_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x07, 0x07, 0, 0, mux_select_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x0c, 0x0f, FUNC(boxingb_dial_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x07, 0x07, FUNC(mux_select_w)); } static DRIVER_INIT( qb3 ) { cinemat_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0f, 0x0f, 0, 0, qb3_frame_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, qb3_ram_bank_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x0f, 0x0f, FUNC(qb3_frame_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x00, 0x00, FUNC(qb3_ram_bank_w)); memory_configure_bank(machine, "bank1", 0, 4, state->rambase, 0x100*2); } diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c index 5bba75f3724..32ee60d4bb3 100644 --- a/src/mame/drivers/cischeat.c +++ b/src/mame/drivers/cischeat.c @@ -2554,7 +2554,7 @@ ROM_END static DRIVER_INIT( wildplt ) { - memory_install_read16_handler(machine->device("cpu1")->memory().space(AS_PROGRAM), 0x080000, 0x087fff, 0, 0, wildplt_vregs_r ); + machine->device("cpu1")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x080000, 0x087fff, FUNC(wildplt_vregs_r) ); DRIVER_INIT_CALL(f1gpstar); } diff --git a/src/mame/drivers/cninja.c b/src/mame/drivers/cninja.c index 6e2ab0fa66e..f37330361c5 100644 --- a/src/mame/drivers/cninja.c +++ b/src/mame/drivers/cninja.c @@ -2032,13 +2032,13 @@ static void cninja_patch( running_machine *machine ) static DRIVER_INIT( cninja ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1bc0a8, 0x1bc0a9, 0, 0, cninja_sound_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1bc0a8, 0x1bc0a9, FUNC(cninja_sound_w)); cninja_patch(machine); } static DRIVER_INIT( stoneage ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1bc0a8, 0x1bc0a9, 0, 0, stoneage_sound_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1bc0a8, 0x1bc0a9, FUNC(stoneage_sound_w)); } static DRIVER_INIT( mutantf ) diff --git a/src/mame/drivers/cojag.c b/src/mame/drivers/cojag.c index 5857847dc30..8a905906b02 100644 --- a/src/mame/drivers/cojag.c +++ b/src/mame/drivers/cojag.c @@ -1536,10 +1536,10 @@ static void cojag_common_init(running_machine *machine, UINT16 gpu_jump_offs, UI /* install synchronization hooks for GPU */ if (cojag_is_r3000) - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x04f0b000 + gpu_jump_offs, 0x04f0b003 + gpu_jump_offs, 0, 0, gpu_jump_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x04f0b000 + gpu_jump_offs, 0x04f0b003 + gpu_jump_offs, FUNC(gpu_jump_w)); else - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0b000 + gpu_jump_offs, 0xf0b003 + gpu_jump_offs, 0, 0, gpu_jump_w); - memory_install_read32_handler(machine->device("gpu")->memory().space(AS_PROGRAM), 0xf03000 + gpu_jump_offs, 0xf03003 + gpu_jump_offs, 0, 0, gpu_jump_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf0b000 + gpu_jump_offs, 0xf0b003 + gpu_jump_offs, FUNC(gpu_jump_w)); + machine->device("gpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf03000 + gpu_jump_offs, 0xf03003 + gpu_jump_offs, FUNC(gpu_jump_r)); state->gpu_jump_address = &jaguar_gpu_ram[gpu_jump_offs/4]; state->gpu_spin_pc = 0xf03000 + spin_pc; @@ -1555,7 +1555,7 @@ static DRIVER_INIT( area51a ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ - state->main_speedup = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa02030, 0xa02033, 0, 0, area51_main_speedup_w); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa02030, 0xa02033, FUNC(area51_main_speedup_w)); #endif } @@ -1568,7 +1568,7 @@ static DRIVER_INIT( area51 ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ state->main_speedup_max_cycles = 120; - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100062e8, 0x100062eb, 0, 0, cojagr3k_main_speedup_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x100062e8, 0x100062eb, FUNC(cojagr3k_main_speedup_r)); #endif } @@ -1583,7 +1583,7 @@ static DRIVER_INIT( maxforce ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ state->main_speedup_max_cycles = 120; - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1000865c, 0x1000865f, 0, 0, cojagr3k_main_speedup_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1000865c, 0x1000865f, FUNC(cojagr3k_main_speedup_r)); #endif } @@ -1598,7 +1598,7 @@ static DRIVER_INIT( area51mx ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ - state->main_speedup = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa19550, 0xa19557, 0, 0, area51mx_main_speedup_w); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa19550, 0xa19557, FUNC(area51mx_main_speedup_w)); #endif } @@ -1614,7 +1614,7 @@ static DRIVER_INIT( a51mxr3k ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ state->main_speedup_max_cycles = 120; - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x10006f0c, 0x10006f0f, 0, 0, cojagr3k_main_speedup_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x10006f0c, 0x10006f0f, FUNC(cojagr3k_main_speedup_r)); #endif } @@ -1627,7 +1627,7 @@ static DRIVER_INIT( fishfren ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ state->main_speedup_max_cycles = 200; - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x10021b60, 0x10021b63, 0, 0, cojagr3k_main_speedup_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x10021b60, 0x10021b63, FUNC(cojagr3k_main_speedup_r)); #endif } @@ -1641,8 +1641,8 @@ static void init_freeze_common(running_machine *machine, offs_t main_speedup_add /* install speedup for main CPU */ state->main_speedup_max_cycles = 200; if (main_speedup_addr != 0) - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), main_speedup_addr, main_speedup_addr + 3, 0, 0, cojagr3k_main_speedup_r); - state->main_gpu_wait = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0400d900, 0x0400d900 + 3, 0, 0, main_gpu_wait_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(main_speedup_addr, main_speedup_addr + 3, FUNC(cojagr3k_main_speedup_r)); + state->main_gpu_wait = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0400d900, 0x0400d900 + 3, FUNC(main_gpu_wait_r)); #endif } @@ -1662,7 +1662,7 @@ static DRIVER_INIT( vcircle ) #if ENABLE_SPEEDUP_HACKS /* install speedup for main CPU */ state->main_speedup_max_cycles = 50; - state->main_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x12005b34, 0x12005b37, 0, 0, cojagr3k_main_speedup_r); + state->main_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x12005b34, 0x12005b37, FUNC(cojagr3k_main_speedup_r)); #endif } diff --git a/src/mame/drivers/combatsc.c b/src/mame/drivers/combatsc.c index c589ce6eac2..829c007a706 100644 --- a/src/mame/drivers/combatsc.c +++ b/src/mame/drivers/combatsc.c @@ -251,13 +251,13 @@ static WRITE8_HANDLER( combatscb_bankselect_w ) if (data == 0x1f) { memory_set_bank(space->machine, "bank1", 8 + (data & 1)); - memory_install_write8_handler(space, 0x4000, 0x7fff, 0, 0, combatscb_io_w); - memory_install_read8_handler(space, 0x4400, 0x4403, 0, 0, combatscb_io_r);/* IO RAM & Video Registers */ + space->install_legacy_write_handler(0x4000, 0x7fff, FUNC(combatscb_io_w)); + space->install_legacy_read_handler(0x4400, 0x4403, FUNC(combatscb_io_r));/* IO RAM & Video Registers */ } else { - memory_install_read_bank(space, 0x4000, 0x7fff, 0, 0, "bank1"); /* banked ROM */ - memory_unmap_write(space, 0x4000, 0x7fff, 0, 0); /* banked ROM */ + space->install_read_bank(0x4000, 0x7fff, "bank1"); /* banked ROM */ + space->unmap_write(0x4000, 0x7fff); /* banked ROM */ } } } @@ -995,7 +995,7 @@ ROM_END static DRIVER_INIT( combatsc ) { /* joystick instead of trackball */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0404, 0x0404, 0, 0, "IN1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x0404, 0x0404, "IN1"); } diff --git a/src/mame/drivers/coolpool.c b/src/mame/drivers/coolpool.c index cada2eff3e4..9d4630e3558 100644 --- a/src/mame/drivers/coolpool.c +++ b/src/mame/drivers/coolpool.c @@ -1200,7 +1200,7 @@ static DRIVER_INIT( amerdart ) static DRIVER_INIT( coolpool ) { - memory_install_read16_handler(machine->device("dsp")->memory().space(AS_IO), 0x07, 0x07, 0, 0, coolpool_input_r); + machine->device("dsp")->memory().space(AS_IO)->install_legacy_read_handler(0x07, 0x07, FUNC(coolpool_input_r)); register_state_save(machine); } diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c index b20808f580b..c4d0f2b14c5 100644 --- a/src/mame/drivers/coolridr.c +++ b/src/mame/drivers/coolridr.c @@ -1187,8 +1187,8 @@ static READ32_HANDLER( coolridr_hack2_r ) static DRIVER_INIT( coolridr ) { -// memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60d88a4, 0x060d88a7, 0, 0, coolridr_hack1_r ); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60d8894, 0x060d8897, 0, 0, coolridr_hack2_r ); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60d88a4, 0x060d88a7, FUNC(coolridr_hack1_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60d8894, 0x060d8897, FUNC(coolridr_hack2_r) ); } GAME( 1995, coolridr, 0, coolridr, coolridr, coolridr, ROT0, "Sega", "Cool Riders (US)",GAME_NOT_WORKING|GAME_NO_SOUND ) diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c index 9119718db4b..3fc698cd07a 100644 --- a/src/mame/drivers/cosmic.c +++ b/src/mame/drivers/cosmic.c @@ -1596,17 +1596,17 @@ static DRIVER_INIT( cosmica ) static DRIVER_INIT( devzone ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4807, 0x4807, 0, 0, cosmic_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4807, 0x4807, FUNC(cosmic_background_enable_w)); } static DRIVER_INIT( nomnlnd ) { device_t *dac = machine->device("dac"); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x5001, 0, 0, nomnlnd_port_0_1_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4800, 0x4800, 0, 0); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4807, 0x4807, 0, 0, cosmic_background_enable_w); - memory_install_write8_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), dac, 0x480a, 0x480a, 0, 0, dac_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5000, 0x5001, FUNC(nomnlnd_port_0_1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x4800, 0x4800); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4807, 0x4807, FUNC(cosmic_background_enable_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*dac, 0x480a, 0x480a, FUNC(dac_w)); } static DRIVER_INIT( panic ) diff --git a/src/mame/drivers/cps1.c b/src/mame/drivers/cps1.c index 3df7a9279f4..95fd98c71a2 100644 --- a/src/mame/drivers/cps1.c +++ b/src/mame/drivers/cps1.c @@ -9965,10 +9965,10 @@ static DRIVER_INIT( forgottn ) /* Forgotten Worlds has a NEC uPD4701AC on the B-board handling dial inputs from the CN-MOWS connector. */ /* The memory mapping is handled by PAL LWIO */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800040, 0x800041, 0, 0, forgottn_dial_0_reset_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800048, 0x800049, 0, 0, forgottn_dial_1_reset_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800052, 0x800055, 0, 0, forgottn_dial_0_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80005a, 0x80005d, 0, 0, forgottn_dial_1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x800040, 0x800041, FUNC(forgottn_dial_0_reset_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x800048, 0x800049, FUNC(forgottn_dial_1_reset_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x800052, 0x800055, FUNC(forgottn_dial_0_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80005a, 0x80005d, FUNC(forgottn_dial_1_r)); state->save_item(NAME(state->dial)); @@ -9982,8 +9982,8 @@ static DRIVER_INIT( sf2ee ) { /* This specific revision of SF2 has the CPS-B custom mapped at a different address. */ /* The mapping is handled by the PAL IOB2 on the B-board */ - memory_unmap_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800140, 0x80017f, 0, 0); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8001c0, 0x8001ff, 0, 0, cps1_cps_b_r, cps1_cps_b_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_readwrite(0x800140, 0x80017f); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8001c0, 0x8001ff, FUNC(cps1_cps_b_r), FUNC(cps1_cps_b_w)); DRIVER_INIT_CALL(cps1); } @@ -9991,7 +9991,7 @@ static DRIVER_INIT( sf2ee ) static DRIVER_INIT( sf2thndr ) { /* This particular hack uses a modified B-board PAL which mirrors the CPS-B registers at an alternate address */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8001c0, 0x8001ff, 0, 0, cps1_cps_b_r, cps1_cps_b_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8001c0, 0x8001ff, FUNC(cps1_cps_b_r), FUNC(cps1_cps_b_w)); DRIVER_INIT_CALL(cps1); } @@ -9999,7 +9999,7 @@ static DRIVER_INIT( sf2thndr ) static DRIVER_INIT( sf2hack ) { /* some SF2 hacks have some inputs wired to the LSB instead of MSB */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800018, 0x80001f, 0, 0, cps1_hack_dsw_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x800018, 0x80001f, FUNC(cps1_hack_dsw_r)); DRIVER_INIT_CALL(cps1); } @@ -10032,7 +10032,7 @@ static DRIVER_INIT( pang3n ) { /* Pang 3 is the only non-QSound game to have an EEPROM. */ /* It is mapped in the CPS-B address range so probably is on the C-board. */ - memory_install_readwrite_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80017a, 0x80017b, 0, 0, "EEPROMIN", "EEPROMOUT"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_port(0x80017a, 0x80017b, "EEPROMIN", "EEPROMOUT"); DRIVER_INIT_CALL(cps1); } @@ -10083,11 +10083,11 @@ static DRIVER_INIT( sf2mdt ) rom[i + 3] = rom[i + 6]; rom[i + 6] = tmp; } - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x70c01a, 0x70c01b, 0, 0, sf2mdt_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x70c01c, 0x70c01d, 0, 0, sf2mdt_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x70c01e, 0x70c01f, 0, 0, sf2mdt_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x70c010, 0x70c011, 0, 0, sf2mdt_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x70c018, 0x70c019, 0, 0, sf2mdt_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x70c01a, 0x70c01b, FUNC(sf2mdt_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x70c01c, 0x70c01d, FUNC(sf2mdt_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x70c01e, 0x70c01f, FUNC(sf2mdt_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x70c010, 0x70c011, FUNC(sf2mdt_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x70c018, 0x70c019, FUNC(sf2mdt_r)); DRIVER_INIT_CALL(cps1); } @@ -10095,7 +10095,7 @@ static DRIVER_INIT( sf2mdt ) static DRIVER_INIT( dinohunt ) { // is this shared with the new sound hw? - UINT8* ram = (UINT8*)memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf18000, 0xf19fff, 0, 0, 0); + UINT8* ram = (UINT8*)machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0xf18000, 0xf19fff); memset(ram,0xff,0x2000); DRIVER_INIT_CALL(cps1); } diff --git a/src/mame/drivers/cps2.c b/src/mame/drivers/cps2.c index 7066e83a2bc..61f1612e4fd 100644 --- a/src/mame/drivers/cps2.c +++ b/src/mame/drivers/cps2.c @@ -8012,7 +8012,7 @@ static DRIVER_INIT ( pzloop2 ) state->save_item(NAME(state->readpaddle)); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x804000, 0x804001, 0, 0, joy_or_paddle_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x804000, 0x804001, FUNC(joy_or_paddle_r)); } static READ16_HANDLER( gigamn2_dummyqsound_r ) @@ -8039,7 +8039,7 @@ static DRIVER_INIT( gigamn2 ) state->gigamn2_dummyqsound_ram = auto_alloc_array(machine, UINT16, 0x20000 / 2); state->save_pointer(NAME(state->gigamn2_dummyqsound_ram), 0x20000 / 2); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x618000, 0x619fff, 0, 0, gigamn2_dummyqsound_r, gigamn2_dummyqsound_w); // no qsound.. + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x618000, 0x619fff, FUNC(gigamn2_dummyqsound_r), FUNC(gigamn2_dummyqsound_w)); // no qsound.. space->set_decrypted_region(0x000000, (length) - 1, &rom[length/4]); m68k_set_encrypted_opcode_range(machine->device("maincpu"), 0, length); } diff --git a/src/mame/drivers/crgolf.c b/src/mame/drivers/crgolf.c index cbd8313aa04..cc0648e98b3 100644 --- a/src/mame/drivers/crgolf.c +++ b/src/mame/drivers/crgolf.c @@ -600,7 +600,7 @@ ROM_END static DRIVER_INIT( crgolfhi ) { device_t *msm = machine->device("msm"); - memory_install_write8_device_handler(machine->device("audiocpu")->memory().space(AS_PROGRAM), msm, 0xa000, 0xa003, 0, 0, crgolfhi_sample_w); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*msm, 0xa000, 0xa003, FUNC(crgolfhi_sample_w)); } diff --git a/src/mame/drivers/crimfght.c b/src/mame/drivers/crimfght.c index b771d755a7e..24759bfafbc 100644 --- a/src/mame/drivers/crimfght.c +++ b/src/mame/drivers/crimfght.c @@ -410,12 +410,12 @@ static KONAMI_SETLINES_CALLBACK( crimfght_banking ) /* bit 5 = select work RAM or palette */ if (lines & 0x20) { - memory_install_read_bank(device->memory().space(AS_PROGRAM), 0x0000, 0x03ff, 0, 0, "bank3"); - memory_install_write8_handler(device->memory().space(AS_PROGRAM), 0x0000, 0x03ff, 0, 0, paletteram_xBBBBBGGGGGRRRRR_be_w); + device->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x03ff, "bank3"); + device->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0000, 0x03ff, FUNC(paletteram_xBBBBBGGGGGRRRRR_be_w)); memory_set_bankptr(device->machine, "bank3", device->machine->generic.paletteram.v); } else - memory_install_readwrite_bank(device->memory().space(AS_PROGRAM), 0x0000, 0x03ff, 0, 0, "bank1"); /* RAM */ + device->memory().space(AS_PROGRAM)->install_readwrite_bank(0x0000, 0x03ff, "bank1"); /* RAM */ /* bit 6 = enable char ROM reading through the video RAM */ k052109_set_rmrd_line(state->k052109, (lines & 0x40) ? ASSERT_LINE : CLEAR_LINE); diff --git a/src/mame/drivers/dassault.c b/src/mame/drivers/dassault.c index e22940bbbc6..5f03dce4651 100644 --- a/src/mame/drivers/dassault.c +++ b/src/mame/drivers/dassault.c @@ -865,7 +865,7 @@ static DRIVER_INIT( dassault ) auto_free(machine, tmp); /* Save time waiting on vblank bit */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3f8000, 0x3f8001, 0, 0, dassault_main_skip); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3f8000, 0x3f8001, FUNC(dassault_main_skip)); } static DRIVER_INIT( thndzone ) @@ -885,7 +885,7 @@ static DRIVER_INIT( thndzone ) auto_free(machine, tmp); /* Save time waiting on vblank bit */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3f8000, 0x3f8001, 0, 0, thndzone_main_skip); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3f8000, 0x3f8001, FUNC(thndzone_main_skip)); } /**********************************************************************************/ diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c index 0026993140c..5bc0eecb8d3 100644 --- a/src/mame/drivers/ddealer.c +++ b/src/mame/drivers/ddealer.c @@ -671,7 +671,7 @@ static READ16_HANDLER( ddealer_mcu_r ) static DRIVER_INIT( ddealer ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe01c, 0xfe01d, 0, 0, ddealer_mcu_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfe01c, 0xfe01d, FUNC(ddealer_mcu_r) ); } ROM_START( ddealer ) diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c index 62849709a28..c052a7466c1 100644 --- a/src/mame/drivers/ddenlovr.c +++ b/src/mame/drivers/ddenlovr.c @@ -9107,7 +9107,7 @@ static DRIVER_INIT( rongrong ) version of the game might be a bootleg with the protection patched. (both sets need this) */ - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60d4, 0x60d4, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x60d4, 0x60d4); } /*************************************************************************** diff --git a/src/mame/drivers/ddragon.c b/src/mame/drivers/ddragon.c index f70c6df1594..cafa1a2e722 100644 --- a/src/mame/drivers/ddragon.c +++ b/src/mame/drivers/ddragon.c @@ -285,9 +285,9 @@ static WRITE8_HANDLER( darktowr_bankswitch_w ) memory_set_bank(space->machine, "bank1", newbank); if (newbank == 4 && oldbank != 4) - memory_install_readwrite8_handler(space, 0x4000, 0x7fff, 0, 0, darktowr_mcu_bank_r, darktowr_mcu_bank_w); + space->install_legacy_readwrite_handler(0x4000, 0x7fff, FUNC(darktowr_mcu_bank_r), FUNC(darktowr_mcu_bank_w)); else if (newbank != 4 && oldbank == 4) - memory_install_readwrite_bank(space, 0x4000, 0x7fff, 0, 0, "bank1"); + space->install_readwrite_bank(0x4000, 0x7fff, "bank1"); } @@ -2021,7 +2021,7 @@ static DRIVER_INIT( darktowr ) state->sound_irq = M6809_IRQ_LINE; state->ym_irq = M6809_FIRQ_LINE; state->technos_video_hw = 0; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3808, 0x3808, 0, 0, darktowr_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x3808, 0x3808, FUNC(darktowr_bankswitch_w)); } @@ -2034,7 +2034,7 @@ static DRIVER_INIT( toffy ) state->sound_irq = M6809_IRQ_LINE; state->ym_irq = M6809_FIRQ_LINE; state->technos_video_hw = 0; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3808, 0x3808, 0, 0, toffy_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x3808, 0x3808, FUNC(toffy_bankswitch_w)); /* the program rom has a simple bitswap encryption */ rom = machine->region("maincpu")->base(); diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c index 0279bfa8f3b..de4b987e72c 100644 --- a/src/mame/drivers/deadang.c +++ b/src/mame/drivers/deadang.c @@ -403,8 +403,8 @@ static DRIVER_INIT( ghunter ) seibu_sound_decrypt(machine, "audiocpu", 0x2000); seibu_adpcm_decrypt(machine, "adpcm"); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80000, 0x80001, 0, 0, ghunter_trackball_low_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb0000, 0xb0001, 0, 0, ghunter_trackball_high_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80000, 0x80001, FUNC(ghunter_trackball_low_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xb0000, 0xb0001, FUNC(ghunter_trackball_high_r)); } /* Game Drivers */ diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c index 946d6f4da46..4e197d72fd6 100644 --- a/src/mame/drivers/dec0.c +++ b/src/mame/drivers/dec0.c @@ -423,30 +423,30 @@ void slyspy_set_protection_map(running_machine* machine, int type) deco_bac06_device *tilegen1 = (deco_bac06_device*)space->machine->device("tilegen1"); deco_bac06_device *tilegen2 = (deco_bac06_device*)space->machine->device("tilegen2"); - memory_install_write16_handler( space, 0x240000, 0x24ffff, 0, 0, unmapped_w); + space->install_legacy_write_handler( 0x240000, 0x24ffff, FUNC(unmapped_w)); - memory_install_write16_handler( space, 0x24a000, 0x24a001, 0, 0, slyspy_state_w); - memory_install_read16_handler( space, 0x244000, 0x244001, 0, 0, slyspy_state_r); + space->install_legacy_write_handler( 0x24a000, 0x24a001, FUNC(slyspy_state_w)); + space->install_legacy_read_handler( 0x244000, 0x244001, FUNC(slyspy_state_r)); switch (type) { case 0: - memory_install_write16_device_handler( space, tilegen2, 0x240000, 0x240007, 0, 0, deco_bac06_pf_control_0_w); - memory_install_write16_device_handler( space, tilegen2, 0x240010, 0x240017, 0, 0, deco_bac06_pf_control_1_w); + space->install_legacy_write_handler( *tilegen2, 0x240000, 0x240007, FUNC(deco_bac06_pf_control_0_w)); + space->install_legacy_write_handler( *tilegen2, 0x240010, 0x240017, FUNC(deco_bac06_pf_control_1_w)); - memory_install_write16_device_handler( space, tilegen2, 0x242000, 0x24207f, 0, 0, deco_bac06_pf_colscroll_w); - memory_install_write16_device_handler( space, tilegen2, 0x242400, 0x2427ff, 0, 0, deco_bac06_pf_rowscroll_w); + space->install_legacy_write_handler( *tilegen2, 0x242000, 0x24207f, FUNC(deco_bac06_pf_colscroll_w)); + space->install_legacy_write_handler( *tilegen2, 0x242400, 0x2427ff, FUNC(deco_bac06_pf_rowscroll_w)); - memory_install_write16_device_handler( space, tilegen2, 0x246000, 0x247fff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen2, 0x246000, 0x247fff, FUNC(deco_bac06_pf_data_w)); - memory_install_write16_device_handler( space, tilegen1, 0x248000, 0x280007, 0, 0, deco_bac06_pf_control_0_w); - memory_install_write16_device_handler( space, tilegen1, 0x248010, 0x280017, 0, 0, deco_bac06_pf_control_1_w); + space->install_legacy_write_handler( *tilegen1, 0x248000, 0x280007, FUNC(deco_bac06_pf_control_0_w)); + space->install_legacy_write_handler( *tilegen1, 0x248010, 0x280017, FUNC(deco_bac06_pf_control_1_w)); - memory_install_write16_device_handler( space, tilegen1, 0x24c000, 0x24c07f, 0, 0, deco_bac06_pf_colscroll_w); - memory_install_write16_device_handler( space, tilegen1, 0x24c400, 0x24c7ff, 0, 0, deco_bac06_pf_rowscroll_w); + space->install_legacy_write_handler( *tilegen1, 0x24c000, 0x24c07f, FUNC(deco_bac06_pf_colscroll_w)); + space->install_legacy_write_handler( *tilegen1, 0x24c400, 0x24c7ff, FUNC(deco_bac06_pf_rowscroll_w)); - memory_install_write16_device_handler( space, tilegen1, 0x24e000, 0x24ffff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen1, 0x24e000, 0x24ffff, FUNC(deco_bac06_pf_data_w)); break; @@ -454,26 +454,26 @@ void slyspy_set_protection_map(running_machine* machine, int type) // 0x240000 - 0x241fff not mapped // 0x242000 - 0x243fff not mapped // 0x246000 - 0x247fff not mapped - memory_install_write16_device_handler( space, tilegen1, 0x248000, 0x249fff, 0, 0, deco_bac06_pf_data_w); - memory_install_write16_device_handler( space, tilegen2, 0x24c000, 0x24dfff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen1, 0x248000, 0x249fff, FUNC(deco_bac06_pf_data_w)); + space->install_legacy_write_handler( *tilegen2, 0x24c000, 0x24dfff, FUNC(deco_bac06_pf_data_w)); // 0x24e000 - 0x24ffff not mapped break; case 2: - memory_install_write16_device_handler( space, tilegen2, 0x240000, 0x241fff, 0, 0, deco_bac06_pf_data_w); - memory_install_write16_device_handler( space, tilegen1, 0x242000, 0x243fff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen2, 0x240000, 0x241fff, FUNC(deco_bac06_pf_data_w)); + space->install_legacy_write_handler( *tilegen1, 0x242000, 0x243fff, FUNC(deco_bac06_pf_data_w)); // 0x242000 - 0x243fff not mapped // 0x246000 - 0x247fff not mapped // 0x248000 - 0x249fff not mapped // 0x24c000 - 0x24dfff not mapped - memory_install_write16_device_handler( space, tilegen1, 0x24e000, 0x24ffff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen1, 0x24e000, 0x24ffff, FUNC(deco_bac06_pf_data_w)); break; case 3: - memory_install_write16_device_handler( space, tilegen1, 0x240000, 0x241fff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen1, 0x240000, 0x241fff, FUNC(deco_bac06_pf_data_w)); // 0x242000 - 0x243fff not mapped // 0x246000 - 0x247fff not mapped - memory_install_write16_device_handler( space, tilegen2, 0x248000, 0x249fff, 0, 0, deco_bac06_pf_data_w); + space->install_legacy_write_handler( *tilegen2, 0x248000, 0x249fff, FUNC(deco_bac06_pf_data_w)); // 0x24c000 - 0x24dfff not mapped // 0x24e000 - 0x24ffff not mapped break; @@ -2922,10 +2922,10 @@ static DRIVER_INIT( convert_robocop_gfx4_to_automat ) static DRIVER_INIT( midresb ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00180000, 0x0018000f, 0, 0, dec0_controls_r ); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x001a0000, 0x001a000f, 0, 0, dec0_rotary_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00180000, 0x0018000f, FUNC(dec0_controls_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x001a0000, 0x001a000f, FUNC(dec0_rotary_r) ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00180014, 0x00180015, 0, 0, midres_sound_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00180014, 0x00180015, FUNC(midres_sound_w) ); } /******************************************************************************/ diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c index 3ea800f2e31..ec68d51e8ef 100644 --- a/src/mame/drivers/deco_mlc.c +++ b/src/mame/drivers/deco_mlc.c @@ -745,7 +745,7 @@ static DRIVER_INIT( avengrgs ) sh2drc_add_pcflush(machine->device("maincpu"), 0x32dc); state->mainCpuIsArm = 0; - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01089a0, 0x01089a3, 0, 0, avengrgs_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01089a0, 0x01089a3, FUNC(avengrgs_speedup_r) ); descramble_sound(machine); } diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c index e088c429f8f..1a304888461 100644 --- a/src/mame/drivers/decocass.c +++ b/src/mame/drivers/decocass.c @@ -1363,8 +1363,8 @@ static DRIVER_INIT( decocrom ) state->decrypted2[i] = swap_bits_5_6(rom[i]); /* convert charram to a banked ROM */ - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0xafff, 0, 0, "bank1"); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0xafff, 0, 0, decocass_de0091_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x6000, 0xafff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6000, 0xafff, FUNC(decocass_de0091_w)); memory_configure_bank(machine, "bank1", 0, 1, state->charram, 0); memory_configure_bank(machine, "bank1", 1, 1, machine->region("user3")->base(), 0); memory_configure_bank_decrypted(machine, "bank1", 0, 1, &state->decrypted[0x6000], 0); @@ -1372,7 +1372,7 @@ static DRIVER_INIT( decocrom ) memory_set_bank(machine, "bank1", 0); /* install the bank selector */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe900, 0xe900, 0, 0, decocass_e900_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe900, 0xe900, FUNC(decocass_e900_w)); state->save_pointer(NAME(state->decrypted2), romlength); } diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c index 8a04e3635bb..dca7df67e7f 100644 --- a/src/mame/drivers/dgpix.c +++ b/src/mame/drivers/dgpix.c @@ -583,7 +583,7 @@ static DRIVER_INIT( xfiles ) rom[BYTE4_XOR_BE(0x3aa933)] = 0; // protection related ? -// memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c8b440, 0xf0c8b447, 0, 0); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0xf0c8b440, 0xf0c8b447); state->flash_roms = 2; } @@ -604,7 +604,7 @@ static DRIVER_INIT( kdynastg ) rom[BYTE4_XOR_BE(0x3a45c9)] = 0; // protection related ? -// memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x12341234, 0x12341243, 0, 0); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x12341234, 0x12341243); state->flash_roms = 4; } diff --git a/src/mame/drivers/dkong.c b/src/mame/drivers/dkong.c index 9fd39e8b14f..219f774d20b 100644 --- a/src/mame/drivers/dkong.c +++ b/src/mame/drivers/dkong.c @@ -3040,7 +3040,7 @@ static DRIVER_INIT( drakton ) {7,1,4,0,3,6,2,5}, }; - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1" ); /* While the PAL supports up to 16 decryption methods, only four are actually used in the PAL. Therefore, we'll take a little @@ -3062,7 +3062,7 @@ static DRIVER_INIT( strtheat ) {6,3,4,1,0,7,2,5}, }; - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1" ); /* While the PAL supports up to 16 decryption methods, only four are actually used in the PAL. Therefore, we'll take a little @@ -3073,8 +3073,8 @@ static DRIVER_INIT( strtheat ) drakton_decrypt_rom(machine, 0x88, 0x1c000, bs[3]); /* custom handlers supporting Joystick or Steering Wheel */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7c00, 0x7c00, 0, 0, strtheat_inputport_0_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7c80, 0x7c80, 0, 0, strtheat_inputport_1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7c00, 0x7c00, FUNC(strtheat_inputport_0_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7c80, 0x7c80, FUNC(strtheat_inputport_1_r)); } @@ -3086,13 +3086,13 @@ static DRIVER_INIT( dkongx ) decrypted = auto_alloc_array(machine, UINT8, 0x10000); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x5fff, 0, 0, "bank1" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x5fff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0xffff, "bank2" ); - memory_install_write8_handler(space, 0xe000, 0xe000, 0, 0, braze_a15_w); + space->install_legacy_write_handler(0xe000, 0xe000, FUNC(braze_a15_w)); - memory_install_read8_device_handler(space, eeprom, 0xc800, 0xc800, 0, 0, braze_eeprom_r); - memory_install_write8_device_handler(space, eeprom, 0xc800, 0xc800, 0, 0, braze_eeprom_w); + space->install_legacy_read_handler(*eeprom, 0xc800, 0xc800, FUNC(braze_eeprom_r)); + space->install_legacy_write_handler(*eeprom, 0xc800, 0xc800, FUNC(braze_eeprom_w)); braze_decrypt_rom(machine, decrypted); diff --git a/src/mame/drivers/dynax.c b/src/mame/drivers/dynax.c index 112c63d8075..cd0d50ed07e 100644 --- a/src/mame/drivers/dynax.c +++ b/src/mame/drivers/dynax.c @@ -6517,7 +6517,7 @@ ROM_END static DRIVER_INIT( mjreach ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x10060, 0x10060, 0, 0, yarunara_flipscreen_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x10060, 0x10060, FUNC(yarunara_flipscreen_w)); } /*************************************************************************** diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c index a15609e0ad8..0fc2c970b48 100644 --- a/src/mame/drivers/eolith.c +++ b/src/mame/drivers/eolith.c @@ -1138,15 +1138,15 @@ static DRIVER_INIT( hidctch2 ) static DRIVER_INIT( hidctch3 ) { - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfc200000, 0xfc200003, 0, 0); // this generates pens vibration + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xfc200000, 0xfc200003); // this generates pens vibration // It is not clear why the first reads are needed too - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfce00000, 0xfce00003, 0, 0, hidctch3_pen1_r); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfce80000, 0xfce80003, 0, 0, hidctch3_pen1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfce00000, 0xfce00003, FUNC(hidctch3_pen1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfce80000, 0xfce80003, FUNC(hidctch3_pen1_r)); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfcf00000, 0xfcf00003, 0, 0, hidctch3_pen2_r); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfcf80000, 0xfcf80003, 0, 0, hidctch3_pen2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfcf00000, 0xfcf00003, FUNC(hidctch3_pen2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfcf80000, 0xfcf80003, FUNC(hidctch3_pen2_r)); init_eolith_speedup(machine); } diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c index c462a39418f..0724d9c628e 100644 --- a/src/mame/drivers/eprom.c +++ b/src/mame/drivers/eprom.c @@ -730,8 +730,8 @@ static DRIVER_INIT( eprom ) atarijsa_init(machine, "260010", 0x0002); /* install CPU synchronization handlers */ - state->sync_data = memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x16cc00, 0x16cc01, 0, 0, sync_r, sync_w); - state->sync_data = memory_install_readwrite16_handler(machine->device("extra")->memory().space(AS_PROGRAM), 0x16cc00, 0x16cc01, 0, 0, sync_r, sync_w); + state->sync_data = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x16cc00, 0x16cc01, FUNC(sync_r), FUNC(sync_w)); + state->sync_data = machine->device("extra")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x16cc00, 0x16cc01, FUNC(sync_r), FUNC(sync_w)); } diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c index 779f1dff8af..4c35836572d 100644 --- a/src/mame/drivers/equites.c +++ b/src/mame/drivers/equites.c @@ -1899,8 +1899,8 @@ static DRIVER_INIT( gekisou ) unpack_region(machine, "gfx3"); // install special handlers for unknown device (protection?) - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x580000, 0x580001, 0, 0, gekisou_unknown_0_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5a0000, 0x5a0001, 0, 0, gekisou_unknown_1_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x580000, 0x580001, FUNC(gekisou_unknown_0_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x5a0000, 0x5a0001, FUNC(gekisou_unknown_1_w)); } static DRIVER_INIT( splndrbt ) @@ -1913,7 +1913,7 @@ static DRIVER_INIT( hvoltage ) unpack_region(machine, "gfx3"); #if HVOLTAGE_DEBUG - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000038, 0x000039, 0, 0, hvoltage_debug_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x000038, 0x000039, FUNC(hvoltage_debug_r)); #endif } diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c index 1922c986071..ac8668fb0b8 100644 --- a/src/mame/drivers/exidy.c +++ b/src/mame/drivers/exidy.c @@ -1439,7 +1439,7 @@ static DRIVER_INIT( phantoma ) state->color_latch[0] = 0x09; /* the ROM is actually mapped high */ - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf800, 0xffff, 0, 0, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xf800, 0xffff, "bank1"); memory_set_bankptr(machine, "bank1", machine->region("maincpu")->base() + 0xf800); } diff --git a/src/mame/drivers/exidy440.c b/src/mame/drivers/exidy440.c index 0a1744e6e2c..52eb4ee0163 100644 --- a/src/mame/drivers/exidy440.c +++ b/src/mame/drivers/exidy440.c @@ -303,9 +303,9 @@ void exidy440_bank_select(running_machine *machine, UINT8 bank) if (state->showdown_bank_data[0] != NULL) { if (bank == 0 && state->bank != 0) - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, showdown_bank0_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4000, 0x7fff, FUNC(showdown_bank0_r)); else if (bank != 0 && state->bank == 0) - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x7fff, "bank1"); } /* select the bank and update the bank pointer */ @@ -1938,7 +1938,7 @@ static DRIVER_INIT( claypign ) { DRIVER_INIT_CALL(exidy440); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ec0, 0x2ec3, 0, 0, claypign_protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2ec0, 0x2ec3, FUNC(claypign_protection_r)); } @@ -1948,11 +1948,11 @@ static DRIVER_INIT( topsecex ) DRIVER_INIT_CALL(exidy440); /* extra input ports and scrolling */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ec5, 0x2ec5, 0, 0, topsecex_input_port_5_r); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ec6, 0x2ec6, 0, 0, "AN0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ec7, 0x2ec7, 0, 0, "IN4"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2ec5, 0x2ec5, FUNC(topsecex_input_port_5_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2ec6, 0x2ec6, "AN0"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2ec7, 0x2ec7, "IN4"); - state->topsecex_yscroll = memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ec1, 0x2ec1, 0, 0, topsecex_yscroll_w); + state->topsecex_yscroll = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2ec1, 0x2ec1, FUNC(topsecex_yscroll_w)); } diff --git a/src/mame/drivers/exprraid.c b/src/mame/drivers/exprraid.c index 9b0b9414566..ed3bff31dab 100644 --- a/src/mame/drivers/exprraid.c +++ b/src/mame/drivers/exprraid.c @@ -778,13 +778,13 @@ static DRIVER_INIT( exprraid ) static DRIVER_INIT( wexpressb ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3800, 0x3800, 0, 0, vblank_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3800, 0x3800, FUNC(vblank_r)); exprraid_gfx_expand(machine); } static DRIVER_INIT( wexpressb2 ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xFFC0, 0xFFC0, 0, 0, vblank_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xFFC0, 0xFFC0, FUNC(vblank_r)); exprraid_gfx_expand(machine); } diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c index 086544fc6e7..e004ba687d5 100644 --- a/src/mame/drivers/fastfred.c +++ b/src/mame/drivers/fastfred.c @@ -979,8 +979,8 @@ ROM_END static DRIVER_INIT( flyboy ) { fastfred_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc085, 0xc099, 0, 0, flyboy_custom1_io_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc8fb, 0xc900, 0, 0, flyboy_custom2_io_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc085, 0xc099, FUNC(flyboy_custom1_io_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc8fb, 0xc900, FUNC(flyboy_custom2_io_r)); state->hardware_type = 1; } @@ -993,32 +993,32 @@ static DRIVER_INIT( flyboyb ) static DRIVER_INIT( fastfred ) { fastfred_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0, fastfred_custom_io_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc800, 0xcfff, FUNC(fastfred_custom_io_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xc800, 0xcfff); state->hardware_type = 1; } static DRIVER_INIT( jumpcoas ) { fastfred_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0, jumpcoas_custom_io_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc800, 0xcfff, FUNC(jumpcoas_custom_io_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xc800, 0xcfff); state->hardware_type = 0; } static DRIVER_INIT( boggy84b ) { fastfred_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0, jumpcoas_custom_io_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc800, 0xcfff, FUNC(jumpcoas_custom_io_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xc800, 0xcfff); state->hardware_type = 2; } static DRIVER_INIT( boggy84 ) { fastfred_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0, boggy84_custom_io_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xcfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc800, 0xcfff, FUNC(boggy84_custom_io_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xc800, 0xcfff); state->hardware_type = 2; } diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c index 78dc2c0d7de..8bb89b5659d 100644 --- a/src/mame/drivers/firebeat.c +++ b/src/mame/drivers/firebeat.c @@ -2216,9 +2216,9 @@ static void init_lights(running_machine *machine, write32_space_func out1, write if(!out2) out1 = lamp_output2_w; if(!out3) out1 = lamp_output3_w; - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7d000804, 0x7d000807, 0, 0, out1); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7d000320, 0x7d000323, 0, 0, out2); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7d000324, 0x7d000327, 0, 0, out3); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x7d000804, 0x7d000807, FUNC(out1)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x7d000320, 0x7d000323, FUNC(out2)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x7d000324, 0x7d000327, FUNC(out3)); } static void init_firebeat(running_machine *machine) diff --git a/src/mame/drivers/fitfight.c b/src/mame/drivers/fitfight.c index 3c8167d5aba..4dae28e6fea 100644 --- a/src/mame/drivers/fitfight.c +++ b/src/mame/drivers/fitfight.c @@ -978,7 +978,7 @@ static DRIVER_INIT( fitfight ) // UINT16 *mem16 = (UINT16 *)machine->region("maincpu")->base(); // mem16[0x0165B2/2] = 0x4e71; // for now so it boots fitfight_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x700001, 0, 0, fitfight_700000_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x700000, 0x700001, FUNC(fitfight_700000_r)); state->bbprot_kludge = 0; } @@ -987,7 +987,7 @@ static DRIVER_INIT( histryma ) // UINT16 *mem16 = (UINT16 *)machine->region("maincpu")->base(); // mem16[0x017FDC/2] = 0x4e71; // for now so it boots fitfight_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x700001, 0, 0, histryma_700000_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x700000, 0x700001, FUNC(histryma_700000_r)); state->bbprot_kludge = 0; } diff --git a/src/mame/drivers/gaiden.c b/src/mame/drivers/gaiden.c index 903073ab0aa..8eebf0111ac 100644 --- a/src/mame/drivers/gaiden.c +++ b/src/mame/drivers/gaiden.c @@ -1506,8 +1506,8 @@ static DRIVER_INIT( wildfang ) state->prot = 0; state->jumpcode = 0; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x07a006, 0x07a007, 0, 0, wildfang_protection_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x07a804, 0x07a805, 0, 0, wildfang_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x07a006, 0x07a007, FUNC(wildfang_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x07a804, 0x07a805, FUNC(wildfang_protection_w)); } static DRIVER_INIT( raiga ) @@ -1519,8 +1519,8 @@ static DRIVER_INIT( raiga ) state->prot = 0; state->jumpcode = 0; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x07a006, 0x07a007, 0, 0, raiga_protection_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x07a804, 0x07a805, 0, 0, raiga_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x07a006, 0x07a007, FUNC(raiga_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x07a804, 0x07a805, FUNC(raiga_protection_w)); } static void descramble_drgnbowl_gfx(running_machine *machine) diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c index b3612cc764e..4b233d03398 100644 --- a/src/mame/drivers/galaga.c +++ b/src/mame/drivers/galaga.c @@ -3212,7 +3212,7 @@ static DRIVER_INIT (gatsbee) DRIVER_INIT_CALL(galaga); /* Gatsbee has a larger character ROM, we need a handler for banking */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1000, 0x1000, 0, 0, gatsbee_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1000, 0x1000, FUNC(gatsbee_bank_w)); } @@ -3253,8 +3253,8 @@ static DRIVER_INIT( xevios ) static DRIVER_INIT( battles ) { /* replace the Namco I/O handlers with interface to the 4th CPU */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7000, 0x700f, 0, 0, battles_customio_data0_r, battles_customio_data0_w ); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7100, 0x7100, 0, 0, battles_customio0_r, battles_customio0_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x7000, 0x700f, FUNC(battles_customio_data0_r), FUNC(battles_customio_data0_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x7100, 0x7100, FUNC(battles_customio0_r), FUNC(battles_customio0_w) ); DRIVER_INIT_CALL(xevious); } diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c index 8c9f0630308..f414d021584 100644 --- a/src/mame/drivers/galaxian.c +++ b/src/mame/drivers/galaxian.c @@ -2635,9 +2635,9 @@ static void unmap_galaxian_sound(running_machine *machine, offs_t base) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_unmap_write(space, base + 0x0004, base + 0x0007, 0, 0x07f8); - memory_unmap_write(space, base + 0x0800, base + 0x0807, 0, 0x07f8); - memory_unmap_write(space, base + 0x1800, base + 0x1800, 0, 0x07ff); + space->unmap_write(base + 0x0004, base + 0x0007, 0, 0x07f8); + space->unmap_write(base + 0x0800, base + 0x0807, 0, 0x07f8); + space->unmap_write(base + 0x1800, base + 0x1800, 0, 0x07ff); } @@ -2662,7 +2662,7 @@ static DRIVER_INIT( nolock ) DRIVER_INIT_CALL(galaxian); /* ...but coin lockout disabled/disconnected */ - memory_unmap_write(space, 0x6002, 0x6002, 0, 0x7f8); + space->unmap_write(0x6002, 0x6002, 0, 0x7f8); } @@ -2674,7 +2674,7 @@ static DRIVER_INIT( azurian ) common_init(machine, scramble_draw_bullet, galaxian_draw_background, NULL, NULL); /* coin lockout disabled */ - memory_unmap_write(space, 0x6002, 0x6002, 0, 0x7f8); + space->unmap_write(0x6002, 0x6002, 0, 0x7f8); } @@ -2686,7 +2686,7 @@ static DRIVER_INIT( gmgalax ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, gmgalax_extend_tile_info, gmgalax_extend_sprite_info); /* ROM is banked */ - memory_install_read_bank(space, 0x0000, 0x3fff, 0, 0, "bank1"); + space->install_read_bank(0x0000, 0x3fff, "bank1"); memory_configure_bank(machine, "bank1", 0, 2, machine->region("maincpu")->base() + 0x10000, 0x4000); /* callback when the game select is toggled */ @@ -2703,7 +2703,7 @@ static DRIVER_INIT( pisces ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, pisces_extend_tile_info, pisces_extend_sprite_info); /* coin lockout replaced by graphics bank */ - memory_install_write8_handler(space, 0x6002, 0x6002, 0, 0x7f8, galaxian_gfxbank_w); + space->install_legacy_write_handler(0x6002, 0x6002, 0, 0x7f8, FUNC(galaxian_gfxbank_w)); } @@ -2715,7 +2715,7 @@ static DRIVER_INIT( batman2 ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, batman2_extend_tile_info, upper_extend_sprite_info); /* coin lockout replaced by graphics bank */ - memory_install_write8_handler(space, 0x6002, 0x6002, 0, 0x7f8, galaxian_gfxbank_w); + space->install_legacy_write_handler(0x6002, 0x6002, 0, 0x7f8, FUNC(galaxian_gfxbank_w)); } @@ -2727,7 +2727,7 @@ static DRIVER_INIT( frogg ) common_init(machine, galaxian_draw_bullet, frogger_draw_background, frogger_extend_tile_info, frogger_extend_sprite_info); /* ...but needs a full 2k of RAM */ - memory_install_ram(space, 0x4000, 0x47ff, 0, 0, NULL); + space->install_ram(0x4000, 0x47ff); } @@ -2763,7 +2763,7 @@ static DRIVER_INIT( mooncrgx ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, mooncrst_extend_tile_info, mooncrst_extend_sprite_info); /* LEDs and coin lockout replaced by graphics banking */ - memory_install_write8_handler(space, 0x6000, 0x6002, 0, 0x7f8, galaxian_gfxbank_w); + space->install_legacy_write_handler(0x6000, 0x6002, 0, 0x7f8, FUNC(galaxian_gfxbank_w)); } @@ -2793,7 +2793,7 @@ static DRIVER_INIT( pacmanbl ) DRIVER_INIT_CALL(galaxian); /* ...but coin lockout disabled/disconnected */ - memory_install_write8_handler(space, 0x6002, 0x6002, 0, 0x7f8, (write8_space_func)artic_gfxbank_w); + space->install_legacy_write_handler(0x6002, 0x6002, 0, 0x7f8, FUNC(artic_gfxbank_w)); } static READ8_HANDLER( tenspot_dsw_read ) @@ -2858,18 +2858,18 @@ static DRIVER_INIT( tenspot ) //common_init(machine, galaxian_draw_bullet, galaxian_draw_background, batman2_extend_tile_info, upper_extend_sprite_info); /* coin lockout replaced by graphics bank */ - //memory_install_write8_handler(space, 0x6002, 0x6002, 0, 0x7f8, galaxian_gfxbank_w); + //space->install_legacy_write_handler(0x6002, 0x6002, 0, 0x7f8, FUNC(galaxian_gfxbank_w)); DRIVER_INIT_CALL(galaxian); - memory_install_write8_handler(space, 0x6002, 0x6002, 0, 0x7f8, (write8_space_func)artic_gfxbank_w); + space->install_legacy_write_handler(0x6002, 0x6002, 0, 0x7f8, FUNC(artic_gfxbank_w)); tenspot_current_game = 0; tenspot_set_game_bank(machine, tenspot_current_game, 0); - memory_install_read8_handler(space, 0x7000, 0x7000, 0, 0, tenspot_dsw_read); + space->install_legacy_read_handler(0x7000, 0x7000, FUNC(tenspot_dsw_read)); } @@ -2893,28 +2893,28 @@ static DRIVER_INIT( zigzag ) galaxian_draw_bullet_ptr = NULL; /* make ROMs 2 & 3 swappable */ - memory_install_read_bank(space, 0x2000, 0x2fff, 0, 0, "bank1"); - memory_install_read_bank(space, 0x3000, 0x3fff, 0, 0, "bank2"); + space->install_read_bank(0x2000, 0x2fff, "bank1"); + space->install_read_bank(0x3000, 0x3fff, "bank2"); memory_configure_bank(machine, "bank1", 0, 2, machine->region("maincpu")->base() + 0x2000, 0x1000); memory_configure_bank(machine, "bank2", 0, 2, machine->region("maincpu")->base() + 0x2000, 0x1000); /* also re-install the fixed ROM area as a bank in order to inform the memory system that the fixed area only extends to 0x1fff */ - memory_install_read_bank(space, 0x0000, 0x1fff, 0, 0, "bank3"); + space->install_read_bank(0x0000, 0x1fff, "bank3"); memory_set_bankptr(machine, "bank3", machine->region("maincpu")->base() + 0x0000); /* handler for doing the swaps */ - memory_install_write8_handler(space, 0x7002, 0x7002, 0, 0x07f8, zigzag_bankswap_w); + space->install_legacy_write_handler(0x7002, 0x7002, 0, 0x07f8, FUNC(zigzag_bankswap_w)); zigzag_bankswap_w(space, 0, 0); /* coin lockout disabled */ - memory_unmap_write(space, 0x6002, 0x6002, 0, 0x7f8); + space->unmap_write(0x6002, 0x6002, 0, 0x7f8); /* remove the galaxian sound hardware */ unmap_galaxian_sound(machine, 0x6000); /* install our AY-8910 handler */ - memory_install_write8_handler(space, 0x4800, 0x4fff, 0, 0, zigzag_ay8910_w); + space->install_legacy_write_handler(0x4800, 0x4fff, FUNC(zigzag_ay8910_w)); } @@ -2934,11 +2934,11 @@ static DRIVER_INIT( checkman ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, mooncrst_extend_tile_info, mooncrst_extend_sprite_info); /* move the interrupt enable from $b000 to $b001 */ - memory_unmap_write(space, 0xb000, 0xb000, 0, 0x7f8); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, irq_enable_w); + space->unmap_write(0xb000, 0xb000, 0, 0x7f8); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(irq_enable_w)); /* attach the sound command handler */ - memory_install_write8_handler(iospace, 0x00, 0x00, 0, 0xffff, checkman_sound_command_w); + iospace->install_legacy_write_handler(0x00, 0x00, 0, 0xffff, FUNC(checkman_sound_command_w)); /* decrypt program code */ decode_checkman(machine); @@ -2953,10 +2953,10 @@ static DRIVER_INIT( checkmaj ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, NULL, NULL); /* attach the sound command handler */ - memory_install_write8_handler(space, 0x7800, 0x7800, 0, 0x7ff, checkman_sound_command_w); + space->install_legacy_write_handler(0x7800, 0x7800, 0, 0x7ff, FUNC(checkman_sound_command_w)); /* for the title screen */ - memory_install_read8_handler(space, 0x3800, 0x3800, 0, 0, checkmaj_protection_r); + space->install_legacy_read_handler(0x3800, 0x3800, FUNC(checkmaj_protection_r)); } @@ -2968,10 +2968,10 @@ static DRIVER_INIT( dingo ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, NULL, NULL); /* attach the sound command handler */ - memory_install_write8_handler(space, 0x7800, 0x7800, 0, 0x7ff, checkman_sound_command_w); + space->install_legacy_write_handler(0x7800, 0x7800, 0, 0x7ff, FUNC(checkman_sound_command_w)); - memory_install_read8_handler(space, 0x3000, 0x3000, 0, 0, dingo_3000_r); - memory_install_read8_handler(space, 0x3035, 0x3035, 0, 0, dingo_3035_r); + space->install_legacy_read_handler(0x3000, 0x3000, FUNC(dingo_3000_r)); + space->install_legacy_read_handler(0x3035, 0x3035, FUNC(dingo_3035_r)); } @@ -2984,13 +2984,13 @@ static DRIVER_INIT( dingoe ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, mooncrst_extend_tile_info, mooncrst_extend_sprite_info); /* move the interrupt enable from $b000 to $b001 */ - memory_unmap_write(space, 0xb000, 0xb000, 0, 0x7f8); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, irq_enable_w); + space->unmap_write(0xb000, 0xb000, 0, 0x7f8); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(irq_enable_w)); /* attach the sound command handler */ - memory_install_write8_handler(iospace, 0x00, 0x00, 0, 0xffff, checkman_sound_command_w); + iospace->install_legacy_write_handler(0x00, 0x00, 0, 0xffff, FUNC(checkman_sound_command_w)); - memory_install_read8_handler(space, 0x3001, 0x3001, 0, 0, dingoe_3001_r); /* Protection check */ + space->install_legacy_read_handler(0x3001, 0x3001, FUNC(dingoe_3001_r)); /* Protection check */ /* decrypt program code */ decode_dingoe(machine); @@ -3005,13 +3005,13 @@ static DRIVER_INIT( skybase ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, pisces_extend_tile_info, pisces_extend_sprite_info); /* coin lockout replaced by graphics bank */ - memory_install_write8_handler(space, 0xa002, 0xa002, 0, 0x7f8, galaxian_gfxbank_w); + space->install_legacy_write_handler(0xa002, 0xa002, 0, 0x7f8, FUNC(galaxian_gfxbank_w)); /* needs a full 2k of RAM */ - memory_install_ram(space, 0x8000, 0x87ff, 0, 0, NULL); + space->install_ram(0x8000, 0x87ff); /* extend ROM */ - memory_install_rom(space, 0x0000, 0x5fff, 0, 0, machine->region("maincpu")->base()); + space->install_rom(0x0000, 0x5fff, machine->region("maincpu")->base()); } @@ -3100,10 +3100,10 @@ static DRIVER_INIT( kingball ) /* video extensions */ common_init(machine, galaxian_draw_bullet, galaxian_draw_background, NULL, NULL); - memory_install_write8_handler(space, 0xb000, 0xb000, 0, 0x7f8, kingball_sound1_w); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, irq_enable_w); - memory_install_write8_handler(space, 0xb002, 0xb002, 0, 0x7f8, kingball_sound2_w); - memory_install_write8_handler(space, 0xb003, 0xb003, 0, 0x7f8, kingball_speech_dip_w); + space->install_legacy_write_handler(0xb000, 0xb000, 0, 0x7f8, FUNC(kingball_sound1_w)); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(irq_enable_w)); + space->install_legacy_write_handler(0xb002, 0xb002, 0, 0x7f8, FUNC(kingball_sound2_w)); + space->install_legacy_write_handler(0xb003, 0xb003, 0, 0x7f8, FUNC(kingball_speech_dip_w)); state_save_register_global(machine, kingball_speech_dip); state_save_register_global(machine, kingball_sound); @@ -3118,17 +3118,17 @@ static DRIVER_INIT( scorpnmc ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, batman2_extend_tile_info, upper_extend_sprite_info); /* move the interrupt enable from $b000 to $b001 */ - memory_unmap_write(space, 0xb000, 0xb000, 0, 0x7f8); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, irq_enable_w); + space->unmap_write(0xb000, 0xb000, 0, 0x7f8); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(irq_enable_w)); /* extra ROM */ - memory_install_rom(space, 0x5000, 0x67ff, 0, 0, machine->region("maincpu")->base() + 0x5000); + space->install_rom(0x5000, 0x67ff, machine->region("maincpu")->base() + 0x5000); /* install RAM at $4000-$4800 */ - memory_install_ram(space, 0x4000, 0x47ff, 0, 0, NULL); + space->install_ram(0x4000, 0x47ff); /* doesn't appear to use original RAM */ - memory_unmap_readwrite(space, 0x8000, 0x87ff, 0, 0); + space->unmap_readwrite(0x8000, 0x87ff); } static DRIVER_INIT( thepitm ) @@ -3139,14 +3139,14 @@ static DRIVER_INIT( thepitm ) common_init(machine, galaxian_draw_bullet, galaxian_draw_background, mooncrst_extend_tile_info, mooncrst_extend_sprite_info); /* move the interrupt enable from $b000 to $b001 */ - memory_unmap_write(space, 0xb000, 0xb000, 0, 0x7f8); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, irq_enable_w); + space->unmap_write(0xb000, 0xb000, 0, 0x7f8); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(irq_enable_w)); /* disable the stars */ - memory_unmap_write(space, 0xb004, 0xb004, 0, 0x07f8); + space->unmap_write(0xb004, 0xb004, 0, 0x07f8); /* extend ROM */ - memory_install_rom(space, 0x0000, 0x47ff, 0, 0, machine->region("maincpu")->base()); + space->install_rom(0x0000, 0x47ff, machine->region("maincpu")->base()); } /************************************* @@ -3163,7 +3163,7 @@ static DRIVER_INIT( theend ) common_init(machine, theend_draw_bullet, galaxian_draw_background, NULL, NULL); /* coin counter on the upper bit of port C */ - memory_unmap_write(space, 0x6802, 0x6802, 0, 0x7f8); + space->unmap_write(0x6802, 0x6802, 0, 0x7f8); } @@ -3182,16 +3182,16 @@ static DRIVER_INIT( explorer ) common_init(machine, scramble_draw_bullet, scramble_draw_background, NULL, NULL); /* watchdog works for writes as well? (or is it just disabled?) */ - memory_install_write8_handler(space, 0x7000, 0x7000, 0, 0x7ff, watchdog_reset_w); + space->install_legacy_write_handler(0x7000, 0x7000, 0, 0x7ff, FUNC(watchdog_reset_w)); /* I/O appears to be direct, not via PPIs */ - memory_unmap_readwrite(space, 0x8000, 0xffff, 0, 0); - memory_install_read_port(space, 0x8000, 0x8000, 0, 0xffc, "IN0"); - memory_install_read_port(space, 0x8001, 0x8001, 0, 0xffc, "IN1"); - memory_install_read_port(space, 0x8002, 0x8002, 0, 0xffc, "IN2"); - memory_install_read_port(space, 0x8003, 0x8003, 0, 0xffc, "IN3"); - memory_install_write8_handler(space, 0x8000, 0x8000, 0, 0xfff, soundlatch_w); - memory_install_write8_handler(space, 0x9000, 0x9000, 0, 0xfff, explorer_sound_control_w); + space->unmap_readwrite(0x8000, 0xffff); + space->install_read_port(0x8000, 0x8000, 0, 0xffc, "IN0"); + space->install_read_port(0x8001, 0x8001, 0, 0xffc, "IN1"); + space->install_read_port(0x8002, 0x8002, 0, 0xffc, "IN2"); + space->install_read_port(0x8003, 0x8003, 0, 0xffc, "IN3"); + space->install_legacy_write_handler(0x8000, 0x8000, 0, 0xfff, FUNC(soundlatch_w)); + space->install_legacy_write_handler(0x9000, 0x9000, 0, 0xfff, FUNC(explorer_sound_control_w)); } @@ -3202,7 +3202,7 @@ static DRIVER_INIT( sfx ) galaxian_sfx_tilemap = TRUE; /* sound board has space for extra ROM */ - memory_install_read_bank(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1"); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1"); memory_set_bankptr(machine, "bank1", machine->region("audiocpu")->base()); } @@ -3215,8 +3215,8 @@ static DRIVER_INIT( atlantis ) common_init(machine, scramble_draw_bullet, scramble_draw_background, NULL, NULL); /* watchdog is at $7800? (or is it just disabled?) */ - memory_unmap_read(space, 0x7000, 0x7000, 0, 0x7ff); - memory_install_read8_handler(space, 0x7800, 0x7800, 0, 0x7ff, watchdog_reset_r); + space->unmap_read(0x7000, 0x7000, 0, 0x7ff); + space->install_legacy_read_handler(0x7800, 0x7800, 0, 0x7ff, FUNC(watchdog_reset_r)); } @@ -3256,11 +3256,11 @@ static DRIVER_INIT( froggrmc ) /* video extensions */ common_init(machine, NULL, frogger_draw_background, frogger_extend_tile_info, frogger_extend_sprite_info); - memory_install_write8_handler(space, 0xa800, 0xa800, 0, 0x7ff, soundlatch_w); - memory_install_write8_handler(space, 0xb001, 0xb001, 0, 0x7f8, froggrmc_sound_control_w); + space->install_legacy_write_handler(0xa800, 0xa800, 0, 0x7ff, FUNC(soundlatch_w)); + space->install_legacy_write_handler(0xb001, 0xb001, 0, 0x7f8, FUNC(froggrmc_sound_control_w)); /* actually needs 2k of RAM */ - memory_install_ram(space, 0x8000, 0x87ff, 0, 0, NULL); + space->install_ram(0x8000, 0x87ff); /* decrypt */ decode_frogger_sound(machine); @@ -3301,16 +3301,16 @@ static DRIVER_INIT( scorpion ) common_init(machine, scramble_draw_bullet, scramble_draw_background, batman2_extend_tile_info, upper_extend_sprite_info); /* hook up AY8910 */ - memory_install_readwrite8_handler(machine->device("audiocpu")->memory().space(AS_IO), 0x00, 0xff, 0, 0, scorpion_ay8910_r, scorpion_ay8910_w); + machine->device("audiocpu")->memory().space(AS_IO)->install_legacy_readwrite_handler(0x00, 0xff, FUNC(scorpion_ay8910_r), FUNC(scorpion_ay8910_w)); /* extra ROM */ - memory_install_read_bank(space, 0x5800, 0x67ff, 0, 0, "bank1"); + space->install_read_bank(0x5800, 0x67ff, "bank1"); memory_set_bankptr(machine, "bank1", machine->region("maincpu")->base() + 0x5800); /* no background related */ -// memory_nop_write(space, 0x6803, 0x6803, 0, 0); +// space->nop_write(0x6803, 0x6803); - memory_install_read8_handler(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x3000, 0x3000, 0, 0, scorpion_digitalker_intr_r); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3000, 0x3000, FUNC(scorpion_digitalker_intr_r)); /* { const UINT8 *rom = machine->region("speech")->base(); diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c index f5b34cb36c0..cb1658fbc04 100644 --- a/src/mame/drivers/galivan.c +++ b/src/mame/drivers/galivan.c @@ -1043,20 +1043,20 @@ static WRITE8_HANDLER( youmab_84_w ) static DRIVER_INIT( youmab ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x82, 0x82, 0, 0, youmab_extra_bank_w); // banks rom at 0x8000? writes 0xff and 0x00 before executing code there - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x7fff, 0, 0, "bank3"); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x82, 0x82, FUNC(youmab_extra_bank_w)); // banks rom at 0x8000? writes 0xff and 0x00 before executing code there + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x7fff, "bank3"); memory_set_bankptr(machine, "bank3", machine->region("maincpu")->base()); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0xbfff, "bank2"); memory_configure_bank(machine, "bank2", 0, 2, machine->region("user2")->base(), 0x4000); memory_set_bank(machine, "bank2", 0); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x81, 0x81, 0, 0, youmab_81_w); // ?? often, alternating values - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x84, 0x84, 0, 0, youmab_84_w); // ?? often, sequence.. + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x81, 0x81, FUNC(youmab_81_w)); // ?? often, alternating values + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x84, 0x84, FUNC(youmab_84_w)); // ?? often, sequence.. - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd800, 0xd81f, 0, 0); // scrolling isn't here.. + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xd800, 0xd81f); // scrolling isn't here.. - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x8a, 0x8a, 0, 0, youmab_8a_r); // ??? + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x8a, 0x8a, FUNC(youmab_8a_r)); // ??? } diff --git a/src/mame/drivers/ghosteo.c b/src/mame/drivers/ghosteo.c index 58783649c10..b30dd84ed86 100644 --- a/src/mame/drivers/ghosteo.c +++ b/src/mame/drivers/ghosteo.c @@ -437,7 +437,7 @@ static READ32_HANDLER( bballoon_speedup_r ) static MACHINE_RESET( bballoon ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4d000010, 0x4d000013, 0, 0, bballoon_speedup_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4d000010, 0x4d000013, FUNC(bballoon_speedup_r)); s3c2410 = machine->device("s3c2410"); } diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c index 9750fff7159..5e242417349 100644 --- a/src/mame/drivers/gladiatr.c +++ b/src/mame/drivers/gladiatr.c @@ -1030,7 +1030,7 @@ static DRIVER_INIT(ppking) } } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf6a3,0xf6a3,0,0, f6a3_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf6a3,0xf6a3,FUNC(f6a3_r) ); } diff --git a/src/mame/drivers/gng.c b/src/mame/drivers/gng.c index 0bad4c2815e..d60c1e82141 100644 --- a/src/mame/drivers/gng.c +++ b/src/mame/drivers/gng.c @@ -721,7 +721,7 @@ static READ8_HANDLER( diamond_hack_r ) static DRIVER_INIT( diamond ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x6000, 0, 0, diamond_hack_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000, 0x6000, FUNC(diamond_hack_r)); } diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c index 42ce227e20e..2c9907a4bd8 100644 --- a/src/mame/drivers/goldstar.c +++ b/src/mame/drivers/goldstar.c @@ -9853,8 +9853,8 @@ static DRIVER_INIT( schery97 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x1d, 0x1d, 0, 0, fixedvala8_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x2a, 0x2a, 0, 0, fixedvalb4_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x1d, 0x1d, FUNC(fixedvala8_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x2a, 0x2a, FUNC(fixedvalb4_r)); /* Oki 6295 at 0x20 */ } @@ -9883,7 +9883,7 @@ static DRIVER_INIT( schery97a ) - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x16, 0x16, 0, 0, fixedval38_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x16, 0x16, FUNC(fixedval38_r)); /* Oki 6295 at 0x20 */ } @@ -9910,7 +9910,7 @@ static DRIVER_INIT( skill98 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x1e, 0x1e, 0, 0, fixedvalea_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x1e, 0x1e, FUNC(fixedvalea_r)); /* Oki 6295 at 0x20 */ } @@ -9937,7 +9937,7 @@ static DRIVER_INIT( fb36xc1 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x31, 0x31, 0, 0, fixedval68_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x31, 0x31, FUNC(fixedval68_r)); } @@ -9974,11 +9974,11 @@ static DRIVER_INIT( fbse354 ) ROM[i] = x; } // nfb96b needs both of these - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x23, 0x23, 0, 0, fixedval80_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x5a, 0x5a, 0, 0, fixedvalaa_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x23, 0x23, FUNC(fixedval80_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x5a, 0x5a, FUNC(fixedvalaa_r)); // csel96b - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x6e, 0x6e, 0, 0, fixedval96_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x6e, 0x6e, FUNC(fixedval96_r)); } @@ -10006,7 +10006,7 @@ static DRIVER_INIT( fbse362 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x2e, 0x2e, 0, 0, fixedvalbe_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x2e, 0x2e, FUNC(fixedvalbe_r)); } @@ -10038,8 +10038,8 @@ static DRIVER_INIT( rp35 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x5e, 0x5e, 0, 0, fixedval84_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x36, 0x36, 0, 0, fixedval90_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x5e, 0x5e, FUNC(fixedval84_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x36, 0x36, FUNC(fixedval90_r)); } static READ8_HANDLER( fixedvalb2_r ) @@ -10066,7 +10066,7 @@ static DRIVER_INIT( rp36 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x34, 0x34, 0, 0, fixedvalb2_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x34, 0x34, FUNC(fixedvalb2_r)); } static READ8_HANDLER( fixedval48_r ) @@ -10093,7 +10093,7 @@ static DRIVER_INIT( rp36c3 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x17, 0x17, 0, 0, fixedval48_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x17, 0x17, FUNC(fixedval48_r)); } static READ8_HANDLER( fixedval09_r ) @@ -10125,8 +10125,8 @@ static DRIVER_INIT( po33 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x32, 0x32, 0, 0, fixedval74_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x12, 0x12, 0, 0, fixedval09_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x32, 0x32, FUNC(fixedval74_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x12, 0x12, FUNC(fixedval09_r)); /* oki6295 at 0x20 */ } @@ -10154,7 +10154,7 @@ static DRIVER_INIT( tc132axt ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x21, 0x21, 0, 0, fixedval58_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x21, 0x21, FUNC(fixedval58_r)); } static READ8_HANDLER( fixedvale4_r ) @@ -10186,8 +10186,8 @@ static DRIVER_INIT( match133 ) ROM[i] = x; } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x16, 0x16, 0, 0, fixedvalc7_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x1a, 0x1a, 0, 0, fixedvale4_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x16, 0x16, FUNC(fixedvalc7_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x1a, 0x1a, FUNC(fixedvale4_r)); } static DRIVER_INIT(cherrys) @@ -10253,9 +10253,9 @@ static DRIVER_INIT( tonypok ) { // the ppi doesn't seem to work properly, so just install the inputs directly address_space *io = machine->device("maincpu")->memory().space(AS_IO); - memory_install_read_port(io, 0x04, 0x04, 0, 0, "IN0" ); - memory_install_read_port(io, 0x05, 0x05, 0, 0, "IN1" ); - memory_install_read_port(io, 0x06, 0x06, 0, 0, "IN2" ); + io->install_read_port(0x04, 0x04, "IN0" ); + io->install_read_port(0x05, 0x05, "IN1" ); + io->install_read_port(0x06, 0x06, "IN2" ); } diff --git a/src/mame/drivers/gottlieb.c b/src/mame/drivers/gottlieb.c index c436f5123a4..cf03862b747 100644 --- a/src/mame/drivers/gottlieb.c +++ b/src/mame/drivers/gottlieb.c @@ -248,9 +248,9 @@ static MACHINE_START( gottlieb ) if (state->laserdisc != NULL) { /* attach to the I/O ports */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x05805, 0x05807, 0, 0x07f8, laserdisc_status_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x05805, 0x05805, 0, 0x07f8, laserdisc_command_w); /* command for the player */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x05806, 0x05806, 0, 0x07f8, laserdisc_select_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x05805, 0x05807, 0, 0x07f8, FUNC(laserdisc_status_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x05805, 0x05805, 0, 0x07f8, FUNC(laserdisc_command_w)); /* command for the player */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x05806, 0x05806, 0, 0x07f8, FUNC(laserdisc_select_w)); /* allocate a timer for serial transmission, and one for philips code processing */ state->laserdisc_bit_timer = machine->scheduler().timer_alloc(FUNC(laserdisc_bit_callback)); @@ -2613,7 +2613,7 @@ static DRIVER_INIT( romtiles ) static DRIVER_INIT( stooges ) { DRIVER_INIT_CALL(ramtiles); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x05803, 0x05803, 0, 0x07f8, stooges_output_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x05803, 0x05803, 0, 0x07f8, FUNC(stooges_output_w)); } diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c index 5ef0d9e0134..f6e071a5256 100644 --- a/src/mame/drivers/groundfx.c +++ b/src/mame/drivers/groundfx.c @@ -464,7 +464,7 @@ static DRIVER_INIT( groundfx ) int data; /* Speedup handlers */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20b574, 0x20b577, 0, 0, irq_speedup_r_groundfx); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x20b574, 0x20b577, FUNC(irq_speedup_r_groundfx)); /* make piv tile GFX format suitable for gfxdecode */ offset = size/2; diff --git a/src/mame/drivers/gstream.c b/src/mame/drivers/gstream.c index 31db8a9bc41..c85da761706 100644 --- a/src/mame/drivers/gstream.c +++ b/src/mame/drivers/gstream.c @@ -634,7 +634,7 @@ static READ32_HANDLER( gstream_speedup_r ) static DRIVER_INIT( gstream ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd1ee0, 0xd1ee3, 0, 0, gstream_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd1ee0, 0xd1ee3, FUNC(gstream_speedup_r) ); } diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c index df6a009df1b..1a86cb5a694 100644 --- a/src/mame/drivers/gstriker.c +++ b/src/mame/drivers/gstriker.c @@ -1022,11 +1022,11 @@ static void mcu_init( running_machine *machine ) state->pending_command = 0; state->mcu_data = 0; - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20008a, 0x20008b, 0, 0, twrldc94_mcu_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20008a, 0x20008b, 0, 0, twrldc94_mcu_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x20008a, 0x20008b, FUNC(twrldc94_mcu_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x20008a, 0x20008b, FUNC(twrldc94_mcu_r)); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20008e, 0x20008f, 0, 0, twrldc94_prot_reg_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20008e, 0x20008f, 0, 0, twrldc94_prot_reg_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x20008e, 0x20008f, FUNC(twrldc94_prot_reg_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x20008e, 0x20008f, FUNC(twrldc94_prot_reg_r)); } static DRIVER_INIT( twrldc94 ) @@ -1049,8 +1049,8 @@ static DRIVER_INIT( vgoalsoc ) state->gametype = 3; mcu_init( machine ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200090, 0x200091, 0, 0, vbl_toggle_w); // vblank toggle - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200090, 0x200091, 0, 0, vbl_toggle_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x200090, 0x200091, FUNC(vbl_toggle_w)); // vblank toggle + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200090, 0x200091, FUNC(vbl_toggle_r)); } /*** GAME DRIVERS ************************************************************/ diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c index c5b1369846e..3b23986f43c 100644 --- a/src/mame/drivers/gsword.c +++ b/src/mame/drivers/gsword.c @@ -917,7 +917,7 @@ static DRIVER_INIT( gsword ) #endif #if 1 /* hack for sound protection or time out function */ - memory_install_read8_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x4004, 0x4005, 0, 0, gsword_hack_r); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4004, 0x4005, FUNC(gsword_hack_r)); #endif } @@ -932,7 +932,7 @@ static DRIVER_INIT( gsword2 ) #endif #if 1 /* hack for sound protection or time out function */ - memory_install_read8_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x4004, 0x4005, 0, 0, gsword_hack_r); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4004, 0x4005, FUNC(gsword_hack_r)); #endif } diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c index d43eec56706..5d669189548 100644 --- a/src/mame/drivers/gunbustr.c +++ b/src/mame/drivers/gunbustr.c @@ -417,7 +417,7 @@ static READ32_HANDLER( main_cycle_r ) static DRIVER_INIT( gunbustr ) { /* Speedup handler */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x203acc, 0x203acf, 0, 0, main_cycle_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x203acc, 0x203acf, FUNC(main_cycle_r)); } GAME( 1992, gunbustr, 0, gunbustr, gunbustr, gunbustr, ORIENTATION_FLIP_X, "Taito Corporation", "Gunbuster (Japan)", 0 ) diff --git a/src/mame/drivers/gundealr.c b/src/mame/drivers/gundealr.c index 0408836bf1b..69a2ce45466 100644 --- a/src/mame/drivers/gundealr.c +++ b/src/mame/drivers/gundealr.c @@ -579,7 +579,7 @@ static DRIVER_INIT( yamyam ) { gundealr_state *state = machine->driver_data(); state->input_ports_hack = 1; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xe000, 0, 0, yamyam_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xe000, FUNC(yamyam_protection_w)); } diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c index f45ff297481..cd1481b5412 100644 --- a/src/mame/drivers/harddriv.c +++ b/src/mame/drivers/harddriv.c @@ -3791,9 +3791,9 @@ static void init_multisync(running_machine *machine, int compact_inputs) /* install handlers for the compact driving games' inputs */ if (compact_inputs) { - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, hdc68k_wheel_r); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x408000, 0x408001, 0, 0, hdc68k_wheel_edge_reset_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xa80000, 0xafffff, 0, 0, hdc68k_port1_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(hdc68k_wheel_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x408000, 0x408001, FUNC(hdc68k_wheel_edge_reset_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa80000, 0xafffff, FUNC(hdc68k_port1_r)); } } @@ -3804,18 +3804,18 @@ static void init_adsp(running_machine *machine) harddriv_state *state = machine->driver_data(); /* install ADSP program RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x800000, 0x807fff, 0, 0, hd68k_adsp_program_r, hd68k_adsp_program_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x800000, 0x807fff, FUNC(hd68k_adsp_program_r), FUNC(hd68k_adsp_program_w)); /* install ADSP data RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x808000, 0x80bfff, 0, 0, hd68k_adsp_data_r, hd68k_adsp_data_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x808000, 0x80bfff, FUNC(hd68k_adsp_data_r), FUNC(hd68k_adsp_data_w)); /* install ADSP serial buffer RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x810000, 0x813fff, 0, 0, hd68k_adsp_buffer_r, hd68k_adsp_buffer_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x810000, 0x813fff, FUNC(hd68k_adsp_buffer_r), FUNC(hd68k_adsp_buffer_w)); /* install ADSP control locations */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x818000, 0x81801f, 0, 0, hd68k_adsp_control_w); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x818060, 0x81807f, 0, 0, hd68k_adsp_irq_clear_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x838000, 0x83ffff, 0, 0, hd68k_adsp_irq_state_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x818000, 0x81801f, FUNC(hd68k_adsp_control_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x818060, 0x81807f, FUNC(hd68k_adsp_irq_clear_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x838000, 0x83ffff, FUNC(hd68k_adsp_irq_state_r)); } @@ -3825,21 +3825,21 @@ static void init_ds3(running_machine *machine) harddriv_state *state = machine->driver_data(); /* install ADSP program RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x800000, 0x807fff, 0, 0, hd68k_ds3_program_r, hd68k_ds3_program_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x800000, 0x807fff, FUNC(hd68k_ds3_program_r), FUNC(hd68k_ds3_program_w)); /* install ADSP data RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x808000, 0x80bfff, 0, 0, hd68k_adsp_data_r, hd68k_adsp_data_w); - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x80c000, 0x80dfff, 0, 0, hdds3_special_r, hdds3_special_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x808000, 0x80bfff, FUNC(hd68k_adsp_data_r), FUNC(hd68k_adsp_data_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x80c000, 0x80dfff, FUNC(hdds3_special_r), FUNC(hdds3_special_w)); /* install ADSP control locations */ - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x820000, 0x8207ff, 0, 0, hd68k_ds3_gdata_r); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x820800, 0x820fff, 0, 0, hd68k_ds3_girq_state_r); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x820000, 0x8207ff, 0, 0, hd68k_ds3_gdata_w); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x821000, 0x8217ff, 0, 0, hd68k_adsp_irq_clear_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x822000, 0x8227ff, 0, 0, hd68k_ds3_sdata_r); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x822800, 0x822fff, 0, 0, hd68k_ds3_sirq_state_r); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x822000, 0x8227ff, 0, 0, hd68k_ds3_sdata_w); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x823800, 0x823fff, 0, 0, hd68k_ds3_control_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x820000, 0x8207ff, FUNC(hd68k_ds3_gdata_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x820800, 0x820fff, FUNC(hd68k_ds3_girq_state_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x820000, 0x8207ff, FUNC(hd68k_ds3_gdata_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x821000, 0x8217ff, FUNC(hd68k_adsp_irq_clear_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x822000, 0x8227ff, FUNC(hd68k_ds3_sdata_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x822800, 0x822fff, FUNC(hd68k_ds3_sirq_state_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x822000, 0x8227ff, FUNC(hd68k_ds3_sdata_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x823800, 0x823fff, FUNC(hd68k_ds3_control_w)); /* if we have a sound DSP, boot it */ if (state->ds4cpu1 != NULL) @@ -3924,26 +3924,26 @@ static void init_dsk(running_machine *machine) UINT8 *usr3 = machine->region("user3")->base(); /* install ASIC61 */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x85c000, 0x85c7ff, 0, 0, hd68k_dsk_dsp32_r, hd68k_dsk_dsp32_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x85c000, 0x85c7ff, FUNC(hd68k_dsk_dsp32_r), FUNC(hd68k_dsk_dsp32_w)); /* install control registers */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x85c800, 0x85c81f, 0, 0, hd68k_dsk_control_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x85c800, 0x85c81f, FUNC(hd68k_dsk_control_w)); /* install extra RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x900000, 0x90ffff, 0, 0, hd68k_dsk_ram_r, hd68k_dsk_ram_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x900000, 0x90ffff, FUNC(hd68k_dsk_ram_r), FUNC(hd68k_dsk_ram_w)); state->dsk_ram = (UINT16 *)(usr3 + 0x40000); /* install extra ZRAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x910000, 0x910fff, 0, 0, hd68k_dsk_zram_r, hd68k_dsk_zram_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x910000, 0x910fff, FUNC(hd68k_dsk_zram_r), FUNC(hd68k_dsk_zram_w)); state->dsk_zram = (UINT16 *)(usr3 + 0x50000); /* install ASIC65 */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x914000, 0x917fff, 0, 0, asic65_data_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x914000, 0x917fff, 0, 0, asic65_r); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x918000, 0x91bfff, 0, 0, asic65_io_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x914000, 0x917fff, FUNC(asic65_data_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x914000, 0x917fff, FUNC(asic65_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x918000, 0x91bfff, FUNC(asic65_io_r)); /* install extra ROM */ - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x940000, 0x9fffff, 0, 0, hd68k_dsk_small_rom_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x940000, 0x9fffff, FUNC(hd68k_dsk_small_rom_r)); state->dsk_rom = (UINT16 *)(usr3 + 0x00000); /* set up the ASIC65 */ @@ -3958,22 +3958,22 @@ static void init_dsk2(running_machine *machine) UINT8 *usr3 = machine->region("user3")->base(); /* install ASIC65 */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x824000, 0x824003, 0, 0, asic65_data_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x824000, 0x824003, 0, 0, asic65_r); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x825000, 0x825001, 0, 0, asic65_io_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x824000, 0x824003, FUNC(asic65_data_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x824000, 0x824003, FUNC(asic65_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x825000, 0x825001, FUNC(asic65_io_r)); /* install ASIC61 */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x827000, 0x8277ff, 0, 0, hd68k_dsk_dsp32_r, hd68k_dsk_dsp32_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x827000, 0x8277ff, FUNC(hd68k_dsk_dsp32_r), FUNC(hd68k_dsk_dsp32_w)); /* install control registers */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x827800, 0x82781f, 0, 0, hd68k_dsk_control_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x827800, 0x82781f, FUNC(hd68k_dsk_control_w)); /* install extra RAM */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x880000, 0x8bffff, 0, 0, hd68k_dsk_ram_r, hd68k_dsk_ram_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x880000, 0x8bffff, FUNC(hd68k_dsk_ram_r), FUNC(hd68k_dsk_ram_w)); state->dsk_ram = (UINT16 *)(usr3 + 0x100000); /* install extra ROM */ - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x900000, 0x9fffff, 0, 0, hd68k_dsk_rom_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x900000, 0x9fffff, FUNC(hd68k_dsk_rom_r)); state->dsk_rom = (UINT16 *)(usr3 + 0x000000); /* set up the ASIC65 */ @@ -3987,15 +3987,15 @@ static void init_dspcom(running_machine *machine) harddriv_state *state = machine->driver_data(); /* install ASIC65 */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x900000, 0x900003, 0, 0, asic65_data_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x900000, 0x900003, 0, 0, asic65_r); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x901000, 0x910001, 0, 0, asic65_io_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x900000, 0x900003, FUNC(asic65_data_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x900000, 0x900003, FUNC(asic65_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x901000, 0x910001, FUNC(asic65_io_r)); /* set up the ASIC65 */ asic65_config(machine, ASIC65_STEELTAL); /* install DSPCOM control */ - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x904000, 0x90401f, 0, 0, hddspcom_control_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x904000, 0x90401f, FUNC(hddspcom_control_w)); } @@ -4007,9 +4007,9 @@ static void init_driver_sound(running_machine *machine) hdsnd_init(machine); /* install sound handlers */ - memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x840000, 0x840001, 0, 0, hd68k_snd_data_r, hd68k_snd_data_w); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x844000, 0x844001, 0, 0, hd68k_snd_status_r); - memory_install_write16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x84c000, 0x84c001, 0, 0, hd68k_snd_reset_w); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x840000, 0x840001, FUNC(hd68k_snd_data_r), FUNC(hd68k_snd_data_w)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x844000, 0x844001, FUNC(hd68k_snd_status_r)); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x84c000, 0x84c001, FUNC(hd68k_snd_reset_w)); } @@ -4031,18 +4031,18 @@ static DRIVER_INIT( harddriv ) init_driver_sound(machine); /* set up gsp speedup handler */ - state->gsp_speedup_addr[0] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup1_w); - state->gsp_speedup_addr[1] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfffcfc00, 0xfffcfc0f, 0, 0, hdgsp_speedup2_w); - memory_install_read16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup_r); + state->gsp_speedup_addr[0] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup1_w)); + state->gsp_speedup_addr[1] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfffcfc00, 0xfffcfc0f, FUNC(hdgsp_speedup2_w)); + state->gsp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup_r)); state->gsp_speedup_pc = 0xffc00f10; /* set up msp speedup handler */ - state->msp_speedup_addr = memory_install_write16_handler(state->msp->memory().space(AS_PROGRAM), 0x00751b00, 0x00751b0f, 0, 0, hdmsp_speedup_w); - memory_install_read16_handler(state->msp->memory().space(AS_PROGRAM), 0x00751b00, 0x00751b0f, 0, 0, hdmsp_speedup_r); + state->msp_speedup_addr = state->msp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00751b00, 0x00751b0f, FUNC(hdmsp_speedup_w)); + state->msp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00751b00, 0x00751b0f, FUNC(hdmsp_speedup_r)); state->msp_speedup_pc = 0x00723b00; /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); } @@ -4056,18 +4056,18 @@ static DRIVER_INIT( harddrivc ) init_driver_sound(machine); /* set up gsp speedup handler */ - state->gsp_speedup_addr[0] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup1_w); - state->gsp_speedup_addr[1] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfffcfc00, 0xfffcfc0f, 0, 0, hdgsp_speedup2_w); - memory_install_read16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup_r); + state->gsp_speedup_addr[0] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup1_w)); + state->gsp_speedup_addr[1] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfffcfc00, 0xfffcfc0f, FUNC(hdgsp_speedup2_w)); + state->gsp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup_r)); state->gsp_speedup_pc = 0xfff40ff0; /* set up msp speedup handler */ - state->msp_speedup_addr = memory_install_write16_handler(state->msp->memory().space(AS_PROGRAM), 0x00751b00, 0x00751b0f, 0, 0, hdmsp_speedup_w); - memory_install_read16_handler(state->msp->memory().space(AS_PROGRAM), 0x00751b00, 0x00751b0f, 0, 0, hdmsp_speedup_r); + state->msp_speedup_addr = state->msp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00751b00, 0x00751b0f, FUNC(hdmsp_speedup_w)); + state->msp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00751b00, 0x00751b0f, FUNC(hdmsp_speedup_r)); state->msp_speedup_pc = 0x00723b00; /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); } @@ -4081,13 +4081,13 @@ static DRIVER_INIT( stunrun ) atarijsa_init(machine, "IN0", 0x0020); /* set up gsp speedup handler */ - state->gsp_speedup_addr[0] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup1_w); - state->gsp_speedup_addr[1] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfffcfc00, 0xfffcfc0f, 0, 0, hdgsp_speedup2_w); - memory_install_read16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff9fc00, 0xfff9fc0f, 0, 0, hdgsp_speedup_r); + state->gsp_speedup_addr[0] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup1_w)); + state->gsp_speedup_addr[1] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfffcfc00, 0xfffcfc0f, FUNC(hdgsp_speedup2_w)); + state->gsp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfff9fc00, 0xfff9fc0f, FUNC(hdgsp_speedup_r)); state->gsp_speedup_pc = 0xfff41070; /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); } @@ -4103,14 +4103,14 @@ static DRIVER_INIT( racedriv ) /* set up the slapstic */ slapstic_init(machine, 117); - state->m68k_slapstic_base = memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xe0000, 0xfffff, 0, 0, rd68k_slapstic_r, rd68k_slapstic_w); + state->m68k_slapstic_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe0000, 0xfffff, FUNC(rd68k_slapstic_r), FUNC(rd68k_slapstic_w)); /* synchronization */ - state->rddsp32_sync[0] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613c00, 0x613c03, 0, 0, rddsp32_sync0_w); - state->rddsp32_sync[1] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613e00, 0x613e03, 0, 0, rddsp32_sync1_w); + state->rddsp32_sync[0] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613c00, 0x613c03, FUNC(rddsp32_sync0_w)); + state->rddsp32_sync[1] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613e00, 0x613e03, FUNC(rddsp32_sync1_w)); /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); } @@ -4126,22 +4126,22 @@ static void racedrivc_init_common(running_machine *machine, offs_t gsp_protectio /* set up the slapstic */ slapstic_init(machine, 117); - state->m68k_slapstic_base = memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xe0000, 0xfffff, 0, 0, rd68k_slapstic_r, rd68k_slapstic_w); + state->m68k_slapstic_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe0000, 0xfffff, FUNC(rd68k_slapstic_r), FUNC(rd68k_slapstic_w)); /* synchronization */ - state->rddsp32_sync[0] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613c00, 0x613c03, 0, 0, rddsp32_sync0_w); - state->rddsp32_sync[1] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613e00, 0x613e03, 0, 0, rddsp32_sync1_w); + state->rddsp32_sync[0] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613c00, 0x613c03, FUNC(rddsp32_sync0_w)); + state->rddsp32_sync[1] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613e00, 0x613e03, FUNC(rddsp32_sync1_w)); /* set up protection hacks */ - state->gsp_protection = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), gsp_protection, gsp_protection + 0x0f, 0, 0, hdgsp_protection_w); + state->gsp_protection = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(gsp_protection, gsp_protection + 0x0f, FUNC(hdgsp_protection_w)); /* set up gsp speedup handler */ - state->gsp_speedup_addr[0] = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff76f60, 0xfff76f6f, 0, 0, rdgsp_speedup1_w); - memory_install_read16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff76f60, 0xfff76f6f, 0, 0, rdgsp_speedup1_r); + state->gsp_speedup_addr[0] = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff76f60, 0xfff76f6f, FUNC(rdgsp_speedup1_w)); + state->gsp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfff76f60, 0xfff76f6f, FUNC(rdgsp_speedup1_r)); state->gsp_speedup_pc = 0xfff43a00; /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); } static DRIVER_INIT( racedrivc ) { racedrivc_init_common(machine, 0xfff95cd0); } @@ -4166,34 +4166,34 @@ static void steeltal_init_common(running_machine *machine, offs_t ds3_transfer_p init_dspcom(machine); atarijsa_init(machine, "IN0", 0x0020); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x908000, 0x908001, 0, 0, steeltal_dummy_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x908000, 0x908001, FUNC(steeltal_dummy_r)); /* set up the SLOOP */ if (!proto_sloop) { - state->m68k_slapstic_base = memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xe0000, 0xfffff, 0, 0, st68k_sloop_r, st68k_sloop_w); - state->m68k_sloop_alt_base = memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0x4e000, 0x4ffff, 0, 0, st68k_sloop_alt_r); + state->m68k_slapstic_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe0000, 0xfffff, FUNC(st68k_sloop_r), FUNC(st68k_sloop_w)); + state->m68k_sloop_alt_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4e000, 0x4ffff, FUNC(st68k_sloop_alt_r)); } else - state->m68k_slapstic_base = memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xe0000, 0xfffff, 0, 0, st68k_protosloop_r, st68k_protosloop_w); + state->m68k_slapstic_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe0000, 0xfffff, FUNC(st68k_protosloop_r), FUNC(st68k_protosloop_w)); /* synchronization */ state->stmsp_sync[0] = &state->msp_ram[TOWORD(0x80010)]; - memory_install_write16_handler(state->msp->memory().space(AS_PROGRAM), 0x80010, 0x8007f, 0, 0, stmsp_sync0_w); + state->msp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x80010, 0x8007f, FUNC(stmsp_sync0_w)); state->stmsp_sync[1] = &state->msp_ram[TOWORD(0x99680)]; - memory_install_write16_handler(state->msp->memory().space(AS_PROGRAM), 0x99680, 0x9968f, 0, 0, stmsp_sync1_w); + state->msp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x99680, 0x9968f, FUNC(stmsp_sync1_w)); state->stmsp_sync[2] = &state->msp_ram[TOWORD(0x99d30)]; - memory_install_write16_handler(state->msp->memory().space(AS_PROGRAM), 0x99d30, 0x99d4f, 0, 0, stmsp_sync2_w); + state->msp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x99d30, 0x99d4f, FUNC(stmsp_sync2_w)); /* set up protection hacks */ - state->gsp_protection = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff965d0, 0xfff965df, 0, 0, hdgsp_protection_w); + state->gsp_protection = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff965d0, 0xfff965df, FUNC(hdgsp_protection_w)); /* set up msp speedup handlers */ - memory_install_read16_handler(state->msp->memory().space(AS_PROGRAM), 0x80020, 0x8002f, 0, 0, stmsp_speedup_r); + state->msp->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80020, 0x8002f, FUNC(stmsp_speedup_r)); /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1f99, 0x1f99, 0, 0, hdds3_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1f99, 0x1f99, FUNC(hdds3_speedup_r)); state->ds3_speedup_addr = &state->adsp_data_memory[0x1f99]; state->ds3_speedup_pc = 0xff; state->ds3_transfer_pc = ds3_transfer_pc; @@ -4216,20 +4216,20 @@ static DRIVER_INIT( strtdriv ) /* set up the slapstic */ slapstic_init(machine, 117); - state->m68k_slapstic_base = memory_install_readwrite16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xe0000, 0xfffff, 0, 0, rd68k_slapstic_r, rd68k_slapstic_w); + state->m68k_slapstic_base = state->maincpu->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe0000, 0xfffff, FUNC(rd68k_slapstic_r), FUNC(rd68k_slapstic_w)); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xa80000, 0xafffff, 0, 0, hda68k_port1_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa80000, 0xafffff, FUNC(hda68k_port1_r)); /* synchronization */ - state->rddsp32_sync[0] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613c00, 0x613c03, 0, 0, rddsp32_sync0_w); - state->rddsp32_sync[1] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x613e00, 0x613e03, 0, 0, rddsp32_sync1_w); + state->rddsp32_sync[0] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613c00, 0x613c03, FUNC(rddsp32_sync0_w)); + state->rddsp32_sync[1] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x613e00, 0x613e03, FUNC(rddsp32_sync1_w)); /* set up protection hacks */ - state->gsp_protection = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff960a0, 0xfff960af, 0, 0, hdgsp_protection_w); + state->gsp_protection = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff960a0, 0xfff960af, FUNC(hdgsp_protection_w)); /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1f99, 0x1f99, 0, 0, hdds3_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1f99, 0x1f99, FUNC(hdds3_speedup_r)); state->ds3_speedup_addr = &state->adsp_data_memory[0x1f99]; state->ds3_speedup_pc = 0xff; state->ds3_transfer_pc = 0x43672; @@ -4245,18 +4245,18 @@ static DRIVER_INIT( hdrivair ) init_ds3(machine); init_dsk2(machine); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xa80000, 0xafffff, 0, 0, hda68k_port1_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa80000, 0xafffff, FUNC(hda68k_port1_r)); /* synchronization */ - state->rddsp32_sync[0] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x21fe00, 0x21fe03, 0, 0, rddsp32_sync0_w); - state->rddsp32_sync[1] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x21ff00, 0x21ff03, 0, 0, rddsp32_sync1_w); + state->rddsp32_sync[0] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x21fe00, 0x21fe03, FUNC(rddsp32_sync0_w)); + state->rddsp32_sync[1] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x21ff00, 0x21ff03, FUNC(rddsp32_sync1_w)); /* set up protection hacks */ - state->gsp_protection = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff943f0, 0xfff943ff, 0, 0, hdgsp_protection_w); + state->gsp_protection = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff943f0, 0xfff943ff, FUNC(hdgsp_protection_w)); /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1f99, 0x1f99, 0, 0, hdds3_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1f99, 0x1f99, FUNC(hdds3_speedup_r)); state->ds3_speedup_addr = &state->adsp_data_memory[0x1f99]; state->ds3_speedup_pc = 0x2da; state->ds3_transfer_pc = 0x407b8; @@ -4272,18 +4272,18 @@ static DRIVER_INIT( hdrivairp ) init_ds3(machine); init_dsk2(machine); - memory_install_read16_handler(state->maincpu->memory().space(AS_PROGRAM), 0xa80000, 0xafffff, 0, 0, hda68k_port1_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa80000, 0xafffff, FUNC(hda68k_port1_r)); /* synchronization */ - state->rddsp32_sync[0] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x21fe00, 0x21fe03, 0, 0, rddsp32_sync0_w); - state->rddsp32_sync[1] = memory_install_write32_handler(state->dsp32->memory().space(AS_PROGRAM), 0x21ff00, 0x21ff03, 0, 0, rddsp32_sync1_w); + state->rddsp32_sync[0] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x21fe00, 0x21fe03, FUNC(rddsp32_sync0_w)); + state->rddsp32_sync[1] = state->dsp32->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x21ff00, 0x21ff03, FUNC(rddsp32_sync1_w)); /* set up protection hacks */ - state->gsp_protection = memory_install_write16_handler(state->gsp->memory().space(AS_PROGRAM), 0xfff916c0, 0xfff916cf, 0, 0, hdgsp_protection_w); + state->gsp_protection = state->gsp->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfff916c0, 0xfff916cf, FUNC(hdgsp_protection_w)); /* set up adsp speedup handlers */ - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1fff, 0x1fff, 0, 0, hdadsp_speedup_r); - memory_install_read16_handler(state->adsp->memory().space(AS_DATA), 0x1f9a, 0x1f9a, 0, 0, hdds3_speedup_r); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1fff, 0x1fff, FUNC(hdadsp_speedup_r)); + state->adsp->memory().space(AS_DATA)->install_legacy_read_handler(0x1f9a, 0x1f9a, FUNC(hdds3_speedup_r)); state->ds3_speedup_addr = &state->adsp_data_memory[0x1f9a]; state->ds3_speedup_pc = 0x2d9; state->ds3_transfer_pc = 0X407da; diff --git a/src/mame/drivers/highvdeo.c b/src/mame/drivers/highvdeo.c index f9e0c0b1244..6821027f8f3 100644 --- a/src/mame/drivers/highvdeo.c +++ b/src/mame/drivers/highvdeo.c @@ -1159,7 +1159,7 @@ static READ16_HANDLER( ciclone_status_r ) static DRIVER_INIT( ciclone ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0030, 0x0033, 0, 0, ciclone_status_r ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x0030, 0x0033, FUNC(ciclone_status_r) ); } /* @@ -1229,7 +1229,7 @@ static WRITE16_HANDLER( fashion_output_w ) static DRIVER_INIT( fashion ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0002, 0x0003, 0, 0, fashion_output_w ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x0002, 0x0003, FUNC(fashion_output_w) ); } GAMEL( 2000, tour4000, 0, tv_vcf, tv_vcf, 0, ROT0, "High Video", "Tour 4000", 0, layout_fashion ) diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c index 7ea1326f381..7e3ebcd877e 100644 --- a/src/mame/drivers/homedata.c +++ b/src/mame/drivers/homedata.c @@ -2032,15 +2032,15 @@ static DRIVER_INIT( jogakuen ) /* it seems that Mahjong Jogakuen runs on the same board as the others, but with just these two addresses swapped. Instead of creating a new MachineDriver, I just fix them here. */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8007, 0x8007, 0, 0, pteacher_blitter_bank_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8005, 0x8005, 0, 0, pteacher_gfx_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8007, 0x8007, FUNC(pteacher_blitter_bank_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8005, 0x8005, FUNC(pteacher_gfx_bank_w)); } static DRIVER_INIT( mjikaga ) { /* Mahjong Ikagadesuka is different as well. */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7802, 0x7802, 0, 0, pteacher_snd_r); - memory_install_write8_handler(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x0123, 0x0123, 0, 0, pteacher_snd_answer_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7802, 0x7802, FUNC(pteacher_snd_r)); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0123, 0x0123, FUNC(pteacher_snd_answer_w)); } static DRIVER_INIT( reikaids ) diff --git a/src/mame/drivers/hshavoc.c b/src/mame/drivers/hshavoc.c index 507715e8596..9eebffadd5a 100644 --- a/src/mame/drivers/hshavoc.c +++ b/src/mame/drivers/hshavoc.c @@ -219,7 +219,7 @@ static DRIVER_INIT(hshavoc) { address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); - memory_nop_write(space, 0x200000, 0x201fff, 0, 0); + space->nop_write(0x200000, 0x201fff); } DRIVER_INIT_CALL(megadriv); diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c index 1933c826699..e393034b3ae 100644 --- a/src/mame/drivers/hyprduel.c +++ b/src/mame/drivers/hyprduel.c @@ -812,10 +812,10 @@ static DRIVER_INIT( hyprduel ) state->int_num = 0x02; /* cpu synchronization (severe timings) */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc0040e, 0xc00411, 0, 0, hyprduel_cpusync_trigger1_w); - memory_install_read16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0xc00408, 0xc00409, 0, 0, hyprduel_cpusync_trigger1_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00408, 0xc00409, 0, 0, hyprduel_cpusync_trigger2_w); - memory_install_read16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0xfff34c, 0xfff34d, 0, 0, hyprduel_cpusync_trigger2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc0040e, 0xc00411, FUNC(hyprduel_cpusync_trigger1_w)); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00408, 0xc00409, FUNC(hyprduel_cpusync_trigger1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00408, 0xc00409, FUNC(hyprduel_cpusync_trigger2_w)); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfff34c, 0xfff34d, FUNC(hyprduel_cpusync_trigger2_r)); } static DRIVER_INIT( magerror ) diff --git a/src/mame/drivers/igs011.c b/src/mame/drivers/igs011.c index 1091e350f63..ab95327c726 100644 --- a/src/mame/drivers/igs011.c +++ b/src/mame/drivers/igs011.c @@ -967,13 +967,13 @@ static WRITE16_HANDLER( igs011_prot_addr_w ) UINT8 *rom = space->machine->region("maincpu")->base(); // Plug previous address range with ROM access - memory_install_rom(sp, state->prot1_addr + 0, state->prot1_addr + 9, 0, 0, rom + state->prot1_addr); + sp->install_rom(state->prot1_addr + 0, state->prot1_addr + 9, rom + state->prot1_addr); state->prot1_addr = (data << 4) ^ 0x8340; // Add protection memory range - memory_install_write16_handler(sp, state->prot1_addr + 0, state->prot1_addr + 7, 0, 0, igs011_prot1_w); - memory_install_read16_handler (sp, state->prot1_addr + 8, state->prot1_addr + 9, 0, 0, igs011_prot1_r); + sp->install_legacy_write_handler(state->prot1_addr + 0, state->prot1_addr + 7, FUNC(igs011_prot1_w)); + sp->install_legacy_read_handler (state->prot1_addr + 8, state->prot1_addr + 9, FUNC(igs011_prot1_r)); } /* static READ16_HANDLER( igs011_prot_fake_r ) @@ -1800,7 +1800,7 @@ static DRIVER_INIT( drgnwrldv21 ) drgnwrld_type2_decrypt(machine); drgnwrld_gfx_decrypt(machine); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd4c0, 0xd4ff, 0, 0, drgnwrldv21_igs011_prot2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd4c0, 0xd4ff, FUNC(drgnwrldv21_igs011_prot2_r)); /* // PROTECTION CHECKS // bp 32ee; bp 11ca8; bp 23d5e; bp 23fd0; bp 24170; bp 24348; bp 2454e; bp 246cc; bp 24922; bp 24b66; bp 24de2; bp 2502a; bp 25556; bp 269de; bp 2766a; bp 2a830 @@ -1940,7 +1940,7 @@ static DRIVER_INIT( dbc ) dbc_decrypt(machine); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x10600, 0x107ff, 0, 0, dbc_igs011_prot2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x10600, 0x107ff, FUNC(dbc_igs011_prot2_r)); /* // PROTECTION CHECKS rom[0x04c42/2] = 0x602e; // 004C42: 6604 bne 4c48 (rom test error otherwise) @@ -1969,7 +1969,7 @@ static DRIVER_INIT( ryukobou ) ryukobou_decrypt(machine); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x10600, 0x107ff, 0, 0, ryukobou_igs011_prot2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x10600, 0x107ff, FUNC(ryukobou_igs011_prot2_r)); // PROTECTION CHECKS // rom[0x2df68/2] = 0x4e75; // 02DF68: 4E56 FE00 link A6, #-$200 (fills palette with pink otherwise) diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c index d01a916a948..0cb09e96683 100644 --- a/src/mame/drivers/iqblock.c +++ b/src/mame/drivers/iqblock.c @@ -444,7 +444,7 @@ static DRIVER_INIT( iqblock ) machine->generic.paletteram2.u8 = rom + 0x12800; state->fgvideoram = rom + 0x16800; state->bgvideoram = rom + 0x17000; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe26, 0xfe26, 0, 0, iqblock_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfe26, 0xfe26, FUNC(iqblock_prot_w)); state->video_type=1; } @@ -467,7 +467,7 @@ static DRIVER_INIT( grndtour ) machine->generic.paletteram2.u8 = rom + 0x12800; state->fgvideoram = rom + 0x16800; state->bgvideoram = rom + 0x17000; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe39, 0xfe39, 0, 0, grndtour_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfe39, 0xfe39, FUNC(grndtour_prot_w)); state->video_type=0; } diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c index 99d1cf2e941..ecd0510d964 100644 --- a/src/mame/drivers/itech32.c +++ b/src/mame/drivers/itech32.c @@ -4008,8 +4008,8 @@ static DRIVER_INIT( drivedge ) state->planes = 1; state->is_drivedge = 1; - memory_install_read32_handler(machine->device("dsp1")->memory().space(AS_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms1_speedup_r); - memory_install_read32_handler(machine->device("dsp2")->memory().space(AS_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms2_speedup_r); + machine->device("dsp1")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8382, 0x8382, FUNC(drivedge_tms1_speedup_r)); + machine->device("dsp2")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8382, 0x8382, FUNC(drivedge_tms2_speedup_r)); } @@ -4026,11 +4026,11 @@ static DRIVER_INIT( wcbowl ) state->vram_height = 1024; state->planes = 1; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x680000, 0x680001, 0, 0, trackball_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x680000, 0x680001, FUNC(trackball_r)); - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x578000, 0x57ffff, 0, 0); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x680080, 0x680081, 0, 0, wcbowl_prot_result_r); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x680080, 0x680081, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x578000, 0x57ffff); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x680080, 0x680081, FUNC(wcbowl_prot_result_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x680080, 0x680081); } @@ -4044,8 +4044,8 @@ static void init_sftm_common(running_machine *machine, int prot_addr) state->itech020_prot_address = prot_addr; - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x300000, 0x300003, FUNC(itech020_color2_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x380000, 0x380003, FUNC(itech020_color1_w)); } @@ -4076,10 +4076,10 @@ static void init_shuffle_bowl_common(running_machine *machine, int prot_addr) state->itech020_prot_address = prot_addr; - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_p1_r); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x300000, 0x300003, FUNC(itech020_color2_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x380000, 0x380003, FUNC(itech020_color1_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x180800, 0x180803, FUNC(trackball32_4bit_p1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x181000, 0x181003, FUNC(trackball32_4bit_p2_r)); } @@ -4098,7 +4098,7 @@ static DRIVER_INIT( wcbowln ) /* PIC 16C54 labeled as ITBWL-3 */ static void install_timekeeper(running_machine *machine) { device_t *device = machine->device("m48t02"); - memory_install_readwrite32_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), device, 0x681000, 0x6817ff, 0, 0, timekeeper_32be_r, timekeeper_32be_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*device, 0x681000, 0x6817ff, FUNC(timekeeper_32be_r), FUNC(timekeeper_32be_w)); } static DRIVER_INIT( wcbowlt ) /* PIC 16C54 labeled as ITBWL-3 */ @@ -4130,7 +4130,7 @@ static DRIVER_INIT( gt3d ) Hacked versions of this PCB have been found with GT97 through GTClassic. This is _NOT_ a factory modification */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_8bit_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200003, FUNC(trackball32_8bit_r)); init_gt_common(machine); } @@ -4143,8 +4143,8 @@ static DRIVER_INIT( aama ) board share the same sound CPU code and sample ROMs. This board has all versions of GT for it, GT3D through GTClassic */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_p1_r); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x180800, 0x180803, FUNC(trackball32_4bit_p1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x181000, 0x181003, FUNC(trackball32_4bit_p2_r)); init_gt_common(machine); } @@ -4168,7 +4168,7 @@ static DRIVER_INIT( s_ver ) board: GT97 v1.21S, GT98, GT99, GT2K & GT Classic Versions 1.00S Trackball info is read through 200202 (actually 200203). */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200200, 0x200203, 0, 0, trackball32_4bit_p1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200200, 0x200203, FUNC(trackball32_4bit_p1_r)); init_gt_common(machine); } @@ -4182,7 +4182,7 @@ static DRIVER_INIT( gt3dl ) Player 1 trackball read through 200003 Player 2 trackball read through 200002 */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_4bit_combined_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200003, FUNC(trackball32_4bit_combined_r)); init_gt_common(machine); } @@ -4190,7 +4190,7 @@ static DRIVER_INIT( gt3dl ) static DRIVER_INIT( gt2kp ) { /* a little extra protection */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x680000, 0x680003, 0, 0, gt2kp_prot_result_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x680000, 0x680003, FUNC(gt2kp_prot_result_r)); DRIVER_INIT_CALL(aama); /* The protection code is: @@ -4211,7 +4211,7 @@ Label1 bne.s Label1 ; Infinite loop if result isn't 0x01 static DRIVER_INIT( gtclasscp ) { /* a little extra protection */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x680000, 0x680003, 0, 0, gtclass_prot_result_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x680000, 0x680003, FUNC(gtclass_prot_result_r)); DRIVER_INIT_CALL(aama); /* The protection code is: diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c index 1f114896f05..f6c6a9805d4 100644 --- a/src/mame/drivers/itech8.c +++ b/src/mame/drivers/itech8.c @@ -2634,25 +2634,25 @@ ROM_END static DRIVER_INIT( grmatch ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0160, 0x0160, 0, 0, grmatch_palette_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0180, 0x0180, 0, 0, grmatch_xscroll_w); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01e0, 0x01ff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0160, 0x0160, FUNC(grmatch_palette_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0180, 0x0180, FUNC(grmatch_xscroll_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x01e0, 0x01ff); } static DRIVER_INIT( slikshot ) { - memory_install_read8_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0180, 0x0180, 0, 0, slikshot_z80_r); - memory_install_read8_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x0180, 0x0180, FUNC(slikshot_z80_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x01cf, 0x01cf, FUNC(slikshot_z80_control_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01cf, 0x01cf, FUNC(slikshot_z80_control_w)); } static DRIVER_INIT( sstrike ) { - memory_install_read8_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1180, 0x1180, 0, 0, slikshot_z80_r); - memory_install_read8_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x1180, 0x1180, FUNC(slikshot_z80_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x11cf, 0x11cf, FUNC(slikshot_z80_control_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x11cf, 0x11cf, FUNC(slikshot_z80_control_w)); } @@ -2691,15 +2691,15 @@ static DRIVER_INIT( neckneck ) static DRIVER_INIT( rimrockn ) { /* additional input ports */ - memory_install_read_port (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0161, 0x0161, 0, 0, "161"); - memory_install_read_port (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0162, 0x0162, 0, 0, "162"); - memory_install_read_port (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0163, 0x0163, 0, 0, "163"); - memory_install_read_port (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0164, 0x0164, 0, 0, "164"); - memory_install_read_port (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0165, 0x0165, 0, 0, "165"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port (0x0161, 0x0161, "161"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port (0x0162, 0x0162, "162"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port (0x0163, 0x0163, "163"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port (0x0164, 0x0164, "164"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port (0x0165, 0x0165, "165"); /* different banking mechanism (disable the old one) */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a0, 0x01a0, 0, 0, rimrockn_bank_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01c0, 0x01df, 0, 0, itech8_blitter_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01a0, 0x01a0, FUNC(rimrockn_bank_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01c0, 0x01df, FUNC(itech8_blitter_w)); } diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c index 78e3879b250..89241e355e5 100644 --- a/src/mame/drivers/jack.c +++ b/src/mame/drivers/jack.c @@ -1414,10 +1414,10 @@ static DRIVER_INIT( striv ) } // Set-up the weirdest questions read ever done - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xcfff, 0, 0, striv_question_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc000, 0xcfff, FUNC(striv_question_r)); // Nop out unused sprites writes - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb000, 0xb0ff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xb000, 0xb0ff); state->timer_rate = 128; } diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c index 9bd76a4d7bd..f7632748df3 100644 --- a/src/mame/drivers/jalmah.c +++ b/src/mame/drivers/jalmah.c @@ -2394,8 +2394,8 @@ static READ16_HANDLER( suchipi_mcu_r ) static DRIVER_INIT( urashima ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, urashima_mcu_r ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80012, 0x80013, 0, 0, urashima_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(urashima_mcu_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x80012, 0x80013, FUNC(urashima_mcu_w) ); state->mcu_prg = 0x12; } @@ -2403,8 +2403,8 @@ static DRIVER_INIT( urashima ) static DRIVER_INIT( daireika ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, daireika_mcu_r ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80012, 0x80013, 0, 0, daireika_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(daireika_mcu_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x80012, 0x80013, FUNC(daireika_mcu_w) ); state->mcu_prg = 0x11; } @@ -2412,8 +2412,8 @@ static DRIVER_INIT( daireika ) static DRIVER_INIT( mjzoomin ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, mjzoomin_mcu_r ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80012, 0x80013, 0, 0, mjzoomin_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(mjzoomin_mcu_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x80012, 0x80013, FUNC(mjzoomin_mcu_w) ); state->mcu_prg = 0x13; } @@ -2421,7 +2421,7 @@ static DRIVER_INIT( mjzoomin ) static DRIVER_INIT( kakumei ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(kakumei_mcu_r) ); state->mcu_prg = 0x21; } @@ -2429,7 +2429,7 @@ static DRIVER_INIT( kakumei ) static DRIVER_INIT( kakumei2 ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(kakumei_mcu_r) ); state->mcu_prg = 0x22; } @@ -2437,7 +2437,7 @@ static DRIVER_INIT( kakumei2 ) static DRIVER_INIT( suchipi ) { jalmah_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80004, 0x80005, 0, 0, suchipi_mcu_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80004, 0x80005, FUNC(suchipi_mcu_r) ); state->mcu_prg = 0x23; } diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c index 0678f30296e..e74630e990c 100644 --- a/src/mame/drivers/jangou.c +++ b/src/mame/drivers/jangou.c @@ -1360,7 +1360,7 @@ static READ8_HANDLER( jngolady_rng_r ) static DRIVER_INIT( jngolady ) { - memory_install_read8_handler(machine->device("nsc")->memory().space(AS_PROGRAM), 0x08, 0x08, 0, 0, jngolady_rng_r ); + machine->device("nsc")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x08, 0x08, FUNC(jngolady_rng_r) ); } static DRIVER_INIT (luckygrl) diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c index 0d1c6ef9c78..07a40415c5b 100644 --- a/src/mame/drivers/jchan.c +++ b/src/mame/drivers/jchan.c @@ -789,8 +789,8 @@ static DRIVER_INIT( jchan ) jchan_state *state = machine->driver_data(); DRIVER_INIT_CALL( decrypt_toybox_rom ); // install these here, putting them in the memory map causes issues - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x403ffe, 0x403fff, 0, 0, main2sub_cmd_w ); - memory_install_write16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, sub2main_cmd_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x403ffe, 0x403fff, FUNC(main2sub_cmd_w) ); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x400000, 0x400001, FUNC(sub2main_cmd_w) ); memset(state->mcu_com, 0, 4 * sizeof( UINT16 ) ); diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c index 80bc5f333b6..e817350feaa 100644 --- a/src/mame/drivers/kaneko16.c +++ b/src/mame/drivers/kaneko16.c @@ -3877,7 +3877,7 @@ static DRIVER_INIT( shogwarr ) static DRIVER_INIT( brapboys ) { // sample banking is different on brap boys for the music, why? GALs / PALs ? - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe00000, 0xe00001, 0, 0, brapboys_oki_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe00000, 0xe00001, FUNC(brapboys_oki_bank_w)); // default sample banks kaneko16_common_oki_bank_w(machine, "bank10", "oki1", 0, 0x30000, 0x10000); diff --git a/src/mame/drivers/kangaroo.c b/src/mame/drivers/kangaroo.c index bfaf832736f..a76b5d931d5 100644 --- a/src/mame/drivers/kangaroo.c +++ b/src/mame/drivers/kangaroo.c @@ -183,7 +183,7 @@ static MACHINE_START( kangaroo_mcu ) kangaroo_state *state = machine->driver_data(); MACHINE_START_CALL(kangaroo); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xef00, 0xefff, 0, 0, mcu_sim_r, mcu_sim_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xef00, 0xefff, FUNC(mcu_sim_r), FUNC(mcu_sim_w)); state->save_item(NAME(state->clock)); } diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c index c24c22a9894..f679a6dec33 100644 --- a/src/mame/drivers/konamigv.c +++ b/src/mame/drivers/konamigv.c @@ -540,9 +540,9 @@ static DRIVER_INIT( simpbowl ) state->flash8[2] = machine->device("flash2"); state->flash8[3] = machine->device("flash3"); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, flash_r, flash_w ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800c0, 0x1f6800c7, 0, 0, trackball_r ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800c8, 0x1f6800cb, 0, 0, unknown_r ); /* ?? */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f680080, 0x1f68008f, FUNC(flash_r), FUNC(flash_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1f6800c0, 0x1f6800c7, FUNC(trackball_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1f6800c8, 0x1f6800cb, FUNC(unknown_r) ); /* ?? */ DRIVER_INIT_CALL(konamigv); } @@ -633,9 +633,9 @@ static DRIVER_INIT( btchamp ) state->flash16[0] = machine->device("flash"); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, btc_trackball_r, btc_trackball_w ); - memory_nop_write ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0 ); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f680080, 0x1f68008f, FUNC(btc_trackball_r), FUNC(btc_trackball_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write ( 0x1f6800e0, 0x1f6800e3); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f380000, 0x1f3fffff, FUNC(btcflash_r), FUNC(btcflash_w) ); DRIVER_INIT_CALL(konamigv); } @@ -688,8 +688,8 @@ static WRITE32_HANDLER( tokimeki_serial_w ) static DRIVER_INIT( tokimosh ) { - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, tokimeki_serial_r ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, tokimeki_serial_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1f680080, 0x1f680083, FUNC(tokimeki_serial_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f680090, 0x1f680093, FUNC(tokimeki_serial_w) ); DRIVER_INIT_CALL(konamigv); } @@ -721,13 +721,13 @@ static DRIVER_INIT( kdeadeye ) state->flash16[0] = machine->device("flash"); - memory_install_read_port ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, "GUNX1" ); - memory_install_read_port ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, "GUNY1" ); - memory_install_read_port ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800a0, 0x1f6800a3, 0, 0, "GUNX2" ); - memory_install_read_port ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800b0, 0x1f6800b3, 0, 0, "GUNY2" ); - memory_install_read_port ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800c0, 0x1f6800c3, 0, 0, "BUTTONS" ); - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0, kdeadeye_0_w ); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port ( 0x1f680080, 0x1f680083, "GUNX1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port ( 0x1f680090, 0x1f680093, "GUNY1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port ( 0x1f6800a0, 0x1f6800a3, "GUNX2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port ( 0x1f6800b0, 0x1f6800b3, "GUNY2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port ( 0x1f6800c0, 0x1f6800c3, "BUTTONS" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1f6800e0, 0x1f6800e3, FUNC(kdeadeye_0_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f380000, 0x1f3fffff, FUNC(btcflash_r), FUNC(btcflash_w) ); DRIVER_INIT_CALL(konamigv); } diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c index f0eb039ea36..237aff5f5df 100644 --- a/src/mame/drivers/konamigx.c +++ b/src/mame/drivers/konamigx.c @@ -537,8 +537,8 @@ static WRITE32_HANDLER( control_w ) waitskip.data = DATA; \ waitskip.mask = MASK; \ resume_trigger= 1000; \ - memory_install_read32_handler \ - (0, AS_PROGRAM, (BASE+START)&~3, (BASE+END)|3, 0, 0, waitskip_r);} + space->install_legacy_read_handler \ + ((BASE+START)&~3, (BASE+END)|3, FUNC(waitskip_r));} static int suspension_active, resume_trigger; #ifdef UNUSED_FUNCTION @@ -3771,8 +3771,8 @@ static DRIVER_INIT(konamigx) switch (gameDefs[i].special) { case 1: // LE2 guns - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd44000, 0xd44003, 0, 0, le2_gun_H_r ); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd44004, 0xd44007, 0, 0, le2_gun_V_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd44000, 0xd44003, FUNC(le2_gun_H_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd44004, 0xd44007, FUNC(le2_gun_V_r) ); break; case 2: // tkmmpzdm hack @@ -3808,7 +3808,7 @@ static DRIVER_INIT(konamigx) break; case 7: // install type 4 Xilinx protection for non-type 3/4 games - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xcc0000, 0xcc0007, 0, 0, type4_prot_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xcc0000, 0xcc0007, FUNC(type4_prot_w) ); break; case 8: // tbyahhoo @@ -3828,14 +3828,14 @@ static DRIVER_INIT(konamigx) switch (readback) { case BPP5: - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx5bppspr_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd4a000, 0xd4a00f, FUNC(gx5bppspr_r)); break; case BPP66: - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd00000, 0xd01fff, 0, 0, K056832_6bpp_rom_long_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd00000, 0xd01fff, FUNC(K056832_6bpp_rom_long_r)); case BPP6: - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx6bppspr_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd4a000, 0xd4a00f, FUNC(gx6bppspr_r)); break; } diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c index 0341eb93be6..68be1c0c283 100644 --- a/src/mame/drivers/ksys573.c +++ b/src/mame/drivers/ksys573.c @@ -1472,7 +1472,7 @@ static WRITE32_HANDLER( ge765pwbba_w ) static DRIVER_INIT( ge765pwbba ) { DRIVER_INIT_CALL(konami573); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, ge765pwbba_r, ge765pwbba_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f640000, 0x1f6400ff, FUNC(ge765pwbba_r), FUNC(ge765pwbba_w) ); } /* @@ -1584,7 +1584,7 @@ static void gx700pwfbf_init( running_machine *machine, void (*output_callback_fu state->gx700pwfbf_output_callback = output_callback_func; - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx700pwbf_io_r, gx700pwbf_io_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f640000, 0x1f6400ff, FUNC(gx700pwbf_io_r), FUNC(gx700pwbf_io_w) ); state->save_item( NAME(state->gx700pwbf_output_data) ); } @@ -1825,7 +1825,7 @@ static DRIVER_INIT( gtrfrks ) { DRIVER_INIT_CALL(konami573); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f600000, 0x1f6000ff, FUNC(gtrfrks_io_r), FUNC(gtrfrks_io_w) ); } /* GX894 digital i/o */ @@ -2140,7 +2140,7 @@ static void gx894pwbba_init( running_machine *machine, void (*output_callback_fu state->gx894pwbba_output_callback = output_callback_func; - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx894pwbba_r, gx894pwbba_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f640000, 0x1f6400ff, FUNC(gx894pwbba_r), FUNC(gx894pwbba_w) ); state->gx894_ram_write_offset = 0; state->gx894_ram_read_offset = 0; @@ -2167,7 +2167,7 @@ static DRIVER_INIT( gtrfrkdigital ) gx894pwbba_init( machine, NULL ); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f600000, 0x1f6000ff, FUNC(gtrfrks_io_r), FUNC(gtrfrks_io_w) ); } /* ddr solo */ @@ -2460,7 +2460,7 @@ static DRIVER_INIT( dmx ) gx894pwbba_init( machine, dmx_output_callback ); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, dmx_io_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1f600000, 0x1f6000ff, FUNC(dmx_io_w) ); } /* salary man champ */ @@ -2620,7 +2620,7 @@ static DRIVER_INIT( mamboagg ) gx894pwbba_init( machine, mamboagg_output_callback ); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, mamboagg_io_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1f600000, 0x1f6000ff, FUNC(mamboagg_io_w) ); } @@ -2941,7 +2941,7 @@ static READ32_HANDLER( gunmania_r ) static DRIVER_INIT( gunmania ) { DRIVER_INIT_CALL(konami573); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gunmania_r, gunmania_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1f640000, 0x1f6400ff, FUNC(gunmania_r), FUNC(gunmania_w) ); } /* ADC0834 Interface */ diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c index d3ccb6690e4..cd3852e91e8 100644 --- a/src/mame/drivers/kyugo.c +++ b/src/mame/drivers/kyugo.c @@ -1333,7 +1333,7 @@ ROM_END static DRIVER_INIT( gyrodine ) { /* add watchdog */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xe000, 0, 0, watchdog_reset_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xe000, FUNC(watchdog_reset_w)); } @@ -1342,10 +1342,10 @@ static DRIVER_INIT( srdmissn ) kyugo_state *state = machine->driver_data(); /* shared RAM is mapped at 0xe000 as well */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xe7ff, 0, 0, state->shared_ram); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0xe000, 0xe7ff, state->shared_ram); /* extra RAM on sub CPU */ - memory_install_ram(machine->device("sub")->memory().space(AS_PROGRAM), 0x8800, 0x8fff, 0, 0, NULL); + machine->device("sub")->memory().space(AS_PROGRAM)->install_ram(0x8800, 0x8fff); } diff --git a/src/mame/drivers/leland.c b/src/mame/drivers/leland.c index 205f3a9fe3b..1cd94ed35e2 100644 --- a/src/mame/drivers/leland.c +++ b/src/mame/drivers/leland.c @@ -1981,11 +1981,11 @@ ROM_END static void init_master_ports(running_machine *machine, UINT8 mvram_base, UINT8 io_base) { /* set up the master CPU VRAM I/O */ - memory_install_readwrite8_handler(machine->device("master")->memory().space(AS_IO), mvram_base, mvram_base + 0x1f, 0, 0, leland_mvram_port_r, leland_mvram_port_w); + machine->device("master")->memory().space(AS_IO)->install_legacy_readwrite_handler(mvram_base, mvram_base + 0x1f, FUNC(leland_mvram_port_r), FUNC(leland_mvram_port_w)); /* set up the master CPU I/O ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), io_base, io_base + 0x1f, 0, 0, leland_master_input_r); - memory_install_write8_handler(machine->device("master")->memory().space(AS_IO), io_base, io_base + 0x0f, 0, 0, leland_master_output_w); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(io_base, io_base + 0x1f, FUNC(leland_master_input_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_write_handler(io_base, io_base + 0x0f, FUNC(leland_master_output_w)); } @@ -2002,8 +2002,8 @@ static DRIVER_INIT( cerberus ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x80, 0x80, 0, 0, cerberus_dial_1_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0x90, 0x90, 0, 0, cerberus_dial_2_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x80, 0x80, FUNC(cerberus_dial_1_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0x90, 0x90, FUNC(cerberus_dial_2_r)); } @@ -2052,7 +2052,7 @@ static DRIVER_INIT( alleymas ) /* kludge warning: the game uses location E0CA to determine if the joysticks are available */ /* it gets cleared by the code, but there is no obvious way for the value to be set to a */ /* non-zero value. If the value is zero, the joystick is never read. */ - state->alleymas_kludge_mem = memory_install_write8_handler(machine->device("master")->memory().space(AS_PROGRAM), 0xe0ca, 0xe0ca, 0, 0, alleymas_joystick_kludge); + state->alleymas_kludge_mem = machine->device("master")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe0ca, 0xe0ca, FUNC(alleymas_joystick_kludge)); } @@ -2077,9 +2077,9 @@ static DRIVER_INIT( dangerz ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf4, 0xf4, 0, 0, dangerz_input_upper_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, dangerz_input_y_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xfc, 0xfc, 0, 0, dangerz_input_x_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf4, 0xf4, FUNC(dangerz_input_upper_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(dangerz_input_y_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xfc, 0xfc, FUNC(dangerz_input_x_r)); } @@ -2128,10 +2128,10 @@ static DRIVER_INIT( redlin2p ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xc0, 0xc0, 0, 0, redline_pedal_1_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xd0, 0xd0, 0, 0, redline_pedal_2_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, redline_wheel_2_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xfb, 0xfb, 0, 0, redline_wheel_1_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xc0, 0xc0, FUNC(redline_pedal_1_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xd0, 0xd0, FUNC(redline_pedal_2_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(redline_wheel_2_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xfb, 0xfb, FUNC(redline_wheel_1_r)); } @@ -2162,9 +2162,9 @@ static DRIVER_INIT( viper ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xa4, 0xa4, 0, 0, dangerz_input_upper_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xb8, 0xb8, 0, 0, dangerz_input_y_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xbc, 0xbc, 0, 0, dangerz_input_x_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xa4, 0xa4, FUNC(dangerz_input_upper_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xb8, 0xb8, FUNC(dangerz_input_y_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xbc, 0xbc, FUNC(dangerz_input_x_r)); } @@ -2182,8 +2182,8 @@ static DRIVER_INIT( teamqb ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7f, 0x7f, 0, 0, "IN5"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7c, 0x7c, "IN4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7f, 0x7f, "IN5"); } @@ -2201,8 +2201,8 @@ static DRIVER_INIT( aafb ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7f, 0x7f, 0, 0, "IN5"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7c, 0x7c, "IN4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7f, 0x7f, "IN5"); } @@ -2220,8 +2220,8 @@ static DRIVER_INIT( aafbb ) init_master_ports(machine, 0x80, 0x40); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7f, 0x7f, 0, 0, "IN5"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7c, 0x7c, "IN4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7f, 0x7f, "IN5"); } @@ -2239,8 +2239,8 @@ static DRIVER_INIT( aafbd2p ) init_master_ports(machine, 0x00, 0x40); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7f, 0x7f, 0, 0, "IN5"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7c, 0x7c, "IN4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7f, 0x7f, "IN5"); } @@ -2259,9 +2259,9 @@ static DRIVER_INIT( offroad ) init_master_ports(machine, 0x40, 0x80); /* yes, this is intentional */ /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(offroad_wheel_3_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf9, 0xf9, FUNC(offroad_wheel_1_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xfb, 0xfb, FUNC(offroad_wheel_2_r)); } @@ -2279,9 +2279,9 @@ static DRIVER_INIT( offroadt ) init_master_ports(machine, 0x80, 0x40); /* set up additional input ports */ - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); - memory_install_read8_handler(machine->device("master")->memory().space(AS_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(offroad_wheel_3_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xf9, 0xf9, FUNC(offroad_wheel_1_r)); + machine->device("master")->memory().space(AS_IO)->install_legacy_read_handler(0xfb, 0xfb, FUNC(offroad_wheel_2_r)); } @@ -2299,7 +2299,7 @@ static DRIVER_INIT( pigout ) init_master_ports(machine, 0x00, 0x40); /* set up additional input ports */ - memory_install_read_port(machine->device("master")->memory().space(AS_IO), 0x7f, 0x7f, 0, 0, "IN4"); + machine->device("master")->memory().space(AS_IO)->install_read_port(0x7f, 0x7f, "IN4"); } diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c index df6cdbcfe04..c61c5497448 100644 --- a/src/mame/drivers/lethalj.c +++ b/src/mame/drivers/lethalj.c @@ -897,19 +897,19 @@ ROM_END static DRIVER_INIT( ripribit ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x04100010, 0x0410001f, 0, 0, ripribit_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x04100010, 0x0410001f, FUNC(ripribit_control_w)); } static DRIVER_INIT( cfarm ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cfarm_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x04100010, 0x0410001f, FUNC(cfarm_control_w)); } static DRIVER_INIT( cclownz ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cclownz_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x04100010, 0x0410001f, FUNC(cclownz_control_w)); } diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c index d85d159db49..bea04dbd15a 100644 --- a/src/mame/drivers/liberate.c +++ b/src/mame/drivers/liberate.c @@ -71,9 +71,9 @@ static WRITE8_HANDLER( deco16_bank_w ) state->bank = data; if (state->bank) - memory_install_read8_handler(state->maincpu->memory().space(AS_PROGRAM), 0x8000, 0x800f, 0, 0, deco16_io_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8000, 0x800f, FUNC(deco16_io_r)); else - memory_install_read_bank(state->maincpu->memory().space(AS_PROGRAM), 0x8000, 0x800f, 0, 0, "bank1"); + state->maincpu->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0x800f, "bank1"); } static READ8_HANDLER( prosoccr_bank_r ) @@ -181,9 +181,9 @@ static WRITE8_HANDLER( prosoccr_io_bank_w ) state->bank = data & 1; if (state->bank) - memory_install_read8_handler(state->maincpu->memory().space(AS_PROGRAM), 0x8000, 0x800f, 0, 0, deco16_io_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8000, 0x800f, FUNC(deco16_io_r)); else - memory_install_read8_handler(state->maincpu->memory().space(AS_PROGRAM), 0x8000, 0x800f, 0, 0, prosoccr_charram_r); + state->maincpu->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8000, 0x800f, FUNC(prosoccr_charram_r)); } @@ -1385,7 +1385,7 @@ static DRIVER_INIT( yellowcb ) { DRIVER_INIT_CALL(prosport); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa000, 0xa000, 0, 0, "IN0"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xa000, 0xa000, "IN0"); } static DRIVER_INIT( liberate ) diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c index c57eb1d915a..153b3e3b945 100644 --- a/src/mame/drivers/limenko.c +++ b/src/mame/drivers/limenko.c @@ -1041,7 +1041,7 @@ static READ32_HANDLER( spotty_speedup_r ) static DRIVER_INIT( dynabomb ) { limenko_state *state = machine->driver_data(); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe2784, 0xe2787, 0, 0, dynabomb_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xe2784, 0xe2787, FUNC(dynabomb_speedup_r) ); state->spriteram_bit = 1; } @@ -1049,7 +1049,7 @@ static DRIVER_INIT( dynabomb ) static DRIVER_INIT( legendoh ) { limenko_state *state = machine->driver_data(); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x32ab0, 0x32ab3, 0, 0, legendoh_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x32ab0, 0x32ab3, FUNC(legendoh_speedup_r) ); state->spriteram_bit = 1; } @@ -1057,7 +1057,7 @@ static DRIVER_INIT( legendoh ) static DRIVER_INIT( sb2003 ) { limenko_state *state = machine->driver_data(); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x135800, 0x135803, 0, 0, sb2003_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x135800, 0x135803, FUNC(sb2003_speedup_r) ); state->spriteram_bit = 1; } @@ -1078,7 +1078,7 @@ static DRIVER_INIT( spotty ) dst[x+2] = (src[x+1]&0x0f) >> 0; } - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6626c, 0x6626f, 0, 0, spotty_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6626c, 0x6626f, FUNC(spotty_speedup_r) ); state->spriteram_bit = 1; } diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c index d815d5d7ca4..9a824ac6c9f 100644 --- a/src/mame/drivers/lkage.c +++ b/src/mame/drivers/lkage.c @@ -977,9 +977,9 @@ static DRIVER_INIT( lkage ) static DRIVER_INIT( lkageb ) { lkage_state *state = machine->driver_data(); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf087, 0xf087, 0, 0, fake_status_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf062, 0xf062, FUNC(fake_mcu_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf087, 0xf087, FUNC(fake_status_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf062, 0xf062, FUNC(fake_mcu_w) ); state->sprite_dx=0; } diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c index 65036c8fe19..ab7f7c18662 100644 --- a/src/mame/drivers/looping.c +++ b/src/mame/drivers/looping.c @@ -899,7 +899,7 @@ static DRIVER_INIT( looping ) rom[i] = BITSWAP8(rom[i], 0,1,2,3,4,5,6,7); /* install protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7000, 0x7007, 0, 0, protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7000, 0x7007, FUNC(protection_r)); } diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c index d155607bb54..2f754c7c28b 100644 --- a/src/mame/drivers/m72.c +++ b/src/mame/drivers/m72.c @@ -375,16 +375,16 @@ INLINE DRIVER_INIT( m72_8751 ) device_t *dac = machine->device("dac"); state->protection_ram = auto_alloc_array(machine, UINT16, 0x10000/2); - memory_install_read_bank(program, 0xb0000, 0xbffff, 0, 0, "bank1"); - memory_install_write16_handler(program, 0xb0000, 0xb0fff, 0, 0, m72_main_mcu_w); + program->install_read_bank(0xb0000, 0xbffff, "bank1"); + program->install_legacy_write_handler(0xb0000, 0xb0fff, FUNC(m72_main_mcu_w)); memory_set_bankptr(machine, "bank1", state->protection_ram); - //memory_install_write16_handler(io, 0xc0, 0xc1, 0, 0, loht_sample_trigger_w); - memory_install_write16_handler(io, 0xc0, 0xc1, 0, 0, m72_main_mcu_sound_w); + //io->install_legacy_write_handler(0xc0, 0xc1, FUNC(loht_sample_trigger_w)); + io->install_legacy_write_handler(0xc0, 0xc1, FUNC(m72_main_mcu_sound_w)); /* sound cpu */ - memory_install_write8_device_handler(sndio, dac, 0x82, 0x82, 0xff, 0, m72_snd_cpu_sample_w); - memory_install_read8_handler (sndio, 0x84, 0x84, 0xff, 0, m72_snd_cpu_sample_r); + sndio->install_legacy_write_handler(*dac, 0x82, 0x82, 0xff, 0, FUNC(m72_snd_cpu_sample_w)); + sndio->install_legacy_read_handler (0x84, 0x84, 0xff, 0, FUNC(m72_snd_cpu_sample_r)); /* lohtb2 */ #if 0 @@ -750,9 +750,9 @@ static void install_protection_handler(running_machine *machine, const UINT8 *co state->protection_ram = auto_alloc_array(machine, UINT16, 0x1000/2); state->protection_code = code; state->protection_crc = crc; - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb0000, 0xb0fff, 0, 0, "bank1"); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb0ffa, 0xb0ffb, 0, 0, protection_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb0000, 0xb0fff, 0, 0, protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xb0000, 0xb0fff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xb0ffa, 0xb0ffb, FUNC(protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb0000, 0xb0fff, FUNC(protection_w)); memory_set_bankptr(machine, "bank1", state->protection_ram); } @@ -760,28 +760,28 @@ static DRIVER_INIT( bchopper ) { install_protection_handler(machine, bchopper_code,bchopper_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, bchopper_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(bchopper_sample_trigger_w)); } static DRIVER_INIT( mrheli ) { install_protection_handler(machine, bchopper_code,mrheli_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, bchopper_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(bchopper_sample_trigger_w)); } static DRIVER_INIT( nspirit ) { install_protection_handler(machine, nspirit_code,nspirit_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, nspirit_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(nspirit_sample_trigger_w)); } static DRIVER_INIT( imgfight ) { install_protection_handler(machine, imgfight_code,imgfight_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, imgfight_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(imgfight_sample_trigger_w)); } static DRIVER_INIT( loht ) @@ -789,7 +789,7 @@ static DRIVER_INIT( loht ) m72_state *state = machine->driver_data(); install_protection_handler(machine, loht_code,loht_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, loht_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(loht_sample_trigger_w)); /* since we skip the startup tests, clear video RAM to prevent garbage on title screen */ memset(state->videoram2,0,0x4000); @@ -799,33 +799,33 @@ static DRIVER_INIT( xmultiplm72 ) { install_protection_handler(machine, xmultiplm72_code,xmultiplm72_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, xmultiplm72_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(xmultiplm72_sample_trigger_w)); } static DRIVER_INIT( dbreedm72 ) { install_protection_handler(machine, dbreedm72_code,dbreedm72_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, dbreedm72_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(dbreedm72_sample_trigger_w)); } static DRIVER_INIT( airduel ) { install_protection_handler(machine, airduel_code,airduel_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, airduel_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(airduel_sample_trigger_w)); } static DRIVER_INIT( dkgenm72 ) { install_protection_handler(machine, dkgenm72_code,dkgenm72_crc); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, dkgenm72_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(dkgenm72_sample_trigger_w)); } static DRIVER_INIT( gallop ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_IO), 0xc0, 0xc1, 0, 0, gallop_sample_trigger_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xc0, 0xc1, FUNC(gallop_sample_trigger_w)); } diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c index 12577f4fb13..3e90c90fccc 100644 --- a/src/mame/drivers/m92.c +++ b/src/mame/drivers/m92.c @@ -2155,7 +2155,7 @@ static DRIVER_INIT( majtitl2 ) init_m92(machine, 1); /* This game has an eprom on the game board */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0000, 0xf3fff, 0, 0, m92_eeprom_r, m92_eeprom_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0000, 0xf3fff, FUNC(m92_eeprom_r), FUNC(m92_eeprom_w)); state->game_kludge = 2; } @@ -2178,7 +2178,7 @@ static DRIVER_INIT( lethalth ) state->irq_vectorbase = 0x20; /* NOP out the bankswitcher */ - memory_nop_write(machine->device("maincpu")->memory().space(AS_IO), 0x20, 0x21, 0, 0); + machine->device("maincpu")->memory().space(AS_IO)->nop_write(0x20, 0x21); } static DRIVER_INIT( nbbatman ) diff --git a/src/mame/drivers/macrossp.c b/src/mame/drivers/macrossp.c index 2e142f5da85..6ffbba97687 100644 --- a/src/mame/drivers/macrossp.c +++ b/src/mame/drivers/macrossp.c @@ -792,13 +792,13 @@ static WRITE32_HANDLER( quizmoon_speedup_w ) static DRIVER_INIT( macrossp ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf10158, 0xf1015b, 0, 0, macrossp_speedup_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf10158, 0xf1015b, FUNC(macrossp_speedup_w) ); } static DRIVER_INIT( quizmoon ) { #ifdef UNUSED_FUNCTION - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf00020, 0xf00023, 0, 0, quizmoon_speedup_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf00020, 0xf00023, FUNC(quizmoon_speedup_w) ); #endif } diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c index 9f0a92c9972..1386b6c4835 100644 --- a/src/mame/drivers/mappy.c +++ b/src/mame/drivers/mappy.c @@ -2240,13 +2240,13 @@ static DRIVER_INIT( grobda ) the DAC might be built-in after all. */ device_t *dac = machine->device("dac"); - memory_install_write8_device_handler(machine->device("sub")->memory().space(AS_PROGRAM), dac, 0x0002, 0x0002, 0, 0, grobda_DAC_w ); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*dac, 0x0002, 0x0002, FUNC(grobda_DAC_w) ); } static DRIVER_INIT( digdug2 ) { /* appears to not use the watchdog */ - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0x8000, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x8000, 0x8000); } diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c index 4b6fcd8792e..94ed9fcc3c4 100644 --- a/src/mame/drivers/mcr.c +++ b/src/mame/drivers/mcr.c @@ -2580,7 +2580,7 @@ static DRIVER_INIT( twotiger ) mcr_init(machine, 90010, 91399, 90913); mcr_sound_init(machine, MCR_SSIO); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe800, 0xefff, 0, 0x1000, twotiger_videoram_r, twotiger_videoram_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe800, 0xefff, 0, 0x1000, FUNC(twotiger_videoram_r), FUNC(twotiger_videoram_w)); } diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c index 0d0ec6a948b..da96527fc0f 100644 --- a/src/mame/drivers/mcr3.c +++ b/src/mame/drivers/mcr3.c @@ -1541,16 +1541,16 @@ static void mcr_common_init(running_machine *machine, int sound_board) static DRIVER_INIT( demoderm ) { mcr_common_init(machine, MCR_TURBO_CHIP_SQUEAK); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x01, 0x01, 0, 0, demoderm_ip1_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x02, 0x02, 0, 0, demoderm_ip2_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, demoderm_op6_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x01, 0x01, FUNC(demoderm_ip1_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x02, 0x02, FUNC(demoderm_ip2_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(demoderm_op6_w)); } static DRIVER_INIT( sarge ) { mcr_common_init(machine, MCR_TURBO_CHIP_SQUEAK); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, turbocs_data_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(turbocs_data_w)); } @@ -1558,10 +1558,10 @@ static DRIVER_INIT( maxrpm ) { mcr3_state *state = machine->driver_data(); mcr_common_init(machine, MCR_TURBO_CHIP_SQUEAK); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x01, 0x01, 0, 0, maxrpm_ip1_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x02, 0x02, 0, 0, maxrpm_ip2_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x05, 0x05, 0, 0, maxrpm_op5_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, maxrpm_op6_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x01, 0x01, FUNC(maxrpm_ip1_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x02, 0x02, FUNC(maxrpm_ip2_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x05, 0x05, FUNC(maxrpm_op5_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(maxrpm_op6_w)); state_save_register_global(machine, state->maxrpm_adc_control); state_save_register_global(machine, state->maxrpm_adc_select); @@ -1574,26 +1574,26 @@ static DRIVER_INIT( maxrpm ) static DRIVER_INIT( rampage ) { mcr_common_init(machine, MCR_SOUNDS_GOOD); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x04, 0, 0, rampage_ip4_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, rampage_op6_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x04, 0x04, FUNC(rampage_ip4_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(rampage_op6_w)); } static DRIVER_INIT( powerdrv ) { mcr_common_init(machine, MCR_SOUNDS_GOOD); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x02, 0x02, 0, 0, powerdrv_ip2_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x05, 0x05, 0, 0, powerdrv_op5_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, powerdrv_op6_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x02, 0x02, FUNC(powerdrv_ip2_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x05, 0x05, FUNC(powerdrv_op5_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(powerdrv_op6_w)); } static DRIVER_INIT( stargrds ) { mcr_common_init(machine, MCR_SOUNDS_GOOD); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, stargrds_ip0_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x05, 0x05, 0, 0, stargrds_op5_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x06, 0x06, 0, 0, stargrds_op6_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(stargrds_ip0_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x05, 0x05, FUNC(stargrds_op5_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x06, 0x06, FUNC(stargrds_op6_w)); } @@ -1635,7 +1635,7 @@ static DRIVER_INIT( turbotag ) machine->device("csdcpu")->suspend(SUSPEND_REASON_DISABLE, 1); /* kludge for bad ROM read */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0b53, 0x0b53, 0, 0, turbotag_kludge_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0b53, 0x0b53, FUNC(turbotag_kludge_r)); } diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c index fca06aec4d5..b19f2758005 100644 --- a/src/mame/drivers/mcr68.c +++ b/src/mame/drivers/mcr68.c @@ -1575,7 +1575,7 @@ static DRIVER_INIT( xenophob ) state->timing_factor = attotime::from_hz(machine->device("maincpu")->unscaled_clock() / 10) * (256 + 16); /* install control port handler */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0cffff, 0, 0, xenophobe_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0c0000, 0x0cffff, FUNC(xenophobe_control_w)); } @@ -1588,9 +1588,9 @@ static DRIVER_INIT( spyhunt2 ) state->timing_factor = attotime::from_hz(machine->device("maincpu")->unscaled_clock() / 10) * (256 + 16); /* analog port handling is a bit tricky */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0cffff, 0, 0, spyhunt2_control_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0d0000, 0x0dffff, 0, 0, spyhunt2_port_0_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0e0000, 0x0effff, 0, 0, spyhunt2_port_1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0c0000, 0x0cffff, FUNC(spyhunt2_control_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0d0000, 0x0dffff, FUNC(spyhunt2_port_0_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0e0000, 0x0effff, FUNC(spyhunt2_port_1_r)); } @@ -1605,10 +1605,10 @@ static DRIVER_INIT( blasted ) state->timing_factor = attotime::from_hz(machine->device("maincpu")->unscaled_clock() / 10) * (256 + 16); /* handle control writes */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0cffff, 0, 0, blasted_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0c0000, 0x0cffff, FUNC(blasted_control_w)); /* 6840 is mapped to the lower 8 bits */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0a0000, 0x0a000f, 0, 0, mcr68_6840_lower_r, mcr68_6840_lower_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x0a0000, 0x0a000f, FUNC(mcr68_6840_lower_r), FUNC(mcr68_6840_lower_w)); } static DRIVER_INIT( intlaser ) @@ -1620,7 +1620,7 @@ static DRIVER_INIT( intlaser ) state->timing_factor = attotime::from_hz(machine->device("maincpu")->unscaled_clock() / 10) * (256 + 16); /* handle control writes */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0cffff, 0, 0, blasted_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0c0000, 0x0cffff, FUNC(blasted_control_w)); } @@ -1635,13 +1635,13 @@ static DRIVER_INIT( archrivl ) state->timing_factor = attotime::from_hz(machine->device("maincpu")->unscaled_clock() / 10) * (256 + 16); /* handle control writes */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0c0000, 0x0cffff, 0, 0, archrivl_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0c0000, 0x0cffff, FUNC(archrivl_control_w)); /* 49-way joystick handling is a bit tricky */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0e0000, 0x0effff, 0, 0, archrivl_port_1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0e0000, 0x0effff, FUNC(archrivl_port_1_r)); /* 6840 is mapped to the lower 8 bits */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0a0000, 0x0a000f, 0, 0, mcr68_6840_lower_r, mcr68_6840_lower_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x0a0000, 0x0a000f, FUNC(mcr68_6840_lower_r), FUNC(mcr68_6840_lower_w)); } diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c index dbf40347eac..bd43d4c9d6d 100644 --- a/src/mame/drivers/mediagx.c +++ b/src/mame/drivers/mediagx.c @@ -1255,7 +1255,7 @@ static void install_speedups(running_machine *machine, const speedup_entry *entr state->speedup_count = count; for (i = 0; i < count; i++) - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), entries[i].offset, entries[i].offset + 3, 0, 0, speedup_handlers[i]); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(entries[i].offset, entries[i].offset + 3, FUNC(speedup_handlers[i])); #ifdef MAME_DEBUG machine->add_notifier(MACHINE_NOTIFY_EXIT, report_speedups); diff --git a/src/mame/drivers/megadrvb.c b/src/mame/drivers/megadrvb.c index 1fa4271cfda..32555f30800 100644 --- a/src/mame/drivers/megadrvb.c +++ b/src/mame/drivers/megadrvb.c @@ -664,8 +664,8 @@ static DRIVER_INIT( aladmdb ) #endif // 220000 = writes to mcu? 330000 = reads? - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x220000, 0x220001, 0, 0, aladmdb_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x330000, 0x330001, 0, 0, aladmdb_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x220000, 0x220001, FUNC(aladmdb_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x330000, 0x330001, FUNC(aladmdb_r)); megadrive_6buttons_pad = 0; DRIVER_INIT_CALL(megadrij); @@ -714,7 +714,7 @@ static DRIVER_INIT( mk3mdb ) rom[0x07] = 0x02; rom[0x06] = 0x10; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770070, 0x770075, 0, 0, mk3mdb_dsw_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770070, 0x770075, FUNC(mk3mdb_dsw_r) ); megadrive_6buttons_pad = 1; DRIVER_INIT_CALL(megadriv); @@ -722,13 +722,13 @@ static DRIVER_INIT( mk3mdb ) static DRIVER_INIT( ssf2mdb ) { - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xA130F0, 0xA130FF, 0, 0); // custom banking is disabled (!) - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x5fffff, 0, 0, "bank5"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x5fffff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xA130F0, 0xA130FF); // custom banking is disabled (!) + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x400000, 0x5fffff, "bank5"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x400000, 0x5fffff); memory_set_bankptr(machine, "bank5", machine->region( "maincpu" )->base() + 0x400000 ); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770070, 0x770075, 0, 0, ssf2mdb_dsw_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770070, 0x770075, FUNC(ssf2mdb_dsw_r) ); megadrive_6buttons_pad = 1; DRIVER_INIT_CALL(megadrij); @@ -770,7 +770,7 @@ static DRIVER_INIT( srmdb ) rom[0x06] = 0xd2; rom[0x07] = 0x00; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770070, 0x770075, 0, 0, srmdb_dsw_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770070, 0x770075, FUNC(srmdb_dsw_r) ); megadrive_6buttons_pad = 0; DRIVER_INIT_CALL(megadriv); @@ -778,11 +778,11 @@ static DRIVER_INIT( srmdb ) static DRIVER_INIT(topshoot) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200050, 0x200051, 0, 0, topshoot_200051_r ); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200042, 0x200043, 0, 0, "IN0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200044, 0x200045, 0, 0, "IN1"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200046, 0x200047, 0, 0, "IN2"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200048, 0x200049, 0, 0, "IN3"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200050, 0x200051, FUNC(topshoot_200051_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x200042, 0x200043, "IN0"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x200044, 0x200045, "IN1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x200046, 0x200047, "IN2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x200048, 0x200049, "IN3"); megadrive_6buttons_pad = 0; DRIVER_INIT_CALL(megadriv); diff --git a/src/mame/drivers/megaplay.c b/src/mame/drivers/megaplay.c index d7667daa27f..c4cbe0a86a1 100644 --- a/src/mame/drivers/megaplay.c +++ b/src/mame/drivers/megaplay.c @@ -885,13 +885,13 @@ static DRIVER_INIT(megaplay) mplay_start(machine); /* for now ... */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa10000, 0xa1001f, 0, 0, megaplay_io_read, megaplay_io_write); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa10000, 0xa1001f, FUNC(megaplay_io_read), FUNC(megaplay_io_write)); /* megaplay has ram shared with the bios cpu here */ - memory_install_ram(machine->device("genesis_snd_z80")->memory().space(AS_PROGRAM), 0x2000, 0x3fff, 0, 0, &state->ic36_ram[0]); + machine->device("genesis_snd_z80")->memory().space(AS_PROGRAM)->install_ram(0x2000, 0x3fff, &state->ic36_ram[0]); /* instead of a RAM mirror the 68k sees the extra ram of the 2nd z80 too */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa02000, 0xa03fff, 0, 0, megadriv_68k_read_z80_extra_ram, megadriv_68k_write_z80_extra_ram); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa02000, 0xa03fff, FUNC(megadriv_68k_read_z80_extra_ram), FUNC(megadriv_68k_write_z80_extra_ram)); DRIVER_INIT_CALL(megatech_bios); // create the SMS vdp etc. diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c index 22887a1f8fb..fd87756361c 100644 --- a/src/mame/drivers/megasys1.c +++ b/src/mame/drivers/megasys1.c @@ -3702,7 +3702,7 @@ static READ16_HANDLER( edfbl_input_r ) static DRIVER_INIT( edfbl ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe0002, 0xe000b, 0, 0, edfbl_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xe0002, 0xe000b, FUNC(edfbl_input_r)); } @@ -3761,13 +3761,13 @@ static DRIVER_INIT( jitsupro ) RAM[0x438/2] = 0x4e71; // /* the sound code writes oki commands to both the lsb and msb */ - memory_install_write16_device_handler(machine->device("soundcpu")->memory().space(AS_PROGRAM), oki1, 0xa0000, 0xa0003, 0, 0, okim6295_both_w); - memory_install_write16_device_handler(machine->device("soundcpu")->memory().space(AS_PROGRAM), oki2, 0xc0000, 0xc0003, 0, 0, okim6295_both_w); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*oki1, 0xa0000, 0xa0003, FUNC(okim6295_both_w)); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*oki2, 0xc0000, 0xc0003, FUNC(okim6295_both_w)); } static DRIVER_INIT( peekaboo ) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100000, 0x100001, 0, 0, protection_peekaboo_r, protection_peekaboo_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x100000, 0x100001, FUNC(protection_peekaboo_r), FUNC(protection_peekaboo_w)); } static DRIVER_INIT( phantasm ) @@ -3814,7 +3814,7 @@ static DRIVER_INIT( soldamj ) astyanax_rom_decode(machine, "maincpu"); /* Sprite RAM is mirrored */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8c000, 0x8cfff, 0, 0, soldamj_spriteram16_r, soldamj_spriteram16_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8c000, 0x8cfff, FUNC(soldamj_spriteram16_r), FUNC(soldamj_spriteram16_w)); } static DRIVER_INIT( soldam ) @@ -3822,7 +3822,7 @@ static DRIVER_INIT( soldam ) phantasm_rom_decode(machine, "maincpu"); /* Sprite RAM is mirrored */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8c000, 0x8cfff, 0, 0, soldamj_spriteram16_r, soldamj_spriteram16_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8c000, 0x8cfff, FUNC(soldamj_spriteram16_r), FUNC(soldamj_spriteram16_w)); } @@ -3847,7 +3847,7 @@ static DRIVER_INIT( monkelf ) UINT16 *ROM = (UINT16*)machine->region("maincpu")->base(); ROM[0x00744/2] = 0x4e71; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe0000, 0xe000f, 0, 0, monkelf_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xe0000, 0xe000f, FUNC(monkelf_input_r)); state->ram += 0x10000/2; diff --git a/src/mame/drivers/meritm.c b/src/mame/drivers/meritm.c index 446af87b9a5..207f8c1fa08 100644 --- a/src/mame/drivers/meritm.c +++ b/src/mame/drivers/meritm.c @@ -1831,7 +1831,7 @@ static DRIVER_INIT(megat3te) ds1204_init(machine, megat3_ds1204_key, megat3_ds1204_nvram); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfff8, 0xffff, 0, 0, meritm_ds1644_r, meritm_ds1644_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfff8, 0xffff, FUNC(meritm_ds1644_r), FUNC(meritm_ds1644_w) ); }; @@ -1850,7 +1850,7 @@ static DRIVER_INIT(megat4te) ds1204_init(machine, 0, megat4te_ds1204_nvram); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfff8, 0xffff, 0, 0, meritm_ds1644_r, meritm_ds1644_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfff8, 0xffff, FUNC(meritm_ds1644_r), FUNC(meritm_ds1644_w) ); }; @@ -1861,7 +1861,7 @@ static DRIVER_INIT(megat4st) ds1204_init(machine, 0, megat4te_ds1204_nvram); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfff8, 0xffff, 0, 0, meritm_ds1644_r, meritm_ds1644_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfff8, 0xffff, FUNC(meritm_ds1644_r), FUNC(meritm_ds1644_w) ); }; @@ -1881,7 +1881,7 @@ static DRIVER_INIT(megat5t) ds1204_init(machine, 0, megat5_ds1204_nvram); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfff8, 0xffff, 0, 0, meritm_ds1644_r, meritm_ds1644_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfff8, 0xffff, FUNC(meritm_ds1644_r), FUNC(meritm_ds1644_w) ); } diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c index e5ece8626f0..a2944dbaa8f 100644 --- a/src/mame/drivers/midvunit.c +++ b/src/mame/drivers/midvunit.c @@ -1600,7 +1600,7 @@ static void init_crusnusa_common(running_machine *machine, offs_t speedup) state->adc_shift = 24; /* speedups */ - state->generic_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), speedup, speedup + 1, 0, 0, generic_speedup_r); + state->generic_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(speedup, speedup + 1, FUNC(generic_speedup_r)); } static DRIVER_INIT( crusnusa ) { init_crusnusa_common(machine, 0xc93e); } static DRIVER_INIT( crusnu40 ) { init_crusnusa_common(machine, 0xc957); } @@ -1614,21 +1614,21 @@ static void init_crusnwld_common(running_machine *machine, offs_t speedup) state->adc_shift = 16; /* control register is different */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x994000, 0x994000, 0, 0, crusnwld_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x994000, 0x994000, FUNC(crusnwld_control_w)); /* valid values are 450 or 460 */ midway_serial_pic_init(machine, 450); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x991030, 0x991030, 0, 0, offroadc_serial_status_r); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x996000, 0x996000, 0, 0, offroadc_serial_data_r); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x996000, 0x996000, 0, 0, offroadc_serial_data_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x991030, 0x991030, FUNC(offroadc_serial_status_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x996000, 0x996000, FUNC(offroadc_serial_data_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x996000, 0x996000, FUNC(offroadc_serial_data_w)); /* install strange protection device */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9d0000, 0x9d1fff, 0, 0, bit_data_r); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9d0000, 0x9d0000, 0, 0, bit_reset_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x9d0000, 0x9d1fff, FUNC(bit_data_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x9d0000, 0x9d0000, FUNC(bit_reset_w)); /* speedups */ if (speedup) - state->generic_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), speedup, speedup + 1, 0, 0, generic_speedup_r); + state->generic_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(speedup, speedup + 1, FUNC(generic_speedup_r)); } static DRIVER_INIT( crusnwld ) { init_crusnwld_common(machine, 0xd4c0); } #if 0 @@ -1643,15 +1643,15 @@ static DRIVER_INIT( offroadc ) state->adc_shift = 16; /* control register is different */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x994000, 0x994000, 0, 0, crusnwld_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x994000, 0x994000, FUNC(crusnwld_control_w)); /* valid values are 230 or 234 */ midway_serial_pic2_init(machine, 230, 94); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x991030, 0x991030, 0, 0, offroadc_serial_status_r); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x996000, 0x996000, 0, 0, offroadc_serial_data_r, offroadc_serial_data_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x991030, 0x991030, FUNC(offroadc_serial_status_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x996000, 0x996000, FUNC(offroadc_serial_data_r), FUNC(offroadc_serial_data_w)); /* speedups */ - state->generic_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x195aa, 0x195aa, 0, 0, generic_speedup_r); + state->generic_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x195aa, 0x195aa, FUNC(generic_speedup_r)); } @@ -1677,7 +1677,7 @@ static DRIVER_INIT( wargods ) midway_serial_pic2_set_default_nvram(default_nvram); /* speedups */ - state->generic_speedup = memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2f4c, 0x2f4c, 0, 0, generic_speedup_r); + state->generic_speedup = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2f4c, 0x2f4c, FUNC(generic_speedup_r)); } diff --git a/src/mame/drivers/midzeus.c b/src/mame/drivers/midzeus.c index 27c2671c813..51a565cedf2 100644 --- a/src/mame/drivers/midzeus.c +++ b/src/mame/drivers/midzeus.c @@ -1413,7 +1413,7 @@ static DRIVER_INIT( invasn ) { dcs2_init(machine, 0, 0); midway_ioasic_init(machine, MIDWAY_IOASIC_STANDARD, 468/* or 488 */, 94, NULL); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9c0000, 0x9c0000, 0, 0, invasn_gun_r, invasn_gun_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x9c0000, 0x9c0000, FUNC(invasn_gun_r), FUNC(invasn_gun_w)); } @@ -1423,8 +1423,8 @@ static DRIVER_INIT( crusnexo ) midway_ioasic_init(machine, MIDWAY_IOASIC_STANDARD, 472/* or 476,477,478,110 */, 99, NULL); memory_configure_bank(machine, "bank1", 0, 3, machine->region("user2")->base(), 0x400000*4); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9b0004, 0x9b0007, 0, 0, crusnexo_leds_r, crusnexo_leds_w); - memory_install_write32_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8d0009, 0x8d000a, 0, 0, keypad_select_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x9b0004, 0x9b0007, FUNC(crusnexo_leds_r), FUNC(crusnexo_leds_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler (0x8d0009, 0x8d000a, FUNC(keypad_select_w)); } diff --git a/src/mame/drivers/mitchell.c b/src/mame/drivers/mitchell.c index d57c0362da0..2bb63fa068e 100644 --- a/src/mame/drivers/mitchell.c +++ b/src/mame/drivers/mitchell.c @@ -2210,8 +2210,8 @@ static DRIVER_INIT( mgakuen ) mitchell_state *state = machine->driver_data(); state->input_type = 1; configure_banks(machine); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_IO), 0x03, 0x03, 0, 0, "DSW0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x04, 0, 0, "DSW1"); + machine->device("maincpu")->memory().space(AS_IO)->install_read_port(0x03, 0x03, "DSW0"); + machine->device("maincpu")->memory().space(AS_IO)->install_read_port(0x04, 0x04, "DSW1"); } static DRIVER_INIT( mgakuen2 ) { diff --git a/src/mame/drivers/model2.c b/src/mame/drivers/model2.c index c715f987e26..64cabffdcb3 100644 --- a/src/mame/drivers/model2.c +++ b/src/mame/drivers/model2.c @@ -4995,7 +4995,7 @@ ROM_END static DRIVER_INIT( genprot ) { model2_state *state = machine->driver_data(); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d80000, 0x01dfffff, 0, 0, model2_prot_r, model2_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w)); state->protstate = state->protpos = 0; } @@ -5004,7 +5004,7 @@ static DRIVER_INIT( pltkids ) model2_state *state = machine->driver_data(); UINT32 *ROM = (UINT32 *)machine->region("maincpu")->base(); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d80000, 0x01dfffff, 0, 0, model2_prot_r, model2_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w)); state->protstate = state->protpos = 0; // fix bug in program: it destroys the interrupt table and never fixes it @@ -5016,7 +5016,7 @@ static DRIVER_INIT( zerogun ) model2_state *state = machine->driver_data(); UINT32 *ROM = (UINT32 *)machine->region("maincpu")->base(); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d80000, 0x01dfffff, 0, 0, model2_prot_r, model2_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w)); state->protstate = state->protpos = 0; // fix bug in program: it destroys the interrupt table and never fixes it @@ -5025,7 +5025,7 @@ static DRIVER_INIT( zerogun ) static DRIVER_INIT( daytonam ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x240000, 0x24ffff, 0, 0, maxx_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x240000, 0x24ffff, FUNC(maxx_r) ); } /* very crude support for let the game set itself into stand-alone mode */ @@ -5061,8 +5061,8 @@ static DRIVER_INIT( sgt24h ) model2_state *state = machine->driver_data(); UINT32 *ROM = (UINT32 *)machine->region("maincpu")->base(); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d80000, 0x01dfffff, 0, 0, model2_prot_r, model2_prot_w); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a10000, 0x01a1ffff, 0, 0, jaleco_network_r, jaleco_network_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01a10000, 0x01a1ffff, FUNC(jaleco_network_r), FUNC(jaleco_network_w)); state->protstate = state->protpos = 0; @@ -5072,7 +5072,7 @@ static DRIVER_INIT( sgt24h ) static DRIVER_INIT( overrev ) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a10000, 0x01a1ffff, 0, 0, jaleco_network_r, jaleco_network_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01a10000, 0x01a1ffff, FUNC(jaleco_network_r), FUNC(jaleco_network_w)); //TODO: cache patch? } @@ -5083,7 +5083,7 @@ static DRIVER_INIT( doa ) model2_state *state = machine->driver_data(); UINT32 *ROM = (UINT32 *)machine->region("maincpu")->base(); - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d80000, 0x01dfffff, 0, 0, model2_prot_r, model2_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x01d80000, 0x01dfffff, FUNC(model2_prot_r), FUNC(model2_prot_w)); state->protstate = state->protpos = 0; ROM[0x630/4] = 0x08000004; @@ -5092,12 +5092,12 @@ static DRIVER_INIT( doa ) static DRIVER_INIT( rchase2 ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01c00008, 0x01c0000b, 0, 0, rchase2_devices_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01c00008, 0x01c0000b, FUNC(rchase2_devices_w)); } static DRIVER_INIT( srallyc ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01c00008, 0x01c0000b, 0, 0, srallyc_devices_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01c00008, 0x01c0000b, FUNC(srallyc_devices_w)); } diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c index acb621d8033..10639cd4c78 100644 --- a/src/mame/drivers/model3.c +++ b/src/mame/drivers/model3.c @@ -5187,35 +5187,35 @@ static DRIVER_INIT( model3_10 ) { interleave_vroms(machine); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc0000000, 0xc00000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc0000000, 0xc00000ff, FUNC(scsi_r), FUNC(scsi_w) ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc105_addr_r, mpc105_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc105_data_r, mpc105_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc105_reg_r, mpc105_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc105_addr_r), FUNC(mpc105_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc105_data_r), FUNC(mpc105_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc105_reg_r), FUNC(mpc105_reg_w) ); } static DRIVER_INIT( model3_15 ) { interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc105_addr_r, mpc105_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc105_data_r, mpc105_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc105_reg_r, mpc105_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc105_addr_r), FUNC(mpc105_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc105_data_r), FUNC(mpc105_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc105_reg_r), FUNC(mpc105_reg_w) ); } static DRIVER_INIT( model3_20 ) { interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc2000000, 0xc20000ff, 0, 0, real3d_dma_r, real3d_dma_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc2000000, 0xc20000ff, FUNC(real3d_dma_r), FUNC(real3d_dma_w) ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfec00000, 0xfedfffff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfee00000, 0xfeffffff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc106_reg_r, mpc106_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfec00000, 0xfedfffff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfee00000, 0xfeffffff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc106_reg_r), FUNC(mpc106_reg_w) ); } static DRIVER_INIT( lostwsga ) @@ -5224,7 +5224,7 @@ static DRIVER_INIT( lostwsga ) DRIVER_INIT_CALL(model3_15); /* TODO: there's an M68K device at 0xC0000000 - FF, maybe lightgun controls ? */ - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc1000000, 0xc10000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc1000000, 0xc10000ff, FUNC(scsi_r), FUNC(scsi_w) ); rom[0x7374f0/4] = 0x38840004; /* This seems to be an actual bug in the original code */ } @@ -5235,7 +5235,7 @@ static DRIVER_INIT( scud ) DRIVER_INIT_CALL(model3_15); /* TODO: network device at 0xC0000000 - FF */ - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf9000000, 0xf90000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf9000000, 0xf90000ff, FUNC(scsi_r), FUNC(scsi_w) ); rom[(0x71275c^4)/4] = 0x60000000; rom[(0x71277c^4)/4] = 0x60000000; @@ -5247,7 +5247,7 @@ static DRIVER_INIT( scudp ) DRIVER_INIT_CALL(model3_15); /* TODO: network device at 0xC0000000 - FF */ - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc1000000, 0xc10000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc1000000, 0xc10000ff, FUNC(scsi_r), FUNC(scsi_w) ); rom[(0x713724^4)/4] = 0x60000000; rom[(0x713744^4)/4] = 0x60000000; @@ -5263,7 +5263,7 @@ static DRIVER_INIT( lemans24 ) UINT32 *rom = (UINT32*)machine->region("user1")->base(); DRIVER_INIT_CALL(model3_15); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc1000000, 0xc10000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc1000000, 0xc10000ff, FUNC(scsi_r), FUNC(scsi_w) ); rom[(0x73fe38^4)/4] = 0x38840004; /* This seems to be an actual bug in the original code */ @@ -5294,15 +5294,15 @@ static DRIVER_INIT( vs215 ) rom[(0x70e710^4)/4] = 0x60000000; interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf9000000, 0xf90000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf9000000, 0xf90000ff, FUNC(scsi_r), FUNC(scsi_w) ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfec00000, 0xfedfffff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfee00000, 0xfeffffff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc106_reg_r, mpc106_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfec00000, 0xfedfffff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfee00000, 0xfeffffff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc106_reg_r), FUNC(mpc106_reg_w) ); } static DRIVER_INIT( vs29815 ) @@ -5313,15 +5313,15 @@ static DRIVER_INIT( vs29815 ) rom[(0x60290c^4)/4] = 0x60000000; interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf9000000, 0xf90000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf9000000, 0xf90000ff, FUNC(scsi_r), FUNC(scsi_w) ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfec00000, 0xfedfffff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfee00000, 0xfeffffff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc106_reg_r, mpc106_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfec00000, 0xfedfffff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfee00000, 0xfeffffff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc106_reg_r), FUNC(mpc106_reg_w) ); } static DRIVER_INIT( bass ) @@ -5332,27 +5332,27 @@ static DRIVER_INIT( bass ) rom[(0x7999c8^4)/4] = 0x60000000; interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf9000000, 0xf90000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf9000000, 0xf90000ff, FUNC(scsi_r), FUNC(scsi_w) ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfec00000, 0xfedfffff, 0, 0, mpc106_addr_r, mpc106_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfee00000, 0xfeffffff, 0, 0, mpc106_data_r, mpc106_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc106_reg_r, mpc106_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfec00000, 0xfedfffff, FUNC(mpc106_addr_r), FUNC(mpc106_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xfee00000, 0xfeffffff, FUNC(mpc106_data_r), FUNC(mpc106_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc106_reg_r), FUNC(mpc106_reg_w) ); } static DRIVER_INIT( getbass ) { interleave_vroms(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xff000000, 0xff7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xff000000, 0xff7fffff, "bank1" ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf9000000, 0xf90000ff, 0, 0, scsi_r, scsi_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf9000000, 0xf90000ff, FUNC(scsi_r), FUNC(scsi_w) ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0800cf8, 0xf0800cff, 0, 0, mpc105_addr_r, mpc105_addr_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf0c00cf8, 0xf0c00cff, 0, 0, mpc105_data_r, mpc105_data_w ); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf8fff000, 0xf8fff0ff, 0, 0, mpc105_reg_r, mpc105_reg_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0800cf8, 0xf0800cff, FUNC(mpc105_addr_r), FUNC(mpc105_addr_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf0c00cf8, 0xf0c00cff, FUNC(mpc105_data_r), FUNC(mpc105_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xf8fff000, 0xf8fff0ff, FUNC(mpc105_reg_r), FUNC(mpc105_reg_w) ); } static DRIVER_INIT( vs2 ) @@ -5423,7 +5423,7 @@ static DRIVER_INIT( harley ) DRIVER_INIT_CALL(model3_20); state->network_ram = auto_alloc_array_clear(machine, UINT64, 0x10000); - memory_install_readwrite64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc0000000, 0xc00fffff, 0, 0, network_r, network_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc0000000, 0xc00fffff, FUNC(network_r), FUNC(network_w) ); rom[(0x50e8d4^4)/4] = 0x60000000; rom[(0x50e8f4^4)/4] = 0x60000000; @@ -5491,8 +5491,8 @@ static DRIVER_INIT( daytona2 ) UINT32 *rom = (UINT32*)machine->region("user1")->base(); DRIVER_INIT_CALL(model3_20); - memory_install_write64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc3800000, 0xc3800007, 0, 0, daytona2_rombank_w ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc3000000, 0xc37fffff, 0, 0, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc3800000, 0xc3800007, FUNC(daytona2_rombank_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xc3000000, 0xc37fffff, "bank2" ); //rom[(0x68468c^4)/4] = 0x60000000; rom[(0x6063c4^4)/4] = 0x60000000; @@ -5505,8 +5505,8 @@ static DRIVER_INIT( dayto2pe ) UINT32 *rom = (UINT32*)machine->region("user1")->base(); DRIVER_INIT_CALL(model3_20); - memory_install_write64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc3800000, 0xc3800007, 0, 0, daytona2_rombank_w ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc3000000, 0xc37fffff, 0, 0, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc3800000, 0xc3800007, FUNC(daytona2_rombank_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xc3000000, 0xc37fffff, "bank2" ); rom[(0x606784^4)/4] = 0x60000000; rom[(0x69a3fc^4)/4] = 0x60000000; // jump to encrypted code diff --git a/src/mame/drivers/mpu4drvr.c b/src/mame/drivers/mpu4drvr.c index a63ed5be3e9..ea70d25b470 100644 --- a/src/mame/drivers/mpu4drvr.c +++ b/src/mame/drivers/mpu4drvr.c @@ -2832,10 +2832,10 @@ static DRIVER_INIT (mating) device_t *device = machine->device("oki"); /* The Mating Game has an extra 256kB RAM on the program card */ - memory_install_ram(space, 0x600000, 0x63ffff, 0, 0, NULL); + space->install_ram(0x600000, 0x63ffff); /* There is also an OKIM6376 present on the program card */ - memory_install_readwrite16_device_handler(space, device, 0xffa040, 0xffa0ff, 0, 0, oki_r, oki_w ); + space->install_legacy_readwrite_handler(*device, 0xffa040, 0xffa0ff, FUNC(oki_r), FUNC(oki_w) ); state->current_chr_table = mating_data; } diff --git a/src/mame/drivers/mquake.c b/src/mame/drivers/mquake.c index d03f1630a6c..c6553fa71d3 100644 --- a/src/mame/drivers/mquake.c +++ b/src/mame/drivers/mquake.c @@ -39,11 +39,11 @@ static WRITE8_DEVICE_HANDLER( mquake_cia_0_porta_w ) /* swap the write handlers between ROM and bank 1 based on the bit */ if ((data & 1) == 0) /* overlay disabled, map RAM on 0x000000 */ - memory_install_write_bank(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0, "bank1"); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x000000, 0x07ffff, "bank1"); else /* overlay enabled, map Amiga system ROM on 0x000000 */ - memory_unmap_write(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x000000, 0x07ffff); } diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c index c0281da916e..7e40bb19880 100644 --- a/src/mame/drivers/multigam.c +++ b/src/mame/drivers/multigam.c @@ -542,7 +542,7 @@ static void multigam_init_mmc3(running_machine *machine, UINT8 *prg_base, int pr memcpy(&dst[0x8000], prg_base + (prg_size - 0x4000), 0x4000); memcpy(&dst[0xc000], prg_base + (prg_size - 0x4000), 0x4000); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, multigam3_mmc3_rom_switch_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(multigam3_mmc3_rom_switch_w) ); state->multigam3_mmc3_banks[0] = 0x1e; state->multigam3_mmc3_banks[1] = 0x1f; @@ -589,7 +589,7 @@ static WRITE8_HANDLER(multigm3_switch_prg_rom) } else { - memory_install_write8_handler(space, 0x8000, 0xffff, 0, 0, multigm3_mapper2_w ); + space->install_legacy_write_handler(0x8000, 0xffff, FUNC(multigm3_mapper2_w) ); memory_set_bankptr(space->machine, "bank10", space->machine->region("maincpu")->base() + 0x6000); } @@ -653,7 +653,7 @@ static void multigam_init_mapper02(running_machine *machine, UINT8* prg_base, in multigam_state *state = machine->driver_data(); UINT8* mem = machine->region("maincpu")->base(); memcpy(mem + 0x8000, prg_base + prg_size - 0x8000, 0x8000); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, multigam3_mapper02_rom_switch_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(multigam3_mapper02_rom_switch_w) ); state->mapper02_prg_base = prg_base; state->mapper02_prg_size = prg_size; @@ -810,7 +810,7 @@ static void multigam_init_mmc1(running_machine *machine, UINT8 *prg_base, int pr memcpy(&dst[0x8000], prg_base + (prg_size - 0x8000), 0x8000); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mmc1_rom_switch_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mmc1_rom_switch_w) ); state->mmc1_reg_write_enable = 1; state->mmc1_rom_mask = (prg_size / 0x4000) - 1; @@ -856,8 +856,8 @@ static void supergm3_set_bank(running_machine *machine) state->supergm3_chr_bank == 0x40 ) { // VRAM - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank1"); - memory_install_write_bank(ppu->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank1"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank1"); + ppu->memory().space(AS_PROGRAM)->install_write_bank(0x0000, 0x1fff, "bank1"); memory_set_bankptr(machine, "bank1", state->vram); if (state->supergm3_chr_bank == 0x40) @@ -865,15 +865,15 @@ static void supergm3_set_bank(running_machine *machine) } else { - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x0000, 0x03ff, 0, 0, "bank2"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x0400, 0x07ff, 0, 0, "bank3"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x0800, 0x0bff, 0, 0, "bank4"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x0c00, 0x0fff, 0, 0, "bank5"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x1000, 0x13ff, 0, 0, "bank6"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x1400, 0x17ff, 0, 0, "bank7"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x1800, 0x1bff, 0, 0, "bank8"); - memory_install_read_bank(ppu->memory().space(AS_PROGRAM), 0x1c00, 0x1fff, 0, 0, "bank9"); - memory_unmap_write(ppu->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x03ff, "bank2"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x0400, 0x07ff, "bank3"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x0800, 0x0bff, "bank4"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x0c00, 0x0fff, "bank5"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x1000, 0x13ff, "bank6"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x1400, 0x17ff, "bank7"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x1800, 0x1bff, "bank8"); + ppu->memory().space(AS_PROGRAM)->install_read_bank(0x1c00, 0x1fff, "bank9"); + ppu->memory().space(AS_PROGRAM)->unmap_write(0x0000, 0x1fff); set_videorom_bank(machine, 0, 8, 0, 8); } @@ -1127,8 +1127,8 @@ static MACHINE_START( multigam ) state->nt_page[2] = state->nt_ram + 0x800; state->nt_page[3] = state->nt_ram + 0xc00; - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, multigam_nt_r, multigam_nt_w); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank1"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(multigam_nt_r), FUNC(multigam_nt_w)); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank1"); memory_set_bankptr(machine, "bank1", machine->region("gfx1")->base()); } @@ -1141,16 +1141,16 @@ static MACHINE_START( multigm3 ) state->nt_page[2] = state->nt_ram + 0x800; state->nt_page[3] = state->nt_ram + 0xc00; - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, multigam_nt_r, multigam_nt_w); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(multigam_nt_r), FUNC(multigam_nt_w)); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0000, 0x03ff, 0, 0, "bank2"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0400, 0x07ff, 0, 0, "bank3"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0800, 0x0bff, 0, 0, "bank4"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x0c00, 0x0fff, 0, 0, "bank5"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x1000, 0x13ff, 0, 0, "bank6"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x1400, 0x17ff, 0, 0, "bank7"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x1800, 0x1bff, 0, 0, "bank8"); - memory_install_read_bank(machine->device("ppu")->memory().space(AS_PROGRAM), 0x1c00, 0x1fff, 0, 0, "bank9"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x03ff, "bank2"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0400, 0x07ff, "bank3"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0800, 0x0bff, "bank4"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0c00, 0x0fff, "bank5"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x1000, 0x13ff, "bank6"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x1400, 0x17ff, "bank7"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x1800, 0x1bff, "bank8"); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x1c00, 0x1fff, "bank9"); set_videorom_bank(machine, 0, 8, 0, 8); }; @@ -1164,7 +1164,7 @@ static MACHINE_START( supergm3 ) state->nt_page[2] = state->nt_ram + 0x800; state->nt_page[3] = state->nt_ram + 0xc00; - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, multigam_nt_r, multigam_nt_w); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(multigam_nt_r), FUNC(multigam_nt_w)); state->vram = auto_alloc_array(machine, UINT8, 0x2000); state->multigmc_mmc3_6000_ram = auto_alloc_array(machine, UINT8, 0x2000); diff --git a/src/mame/drivers/namcos10.c b/src/mame/drivers/namcos10.c index e097e9d4b1b..16f33775526 100644 --- a/src/mame/drivers/namcos10.c +++ b/src/mame/drivers/namcos10.c @@ -309,8 +309,8 @@ ADDRESS_MAP_END static void memm_driver_init( running_machine *machine ) { psx_driver_init(machine); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f300000, 0x1f300003, 0, 0, namcos10_bank_w ); - memory_install_read_bank( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f7fffff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f300000, 0x1f300003, FUNC(namcos10_bank_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank( 0x1f400000, 0x1f7fffff, "bank1" ); memory_configure_bank( machine, "bank1", 0, 16, machine->region( "user2" )->base(), 4 * 1024 * 1024 ); } @@ -399,15 +399,15 @@ static void memn_driver_init( running_machine *machine ) nand_copy( (UINT32 *)( BIOS + 0x0000000 ), 0x08000, 0x001c000 ); nand_copy( (UINT32 *)( BIOS + 0x0020000 ), 0x24000, 0x03e0000 ); - memory_install_read32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f400003, 0, 0, nand_status_r ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f410000, 0x1f410003, 0, 0, nand_address1_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f420000, 0x1f420003, 0, 0, nand_address2_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f430000, 0x1f430003, 0, 0, nand_address3_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f440000, 0x1f440003, 0, 0, nand_address4_w ); - memory_install_read32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f450000, 0x1f450003, 0, 0, nand_data_r ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb60000, 0x1fb60003, 0, 0, watchdog_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0xbf500000, 0xbf5007d7, 0, 0, nand_block_w ); - memory_install_read32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0xbf500000, 0xbf5007d7, 0, 0, nand_block_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler( 0x1f400000, 0x1f400003, FUNC(nand_status_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f410000, 0x1f410003, FUNC(nand_address1_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f420000, 0x1f420003, FUNC(nand_address2_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f430000, 0x1f430003, FUNC(nand_address3_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1f440000, 0x1f440003, FUNC(nand_address4_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler( 0x1f450000, 0x1f450003, FUNC(nand_data_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb60000, 0x1fb60003, FUNC(watchdog_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0xbf500000, 0xbf5007d7, FUNC(nand_block_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler( 0xbf500000, 0xbf5007d7, FUNC(nand_block_r) ); psx_driver_init(machine); } diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c index e82aba1c52a..4b42daa8842 100644 --- a/src/mame/drivers/namcos11.c +++ b/src/mame/drivers/namcos11.c @@ -915,12 +915,12 @@ static DRIVER_INIT( namcos11 ) namcos11_state *state = machine->driver_data(); int n_game; - memory_install_readwrite16_handler(machine->device("c76")->memory().space(AS_PROGRAM), 0x82, 0x83, 0, 0, c76_speedup_r, c76_speedup_w); + machine->device("c76")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x82, 0x83, FUNC(c76_speedup_r), FUNC(c76_speedup_w)); if( strcmp( machine->gamedrv->name, "pocketrc" ) == 0 ) { - memory_install_read8_handler(machine->device("c76")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC0_L, 0, 0, pocketrc_steer_r); - memory_install_read8_handler(machine->device("c76")->memory().space(AS_IO), M37710_ADC1_L, M37710_ADC1_L, 0, 0, pocketrc_gas_r); + machine->device("c76")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC0_L, FUNC(pocketrc_steer_r)); + machine->device("c76")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC1_L, M37710_ADC1_L, FUNC(pocketrc_gas_r)); } psx_driver_init(machine); @@ -932,7 +932,7 @@ static DRIVER_INIT( namcos11 ) { if( namcos11_config_table[ n_game ].keycus_r != NULL ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa20000, 0x1fa2ffff, 0, 0, namcos11_config_table[ n_game ].keycus_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler( 0x1fa20000, 0x1fa2ffff, FUNC(namcos11_config_table[ n_game ].keycus_r) ); } if( namcos11_config_table[ n_game ].n_daughterboard != 0 ) { @@ -940,14 +940,14 @@ static DRIVER_INIT( namcos11 ) UINT32 len = machine->region( "user2" )->bytes(); UINT8 *rgn = machine->region( "user2" )->base(); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f0fffff, 0, 0, "bank1" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f100000, 0x1f1fffff, 0, 0, "bank2" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f200000, 0x1f2fffff, 0, 0, "bank3" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f300000, 0x1f3fffff, 0, 0, "bank4" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f4fffff, 0, 0, "bank5" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f500000, 0x1f5fffff, 0, 0, "bank6" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f600000, 0x1f6fffff, 0, 0, "bank7" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f700000, 0x1f7fffff, 0, 0, "bank8" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f000000, 0x1f0fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f100000, 0x1f1fffff, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f200000, 0x1f2fffff, "bank3" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f300000, 0x1f3fffff, "bank4" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f400000, 0x1f4fffff, "bank5" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f500000, 0x1f5fffff, "bank6" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f600000, 0x1f6fffff, "bank7" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x1f700000, 0x1f7fffff, "bank8" ); for( bank = 0; bank < 8; bank++ ) { @@ -957,20 +957,20 @@ static DRIVER_INIT( namcos11 ) if( namcos11_config_table[ n_game ].n_daughterboard == 32 ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10020, 0x1fa1002f, 0, 0, bankswitch_rom32_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1fa10020, 0x1fa1002f, FUNC(bankswitch_rom32_w) ); } if( namcos11_config_table[ n_game ].n_daughterboard == 64 ) { state->m_n_bankoffset = 0; - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f080000, 0x1f080003, 0, 0, bankswitch_rom64_upper_w ); - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10020, 0x1fa1002f, 0, 0 ); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10020, 0x1fa1002f, 0, 0, bankswitch_rom64_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1f080000, 0x1f080003, FUNC(bankswitch_rom64_upper_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x1fa10020, 0x1fa1002f); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1fa10020, 0x1fa1002f, FUNC(bankswitch_rom64_w) ); state->save_item( NAME(state->m_n_bankoffset) ); } } else { - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10020, 0x1fa1002f, 0, 0 ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x1fa10020, 0x1fa1002f); } break; } @@ -979,8 +979,8 @@ static DRIVER_INIT( namcos11 ) if( strcmp( machine->gamedrv->name, "ptblank2a" ) == 0 ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f788000, 0x1f788003, 0, 0, lightgun_w ); - memory_install_read32_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f780000, 0x1f78000f, 0, 0, lightgun_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1f788000, 0x1f788003, FUNC(lightgun_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x1f780000, 0x1f78000f, FUNC(lightgun_r) ); } } diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c index 5c05f448231..db2d553a1ca 100644 --- a/src/mame/drivers/namcos12.c +++ b/src/mame/drivers/namcos12.c @@ -1293,8 +1293,8 @@ static READ32_HANDLER( system11gun_r ) static void system11gun_install( running_machine *machine ) { - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f788000, 0x1f788003, 0, 0, system11gun_w ); - memory_install_read32_handler (machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f780000, 0x1f78000f, 0, 0, system11gun_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x1f788000, 0x1f788003, FUNC(system11gun_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x1f780000, 0x1f78000f, FUNC(system11gun_r) ); } static WRITE32_HANDLER( kcoff_w ) @@ -1377,9 +1377,9 @@ static MACHINE_RESET( namcos12 ) strcmp( machine->gamedrv->name, "tektagtc" ) == 0 ) { state->has_tektagt_dma = 1; - memory_install_readwrite32_handler(space, 0x1fb00000, 0x1fb00003, 0, 0, tektagt_protection_1_r, tektagt_protection_1_w ); - memory_install_readwrite32_handler(space, 0x1fb80000, 0x1fb80003, 0, 0, tektagt_protection_2_r, tektagt_protection_2_w ); - memory_install_read32_handler(space, 0x1f700000, 0x1f700003, 0, 0, tektagt_protection_3_r ); + space->install_legacy_readwrite_handler(0x1fb00000, 0x1fb00003, FUNC(tektagt_protection_1_r), FUNC(tektagt_protection_1_w) ); + space->install_legacy_readwrite_handler(0x1fb80000, 0x1fb80003, FUNC(tektagt_protection_2_r), FUNC(tektagt_protection_2_w) ); + space->install_legacy_read_handler(0x1f700000, 0x1f700003, FUNC(tektagt_protection_3_r) ); } if( strcmp( machine->gamedrv->name, "tektagt" ) == 0 || @@ -1402,9 +1402,9 @@ static MACHINE_RESET( namcos12 ) strcmp( machine->gamedrv->name, "ghlpanic" ) == 0 ) { /* this is based on guesswork, it might not even be keycus. */ - memory_install_read_bank (space, 0x1fc20280, 0x1fc2028b, 0, 0, "bank2" ); - memory_install_write32_handler(space, 0x1f008000, 0x1f008003, 0, 0, kcon_w ); - memory_install_write32_handler(space, 0x1f018000, 0x1f018003, 0, 0, kcoff_w ); + space->install_read_bank (0x1fc20280, 0x1fc2028b, "bank2" ); + space->install_legacy_write_handler(0x1f008000, 0x1f008003, FUNC(kcon_w) ); + space->install_legacy_write_handler(0x1f018000, 0x1f018003, FUNC(kcoff_w) ); memset( state->kcram, 0, sizeof( state->kcram ) ); memory_set_bankptr( space->machine, "bank2", state->kcram ); diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c index 66388aba8ec..af9d7d0836f 100644 --- a/src/mame/drivers/namcos22.c +++ b/src/mame/drivers/namcos22.c @@ -5777,19 +5777,19 @@ static READ16_HANDLER( mcuc74_speedup_r ) static void install_c74_speedup(running_machine *machine) { - memory_install_readwrite16_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x80, 0x81, 0, 0, mcuc74_speedup_r, mcu_speedup_w); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x80, 0x81, FUNC(mcuc74_speedup_r), FUNC(mcu_speedup_w)); } static void install_130_speedup(running_machine *machine) { // install speedup cheat for 1.30 MCU BIOS - memory_install_readwrite16_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x82, 0x83, 0, 0, mcu130_speedup_r, mcu_speedup_w); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x82, 0x83, FUNC(mcu130_speedup_r), FUNC(mcu_speedup_w)); } static void install_141_speedup(running_machine *machine) { // install speedup cheat for 1.41 MCU BIOS - memory_install_readwrite16_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x82, 0x83, 0, 0, mcu141_speedup_r, mcu_speedup_w); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x82, 0x83, FUNC(mcu141_speedup_r), FUNC(mcu_speedup_w)); } static void namcos22_init( running_machine *machine, enum namcos22_gametype game_type ) @@ -5808,7 +5808,7 @@ static DRIVER_INIT( alpiner ) { namcos22s_init(machine, NAMCOS22_ALPINE_RACER); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, alpineracer_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(alpineracer_mcu_adc_r)); install_130_speedup(machine); } @@ -5817,7 +5817,7 @@ static DRIVER_INIT( alpiner2 ) { namcos22s_init(machine, NAMCOS22_ALPINE_RACER_2); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, alpineracer_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(alpineracer_mcu_adc_r)); install_130_speedup(machine); } @@ -5826,7 +5826,7 @@ static DRIVER_INIT( alpinesa ) { namcos22s_init(machine, NAMCOS22_ALPINE_SURFER); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, alpineracer_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(alpineracer_mcu_adc_r)); install_141_speedup(machine); } @@ -5835,7 +5835,7 @@ static DRIVER_INIT( airco22 ) { namcos22s_init(machine, NAMCOS22_AIR_COMBAT22); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, airco22_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(airco22_mcu_adc_r)); } static DRIVER_INIT( propcycl ) @@ -5859,7 +5859,7 @@ static DRIVER_INIT( propcycl ) namcos22s_init(machine, NAMCOS22_PROP_CYCLE); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, propcycle_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(propcycle_mcu_adc_r)); install_141_speedup(machine); } @@ -5945,7 +5945,7 @@ static DRIVER_INIT( cybrcyc ) namcos22s_init(machine, NAMCOS22_CYBER_CYCLES); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, cybrcycc_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(cybrcycc_mcu_adc_r)); install_130_speedup(machine); } @@ -5961,21 +5961,21 @@ static DRIVER_INIT( tokyowar ) { namcos22s_init(machine, NAMCOS22_TOKYO_WARS); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, tokyowar_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(tokyowar_mcu_adc_r)); } static DRIVER_INIT( aquajet ) { namcos22s_init(machine, NAMCOS22_AQUA_JET); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, aquajet_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(aquajet_mcu_adc_r)); } static DRIVER_INIT( dirtdash ) { namcos22s_init(machine, NAMCOS22_DIRT_DASH); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_IO), M37710_ADC0_L, M37710_ADC7_H, 0, 0, aquajet_mcu_adc_r); + machine->device("mcu")->memory().space(AS_IO)->install_legacy_read_handler(M37710_ADC0_L, M37710_ADC7_H, FUNC(aquajet_mcu_adc_r)); } /************************************************************************************/ diff --git a/src/mame/drivers/naughtyb.c b/src/mame/drivers/naughtyb.c index 604a673ea45..f4bfd92bc27 100644 --- a/src/mame/drivers/naughtyb.c +++ b/src/mame/drivers/naughtyb.c @@ -854,10 +854,10 @@ ROM_END static DRIVER_INIT( popflame ) { /* install a handler to catch protection checks */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9000, 0x9000, 0, 0, popflame_protection_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9090, 0x9090, 0, 0, popflame_protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x9000, 0x9000, FUNC(popflame_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x9090, 0x9090, FUNC(popflame_protection_r)); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb000, 0xb0ff, 0, 0, popflame_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb000, 0xb0ff, FUNC(popflame_protection_w)); } @@ -887,7 +887,7 @@ static WRITE8_HANDLER( trvmstr_questions_w ) static DRIVER_INIT( trvmstr ) { /* install questions' handlers */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xc002, 0, 0, trvmstr_questions_r, trvmstr_questions_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xc000, 0xc002, FUNC(trvmstr_questions_r), FUNC(trvmstr_questions_w)); } diff --git a/src/mame/drivers/neodrvr.c b/src/mame/drivers/neodrvr.c index 3e5ab5f1cb9..2b47786d4ad 100644 --- a/src/mame/drivers/neodrvr.c +++ b/src/mame/drivers/neodrvr.c @@ -8112,7 +8112,7 @@ static DRIVER_INIT( kf2k3pcb ) neo_pcm2_swap(machine, 5); state->fixed_layer_bank_type = 2; install_pvc_protection(machine); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc7ffff, 0, 0, "bios" ); // 512k bios + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xc00000, 0xc7ffff, "bios" ); // 512k bios } static DRIVER_INIT( kof2003 ) @@ -8188,18 +8188,18 @@ static DRIVER_INIT( jockeygp ) kof2000_neogeo_gfx_decrypt(machine, 0xac); /* install some extra RAM */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x201fff, 0, 0, NULL); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x200000, 0x201fff); -// memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x280000, 0x280001, 0, 0, "IN5"); -// memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2c0000, 0x2c0001, 0, 0, "IN6"); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x280000, 0x280001, "IN5"); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2c0000, 0x2c0001, "IN6"); } static DRIVER_INIT( vliner ) { - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x201fff, 0, 0, NULL); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x200000, 0x201fff); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x280000, 0x280001, 0, 0, "IN5"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2c0000, 0x2c0001, 0, 0, "IN6"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x280000, 0x280001, "IN5"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x2c0000, 0x2c0001, "IN6"); DRIVER_INIT_CALL(neogeo); } @@ -8207,7 +8207,7 @@ static DRIVER_INIT( vliner ) static DRIVER_INIT( kog ) { /* overlay cartridge ROM */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0ffffe, 0x0fffff, 0, 0, "JUMPER"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x0ffffe, 0x0fffff, "JUMPER"); kog_px_decrypt(machine); neogeo_bootleg_sx_decrypt(machine, 1); diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c index 57d30b6713b..16eaed8c1e6 100644 --- a/src/mame/drivers/nmk16.c +++ b/src/mame/drivers/nmk16.c @@ -4598,8 +4598,8 @@ static DRIVER_INIT( bjtwin ) static READ16_HANDLER( vandykeb_r ) { return 0x0000; } static DRIVER_INIT (vandykeb) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x08000e, 0x08000f, 0, 0, vandykeb_r ); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x08001e, 0x08001f, 0, 0 ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x08000e, 0x08000f, FUNC(vandykeb_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x08001e, 0x08001f); } diff --git a/src/mame/drivers/offtwall.c b/src/mame/drivers/offtwall.c index 39865ee7d2d..04ab300ed36 100644 --- a/src/mame/drivers/offtwall.c +++ b/src/mame/drivers/offtwall.c @@ -497,9 +497,9 @@ static DRIVER_INIT( offtwall ) atarijsa_init(machine, "260010", 0x0040); /* install son-of-slapstic workarounds */ - state->spritecache_count = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3fde42, 0x3fde43, 0, 0, spritecache_count_r); - state->bankswitch_base = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x037ec2, 0x037f39, 0, 0, bankswitch_r); - state->unknown_verify_base = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3fdf1e, 0x3fdf1f, 0, 0, unknown_verify_r); + state->spritecache_count = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3fde42, 0x3fde43, FUNC(spritecache_count_r)); + state->bankswitch_base = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x037ec2, 0x037f39, FUNC(bankswitch_r)); + state->unknown_verify_base = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3fdf1e, 0x3fdf1f, FUNC(unknown_verify_r)); } @@ -510,9 +510,9 @@ static DRIVER_INIT( offtwalc ) atarijsa_init(machine, "260010", 0x0040); /* install son-of-slapstic workarounds */ - state->spritecache_count = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3fde42, 0x3fde43, 0, 0, spritecache_count_r); - state->bankswitch_base = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x037eca, 0x037f43, 0, 0, bankswitch_r); - state->unknown_verify_base = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3fdf24, 0x3fdf25, 0, 0, unknown_verify_r); + state->spritecache_count = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3fde42, 0x3fde43, FUNC(spritecache_count_r)); + state->bankswitch_base = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x037eca, 0x037f43, FUNC(bankswitch_r)); + state->unknown_verify_base = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3fdf24, 0x3fdf25, FUNC(unknown_verify_r)); } diff --git a/src/mame/drivers/pacman.c b/src/mame/drivers/pacman.c index dcdfd1d2003..18651d3a511 100644 --- a/src/mame/drivers/pacman.c +++ b/src/mame/drivers/pacman.c @@ -5332,8 +5332,8 @@ static void maketrax_rom_decode(running_machine *machine) static DRIVER_INIT( maketrax ) { /* set up protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5080, 0x50bf, 0, 0, maketrax_special_port2_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x50c0, 0x50ff, 0, 0, maketrax_special_port3_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5080, 0x50bf, FUNC(maketrax_special_port2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x50c0, 0x50ff, FUNC(maketrax_special_port3_r)); maketrax_rom_decode(machine); } @@ -5364,8 +5364,8 @@ static void korosuke_rom_decode(running_machine *machine) static DRIVER_INIT( korosuke ) { /* set up protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5080, 0x5080, 0, 0, korosuke_special_port2_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x50c0, 0x50ff, 0, 0, korosuke_special_port3_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5080, 0x5080, FUNC(korosuke_special_port2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x50c0, 0x50ff, FUNC(korosuke_special_port3_r)); korosuke_rom_decode(machine); } @@ -5707,10 +5707,10 @@ static READ8_HANDLER( cannonbp_protection_r ) static DRIVER_INIT( cannonbp ) { /* extra memory */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4800, 0x4bff, 0, 0, NULL); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x4800, 0x4bff); /* protection? */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3000, 0x3fff, 0, 0, cannonbp_protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3000, 0x3fff, FUNC(cannonbp_protection_r)); } diff --git a/src/mame/drivers/paradise.c b/src/mame/drivers/paradise.c index 069542a335f..99a20df90d9 100644 --- a/src/mame/drivers/paradise.c +++ b/src/mame/drivers/paradise.c @@ -1050,14 +1050,14 @@ static DRIVER_INIT (tgtball) { paradise_state *state = machine->driver_data(); state->sprite_inc = 4; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x2001, 0x2001, 0, 0, tgtball_flipscreen_w ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x2001, 0x2001, FUNC(tgtball_flipscreen_w) ); } static DRIVER_INIT (torus) { paradise_state *state = machine->driver_data(); state->sprite_inc = 4; - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x2070, 0x2070, 0, 0, torus_coin_counter_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x2070, 0x2070, FUNC(torus_coin_counter_w)); } diff --git a/src/mame/drivers/pasha2.c b/src/mame/drivers/pasha2.c index a1743b0bb4a..c9a3133d04c 100644 --- a/src/mame/drivers/pasha2.c +++ b/src/mame/drivers/pasha2.c @@ -471,7 +471,7 @@ static READ16_HANDLER( pasha2_speedup_r ) static DRIVER_INIT( pasha2 ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x95744, 0x95747, 0, 0, pasha2_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x95744, 0x95747, FUNC(pasha2_speedup_r) ); memory_set_bankptr(machine, "bank1", machine->region("user2")->base()); } diff --git a/src/mame/drivers/pbaction.c b/src/mame/drivers/pbaction.c index b4c4ed2f777..ee5b1015960 100644 --- a/src/mame/drivers/pbaction.c +++ b/src/mame/drivers/pbaction.c @@ -484,7 +484,7 @@ static DRIVER_INIT( pbactio3 ) pbaction_decode(machine, "maincpu"); /* install a protection (?) workaround */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xc000, 0, 0, pbactio3_prot_kludge_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc000, 0xc000, FUNC(pbactio3_prot_kludge_r) ); } static DRIVER_INIT( pbactio4 ) diff --git a/src/mame/drivers/pcat_nit.c b/src/mame/drivers/pcat_nit.c index 8bc60e54e6a..8fcfb65f7ad 100644 --- a/src/mame/drivers/pcat_nit.c +++ b/src/mame/drivers/pcat_nit.c @@ -140,8 +140,8 @@ static WRITE8_HANDLER(pcat_nit_rombank_w) if ( data & 0x40 ) { // rom bank - memory_install_read_bank(space, 0x000d8000, 0x000dffff, 0, 0, "rombank" ); - memory_unmap_write(space, 0x000d8000, 0x000dffff, 0, 0); + space->install_read_bank(0x000d8000, 0x000dffff, "rombank" ); + space->unmap_write(0x000d8000, 0x000dffff); if ( data & 0x80 ) { @@ -155,9 +155,9 @@ static WRITE8_HANDLER(pcat_nit_rombank_w) else { // nvram bank - memory_unmap_readwrite(space, 0x000d8000, 0x000dffff, 0, 0); + space->unmap_readwrite(0x000d8000, 0x000dffff); - memory_install_readwrite_bank(space, 0x000d8000, 0x000d9fff, 0, 0, "nvrambank" ); + space->install_readwrite_bank(0x000d8000, 0x000d9fff, "nvrambank" ); memory_set_bankptr(space->machine, "nvrambank", state->banked_nvram); diff --git a/src/mame/drivers/pengadvb.c b/src/mame/drivers/pengadvb.c index 409b5ca6662..67689e7c42f 100644 --- a/src/mame/drivers/pengadvb.c +++ b/src/mame/drivers/pengadvb.c @@ -50,7 +50,7 @@ static void mem_map_banks(running_machine *machine) { case 0: { - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1" ); memory_set_bankptr(machine, "bank1", machine->region("maincpu")->base()); break; }; @@ -58,7 +58,7 @@ static void mem_map_banks(running_machine *machine) case 2: case 3: { - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x0000, 0x3fff); break; } } @@ -69,16 +69,16 @@ static void mem_map_banks(running_machine *machine) { case 0: { - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x5fff, 0, 0, "bank21" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, "bank22" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x5fff, "bank21" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x6000, 0x7fff, "bank22" ); memory_set_bankptr(machine, "bank21", machine->region("maincpu")->base() + 0x4000); memory_set_bankptr(machine, "bank22", machine->region("maincpu")->base() + 0x4000 + 0x2000); break; } case 1: { - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x5fff, 0, 0, "bank21" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, "bank22" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x5fff, "bank21" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x6000, 0x7fff, "bank22" ); memory_set_bankptr(machine, "bank21", machine->region("game")->base() + state->mem_banks[0]*0x2000); memory_set_bankptr(machine, "bank22", machine->region("game")->base() + state->mem_banks[1]*0x2000); break; @@ -86,7 +86,7 @@ static void mem_map_banks(running_machine *machine) case 2: case 3: { - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x4000, 0x7fff); break; } } @@ -97,8 +97,8 @@ static void mem_map_banks(running_machine *machine) { case 1: { - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0x9fff, 0, 0, "bank31" ); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa000, 0xbfff, 0, 0, "bank32" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0x9fff, "bank31" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xa000, 0xbfff, "bank32" ); memory_set_bankptr(machine, "bank31", machine->region("game")->base() + state->mem_banks[2]*0x2000); memory_set_bankptr(machine, "bank32", machine->region("game")->base() + state->mem_banks[3]*0x2000); break; @@ -107,7 +107,7 @@ static void mem_map_banks(running_machine *machine) case 2: case 3: { - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x8000, 0xbfff); break; } } @@ -121,12 +121,12 @@ static void mem_map_banks(running_machine *machine) case 1: case 2: { - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0xc000, 0xffff); break; } case 3: { - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0, "bank4" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xc000, 0xffff, "bank4" ); memory_set_bankptr(machine, "bank4", state->main_mem); break; } diff --git a/src/mame/drivers/pgm.c b/src/mame/drivers/pgm.c index 894c7a4edc4..69b9e975c28 100644 --- a/src/mame/drivers/pgm.c +++ b/src/mame/drivers/pgm.c @@ -4443,8 +4443,8 @@ static DRIVER_INIT( orlegend ) pgm_state *state = machine->driver_data(); pgm_basic_init(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xC0400e, 0xC0400f, 0, 0, pgm_asic3_r, pgm_asic3_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xC04000, 0xC04001, 0, 0, pgm_asic3_reg_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xC0400e, 0xC0400f, FUNC(pgm_asic3_r), FUNC(pgm_asic3_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xC04000, 0xC04001, FUNC(pgm_asic3_reg_w)); state->asic3_reg = 0; state->asic3_latch[0] = 0; @@ -4477,7 +4477,7 @@ static void drgwld2_common_init(running_machine *machine) select and after failing in the 2nd stage (probably there are other checks out there). */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd80000, 0xd80003, 0, 0, dw2_d80000_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd80000, 0xd80003, FUNC(dw2_d80000_r)); } static DRIVER_INIT( drgw2 ) @@ -4710,8 +4710,8 @@ static DRIVER_INIT( ddp2 ) // should actually be kov2-like, but keep this simulation for now just to demonstrate it. It will need the internal ARM rom to work properly. ddp2_protram = auto_alloc_array(machine, UINT16, 0x10000); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd00000, 0xd0ffff, 0, 0, ddp2_protram_r, ddp2_protram_w); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd10000, 0xd10001, 0, 0, ddp2_asic27_0xd10000_r, ddp2_asic27_0xd10000_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xd00000, 0xd0ffff, FUNC(ddp2_protram_r), FUNC(ddp2_protram_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xd10000, 0xd10001, FUNC(ddp2_asic27_0xd10000_r), FUNC(ddp2_asic27_0xd10000_w)); } @@ -5112,7 +5112,7 @@ static DRIVER_INIT( killbld ) pgm_basic_init(machine); pgm_killbld_decrypt(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd40000, 0xd40003, 0, 0, killbld_igs025_prot_r, killbld_igs025_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xd40000, 0xd40003, FUNC(killbld_igs025_prot_r), FUNC(killbld_igs025_prot_w)); state->kb_cmd = 0; state->kb_reg = 0; @@ -5278,7 +5278,7 @@ static DRIVER_INIT( drgw3 ) } } */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xDA5610, 0xDA5613, 0, 0, drgw3_igs025_prot_r, drgw3_igs025_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xDA5610, 0xDA5613, FUNC(drgw3_igs025_prot_r), FUNC(drgw3_igs025_prot_w)); pgm_dw3_decrypt(machine); } @@ -5295,11 +5295,11 @@ static DRIVER_INIT( puzzli2 ) pgm_basic_init(machine); kovsh_latch_init(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x500000, 0x500003, 0, 0, asic28_r, asic28_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x500000, 0x500003, FUNC(asic28_r), FUNC(asic28_w)); /* 0x4f0000 - ? is actually ram shared with the protection device, the protection device provides the region code */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4f0000, 0x4fffff, 0, 0, sango_protram_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4f0000, 0x4fffff, FUNC(sango_protram_r)); pgm_puzzli2_decrypt(machine); @@ -5531,8 +5531,8 @@ static DRIVER_INIT( olds ) pgm_state *state = machine->driver_data(); pgm_basic_init(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xdcb400, 0xdcb403, 0, 0, olds_r, olds_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8178f4, 0x8178f5, 0, 0, olds_prot_swap_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xdcb400, 0xdcb403, FUNC(olds_r), FUNC(olds_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x8178f4, 0x8178f5, FUNC(olds_prot_swap_r)); state->kb_cmd = 0; state->kb_reg = 0; @@ -5796,17 +5796,17 @@ static READ16_HANDLER( ddp3_asic_r ) void install_asic27a_ddp3(running_machine* machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x500000, 0x500005, 0, 0, ddp3_asic_r, ddp3_asic_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x500000, 0x500005, FUNC(ddp3_asic_r), FUNC(ddp3_asic_w)); } void install_asic27a_ket(running_machine* machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400005, 0, 0, ddp3_asic_r, ddp3_asic_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x400000, 0x400005, FUNC(ddp3_asic_r), FUNC(ddp3_asic_w)); } void install_asic27a_espgal(running_machine* machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400005, 0, 0, ddp3_asic_r, ddp3_asic_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x400000, 0x400005, FUNC(ddp3_asic_r), FUNC(ddp3_asic_w)); } diff --git a/src/mame/drivers/phoenix.c b/src/mame/drivers/phoenix.c index 0f5048d9fa9..54676af5143 100644 --- a/src/mame/drivers/phoenix.c +++ b/src/mame/drivers/phoenix.c @@ -1056,7 +1056,7 @@ ROM_END static DRIVER_INIT( condor ) { /* additional inputs for coinage */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x5000, 0, 0, "DSW1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0x5000, 0x5000, "DSW1"); } diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c index 7ac709f40d9..463e3d36b8c 100644 --- a/src/mame/drivers/pingpong.c +++ b/src/mame/drivers/pingpong.c @@ -591,18 +591,18 @@ static DRIVER_INIT( cashquiz ) ROM[i] = BITSWAP8(ROM[i],0,1,2,3,4,5,6,7); /* questions banking handlers */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x4000, 0, 0, cashquiz_question_bank_high_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4001, 0x4001, 0, 0, cashquiz_question_bank_low_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4000, 0x4000, FUNC(cashquiz_question_bank_high_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4001, 0x4001, FUNC(cashquiz_question_bank_low_w)); // 8 independents banks for questions - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x50ff, 0, 0, "bank1"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5100, 0x51ff, 0, 0, "bank2"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5200, 0x52ff, 0, 0, "bank3"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5300, 0x53ff, 0, 0, "bank4"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5400, 0x54ff, 0, 0, "bank5"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5500, 0x55ff, 0, 0, "bank6"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5600, 0x56ff, 0, 0, "bank7"); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5700, 0x57ff, 0, 0, "bank8"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5000, 0x50ff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5100, 0x51ff, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5200, 0x52ff, "bank3"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5300, 0x53ff, "bank4"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5400, 0x54ff, "bank5"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5500, 0x55ff, "bank6"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5600, 0x56ff, "bank7"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5700, 0x57ff, "bank8"); // setup default banks memory_set_bankptr(machine, "bank1", machine->region("user1")->base() + 0x100*0 ); diff --git a/src/mame/drivers/pinkiri8.c b/src/mame/drivers/pinkiri8.c index d1f26165965..ab73de4d5b4 100644 --- a/src/mame/drivers/pinkiri8.c +++ b/src/mame/drivers/pinkiri8.c @@ -1250,9 +1250,9 @@ static READ8_HANDLER( ronjan_patched_prot_r ) static DRIVER_INIT( ronjan ) { - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x90, 0x90, 0, 0, ronjan_prot_r, ronjan_prot_w); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x66, 0x66, 0, 0, ronjan_prot_status_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x9f, 0x9f, 0, 0, ronjan_patched_prot_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_readwrite_handler(0x90, 0x90, FUNC(ronjan_prot_r), FUNC(ronjan_prot_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x66, 0x66, FUNC(ronjan_prot_status_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x9f, 0x9f, FUNC(ronjan_patched_prot_r)); } GAME( 1992, janshi, 0, pinkiri8, janshi, 0, ROT0, "Eagle", "Janshi", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS | GAME_NOT_WORKING ) diff --git a/src/mame/drivers/pipedrm.c b/src/mame/drivers/pipedrm.c index 6b5bfaceb24..23ccde46d7a 100644 --- a/src/mame/drivers/pipedrm.c +++ b/src/mame/drivers/pipedrm.c @@ -882,14 +882,14 @@ static DRIVER_INIT( pipedrm ) /* sprite RAM lives at the end of palette RAM */ state->spriteram = &machine->generic.paletteram.u8[0xc00]; state->spriteram_size = 0x400; - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xcc00, 0xcfff, 0, 0, state->spriteram); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0xcc00, 0xcfff, state->spriteram); } static DRIVER_INIT( hatris ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x20, 0x20, 0, 0, sound_command_nonmi_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x21, 0x21, 0, 0, fromance_gfxreg_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x20, 0x20, FUNC(sound_command_nonmi_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x21, 0x21, FUNC(fromance_gfxreg_w)); } diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c index e136ea8e4d6..55a37802e1f 100644 --- a/src/mame/drivers/pirates.c +++ b/src/mame/drivers/pirates.c @@ -461,7 +461,7 @@ static DRIVER_INIT( genix ) /* If this value is increased then something has gone wrong and the protection failed */ /* Write-protect it for now */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x109e98, 0x109e9b, 0, 0, genix_prot_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x109e98, 0x109e9b, FUNC(genix_prot_r) ); } diff --git a/src/mame/drivers/polepos.c b/src/mame/drivers/polepos.c index 71f1f8c306b..dc867be189f 100644 --- a/src/mame/drivers/polepos.c +++ b/src/mame/drivers/polepos.c @@ -1986,15 +1986,15 @@ ROM_END static DRIVER_INIT( topracern ) { /* extra direct mapped inputs read */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_IO), 0x02, 0x02, 0, 0, "STEER"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_IO), 0x03, 0x03, 0, 0, "IN0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x04, 0, 0, "DSWA"); + machine->device("maincpu")->memory().space(AS_IO)->install_read_port(0x02, 0x02, "STEER"); + machine->device("maincpu")->memory().space(AS_IO)->install_read_port(0x03, 0x03, "IN0"); + machine->device("maincpu")->memory().space(AS_IO)->install_read_port(0x04, 0x04, "DSWA"); } static DRIVER_INIT( polepos2 ) { /* note that the bootleg version doesn't need this custom IC; it has a hacked ROM in its place */ - memory_install_read16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x4000, 0x5fff, 0, 0, polepos2_ic25_r); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4000, 0x5fff, FUNC(polepos2_ic25_r)); } diff --git a/src/mame/drivers/policetr.c b/src/mame/drivers/policetr.c index efc6322142e..e9bef09d118 100644 --- a/src/mame/drivers/policetr.c +++ b/src/mame/drivers/policetr.c @@ -679,14 +679,14 @@ ROM_END static DRIVER_INIT( policetr ) { policetr_state *state = machine->driver_data(); - state->speedup_data = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00000fc8, 0x00000fcb, 0, 0, speedup_w); + state->speedup_data = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00000fc8, 0x00000fcb, FUNC(speedup_w)); state->speedup_pc = 0x1fc028ac; } static DRIVER_INIT( plctr13b ) { policetr_state *state = machine->driver_data(); - state->speedup_data = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00000fc8, 0x00000fcb, 0, 0, speedup_w); + state->speedup_data = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00000fc8, 0x00000fcb, FUNC(speedup_w)); state->speedup_pc = 0x1fc028bc; } @@ -694,14 +694,14 @@ static DRIVER_INIT( plctr13b ) static DRIVER_INIT( sshooter ) { policetr_state *state = machine->driver_data(); - state->speedup_data = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00018fd8, 0x00018fdb, 0, 0, speedup_w); + state->speedup_data = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00018fd8, 0x00018fdb, FUNC(speedup_w)); state->speedup_pc = 0x1fc03470; } static DRIVER_INIT( sshoot12 ) { policetr_state *state = machine->driver_data(); - state->speedup_data = memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00018fd8, 0x00018fdb, 0, 0, speedup_w); + state->speedup_data = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00018fd8, 0x00018fdb, FUNC(speedup_w)); state->speedup_pc = 0x1fc033e0; } diff --git a/src/mame/drivers/psikyo.c b/src/mame/drivers/psikyo.c index d8c022248ab..7a88dc4f65d 100644 --- a/src/mame/drivers/psikyo.c +++ b/src/mame/drivers/psikyo.c @@ -1842,10 +1842,10 @@ static DRIVER_INIT( sngkace ) } /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, sngkace_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(sngkace_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, psikyo_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(psikyo_soundlatch_w)); state->ka302c_banking = 0; // SH201B doesn't have any gfx banking @@ -1895,13 +1895,13 @@ static DRIVER_INIT( tengai ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, s1945_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(s1945_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); /* protection */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00004, 0xc0000b, 0, 0, s1945_mcu_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00004, 0xc0000b, FUNC(s1945_mcu_w)); s1945_mcu_init(machine); state->s1945_mcu_table = 0; @@ -1918,10 +1918,10 @@ static DRIVER_INIT( gunbird ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, gunbird_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(gunbird_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, psikyo_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(psikyo_soundlatch_w)); state->ka302c_banking = 1; @@ -1936,13 +1936,13 @@ static DRIVER_INIT( s1945 ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, s1945_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(s1945_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); /* protection and tile bank switching */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00004, 0xc0000b, 0, 0, s1945_mcu_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00004, 0xc0000b, FUNC(s1945_mcu_w)); s1945_mcu_init(machine); state->s1945_mcu_table = s1945_table; @@ -1959,13 +1959,13 @@ static DRIVER_INIT( s1945a ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, s1945_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(s1945_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); /* protection and tile bank switching */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00004, 0xc0000b, 0, 0, s1945_mcu_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00004, 0xc0000b, FUNC(s1945_mcu_w)); s1945_mcu_init(machine); state->s1945_mcu_table = s1945a_table; @@ -1982,13 +1982,13 @@ static DRIVER_INIT( s1945j ) psikyo_state *state = machine->driver_data(); /* input ports*/ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, s1945_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(s1945_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); /* protection and tile bank switching */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00004, 0xc0000b, 0, 0, s1945_mcu_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00004, 0xc0000b, FUNC(s1945_mcu_w)); s1945_mcu_init(machine); state->s1945_mcu_table = s1945j_table; @@ -2005,10 +2005,10 @@ static DRIVER_INIT( s1945jn ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, gunbird_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(gunbird_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); state->ka302c_banking = 1; @@ -2022,10 +2022,10 @@ static DRIVER_INIT( s1945bl ) psikyo_state *state = machine->driver_data(); /* input ports */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00000, 0xc0000b, 0, 0, gunbird_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc00000, 0xc0000b, FUNC(gunbird_input_r)); /* sound latch */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00010, 0xc00013, 0, 0, s1945_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc00010, 0xc00013, FUNC(s1945_soundlatch_w)); state->ka302c_banking = 1; diff --git a/src/mame/drivers/psikyo4.c b/src/mame/drivers/psikyo4.c index 5dd217d9216..432511cace6 100644 --- a/src/mame/drivers/psikyo4.c +++ b/src/mame/drivers/psikyo4.c @@ -1072,7 +1072,7 @@ static void install_hotgmck_pcm_bank(running_machine *machine) set_hotgmck_pcm_bank(machine, 0); set_hotgmck_pcm_bank(machine, 1); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5800008, 0x580000b, 0, 0, hotgmck_pcm_bank_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x5800008, 0x580000b, FUNC(hotgmck_pcm_bank_w) ); machine->state().register_postload(hotgmck_pcm_bank_postload, (void *)0); machine->state().register_postload(hotgmck_pcm_bank_postload, (void *)1); } @@ -1086,17 +1086,17 @@ static DRIVER_INIT( hotgmck ) static DRIVER_INIT( loderndf ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000020, 0x6000023, 0, 0, loderndf_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000020, 0x6000023, FUNC(loderndf_speedup_r) ); } static DRIVER_INIT( loderdfa ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000020, 0x6000023, 0, 0, loderdfa_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000020, 0x6000023, FUNC(loderdfa_speedup_r) ); } static DRIVER_INIT( hotdebut ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x600001c, 0x600001f, 0, 0, hotdebut_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x600001c, 0x600001f, FUNC(hotdebut_speedup_r) ); } diff --git a/src/mame/drivers/psikyosh.c b/src/mame/drivers/psikyosh.c index d1beda8a6db..2dcaa61bf5f 100644 --- a/src/mame/drivers/psikyosh.c +++ b/src/mame/drivers/psikyosh.c @@ -1270,7 +1270,7 @@ static DRIVER_INIT( mjgtaste ) { sh2drc_set_options(machine->device("maincpu"), SH2DRC_FASTEST_OPTIONS); /* needs to install mahjong controls too (can select joystick in test mode tho) */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x03000000, 0x03000003, 0, 0, mjgtaste_input_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x03000000, 0x03000003, FUNC(mjgtaste_input_r)); } diff --git a/src/mame/drivers/pturn.c b/src/mame/drivers/pturn.c index 0bf8b82add6..97140e800de 100644 --- a/src/mame/drivers/pturn.c +++ b/src/mame/drivers/pturn.c @@ -552,8 +552,8 @@ ROM_END static DRIVER_INIT(pturn) { /* - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc0dd, 0xc0dd, 0, 0, pturn_protection_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc0db, 0xc0db, 0, 0, pturn_protection2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc0dd, 0xc0dd, FUNC(pturn_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc0db, 0xc0db, FUNC(pturn_protection2_r)); */ } diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c index a1caa91cf3e..d93e97c18a9 100644 --- a/src/mame/drivers/raiden.c +++ b/src/mame/drivers/raiden.c @@ -540,7 +540,7 @@ static READ16_HANDLER( sub_cpu_spin_r ) static DRIVER_INIT( raiden ) { #ifdef SYNC_HACK - memory_install_read16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x4008, 0x4009, 0, 0, sub_cpu_spin_r); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4008, 0x4009, FUNC(sub_cpu_spin_r)); #endif } diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c index 1c99bb4318b..1d9b40379fe 100644 --- a/src/mame/drivers/renegade.c +++ b/src/mame/drivers/renegade.c @@ -283,8 +283,8 @@ static DRIVER_INIT( kuniokunb ) address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); /* Remove the MCU handlers */ - memory_unmap_readwrite(space, 0x3804, 0x3804, 0, 0); - memory_unmap_read(space, 0x3805, 0x3805, 0, 0); + space->unmap_readwrite(0x3804, 0x3804); + space->unmap_read(0x3805, 0x3805); } diff --git a/src/mame/drivers/sangho.c b/src/mame/drivers/sangho.c index cc0e9bd93d0..f3cc75df236 100644 --- a/src/mame/drivers/sangho.c +++ b/src/mame/drivers/sangho.c @@ -66,20 +66,20 @@ static void pzlestar_map_banks(running_machine *machine) switch(slot_select) { case 0: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1"); - memory_install_write_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank5"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x0000, 0x3fff, "bank5"); memory_set_bankptr(machine, "bank1", state->ram); memory_set_bankptr(machine, "bank5", state->ram); break; case 2: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x0000, 0x3fff); memory_set_bankptr(machine, "bank1", machine->region("user1")->base()+ 0x10000); break; case 1: case 3: - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x0000, 0x3fff); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x0000, 0x3fff); break; } @@ -88,24 +88,24 @@ static void pzlestar_map_banks(running_machine *machine) switch(slot_select) { case 0: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, "bank2"); - memory_install_write_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, "bank6"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x7fff, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x4000, 0x7fff, "bank6"); memory_set_bankptr(machine, "bank2", state->ram + 0x4000); memory_set_bankptr(machine, "bank6", state->ram + 0x4000); break; case 2: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, "bank2"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x7fff, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x4000, 0x7fff); memory_set_bankptr(machine, "bank2", machine->region("user1")->base()+ 0x18000); break; case 3: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0, "bank2"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x4000, 0x7fff, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x4000, 0x7fff); memory_set_bankptr(machine, "bank2", machine->region("user1")->base()+ 0x20000 + (state->pzlestar_rom_bank*0x8000) + 0x4000); break; case 1: - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x7fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x4000, 0x7fff); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x4000, 0x7fff); break; } @@ -114,20 +114,20 @@ static void pzlestar_map_banks(running_machine *machine) switch(slot_select) { case 0: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0, "bank3"); - memory_install_write_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0, "bank7"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0xbfff, "bank3"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x8000, 0xbfff, "bank7"); memory_set_bankptr(machine, "bank3", state->ram + 0x8000); memory_set_bankptr(machine, "bank7", state->ram + 0x8000); break; case 3: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0, "bank3"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x8000, 0xbfff, "bank3"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x8000, 0xbfff); memory_set_bankptr(machine, "bank3", machine->region("user1")->base()+ 0x20000 + (state->pzlestar_rom_bank*0x8000)); break; case 1: case 2: - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0x8000, 0xbfff); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x8000, 0xbfff); break; } @@ -136,16 +136,16 @@ static void pzlestar_map_banks(running_machine *machine) switch(slot_select) { case 0: - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0, "bank4"); - memory_install_write_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0, "bank8"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xc000, 0xffff, "bank4"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0xc000, 0xffff, "bank8"); memory_set_bankptr(machine, "bank4", state->ram + 0xc000); memory_set_bankptr(machine, "bank8", state->ram + 0xc000); break; case 1: case 2: case 3: - memory_unmap_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_read(0xc000, 0xffff); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0xc000, 0xffff); break; } @@ -190,25 +190,25 @@ static void sexyboom_map_bank(running_machine *machine, int bank) { // ram memory_set_bankptr(machine, read_bank_name, &state->ram[(banknum & 0x7f) * 0x4000]); - memory_install_write_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), bank*0x4000, (bank+1)*0x4000 - 1, 0, 0, write_bank_name ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(bank*0x4000, (bank+1)*0x4000 - 1, write_bank_name ); memory_set_bankptr(machine, write_bank_name, &state->ram[(banknum & 0x7f) * 0x4000]); } else { // rom 0 memory_set_bankptr(machine, read_bank_name, machine->region("user1")->base()+0x4000*banknum); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), bank*0x4000, (bank+1)*0x4000 - 1, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(bank*0x4000, (bank+1)*0x4000 - 1); } } else if (banktype == 0x82) { memory_set_bankptr(machine, read_bank_name, machine->region("user1")->base()+0x20000+banknum*0x4000); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), bank*0x4000, (bank+1)*0x4000 - 1, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(bank*0x4000, (bank+1)*0x4000 - 1); } else if (banktype == 0x80) { memory_set_bankptr(machine, read_bank_name, machine->region("user1")->base()+0x120000+banknum*0x4000); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), bank*0x4000, (bank+1)*0x4000 - 1, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(bank*0x4000, (bank+1)*0x4000 - 1); } else { diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c index d19b4581159..1d494207b8d 100644 --- a/src/mame/drivers/seattle.c +++ b/src/mame/drivers/seattle.c @@ -2821,22 +2821,22 @@ static void init_common(running_machine *machine, int ioasic, int serialnum, int { case PHOENIX_CONFIG: /* original Phoenix board only has 4MB of RAM */ - memory_unmap_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00400000, 0x007fffff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_readwrite(0x00400000, 0x007fffff); break; case SEATTLE_WIDGET_CONFIG: /* set up the widget board */ device = machine->device("ethernet"); - memory_install_readwrite32_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), device, 0x16c00000, 0x16c0001f, 0, 0, widget_r, widget_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*device, 0x16c00000, 0x16c0001f, FUNC(widget_r), FUNC(widget_w)); break; case FLAGSTAFF_CONFIG: /* set up the analog inputs */ - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x14000000, 0x14000003, 0, 0, analog_port_r, analog_port_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x14000000, 0x14000003, FUNC(analog_port_r), FUNC(analog_port_w)); /* set up the ethernet controller */ device = machine->device("ethernet"); - memory_install_readwrite32_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), device, 0x16c00000, 0x16c0003f, 0, 0, ethernet_r, ethernet_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*device, 0x16c00000, 0x16c0003f, FUNC(ethernet_r), FUNC(ethernet_w)); break; } } @@ -2965,7 +2965,7 @@ static DRIVER_INIT( carnevil ) init_common(machine, MIDWAY_IOASIC_CARNEVIL, 469/* 469 or 486 or 528 */, 80, SEATTLE_CONFIG); /* set up the gun */ - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x16800000, 0x1680001f, 0, 0, carnevil_gun_r, carnevil_gun_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x16800000, 0x1680001f, FUNC(carnevil_gun_r), FUNC(carnevil_gun_w)); /* speedups */ mips3drc_add_hotspot(machine->device("maincpu"), 0x8015176C, 0x3C03801A, 250); /* confirmed */ diff --git a/src/mame/drivers/segac2.c b/src/mame/drivers/segac2.c index 9acab5d29b5..49bfe43d498 100644 --- a/src/mame/drivers/segac2.c +++ b/src/mame/drivers/segac2.c @@ -1830,7 +1830,7 @@ static void segac2_common_init(running_machine* machine, int (*func)(int in)) genesis_other_hacks = 0; if (upd != NULL) - memory_install_write16_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), upd, 0x880000, 0x880001, 0, 0x13fefe, segac2_upd7759_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*upd, 0x880000, 0x880001, 0, 0x13fefe, FUNC(segac2_upd7759_w)); } @@ -2087,7 +2087,7 @@ static DRIVER_INIT( tfrceacb ) { /* disable the palette bank switching from the protection chip */ segac2_common_init(machine, NULL); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800000, 0x800001, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x800000, 0x800001); } static DRIVER_INIT( borench ) @@ -2174,36 +2174,36 @@ static DRIVER_INIT( pclub ) { segac2_common_init(machine, prot_func_pclub); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880120, 0x880121, 0, 0, printer_r );/*Print Club Vol.1*/ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, printer_r );/*Print Club Vol.2*/ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, print_club_camera_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880120, 0x880121, FUNC(printer_r) );/*Print Club Vol.1*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880124, 0x880125, FUNC(printer_r) );/*Print Club Vol.2*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x880124, 0x880125, FUNC(print_club_camera_w)); } static DRIVER_INIT( pclubjv2 ) { segac2_common_init(machine, prot_func_pclubjv2); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880120, 0x880121, 0, 0, printer_r );/*Print Club Vol.1*/ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, printer_r );/*Print Club Vol.2*/ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, print_club_camera_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880120, 0x880121, FUNC(printer_r) );/*Print Club Vol.1*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880124, 0x880125, FUNC(printer_r) );/*Print Club Vol.2*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x880124, 0x880125, FUNC(print_club_camera_w)); } static DRIVER_INIT( pclubjv4 ) { segac2_common_init(machine, prot_func_pclubjv4); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880120, 0x880121, 0, 0, printer_r );/*Print Club Vol.1*/ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, printer_r );/*Print Club Vol.2*/ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, print_club_camera_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880120, 0x880121, FUNC(printer_r) );/*Print Club Vol.1*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880124, 0x880125, FUNC(printer_r) );/*Print Club Vol.2*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x880124, 0x880125, FUNC(print_club_camera_w)); } static DRIVER_INIT( pclubjv5 ) { segac2_common_init(machine, prot_func_pclubjv5); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880120, 0x880121, 0, 0, printer_r );/*Print Club Vol.1*/ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, printer_r );/*Print Club Vol.2*/ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x880124, 0x880125, 0, 0, print_club_camera_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880120, 0x880121, FUNC(printer_r) );/*Print Club Vol.1*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x880124, 0x880125, FUNC(printer_r) );/*Print Club Vol.2*/ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x880124, 0x880125, FUNC(print_club_camera_w)); } diff --git a/src/mame/drivers/segae.c b/src/mame/drivers/segae.c index 274abc5b822..9046727d332 100644 --- a/src/mame/drivers/segae.c +++ b/src/mame/drivers/segae.c @@ -367,23 +367,23 @@ static void init_ports_systeme(running_machine *machine) device_t *sn1 = machine->device("sn1"); device_t *sn2 = machine->device("sn2"); - memory_install_write8_device_handler(io, sn2, 0x7b, 0x7b, 0, 0, sn76496_w); - memory_install_write8_device_handler(io, sn1, 0x7e, 0x7f, 0, 0, sn76496_w); - memory_install_read8_handler (io, 0x7e, 0x7e, 0, 0, sms_vcounter_r); + io->install_legacy_write_handler(*sn2, 0x7b, 0x7b, FUNC(sn76496_w)); + io->install_legacy_write_handler(*sn1, 0x7e, 0x7f, FUNC(sn76496_w)); + io->install_legacy_read_handler (0x7e, 0x7e, FUNC(sms_vcounter_r)); - memory_install_readwrite8_handler(io, 0xba, 0xba, 0, 0, sms_vdp_data_r, sms_vdp_data_w); - memory_install_readwrite8_handler(io, 0xbb, 0xbb, 0, 0, sms_vdp_ctrl_r, sms_vdp_ctrl_w); + io->install_legacy_readwrite_handler(0xba, 0xba, FUNC(sms_vdp_data_r), FUNC(sms_vdp_data_w)); + io->install_legacy_readwrite_handler(0xbb, 0xbb, FUNC(sms_vdp_ctrl_r), FUNC(sms_vdp_ctrl_w)); - memory_install_readwrite8_handler(io, 0xbe, 0xbe, 0, 0, sms_vdp_2_data_r, sms_vdp_2_data_w); - memory_install_readwrite8_handler(io, 0xbf, 0xbf, 0, 0, sms_vdp_2_ctrl_r, sms_vdp_2_ctrl_w); + io->install_legacy_readwrite_handler(0xbe, 0xbe, FUNC(sms_vdp_2_data_r), FUNC(sms_vdp_2_data_w)); + io->install_legacy_readwrite_handler(0xbf, 0xbf, FUNC(sms_vdp_2_ctrl_r), FUNC(sms_vdp_2_ctrl_w)); - memory_install_read_port (io, 0xe0, 0xe0, 0, 0, "e0"); - memory_install_read_port (io, 0xe1, 0xe1, 0, 0, "e1"); - memory_install_read_port (io, 0xe2, 0xe2, 0, 0, "e2"); - memory_install_read_port (io, 0xf2, 0xf2, 0, 0, "f2"); - memory_install_read_port (io, 0xf3, 0xf3, 0, 0, "f3"); + io->install_read_port (0xe0, 0xe0, "e0"); + io->install_read_port (0xe1, 0xe1, "e1"); + io->install_read_port (0xe2, 0xe2, "e2"); + io->install_read_port (0xf2, 0xf2, "f2"); + io->install_read_port (0xf3, 0xf3, "f3"); - memory_install_write8_handler (io, 0xf7, 0xf7, 0, 0, systeme_bank_w ); + io->install_legacy_write_handler (0xf7, 0xf7, FUNC(systeme_bank_w) ); } @@ -393,10 +393,10 @@ static void init_systeme_map(running_machine *machine) memory_configure_bank(machine, "bank1", 0, 16, machine->region("maincpu")->base() + 0x10000, 0x4000); /* alternate way of accessing video ram */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xbfff, 0, 0, segasyse_videoram_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xbfff, FUNC(segasyse_videoram_w)); /* main ram area */ - sms_mainram = (UINT8 *)memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc000, 0xffff, 0, 0, NULL); + sms_mainram = (UINT8 *)machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0xc000, 0xffff); memset(sms_mainram,0x00,0x4000); init_ports_systeme(machine); @@ -964,8 +964,8 @@ static DRIVER_INIT( ridleofp ) { DRIVER_INIT_CALL(segasyse); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, segae_ridleofp_port_f8_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xfa, 0xfa, 0, 0, segae_ridleofp_port_fa_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(segae_ridleofp_port_f8_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xfa, 0xfa, FUNC(segae_ridleofp_port_fa_w)); } @@ -973,8 +973,8 @@ static DRIVER_INIT( hangonjr ) { DRIVER_INIT_CALL(segasyse); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xf8, 0xf8, 0, 0, segae_hangonjr_port_f8_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xfa, 0xfa, 0, 0, segae_hangonjr_port_fa_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xf8, FUNC(segae_hangonjr_port_f8_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xfa, 0xfa, FUNC(segae_hangonjr_port_fa_w)); } static DRIVER_INIT( opaopa ) diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c index 23ee344b30a..b4c9ec6d52b 100644 --- a/src/mame/drivers/segag80r.c +++ b/src/mame/drivers/segag80r.c @@ -1447,11 +1447,11 @@ static DRIVER_INIT( astrob ) state->background_pcb = G80_BACKGROUND_NONE; /* install speech board */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x38, 0x38, 0, 0, sega_speech_data_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x3b, 0x3b, 0, 0, sega_speech_control_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x38, 0x38, FUNC(sega_speech_data_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x3b, 0x3b, FUNC(sega_speech_control_w)); /* install Astro Blaster sound board */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x3e, 0x3f, 0, 0, astrob_sound_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x3e, 0x3f, FUNC(astrob_sound_w)); } @@ -1478,14 +1478,14 @@ static DRIVER_INIT( spaceod ) state->background_pcb = G80_BACKGROUND_SPACEOD; /* configure ports for the background board */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x08, 0x0f, 0, 0, spaceod_back_port_r, spaceod_back_port_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_readwrite_handler(0x08, 0x0f, FUNC(spaceod_back_port_r), FUNC(spaceod_back_port_w)); /* install Space Odyssey sound board */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0e, 0x0f, 0, 0, spaceod_sound_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x0e, 0x0f, FUNC(spaceod_sound_w)); /* install our wacky mangled ports */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xf8, 0xfb, 0, 0, spaceod_mangled_ports_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xfc, 0xfc, 0, 0, spaceod_port_fc_r); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0xf8, 0xfb, FUNC(spaceod_mangled_ports_r)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0xfc, 0xfc, FUNC(spaceod_port_fc_r)); } @@ -1501,8 +1501,8 @@ static DRIVER_INIT( monsterb ) monsterb_expand_gfx(machine, "gfx1"); /* install background board handlers */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xb8, 0xbd, 0, 0, monsterb_back_port_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xffff, 0, 0, monsterb_vidram_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xb8, 0xbd, FUNC(monsterb_back_port_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xffff, FUNC(monsterb_vidram_w)); } @@ -1519,9 +1519,9 @@ static DRIVER_INIT( monster2 ) monsterb_expand_gfx(machine, "gfx1"); /* install background board handlers */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xb4, 0xb5, 0, 0, pignewt_back_color_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xb8, 0xbd, 0, 0, pignewt_back_port_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xffff, 0, 0, pignewt_vidram_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xb4, 0xb5, FUNC(pignewt_back_color_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xb8, 0xbd, FUNC(pignewt_back_port_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xffff, FUNC(pignewt_vidram_w)); } @@ -1537,13 +1537,13 @@ static DRIVER_INIT( pignewt ) monsterb_expand_gfx(machine, "gfx1"); /* install background board handlers */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xb4, 0xb5, 0, 0, pignewt_back_color_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0xb8, 0xbd, 0, 0, pignewt_back_port_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xffff, 0, 0, pignewt_vidram_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xb4, 0xb5, FUNC(pignewt_back_color_w)); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0xb8, 0xbd, FUNC(pignewt_back_port_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xffff, FUNC(pignewt_vidram_w)); /* install Universal sound board */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x3f, 0x3f, 0, 0, sega_usb_status_r, sega_usb_data_w); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd000, 0xdfff, 0, 0, sega_usb_ram_r, usb_ram_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_readwrite_handler(0x3f, 0x3f, FUNC(sega_usb_status_r), FUNC(sega_usb_data_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xd000, 0xdfff, FUNC(sega_usb_ram_r), FUNC(usb_ram_w)); } @@ -1559,8 +1559,8 @@ static DRIVER_INIT( sindbadm ) state->background_pcb = G80_BACKGROUND_SINDBADM; /* install background board handlers */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x40, 0x41, 0, 0, sindbadm_back_port_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe000, 0xffff, 0, 0, sindbadm_vidram_w); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x40, 0x41, FUNC(sindbadm_back_port_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe000, 0xffff, FUNC(sindbadm_vidram_w)); } diff --git a/src/mame/drivers/segag80v.c b/src/mame/drivers/segag80v.c index 79bb44837bd..76f3352b49e 100644 --- a/src/mame/drivers/segag80v.c +++ b/src/mame/drivers/segag80v.c @@ -1319,8 +1319,8 @@ static DRIVER_INIT( elim2 ) /* configure sound */ state->has_usb = FALSE; - memory_install_write8_handler(iospace, 0x3e, 0x3e, 0, 0, elim1_sh_w); - memory_install_write8_handler(iospace, 0x3f, 0x3f, 0, 0, elim2_sh_w); + iospace->install_legacy_write_handler(0x3e, 0x3e, FUNC(elim1_sh_w)); + iospace->install_legacy_write_handler(0x3f, 0x3f, FUNC(elim2_sh_w)); } @@ -1334,12 +1334,12 @@ static DRIVER_INIT( elim4 ) /* configure sound */ state->has_usb = FALSE; - memory_install_write8_handler(iospace, 0x3e, 0x3e, 0, 0, elim1_sh_w); - memory_install_write8_handler(iospace, 0x3f, 0x3f, 0, 0, elim2_sh_w); + iospace->install_legacy_write_handler(0x3e, 0x3e, FUNC(elim1_sh_w)); + iospace->install_legacy_write_handler(0x3f, 0x3f, FUNC(elim2_sh_w)); /* configure inputs */ - memory_install_write8_handler(iospace, 0xf8, 0xf8, 0, 0, spinner_select_w); - memory_install_read8_handler(iospace, 0xfc, 0xfc, 0, 0, elim4_input_r); + iospace->install_legacy_write_handler(0xf8, 0xf8, FUNC(spinner_select_w)); + iospace->install_legacy_read_handler(0xfc, 0xfc, FUNC(elim4_input_r)); } @@ -1353,10 +1353,10 @@ static DRIVER_INIT( spacfury ) /* configure sound */ state->has_usb = FALSE; - memory_install_write8_handler(iospace, 0x38, 0x38, 0, 0, sega_speech_data_w); - memory_install_write8_handler(iospace, 0x3b, 0x3b, 0, 0, sega_speech_control_w); - memory_install_write8_handler(iospace, 0x3e, 0x3e, 0, 0, spacfury1_sh_w); - memory_install_write8_handler(iospace, 0x3f, 0x3f, 0, 0, spacfury2_sh_w); + iospace->install_legacy_write_handler(0x38, 0x38, FUNC(sega_speech_data_w)); + iospace->install_legacy_write_handler(0x3b, 0x3b, FUNC(sega_speech_control_w)); + iospace->install_legacy_write_handler(0x3e, 0x3e, FUNC(spacfury1_sh_w)); + iospace->install_legacy_write_handler(0x3f, 0x3f, FUNC(spacfury2_sh_w)); } @@ -1371,15 +1371,15 @@ static DRIVER_INIT( zektor ) /* configure sound */ state->has_usb = FALSE; - memory_install_write8_handler(iospace, 0x38, 0x38, 0, 0, sega_speech_data_w); - memory_install_write8_handler(iospace, 0x3b, 0x3b, 0, 0, sega_speech_control_w); - memory_install_write8_device_handler(iospace, ay, 0x3c, 0x3d, 0, 0, ay8910_address_data_w); - memory_install_write8_handler(iospace, 0x3e, 0x3e, 0, 0, zektor1_sh_w); - memory_install_write8_handler(iospace, 0x3f, 0x3f, 0, 0, zektor2_sh_w); + iospace->install_legacy_write_handler(0x38, 0x38, FUNC(sega_speech_data_w)); + iospace->install_legacy_write_handler(0x3b, 0x3b, FUNC(sega_speech_control_w)); + iospace->install_legacy_write_handler(*ay, 0x3c, 0x3d, FUNC(ay8910_address_data_w)); + iospace->install_legacy_write_handler(0x3e, 0x3e, FUNC(zektor1_sh_w)); + iospace->install_legacy_write_handler(0x3f, 0x3f, FUNC(zektor2_sh_w)); /* configure inputs */ - memory_install_write8_handler(iospace, 0xf8, 0xf8, 0, 0, spinner_select_w); - memory_install_read8_handler(iospace, 0xfc, 0xfc, 0, 0, spinner_input_r); + iospace->install_legacy_write_handler(0xf8, 0xf8, FUNC(spinner_select_w)); + iospace->install_legacy_read_handler(0xfc, 0xfc, FUNC(spinner_input_r)); } @@ -1394,12 +1394,12 @@ static DRIVER_INIT( tacscan ) /* configure sound */ state->has_usb = TRUE; - memory_install_readwrite8_handler(iospace, 0x3f, 0x3f, 0, 0, sega_usb_status_r, sega_usb_data_w); - memory_install_readwrite8_handler(pgmspace, 0xd000, 0xdfff, 0, 0, sega_usb_ram_r, usb_ram_w); + iospace->install_legacy_readwrite_handler(0x3f, 0x3f, FUNC(sega_usb_status_r), FUNC(sega_usb_data_w)); + pgmspace->install_legacy_readwrite_handler(0xd000, 0xdfff, FUNC(sega_usb_ram_r), FUNC(usb_ram_w)); /* configure inputs */ - memory_install_write8_handler(iospace, 0xf8, 0xf8, 0, 0, spinner_select_w); - memory_install_read8_handler(iospace, 0xfc, 0xfc, 0, 0, spinner_input_r); + iospace->install_legacy_write_handler(0xf8, 0xf8, FUNC(spinner_select_w)); + iospace->install_legacy_read_handler(0xfc, 0xfc, FUNC(spinner_input_r)); } @@ -1414,15 +1414,15 @@ static DRIVER_INIT( startrek ) /* configure sound */ state->has_usb = TRUE; - memory_install_write8_handler(iospace, 0x38, 0x38, 0, 0, sega_speech_data_w); - memory_install_write8_handler(iospace, 0x3b, 0x3b, 0, 0, sega_speech_control_w); + iospace->install_legacy_write_handler(0x38, 0x38, FUNC(sega_speech_data_w)); + iospace->install_legacy_write_handler(0x3b, 0x3b, FUNC(sega_speech_control_w)); - memory_install_readwrite8_handler(iospace, 0x3f, 0x3f, 0, 0, sega_usb_status_r, sega_usb_data_w); - memory_install_readwrite8_handler(pgmspace, 0xd000, 0xdfff, 0, 0, sega_usb_ram_r, usb_ram_w); + iospace->install_legacy_readwrite_handler(0x3f, 0x3f, FUNC(sega_usb_status_r), FUNC(sega_usb_data_w)); + pgmspace->install_legacy_readwrite_handler(0xd000, 0xdfff, FUNC(sega_usb_ram_r), FUNC(usb_ram_w)); /* configure inputs */ - memory_install_write8_handler(iospace, 0xf8, 0xf8, 0, 0, spinner_select_w); - memory_install_read8_handler(iospace, 0xfc, 0xfc, 0, 0, spinner_input_r); + iospace->install_legacy_write_handler(0xf8, 0xf8, FUNC(spinner_select_w)); + iospace->install_legacy_read_handler(0xfc, 0xfc, FUNC(spinner_input_r)); } diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c index f435866571f..3fe90d515a7 100644 --- a/src/mame/drivers/segas32.c +++ b/src/mame/drivers/segas32.c @@ -4010,14 +4010,14 @@ static DRIVER_INIT( arescue ) { segas32_state *state = machine->driver_data(); segas32_common_init(machine, analog_custom_io_r, analog_custom_io_w); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa00007, 0, 0, arescue_dsp_r, arescue_dsp_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa00000, 0xa00007, FUNC(arescue_dsp_r), FUNC(arescue_dsp_w)); state->dual_pcb_comms = auto_alloc_array(machine, UINT16, 0x1000/2); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x810000, 0x810fff, 0, 0, dual_pcb_comms_r, dual_pcb_comms_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x818000, 0x818003, 0, 0, dual_pcb_masterslave); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x810000, 0x810fff, FUNC(dual_pcb_comms_r), FUNC(dual_pcb_comms_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x818000, 0x818003, FUNC(dual_pcb_masterslave)); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x810000, 0x810001, 0, 0, arescue_handshake_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x81000e, 0x81000f, 0, 0, arescue_slavebusy_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x810000, 0x810001, FUNC(arescue_handshake_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x81000e, 0x81000f, FUNC(arescue_slavebusy_r)); state->sw1_output = arescue_sw1_output; } @@ -4028,8 +4028,8 @@ static DRIVER_INIT( arabfgt ) segas32_common_init(machine, extra_custom_io_r, NULL); /* install protection handlers */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00100, 0xa0011f, 0, 0, arf_wakeup_protection_r); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa00fff, 0, 0, arabfgt_protection_r, arabfgt_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa00100, 0xa0011f, FUNC(arf_wakeup_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa00000, 0xa00fff, FUNC(arabfgt_protection_r), FUNC(arabfgt_protection_w)); } @@ -4040,8 +4040,8 @@ static DRIVER_INIT( brival ) /* install protection handlers */ state->system32_protram = auto_alloc_array(machine, UINT16, 0x1000/2); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20ba00, 0x20ba07, 0, 0, brival_protection_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa00fff, 0, 0, brival_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x20ba00, 0x20ba07, FUNC(brival_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa00000, 0xa00fff, FUNC(brival_protection_w)); } @@ -4051,7 +4051,7 @@ static DRIVER_INIT( darkedge ) segas32_common_init(machine, extra_custom_io_r, NULL); /* install protection handlers */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa7ffff, 0, 0, darkedge_protection_r, darkedge_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa00000, 0xa7ffff, FUNC(darkedge_protection_r), FUNC(darkedge_protection_w)); state->system32_prot_vblank = darkedge_fd1149_vblank; } @@ -4060,7 +4060,7 @@ static DRIVER_INIT( dbzvrvs ) segas32_common_init(machine, NULL, NULL); /* install protection handlers */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa7ffff, 0, 0, dbzvrvs_protection_r, dbzvrvs_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa00000, 0xa7ffff, FUNC(dbzvrvs_protection_r), FUNC(dbzvrvs_protection_w)); } static WRITE16_HANDLER( f1en_comms_echo_w ) @@ -4076,10 +4076,10 @@ static DRIVER_INIT( f1en ) segas32_common_init(machine, analog_custom_io_r, analog_custom_io_w); state->dual_pcb_comms = auto_alloc_array(machine, UINT16, 0x1000/2); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x810000, 0x810fff, 0, 0, dual_pcb_comms_r, dual_pcb_comms_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x818000, 0x818003, 0, 0, dual_pcb_masterslave); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x810000, 0x810fff, FUNC(dual_pcb_comms_r), FUNC(dual_pcb_comms_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x818000, 0x818003, FUNC(dual_pcb_masterslave)); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x810048, 0x810049, 0, 0, f1en_comms_echo_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x810048, 0x810049, FUNC(f1en_comms_echo_w)); state->sw1_output = radm_sw1_output; } @@ -4098,7 +4098,7 @@ static DRIVER_INIT( ga2 ) segas32_common_init(machine, extra_custom_io_r, NULL); decrypt_ga2_protrom(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa00000, 0xa00fff, 0, 0, ga2_dpram_r, ga2_dpram_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa00000, 0xa00fff, FUNC(ga2_dpram_r), FUNC(ga2_dpram_w)); } @@ -4165,7 +4165,7 @@ static DRIVER_INIT( scross ) segas32_state *state = machine->driver_data(); multipcm_device *multipcm = machine->device("sega"); segas32_common_init(machine, analog_custom_io_r, analog_custom_io_w); - memory_install_write8_device_handler(machine->device("soundcpu")->memory().space(AS_PROGRAM), multipcm, 0xb0, 0xbf, 0, 0, scross_bank_w); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*multipcm, 0xb0, 0xbf, FUNC(scross_bank_w)); state->sw1_output = scross_sw1_output; state->sw2_output = scross_sw2_output; @@ -4183,7 +4183,7 @@ static DRIVER_INIT( sonic ) segas32_common_init(machine, sonic_custom_io_r, sonic_custom_io_w); /* install protection handlers */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20E5C4, 0x20E5C5, 0, 0, sonic_level_load_protection); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x20E5C4, 0x20E5C5, FUNC(sonic_level_load_protection)); } @@ -4208,7 +4208,7 @@ static DRIVER_INIT( svf ) static DRIVER_INIT( jleague ) { segas32_common_init(machine, NULL, NULL); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20F700, 0x20F705, 0, 0, jleague_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x20F700, 0x20F705, FUNC(jleague_protection_w)); } diff --git a/src/mame/drivers/segaxbd.c b/src/mame/drivers/segaxbd.c index 8013e02c50c..7c395f4bf96 100644 --- a/src/mame/drivers/segaxbd.c +++ b/src/mame/drivers/segaxbd.c @@ -2822,7 +2822,7 @@ static DRIVER_INIT( aburner2 ) state->road_priority = 0; - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x140006, 0x140007, 0, 0x00fff0, aburner2_iochip_0_D_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x140006, 0x140007, 0, 0x00fff0, FUNC(aburner2_iochip_0_D_w)); } @@ -2844,14 +2844,14 @@ static DRIVER_INIT( loffire ) state->adc_reverse[1] = state->adc_reverse[3] = 1; /* install extra synchronization on core shared memory */ - state->loffire_sync = memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x29c000, 0x29c011, 0, 0, loffire_sync0_w); + state->loffire_sync = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x29c000, 0x29c011, FUNC(loffire_sync0_w)); } static DRIVER_INIT( smgp ) { xboard_generic_init(machine); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2f0000, 0x2f3fff, 0, 0, smgp_excs_r, smgp_excs_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2f0000, 0x2f3fff, FUNC(smgp_excs_r), FUNC(smgp_excs_w)); } diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c index 617c39b7d72..3df0120b958 100644 --- a/src/mame/drivers/seibuspi.c +++ b/src/mame/drivers/seibuspi.c @@ -1826,9 +1826,9 @@ static MACHINE_RESET( spi ) cputag_set_input_line(machine, "soundcpu", INPUT_LINE_RESET, ASSERT_LINE ); device_set_irq_callback(machine->device("maincpu"), spi_irq_callback); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00000680, 0x00000683, 0, 0, sound_fifo_r); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00000688, 0x0000068b, 0, 0, z80_prg_fifo_w); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000068c, 0x0000068f, 0, 0, z80_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00000680, 0x00000683, FUNC(sound_fifo_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00000688, 0x0000068b, FUNC(z80_prg_fifo_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0000068c, 0x0000068f, FUNC(z80_enable_w)); memory_set_bankptr(machine, "bank4", state->z80_rom); memory_set_bankptr(machine, "bank5", state->z80_rom); @@ -1911,8 +1911,8 @@ static MACHINE_RESET( sxx2f ) memcpy(state->z80_rom, rom, 0x40000); - memory_install_write32_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), machine->device("eeprom"), 0x0000068c, 0x0000068f, 0, 0, eeprom_w); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00000680, 0x00000683, 0, 0, sb_coin_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*machine->device("eeprom"), 0x0000068c, 0x0000068f, FUNC(eeprom_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00000680, 0x00000683, FUNC(sb_coin_r)); device_set_irq_callback(machine->device("maincpu"), spi_irq_callback); @@ -2098,28 +2098,28 @@ static void init_spi(running_machine *machine) static DRIVER_INIT( rdft ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00298d0, 0x00298d3, 0, 0, rdft_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00298d0, 0x00298d3, FUNC(rdft_speedup_r) ); init_spi(machine); } static DRIVER_INIT( senkyu ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0018cb4, 0x0018cb7, 0, 0, senkyu_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0018cb4, 0x0018cb7, FUNC(senkyu_speedup_r) ); init_spi(machine); } static DRIVER_INIT( senkyua ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0018c9c, 0x0018c9f, 0, 0, senkyua_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0018c9c, 0x0018c9f, FUNC(senkyua_speedup_r) ); init_spi(machine); } static DRIVER_INIT( batlball ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0018db4, 0x0018db7, 0, 0, batlball_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0018db4, 0x0018db7, FUNC(batlball_speedup_r) ); init_spi(machine); } @@ -2127,21 +2127,21 @@ static DRIVER_INIT( batlball ) static DRIVER_INIT( ejanhs ) { // idle skip doesn't work properly? -// memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x002d224, 0x002d227, 0, 0, ejanhs_speedup_r ); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x002d224, 0x002d227, FUNC(ejanhs_speedup_r) ); init_spi(machine); } static DRIVER_INIT( viprp1 ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x001e2e0, 0x001e2e3, 0, 0, viprp1_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x001e2e0, 0x001e2e3, FUNC(viprp1_speedup_r) ); init_spi(machine); } static DRIVER_INIT( viprp1o ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x001d49c, 0x001d49f, 0, 0, viprp1o_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x001d49c, 0x001d49f, FUNC(viprp1o_speedup_r) ); init_spi(machine); } @@ -2154,12 +2154,12 @@ static void init_rf2(running_machine *machine) state->flash[0] = machine->device("flash0"); state->flash[1] = machine->device("flash1"); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0282AC, 0x0282AF, 0, 0, rf2_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0282AC, 0x0282AF, FUNC(rf2_speedup_r) ); seibuspi_rise10_text_decrypt(machine->region("gfx1")->base()); seibuspi_rise10_bg_decrypt(machine->region("gfx2")->base(), machine->region("gfx2")->bytes()); seibuspi_rise10_sprite_decrypt(machine->region("gfx3")->base(), 0x600000); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x560, 0x563, 0, 0, sprite_dma_start_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x560, 0x563, FUNC(sprite_dma_start_w)); } static DRIVER_INIT( rdft2 ) @@ -2179,12 +2179,12 @@ static void init_rfjet(running_machine *machine) state->flash[0] = machine->device("flash0"); state->flash[1] = machine->device("flash1"); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x002894c, 0x002894f, 0, 0, rfjet_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x002894c, 0x002894f, FUNC(rfjet_speedup_r) ); seibuspi_rise11_text_decrypt(machine->region("gfx1")->base()); seibuspi_rise11_bg_decrypt(machine->region("gfx2")->base(), machine->region("gfx2")->bytes()); seibuspi_rise11_sprite_decrypt_rfjet(machine->region("gfx3")->base(), 0x800000); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x560, 0x563, 0, 0, sprite_dma_start_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x560, 0x563, FUNC(sprite_dma_start_w)); } static DRIVER_INIT( rfjet ) diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c index db46f636ef1..230baa5501c 100644 --- a/src/mame/drivers/seta.c +++ b/src/mame/drivers/seta.c @@ -10057,10 +10057,10 @@ static WRITE16_HANDLER( twineagl_200100_w ) static DRIVER_INIT( twineagl ) { /* debug? */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800000, 0x8000ff, 0, 0, twineagl_debug_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x800000, 0x8000ff, FUNC(twineagl_debug_r)); /* This allows 2 simultaneous players and the use of the "Copyright" Dip Switch. */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200100, 0x20010f, 0, 0, twineagl_200100_r, twineagl_200100_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200100, 0x20010f, FUNC(twineagl_200100_r), FUNC(twineagl_200100_w)); } @@ -10091,7 +10091,7 @@ static WRITE16_HANDLER( downtown_protection_w ) static DRIVER_INIT( downtown ) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x2001ff, 0, 0, downtown_protection_r, downtown_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x2001ff, FUNC(downtown_protection_r), FUNC(downtown_protection_w)); } @@ -10111,7 +10111,7 @@ static READ16_HANDLER( arbalest_debug_r ) static DRIVER_INIT( arbalest ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x80000, 0x8000f, 0, 0, arbalest_debug_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80000, 0x8000f, FUNC(arbalest_debug_r)); } @@ -10120,7 +10120,7 @@ static DRIVER_INIT( metafox ) UINT16 *RAM = (UINT16 *) machine->region("maincpu")->base(); /* This game uses the 21c000-21ffff area for protection? */ -// memory_nop_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x21c000, 0x21ffff, 0, 0); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_readwrite(0x21c000, 0x21ffff); RAM[0x8ab1c/2] = 0x4e71; // patch protection test: "cp error" RAM[0x8ab1e/2] = 0x4e71; @@ -10164,14 +10164,14 @@ static DRIVER_INIT ( blandia ) static DRIVER_INIT( eightfrc ) { - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x500004, 0x500005, 0, 0); // watchdog?? + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x500004, 0x500005); // watchdog?? } static DRIVER_INIT( zombraid ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf00002, 0xf00003, 0, 0, zombraid_gun_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf00000, 0xf00001, 0, 0, zombraid_gun_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xf00002, 0xf00003, FUNC(zombraid_gun_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xf00000, 0xf00001, FUNC(zombraid_gun_w)); } @@ -10189,7 +10189,7 @@ static DRIVER_INIT( kiwame ) static DRIVER_INIT( rezon ) { - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x500006, 0x500007, 0, 0); // irq ack? + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(0x500006, 0x500007); // irq ack? } static DRIVER_INIT( wiggie ) @@ -10221,9 +10221,9 @@ static DRIVER_INIT( wiggie ) } /* X1_010 is not used. */ - memory_nop_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100000, 0x103fff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_readwrite(0x100000, 0x103fff); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xB00008, 0xB00009, 0, 0, wiggie_soundlatch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xB00008, 0xB00009, FUNC(wiggie_soundlatch_w)); } diff --git a/src/mame/drivers/sidepckt.c b/src/mame/drivers/sidepckt.c index 83a2239a1da..b0ef53516ab 100644 --- a/src/mame/drivers/sidepckt.c +++ b/src/mame/drivers/sidepckt.c @@ -379,14 +379,14 @@ ROM_END static DRIVER_INIT( sidepckt ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3014, 0x3014, 0, 0, sidepckt_i8751_r ); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3018, 0x3018, 0, 0, sidepckt_i8751_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3014, 0x3014, FUNC(sidepckt_i8751_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x3018, 0x3018, FUNC(sidepckt_i8751_w) ); } static DRIVER_INIT( sidepctj ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3014, 0x3014, 0, 0, sidepckt_i8751_r ); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3018, 0x3018, 0, 0, sidepctj_i8751_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3014, 0x3014, FUNC(sidepckt_i8751_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x3018, 0x3018, FUNC(sidepctj_i8751_w) ); } diff --git a/src/mame/drivers/simpl156.c b/src/mame/drivers/simpl156.c index c69c1421c21..21ccafaa03c 100644 --- a/src/mame/drivers/simpl156.c +++ b/src/mame/drivers/simpl156.c @@ -1074,7 +1074,7 @@ static READ32_HANDLER( joemacr_speedup_r ) static DRIVER_INIT( joemacr ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0201018, 0x020101b, 0, 0, joemacr_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0201018, 0x020101b, FUNC(joemacr_speedup_r) ); DRIVER_INIT_CALL(simpl156); } @@ -1088,7 +1088,7 @@ static READ32_HANDLER( chainrec_speedup_r ) static DRIVER_INIT( chainrec ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0201018, 0x020101b, 0, 0, chainrec_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0201018, 0x020101b, FUNC(chainrec_speedup_r) ); DRIVER_INIT_CALL(simpl156); } @@ -1102,7 +1102,7 @@ static READ32_HANDLER( prtytime_speedup_r ) static DRIVER_INIT( prtytime ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0201ae0, 0x0201ae3, 0, 0, prtytime_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0201ae0, 0x0201ae3, FUNC(prtytime_speedup_r) ); DRIVER_INIT_CALL(simpl156); } @@ -1117,7 +1117,7 @@ static READ32_HANDLER( charlien_speedup_r ) static DRIVER_INIT( charlien ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0201010, 0x0201013, 0, 0, charlien_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0201010, 0x0201013, FUNC(charlien_speedup_r) ); DRIVER_INIT_CALL(simpl156); } @@ -1131,7 +1131,7 @@ static READ32_HANDLER( osman_speedup_r ) static DRIVER_INIT( osman ) { - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0201010, 0x0201013, 0, 0, osman_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0201010, 0x0201013, FUNC(osman_speedup_r) ); DRIVER_INIT_CALL(simpl156); } diff --git a/src/mame/drivers/slapfght.c b/src/mame/drivers/slapfght.c index edb812bbefd..62ef35bbab0 100644 --- a/src/mame/drivers/slapfght.c +++ b/src/mame/drivers/slapfght.c @@ -1742,12 +1742,12 @@ ROM_END static DRIVER_INIT( tigerh ) { - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe803, 0xe803, 0, 0, tigerh_mcu_r, tigerh_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(tigerh_mcu_r), FUNC(tigerh_mcu_w) ); } static DRIVER_INIT( tigerhb ) { - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe803, 0xe803, 0, 0, tigerhb_e803_r, tigerhb_e803_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(tigerhb_e803_r), FUNC(tigerhb_e803_w) ); } @@ -1807,8 +1807,8 @@ static READ8_HANDLER( gtstarb1_port_0_read ) static void getstar_init( running_machine *machine ) { - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe803, 0xe803, 0, 0, getstar_e803_r, getstar_e803_w ); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, slapfight_port_00_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(getstar_e803_r), FUNC(getstar_e803_w) ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(slapfight_port_00_r) ); } static DRIVER_INIT( getstar ) @@ -1834,7 +1834,7 @@ static DRIVER_INIT( gtstarb1 ) getstar_init(machine); /* specific handlers for this bootleg */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x0, 0x0, 0, 0, gtstarb1_port_0_read ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x0, 0x0, FUNC(gtstarb1_port_0_read) ); /* requires this or it gets stuck with 'rom test' on screen */ /* it is possible the program roms are slighly corrupt like the gfx roms, or that the bootleg simply shouldn't execute the code due to the modified roms */ @@ -1851,13 +1851,13 @@ static DRIVER_INIT( gtstarb2 ) static DRIVER_INIT( slapfigh ) { - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe803, 0xe803, 0, 0, slapfight_mcu_r, slapfight_mcu_w ); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, slapfight_mcu_status_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(slapfight_mcu_r), FUNC(slapfight_mcu_w) ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(slapfight_mcu_status_r) ); } static DRIVER_INIT( perfrman ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, perfrman_port_00_r ); + machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(perfrman_port_00_r) ); } /* ( YEAR NAME PARENT MACHINE INPUT INIT MONITOR COMPANY FULLNAME FLAGS ) */ diff --git a/src/mame/drivers/snesb.c b/src/mame/drivers/snesb.c index 3fa980fcb71..c0dd5c53437 100644 --- a/src/mame/drivers/snesb.c +++ b/src/mame/drivers/snesb.c @@ -553,7 +553,7 @@ static DRIVER_INIT(kinstb) } state->shared_ram = auto_alloc_array(machine, INT8, 0x100); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x781000, 0x7810ff, 0, 0, sharedram_r, sharedram_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x781000, 0x7810ff, FUNC(sharedram_r), FUNC(sharedram_w)); DRIVER_INIT_CALL(snes_hirom); } @@ -595,7 +595,7 @@ static DRIVER_INIT( ffight2b ) rom[0x7ffc] = 0x54; state->ffight2b_coins = 0; - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x7eadce, 0x7eadce, 0, 0, ffight2b_coin_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7eadce, 0x7eadce, FUNC(ffight2b_coin_r)); DRIVER_INIT_CALL(snes); } @@ -654,15 +654,15 @@ static DRIVER_INIT( sblast2b ) dst[0xfffd] = 0x7a; /* protection checks */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x75bd37, 0x75bd37, 0, 0, sb2b_75bd37_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6a6000, 0x6a6fff, 0, 0, sb2b_6a6xxx_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x75bd37, 0x75bd37, FUNC(sb2b_75bd37_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6a6000, 0x6a6fff, FUNC(sb2b_6a6xxx_r)); /* extra inputs */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770071, 0x770071, 0, 0, sb2b_770071_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770079, 0x770079, 0, 0, sb2b_770079_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770071, 0x770071, FUNC(sb2b_770071_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770079, 0x770079, FUNC(sb2b_770079_r)); /* handler to read boot code */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x007000, 0x007fff, 0, 0, sb2b_7xxx_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x007000, 0x007fff, FUNC(sb2b_7xxx_r)); DRIVER_INIT_CALL(snes_hirom); } @@ -685,9 +685,9 @@ static DRIVER_INIT( iron ) } /* extra inputs */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770071, 0x770071, 0, 0, iron_770071_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770073, 0x770073, 0, 0, iron_770073_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770079, 0x770079, 0, 0, iron_770079_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770071, 0x770071, FUNC(iron_770071_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770073, 0x770073, FUNC(iron_770073_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770079, 0x770079, FUNC(iron_770079_r)); DRIVER_INIT_CALL(snes); } @@ -730,8 +730,8 @@ static DRIVER_INIT( denseib ) rom[0xfffd] = 0xf7; /* extra inputs */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770071, 0x770071, 0, 0, denseib_770071_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x770079, 0x770079, 0, 0, denseib_770079_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770071, 0x770071, FUNC(denseib_770071_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x770079, 0x770079, FUNC(denseib_770079_r)); DRIVER_INIT_CALL(snes_hirom); } diff --git a/src/mame/drivers/snk.c b/src/mame/drivers/snk.c index bfcfddab867..af6f9bec877 100644 --- a/src/mame/drivers/snk.c +++ b/src/mame/drivers/snk.c @@ -6253,7 +6253,7 @@ ROM_END static DRIVER_INIT( countryc ) { // replace coin counter with trackball select - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc300, 0xc300, 0, 0, countryc_trackball_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xc300, 0xc300, FUNC(countryc_trackball_w)); } diff --git a/src/mame/drivers/snowbros.c b/src/mame/drivers/snowbros.c index 9ee0b9f2f87..fefa98c1794 100644 --- a/src/mame/drivers/snowbros.c +++ b/src/mame/drivers/snowbros.c @@ -2272,7 +2272,7 @@ static DRIVER_INIT( moremorp ) // state->hyperpac_ram[0xf000/2 + i] = PROTDATA[i]; /* explicit check in the code */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, moremorp_0a_read ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200001, FUNC(moremorp_0a_read) ); } @@ -2673,7 +2673,7 @@ static DRIVER_INIT(4in1boot) memcpy(src,buffer,len); auto_free(machine, buffer); } - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, _4in1_02_read ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200001, FUNC(_4in1_02_read) ); } static DRIVER_INIT(snowbro3) @@ -2700,7 +2700,7 @@ static READ16_HANDLER( _3in1_read ) static DRIVER_INIT( 3in1semi ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, _3in1_read ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200001, FUNC(_3in1_read) ); } static READ16_HANDLER( cookbib3_read ) @@ -2710,7 +2710,7 @@ static READ16_HANDLER( cookbib3_read ) static DRIVER_INIT( cookbib3 ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, cookbib3_read ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x200000, 0x200001, FUNC(cookbib3_read) ); } static DRIVER_INIT( pzlbreak ) diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c index 0c75c69af9c..9f47c596438 100644 --- a/src/mame/drivers/starwars.c +++ b/src/mame/drivers/starwars.c @@ -524,10 +524,10 @@ static DRIVER_INIT( esb ) space->set_direct_update_handler(direct_update_delegate_create_static(esb_setdirect, *machine)); /* install read/write handlers for it */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0x9fff, 0, 0, esb_slapstic_r, esb_slapstic_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8000, 0x9fff, FUNC(esb_slapstic_r), FUNC(esb_slapstic_w)); /* install additional banking */ - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa000, 0xffff, 0, 0, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xa000, 0xffff, "bank2"); /* prepare the matrix processor */ state->is_esb = 1; diff --git a/src/mame/drivers/statriv2.c b/src/mame/drivers/statriv2.c index 253006b70c7..152ee52dee2 100644 --- a/src/mame/drivers/statriv2.c +++ b/src/mame/drivers/statriv2.c @@ -1127,7 +1127,7 @@ static WRITE8_HANDLER( laserdisc_io_w ) static DRIVER_INIT( laserdisc ) { address_space *iospace = machine->device("maincpu")->memory().space(AS_IO); - memory_install_readwrite8_handler(iospace, 0x28, 0x2b, 0, 0, laserdisc_io_r, laserdisc_io_w); + iospace->install_legacy_readwrite_handler(0x28, 0x2b, FUNC(laserdisc_io_r), FUNC(laserdisc_io_w)); } diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c index 030651f564b..04316677bbb 100644 --- a/src/mame/drivers/strnskil.c +++ b/src/mame/drivers/strnskil.c @@ -507,16 +507,16 @@ static DRIVER_INIT( pettanp ) // AM_RANGE(0xd806, 0xd806) AM_READ(protection_r) /* protection data read (pettanp) */ /* Fujitsu MB8841 4-Bit MCU */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd806, 0xd806, 0, 0, pettanp_protection_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd80d, 0xd80d, 0, 0, protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd806, 0xd806, FUNC(pettanp_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd80d, 0xd80d, FUNC(protection_w)); } static DRIVER_INIT( banbam ) { /* Fujitsu MB8841 4-Bit MCU */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd806, 0xd806, 0, 0, banbam_protection_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd80d, 0xd80d, 0, 0, protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd806, 0xd806, FUNC(banbam_protection_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd80d, 0xd80d, FUNC(protection_w)); } GAME( 1984, strnskil, 0, strnskil, strnskil, 0, ROT0, "Sun Electronics", "Strength & Skill", 0 ) diff --git a/src/mame/drivers/stv.c b/src/mame/drivers/stv.c index 3a141633525..b46f7435811 100644 --- a/src/mame/drivers/stv.c +++ b/src/mame/drivers/stv.c @@ -2359,10 +2359,10 @@ DRIVER_INIT ( stv ) sh2drc_set_options(machine->device("slave"), SH2DRC_STRICT_VERIFY|SH2DRC_STRICT_PCREL); /* debug .. watch the command buffer rsgun, cottonbm etc. appear to use to communicate between cpus */ - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60ffc44, 0x60ffc47, 0, 0, w60ffc44_write ); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60ffc48, 0x60ffc4b, 0, 0, w60ffc48_write ); - memory_install_write32_handler(machine->device("slave")->memory().space(AS_PROGRAM), 0x60ffc44, 0x60ffc47, 0, 0, w60ffc44_write ); - memory_install_write32_handler(machine->device("slave")->memory().space(AS_PROGRAM), 0x60ffc48, 0x60ffc4b, 0, 0, w60ffc48_write ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x60ffc44, 0x60ffc47, FUNC(w60ffc44_write) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x60ffc48, 0x60ffc4b, FUNC(w60ffc48_write) ); + machine->device("slave")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x60ffc44, 0x60ffc47, FUNC(w60ffc44_write) ); + machine->device("slave")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x60ffc48, 0x60ffc4b, FUNC(w60ffc48_write) ); smpc_ram[0x31] = 0x00; //CTG1=0 CTG0=0 (correct??) // smpc_ram[0x33] = input_port_read(machine, "FAKE"); diff --git a/src/mame/drivers/stvinit.c b/src/mame/drivers/stvinit.c index d4b53f50cca..dbf94928326 100644 --- a/src/mame/drivers/stvinit.c +++ b/src/mame/drivers/stvinit.c @@ -308,7 +308,7 @@ DRIVER_INIT( astrass ) sh2drc_add_pcflush(machine->device("maincpu"), 0x60011b8); sh2drc_add_pcflush(machine->device("maincpu"), 0x605b9da); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x06000770, 0x06000773, 0, 0, astrass_hack_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x06000770, 0x06000773, FUNC(astrass_hack_r) ); install_astrass_protection(machine); diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c index 15b14ad458c..8612c21d28c 100644 --- a/src/mame/drivers/superchs.c +++ b/src/mame/drivers/superchs.c @@ -463,8 +463,8 @@ static READ16_HANDLER( sub_cycle_r ) static DRIVER_INIT( superchs ) { /* Speedup handlers */ - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100000, 0x100003, 0, 0, main_cycle_r); - memory_install_read16_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x80000a, 0x80000b, 0, 0, sub_cycle_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x100000, 0x100003, FUNC(main_cycle_r)); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x80000a, 0x80000b, FUNC(sub_cycle_r)); } GAMEL( 1992, superchs, 0, superchs, superchs, superchs, ROT0, "Taito America Corporation", "Super Chase - Criminal Termination (US)", 0, layout_superchs ) diff --git a/src/mame/drivers/suprnova.c b/src/mame/drivers/suprnova.c index d1ca16054ce..69499bfb25d 100644 --- a/src/mame/drivers/suprnova.c +++ b/src/mame/drivers/suprnova.c @@ -966,7 +966,7 @@ static void init_skns(running_machine *machine) sh2drc_set_options(machine->device("maincpu"), SH2DRC_FASTEST_OPTIONS); sh2drc_add_pcflush(machine->device("maincpu"), 0x6f8); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000028, 0x600002b, 0, 0, bios_skip_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000028, 0x600002b, FUNC(bios_skip_r) ); } static void set_drc_pcflush(running_machine *machine, UINT32 addr) @@ -976,21 +976,21 @@ static void set_drc_pcflush(running_machine *machine, UINT32 addr) static DRIVER_INIT( galpani4 ) { machine->device("spritegen")->skns_sprite_kludge(-5,-1); init_skns(machine); } static DRIVER_INIT( galpanis ) { machine->device("spritegen")->skns_sprite_kludge(-5,-1); init_skns(machine); } -static DRIVER_INIT( cyvern ) { machine->device("spritegen")->skns_sprite_kludge(+0,+2); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x604d3c8, 0x604d3cb, 0, 0, cyvern_speedup_r ); set_drc_pcflush(machine, 0x402ebd2); } -static DRIVER_INIT( galpans2 ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60fb6bc, 0x60fb6bf, 0, 0, galpans2_speedup_r ); set_drc_pcflush(machine, 0x4049ae2); } -static DRIVER_INIT( gutsn ) { machine->device("spritegen")->skns_sprite_kludge(+0,+0); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x600c780, 0x600c783, 0, 0, gutsn_speedup_r ); set_drc_pcflush(machine, 0x402206e); } -static DRIVER_INIT( panicstr ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60f19e4, 0x60f19e7, 0, 0, panicstr_speedup_r ); set_drc_pcflush(machine, 0x404e68a); } -static DRIVER_INIT( senknow ) { machine->device("spritegen")->skns_sprite_kludge(+1,+1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60000dc, 0x60000df, 0, 0, senknow_speedup_r ); set_drc_pcflush(machine, 0x4017dce); } -static DRIVER_INIT( puzzloop ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6081d38, 0x6081d3b, 0, 0, puzzloop_speedup_r ); set_drc_pcflush(machine, 0x401da14); } -static DRIVER_INIT( puzzloopj ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6086714, 0x6086717, 0, 0, puzzloopj_speedup_r ); set_drc_pcflush(machine, 0x401dca0); } -static DRIVER_INIT( puzzloopa ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6085bcc, 0x6085bcf, 0, 0, puzzloopa_speedup_r ); set_drc_pcflush(machine, 0x401d9d4); } -static DRIVER_INIT( puzzloopu ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6085cec, 0x6085cef, 0, 0, puzzloopu_speedup_r ); set_drc_pcflush(machine, 0x401dab0); } -static DRIVER_INIT( jjparads ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000994, 0x6000997, 0, 0, jjparads_speedup_r ); set_drc_pcflush(machine, 0x4015e84); } -static DRIVER_INIT( jjparad2 ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000984, 0x6000987, 0, 0, jjparad2_speedup_r ); set_drc_pcflush(machine, 0x401620a); } -static DRIVER_INIT( ryouran ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000a14, 0x6000a17, 0, 0, ryouran_speedup_r ); set_drc_pcflush(machine, 0x40182ce); } -static DRIVER_INIT( teljan ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6002fb4, 0x6002fb7, 0, 0, teljan_speedup_r ); set_drc_pcflush(machine, 0x401ba32); } -static DRIVER_INIT( sengekis ) { machine->device("spritegen")->skns_sprite_kludge(-192,-272); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60b74bc, 0x60b74bf, 0, 0, sengekis_speedup_r ); set_drc_pcflush(machine, 0x60006ec); } -static DRIVER_INIT( sengekij ) { machine->device("spritegen")->skns_sprite_kludge(-192,-272); init_skns(machine); memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x60b7380, 0x60b7383, 0, 0, sengekij_speedup_r ); set_drc_pcflush(machine, 0x60006ec); } +static DRIVER_INIT( cyvern ) { machine->device("spritegen")->skns_sprite_kludge(+0,+2); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x604d3c8, 0x604d3cb, FUNC(cyvern_speedup_r) ); set_drc_pcflush(machine, 0x402ebd2); } +static DRIVER_INIT( galpans2 ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60fb6bc, 0x60fb6bf, FUNC(galpans2_speedup_r) ); set_drc_pcflush(machine, 0x4049ae2); } +static DRIVER_INIT( gutsn ) { machine->device("spritegen")->skns_sprite_kludge(+0,+0); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x600c780, 0x600c783, FUNC(gutsn_speedup_r) ); set_drc_pcflush(machine, 0x402206e); } +static DRIVER_INIT( panicstr ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60f19e4, 0x60f19e7, FUNC(panicstr_speedup_r) ); set_drc_pcflush(machine, 0x404e68a); } +static DRIVER_INIT( senknow ) { machine->device("spritegen")->skns_sprite_kludge(+1,+1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60000dc, 0x60000df, FUNC(senknow_speedup_r) ); set_drc_pcflush(machine, 0x4017dce); } +static DRIVER_INIT( puzzloop ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6081d38, 0x6081d3b, FUNC(puzzloop_speedup_r) ); set_drc_pcflush(machine, 0x401da14); } +static DRIVER_INIT( puzzloopj ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6086714, 0x6086717, FUNC(puzzloopj_speedup_r) ); set_drc_pcflush(machine, 0x401dca0); } +static DRIVER_INIT( puzzloopa ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6085bcc, 0x6085bcf, FUNC(puzzloopa_speedup_r) ); set_drc_pcflush(machine, 0x401d9d4); } +static DRIVER_INIT( puzzloopu ) { machine->device("spritegen")->skns_sprite_kludge(-9,-1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6085cec, 0x6085cef, FUNC(puzzloopu_speedup_r) ); set_drc_pcflush(machine, 0x401dab0); } +static DRIVER_INIT( jjparads ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000994, 0x6000997, FUNC(jjparads_speedup_r) ); set_drc_pcflush(machine, 0x4015e84); } +static DRIVER_INIT( jjparad2 ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000984, 0x6000987, FUNC(jjparad2_speedup_r) ); set_drc_pcflush(machine, 0x401620a); } +static DRIVER_INIT( ryouran ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6000a14, 0x6000a17, FUNC(ryouran_speedup_r) ); set_drc_pcflush(machine, 0x40182ce); } +static DRIVER_INIT( teljan ) { machine->device("spritegen")->skns_sprite_kludge(+5,+1); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6002fb4, 0x6002fb7, FUNC(teljan_speedup_r) ); set_drc_pcflush(machine, 0x401ba32); } +static DRIVER_INIT( sengekis ) { machine->device("spritegen")->skns_sprite_kludge(-192,-272); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60b74bc, 0x60b74bf, FUNC(sengekis_speedup_r) ); set_drc_pcflush(machine, 0x60006ec); } +static DRIVER_INIT( sengekij ) { machine->device("spritegen")->skns_sprite_kludge(-192,-272); init_skns(machine); machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x60b7380, 0x60b7383, FUNC(sengekij_speedup_r) ); set_drc_pcflush(machine, 0x60006ec); } static DRIVER_INIT( sarukani ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); set_drc_pcflush(machine, 0x4013b42); } // Speedup is in skns_io_w() static DRIVER_INIT( galpans3 ) { machine->device("spritegen")->skns_sprite_kludge(-1,-1); init_skns(machine); } diff --git a/src/mame/drivers/system1.c b/src/mame/drivers/system1.c index 8bdcd017439..61e18e8d191 100644 --- a/src/mame/drivers/system1.c +++ b/src/mame/drivers/system1.c @@ -4546,11 +4546,11 @@ static DRIVER_INIT( dakkochn ) mc8123_decrypt_rom(machine, "maincpu", "key", "bank1", 4); -// memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x00, 0x00, 0, 0, dakkochn_port_00_r); -// memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x03, 0x03, 0, 0, dakkochn_port_03_r); -// memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x04, 0x04, 0, 0, dakkochn_port_04_r); +// machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(dakkochn_port_00_r)); +// machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x03, 0x03, FUNC(dakkochn_port_03_r)); +// machine->device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x04, 0x04, FUNC(dakkochn_port_04_r)); -// memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_IO), 0x15, 0x15, 0, 0, dakkochn_port_15_w); +// machine->device("maincpu")->memory().space(AS_IO)->install_legacy_write_handler(0x15, 0x15, FUNC(dakkochn_port_15_w)); } @@ -4616,11 +4616,11 @@ static DRIVER_INIT( nob ) /* hack to fix incorrect JMP at start, which should obviously be to $0080 */ /* patching the ROM causes errors in the self-test */ /* in real-life, it could be some behavior dependent upon M1 */ - memory_install_read8_handler(space, 0x0001, 0x0001, 0x0000, 0x0000, nob_start_r); + space->install_legacy_read_handler(0x0001, 0x0001, FUNC(nob_start_r)); /* install MCU communications */ - memory_install_readwrite8_handler(iospace, 0x18, 0x18, 0x00, 0x00, nob_maincpu_latch_r, nob_maincpu_latch_w); - memory_install_read8_handler(iospace, 0x1c, 0x1c, 0x00, 0x00, nob_mcu_status_r); + iospace->install_legacy_readwrite_handler(0x18, 0x18, 0x00, 0x00, FUNC(nob_maincpu_latch_r), FUNC(nob_maincpu_latch_w)); + iospace->install_legacy_read_handler(0x1c, 0x1c, FUNC(nob_mcu_status_r)); } static DRIVER_INIT( nobb ) @@ -4647,10 +4647,10 @@ static DRIVER_INIT( nobb ) DRIVER_INIT_CALL(bank44); - memory_install_read8_handler(iospace, 0x1c, 0x1c, 0x00, 0x00, nobb_inport1c_r); - memory_install_read8_handler(iospace, 0x22, 0x22, 0x00, 0x00, nobb_inport22_r); - memory_install_read8_handler(iospace, 0x23, 0x23, 0x00, 0x00, nobb_inport23_r); - memory_install_write8_handler(iospace, 0x24, 0x24, 0x00, 0x00, nobb_outport24_w); + iospace->install_legacy_read_handler(0x1c, 0x1c, FUNC(nobb_inport1c_r)); + iospace->install_legacy_read_handler(0x22, 0x22, FUNC(nobb_inport22_r)); + iospace->install_legacy_read_handler(0x23, 0x23, FUNC(nobb_inport23_r)); + iospace->install_legacy_write_handler(0x24, 0x24, FUNC(nobb_outport24_w)); } @@ -4685,10 +4685,10 @@ static DRIVER_INIT( choplift ) static DRIVER_INIT( shtngmst ) { address_space *iospace = machine->device("maincpu")->memory().space(AS_IO); - memory_install_read_port(iospace, 0x12, 0x12, 0x00, 0x00, "TRIGGER"); - memory_install_read_port(iospace, 0x18, 0x18, 0x00, 0x03, "18"); - memory_install_read_port(iospace, 0x1c, 0x1c, 0x00, 0x02, "GUNX"); - memory_install_read_port(iospace, 0x1d, 0x1d, 0x00, 0x02, "GUNY"); + iospace->install_read_port(0x12, 0x12, 0x00, 0x00, "TRIGGER"); + iospace->install_read_port(0x18, 0x18, 0x00, 0x03, "18"); + iospace->install_read_port(0x1c, 0x1c, 0x00, 0x02, "GUNX"); + iospace->install_read_port(0x1d, 0x1d, 0x00, 0x02, "GUNY"); DRIVER_INIT_CALL(bank0c); } diff --git a/src/mame/drivers/taito_f3.c b/src/mame/drivers/taito_f3.c index 41492f0ba30..c91f1e8ca8c 100644 --- a/src/mame/drivers/taito_f3.c +++ b/src/mame/drivers/taito_f3.c @@ -3737,8 +3737,8 @@ static DRIVER_INIT( bubsympb ) } } - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4a001c, 0x4a001f, 0, 0, bubsympb_oki_r ); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4a001c, 0x4a001f, 0, 0, bubsympb_oki_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4a001c, 0x4a001f, FUNC(bubsympb_oki_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4a001c, 0x4a001f, FUNC(bubsympb_oki_w) ); } diff --git a/src/mame/drivers/taito_l.c b/src/mame/drivers/taito_l.c index 6999a396f39..26fa75ff95d 100644 --- a/src/mame/drivers/taito_l.c +++ b/src/mame/drivers/taito_l.c @@ -2898,7 +2898,7 @@ static DRIVER_INIT( evilston ) { UINT8 *ROM = machine->region("audiocpu")->base(); ROM[0x72] = 0x45; /* reti -> retn ('dead' loop @ $1104 )*/ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa7fe, 0xa7fe, 0, 0, evilston_snd_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa7fe, 0xa7fe, FUNC(evilston_snd_w)); } diff --git a/src/mame/drivers/taito_x.c b/src/mame/drivers/taito_x.c index 3a68101f0a5..5530d188611 100644 --- a/src/mame/drivers/taito_x.c +++ b/src/mame/drivers/taito_x.c @@ -1324,7 +1324,7 @@ ROM_END static DRIVER_INIT( kyustrkr ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x900000, 0x90000f, 0, 0, kyustrkr_input_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x900000, 0x90000f, FUNC(kyustrkr_input_w)); } diff --git a/src/mame/drivers/taitogn.c b/src/mame/drivers/taitogn.c index ae44124432b..811c40c05bf 100644 --- a/src/mame/drivers/taitogn.c +++ b/src/mame/drivers/taitogn.c @@ -567,16 +567,16 @@ static void install_handlers(running_machine *machine, int mode) address_space *a = machine->device("maincpu")->memory().space(AS_PROGRAM); if(mode == 0) { // Mode 0 has access to the subbios, the mn102 flash and the rf5c296 mem zone - memory_install_readwrite32_handler(a, 0x1f000000, 0x1f1fffff, 0, 0, flash_subbios_r, flash_subbios_w); - memory_install_readwrite32_handler(a, 0x1f200000, 0x1f2fffff, 0, 0, rf5c296_mem_r, rf5c296_mem_w); - memory_install_readwrite32_handler(a, 0x1f300000, 0x1f37ffff, 0, 0, flash_mn102_r, flash_mn102_w); - memory_nop_readwrite(a, 0x1f380000, 0x1f5fffff, 0, 0); + a->install_legacy_readwrite_handler(0x1f000000, 0x1f1fffff, FUNC(flash_subbios_r), FUNC(flash_subbios_w)); + a->install_legacy_readwrite_handler(0x1f200000, 0x1f2fffff, FUNC(rf5c296_mem_r), FUNC(rf5c296_mem_w)); + a->install_legacy_readwrite_handler(0x1f300000, 0x1f37ffff, FUNC(flash_mn102_r), FUNC(flash_mn102_w)); + a->nop_readwrite(0x1f380000, 0x1f5fffff); } else { // Mode 1 has access to the 3 samples flashes - memory_install_readwrite32_handler(a, 0x1f000000, 0x1f1fffff, 0, 0, flash_s1_r, flash_s1_w); - memory_install_readwrite32_handler(a, 0x1f200000, 0x1f3fffff, 0, 0, flash_s2_r, flash_s2_w); - memory_install_readwrite32_handler(a, 0x1f400000, 0x1f5fffff, 0, 0, flash_s3_r, flash_s3_w); + a->install_legacy_readwrite_handler(0x1f000000, 0x1f1fffff, FUNC(flash_s1_r), FUNC(flash_s1_w)); + a->install_legacy_readwrite_handler(0x1f200000, 0x1f3fffff, FUNC(flash_s2_r), FUNC(flash_s2_w)); + a->install_legacy_readwrite_handler(0x1f400000, 0x1f5fffff, FUNC(flash_s3_r), FUNC(flash_s3_w)); } } @@ -894,7 +894,7 @@ static DRIVER_INIT( coh3002t ) static DRIVER_INIT( coh3002t_mp ) { DRIVER_INIT_CALL(coh3002t); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10100, 0x1fa10103, 0, 0, gnet_mahjong_panel_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1fa10100, 0x1fa10103, FUNC(gnet_mahjong_panel_r) ); } static MACHINE_RESET( coh3002t ) diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c index 3c2916b6c8f..973d0659c30 100644 --- a/src/mame/drivers/taitosj.c +++ b/src/mame/drivers/taitosj.c @@ -2742,7 +2742,7 @@ static DRIVER_INIT( spacecr ) init_common(machine); /* install protection handler */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd48b, 0xd48b, 0, 0, spacecr_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd48b, 0xd48b, FUNC(spacecr_prot_r)); } static DRIVER_INIT( alpine ) @@ -2750,8 +2750,8 @@ static DRIVER_INIT( alpine ) init_common(machine); /* install protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd40b, 0xd40b, 0, 0, alpine_port_2_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd50f, 0xd50f, 0, 0, alpine_protection_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd40b, 0xd40b, FUNC(alpine_port_2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd50f, 0xd50f, FUNC(alpine_protection_w)); } static DRIVER_INIT( alpinea ) @@ -2759,8 +2759,8 @@ static DRIVER_INIT( alpinea ) init_common(machine); /* install protection handlers */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd40b, 0xd40b, 0, 0, alpine_port_2_r); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd50e, 0xd50e, 0, 0, alpinea_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd40b, 0xd40b, FUNC(alpine_port_2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xd50e, 0xd50e, FUNC(alpinea_bankswitch_w)); } static DRIVER_INIT( junglhbr ) @@ -2768,7 +2768,7 @@ static DRIVER_INIT( junglhbr ) init_common(machine); /* inverter on bits 0 and 1 */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9000, 0xbfff, 0, 0, junglhbr_characterram_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x9000, 0xbfff, FUNC(junglhbr_characterram_w)); } GAME( 1981, spaceskr, 0, nomcu, spaceskr, taitosj, ROT0, "Taito Corporation", "Space Seeker", GAME_SUPPORTS_SAVE ) diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c index 1f70c2b1364..6e7496e562f 100644 --- a/src/mame/drivers/tecmo.c +++ b/src/mame/drivers/tecmo.c @@ -1178,9 +1178,9 @@ static DRIVER_INIT( backfirt ) state->video_type = 2; /* no MSM */ - memory_nop_write(machine->device("soundcpu")->memory().space(AS_PROGRAM), 0xc000, 0xc000, 0, 0); - memory_nop_write(machine->device("soundcpu")->memory().space(AS_PROGRAM), 0xd000, 0xd000, 0, 0); - memory_nop_write(machine->device("soundcpu")->memory().space(AS_PROGRAM), 0xe000, 0xe000, 0, 0); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->nop_write(0xc000, 0xc000); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->nop_write(0xd000, 0xd000); + machine->device("soundcpu")->memory().space(AS_PROGRAM)->nop_write(0xe000, 0xe000); } diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c index 19977a67a86..21869b47857 100644 --- a/src/mame/drivers/terracre.c +++ b/src/mame/drivers/terracre.c @@ -1030,7 +1030,7 @@ static DRIVER_INIT( horekid ) { terracre_state *state = machine->driver_data(); state->mpProtData = mHoreKidProtData; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x44004, 0x44005, 0, 0, horekid_IN2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x44004, 0x44005, FUNC(horekid_IN2_r)); } /* YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MONITOR, COMPANY, FULLNAME, FLAGS */ diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c index 27b5508ef99..5d9e519b0f4 100644 --- a/src/mame/drivers/thepit.c +++ b/src/mame/drivers/thepit.c @@ -1064,7 +1064,7 @@ static READ8_HANDLER( rtriv_question_r ) static DRIVER_INIT( rtriv ) { // Set-up the weirdest questions read ever done - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x4fff, 0, 0, rtriv_question_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4000, 0x4fff, FUNC(rtriv_question_r)); } diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c index 3670b730d11..5a123e6e3d5 100644 --- a/src/mame/drivers/tigeroad.c +++ b/src/mame/drivers/tigeroad.c @@ -766,12 +766,12 @@ ROM_END static DRIVER_INIT( tigeroad ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe4002, 0xfe4003, 0, 0, tigeroad_soundcmd_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfe4002, 0xfe4003, FUNC(tigeroad_soundcmd_w)); } static DRIVER_INIT( f1dream ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfe4002, 0xfe4003, 0, 0, f1dream_control_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfe4002, 0xfe4003, FUNC(f1dream_control_w)); } diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c index 08b4a3f18c6..3258cffe7a2 100644 --- a/src/mame/drivers/trackfld.c +++ b/src/mame/drivers/trackfld.c @@ -1426,14 +1426,14 @@ static DRIVER_INIT( atlantol ) space->set_decrypted_region(0x0000, 0xffff, decrypt); - memory_install_write8_handler(space, 0x0800, 0x0800, 0, 0, atlantol_gfxbank_w); - memory_nop_write(space, 0x1000, 0x1000, 0, 0); + space->install_legacy_write_handler(0x0800, 0x0800, FUNC(atlantol_gfxbank_w)); + space->nop_write(0x1000, 0x1000); /* unmapped areas read as ROM */ - memory_install_read_bank(space, 0x0000, 0x11ff, 0, 0, "bank10"); - memory_install_read_bank(space, 0x1380, 0x17ff, 0, 0, "bank11"); - memory_install_read_bank(space, 0x2000, 0x27ff, 0, 0, "bank12"); - memory_install_read_bank(space, 0x4000, 0x5fff, 0, 0, "bank13"); + space->install_read_bank(0x0000, 0x11ff, "bank10"); + space->install_read_bank(0x1380, 0x17ff, "bank11"); + space->install_read_bank(0x2000, 0x27ff, "bank12"); + space->install_read_bank(0x4000, 0x5fff, "bank13"); memory_set_bankptr(machine, "bank10", &rom[0x0000]); memory_set_bankptr(machine, "bank11", &rom[0x1380]); memory_set_bankptr(machine, "bank12", &rom[0x2000]); diff --git a/src/mame/drivers/tumbleb.c b/src/mame/drivers/tumbleb.c index 7ebea13504d..44b37766f7f 100644 --- a/src/mame/drivers/tumbleb.c +++ b/src/mame/drivers/tumbleb.c @@ -3395,7 +3395,7 @@ static DRIVER_INIT( tumbleb2 ) tumblepb_patch_code(machine, 0x000132); #endif - memory_install_write16_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), oki, 0x100000, 0x100001, 0, 0, tumbleb2_soundmcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*oki, 0x100000, 0x100001, FUNC(tumbleb2_soundmcu_w) ); } @@ -3433,7 +3433,7 @@ static READ16_HANDLER( bcstory_1a0_read ) static DRIVER_INIT ( bcstory ) { tumblepb_gfx1_rearrange(machine); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x180008, 0x180009, 0, 0, bcstory_1a0_read ); // io should be here?? + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x180008, 0x180009, FUNC(bcstory_1a0_read) ); // io should be here?? } @@ -3675,7 +3675,7 @@ static DRIVER_INIT( htchctch ) HCROM[0x1e228/2] = 0x4e75; - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x140000, 0x1407ff, 0, 0 ); // kill palette writes as the interrupt code we don't have controls them + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x140000, 0x1407ff); // kill palette writes as the interrupt code we don't have controls them { @@ -3739,10 +3739,10 @@ static DRIVER_INIT( chokchok ) DRIVER_INIT_CALL(htchctch); /* different palette format, closer to tumblep -- is this controlled by a register? the palette was right with the hatch catch trojan */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x140000, 0x140fff, 0, 0, paletteram16_xxxxBBBBGGGGRRRR_word_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x140000, 0x140fff, FUNC(paletteram16_xxxxBBBBGGGGRRRR_word_w)); /* slightly different banking */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100002, 0x100003, 0, 0, chokchok_tilebank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x100002, 0x100003, FUNC(chokchok_tilebank_w)); } static DRIVER_INIT( wlstar ) @@ -3751,7 +3751,7 @@ static DRIVER_INIT( wlstar ) tumblepb_gfx1_rearrange(machine); /* slightly different banking */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x100002, 0x100003, 0, 0, wlstar_tilebank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x100002, 0x100003, FUNC(wlstar_tilebank_w)); state->protbase = 0x0000; } diff --git a/src/mame/drivers/upscope.c b/src/mame/drivers/upscope.c index 5e071606b3a..589512902b0 100644 --- a/src/mame/drivers/upscope.c +++ b/src/mame/drivers/upscope.c @@ -91,11 +91,11 @@ static WRITE8_DEVICE_HANDLER( upscope_cia_0_porta_w ) /* swap the write handlers between ROM and bank 1 based on the bit */ if ((data & 1) == 0) /* overlay disabled, map RAM on 0x000000 */ - memory_install_write_bank(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0, "bank1"); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x000000, 0x07ffff, "bank1"); else /* overlay enabled, map Amiga system ROM on 0x000000 */ - memory_unmap_write(device->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000000, 0x07ffff, 0, 0); + device->machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x000000, 0x07ffff); } diff --git a/src/mame/drivers/vamphalf.c b/src/mame/drivers/vamphalf.c index d7a23061dc3..c1e328db9ff 100644 --- a/src/mame/drivers/vamphalf.c +++ b/src/mame/drivers/vamphalf.c @@ -1822,7 +1822,7 @@ static READ16_HANDLER( mrdig_speedup_r ) static DRIVER_INIT( vamphalf ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0004a840, 0x0004a843, 0, 0, vamphalf_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0004a840, 0x0004a843, FUNC(vamphalf_speedup_r) ); state->palshift = 0; state->flip_bit = 0x80; @@ -1831,7 +1831,7 @@ static DRIVER_INIT( vamphalf ) static DRIVER_INIT( vamphafk ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0004a6d0, 0x0004a6d3, 0, 0, vamphafk_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0004a6d0, 0x0004a6d3, FUNC(vamphafk_speedup_r) ); state->palshift = 0; state->flip_bit = 0x80; @@ -1840,7 +1840,7 @@ static DRIVER_INIT( vamphafk ) static DRIVER_INIT( misncrft ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00072eb4, 0x00072eb7, 0, 0, misncrft_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00072eb4, 0x00072eb7, FUNC(misncrft_speedup_r) ); state->palshift = 0; state->flip_bit = 1; @@ -1849,7 +1849,7 @@ static DRIVER_INIT( misncrft ) static DRIVER_INIT( coolmini ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000d2e80, 0x000d2e83, 0, 0, coolmini_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x000d2e80, 0x000d2e83, FUNC(coolmini_speedup_r) ); state->palshift = 0; state->flip_bit = 1; @@ -1858,7 +1858,7 @@ static DRIVER_INIT( coolmini ) static DRIVER_INIT( suplup ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0011605c, 0x0011605f, 0, 0, suplup_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0011605c, 0x0011605f, FUNC(suplup_speedup_r) ); state->palshift = 8; /* no flipscreen */ @@ -1867,7 +1867,7 @@ static DRIVER_INIT( suplup ) static DRIVER_INIT( luplup ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00115e84, 0x00115e87, 0, 0, luplup_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00115e84, 0x00115e87, FUNC(luplup_speedup_r) ); state->palshift = 8; /* no flipscreen */ @@ -1876,7 +1876,7 @@ static DRIVER_INIT( luplup ) static DRIVER_INIT( luplup29 ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00113f08, 0x00113f0b, 0, 0, luplup29_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00113f08, 0x00113f0b, FUNC(luplup29_speedup_r) ); state->palshift = 8; /* no flipscreen */ @@ -1885,7 +1885,7 @@ static DRIVER_INIT( luplup29 ) static DRIVER_INIT( puzlbang ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00113ecc, 0x00113ecf, 0, 0, puzlbang_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00113ecc, 0x00113ecf, FUNC(puzlbang_speedup_r) ); state->palshift = 8; /* no flipscreen */ @@ -1894,7 +1894,7 @@ static DRIVER_INIT( puzlbang ) static DRIVER_INIT( wyvernwg ) { vamphalf_state *state = machine->driver_data(); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00b56fc, 0x00b56ff, 0, 0, wyvernwg_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00b56fc, 0x00b56ff, FUNC(wyvernwg_speedup_r) ); state->palshift = 0; state->flip_bit = 1; @@ -1909,7 +1909,7 @@ static DRIVER_INIT( finalgdr ) vamphalf_state *state = machine->driver_data(); state->finalgdr_backupram_bank = 1; state->finalgdr_backupram = auto_alloc_array(machine, UINT8, 0x80*0x100); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x005e874, 0x005e877, 0, 0, finalgdr_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x005e874, 0x005e877, FUNC(finalgdr_speedup_r) ); machine->device("nvram")->set_base(state->finalgdr_backupram, 0x80*0x100); state->palshift = 0; @@ -1926,7 +1926,7 @@ static DRIVER_INIT( mrkicker ) // backup ram isn't used state->finalgdr_backupram_bank = 1; state->finalgdr_backupram = auto_alloc_array(machine, UINT8, 0x80*0x100); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00701a4, 0x00701a7, 0, 0, mrkicker_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00701a4, 0x00701a7, FUNC(mrkicker_speedup_r) ); machine->device("nvram")->set_base(state->finalgdr_backupram, 0x80*0x100); state->palshift = 0; @@ -1940,7 +1940,7 @@ static DRIVER_INIT( mrkicker ) static DRIVER_INIT( dquizgo2 ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00cde70, 0x00cde73, 0, 0, dquizgo2_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00cde70, 0x00cde73, FUNC(dquizgo2_speedup_r) ); state->palshift = 0; state->flip_bit = 1; @@ -1949,7 +1949,7 @@ static DRIVER_INIT( dquizgo2 ) static DRIVER_INIT( aoh ) { vamphalf_state *state = machine->driver_data(); - memory_install_read32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x028a09c, 0x028a09f, 0, 0, aoh_speedup_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x028a09c, 0x028a09f, FUNC(aoh_speedup_r) ); state->palshift = 0; /* no flipscreen */ @@ -1958,8 +1958,8 @@ static DRIVER_INIT( aoh ) static DRIVER_INIT( jmpbreak ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00906fc, 0x00906ff, 0, 0, jmpbreak_speedup_r ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe0000000, 0xe0000003, 0, 0, jmpbreak_flipscreen_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00906fc, 0x00906ff, FUNC(jmpbreak_speedup_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe0000000, 0xe0000003, FUNC(jmpbreak_flipscreen_w) ); state->palshift = 0; } @@ -1967,8 +1967,8 @@ static DRIVER_INIT( jmpbreak ) static DRIVER_INIT( mrdig ) { vamphalf_state *state = machine->driver_data(); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00a99c, 0x00a99f, 0, 0, mrdig_speedup_r ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe0000000, 0xe0000003, 0, 0, jmpbreak_flipscreen_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x00a99c, 0x00a99f, FUNC(mrdig_speedup_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe0000000, 0xe0000003, FUNC(jmpbreak_flipscreen_w) ); state->palshift = 0; } diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c index 1c344e3bb4f..0680c1701e6 100644 --- a/src/mame/drivers/vegas.c +++ b/src/mame/drivers/vegas.c @@ -1559,7 +1559,7 @@ static void remap_dynamic_addresses(running_machine *machine) /* unmap everything we know about */ for (addr = 0; addr < state->dynamic_count; addr++) - memory_unmap_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), dynamic[addr].start, dynamic[addr].end, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_readwrite(dynamic[addr].start, dynamic[addr].end); /* the build the list of stuff */ state->dynamic_count = 0; @@ -1682,7 +1682,7 @@ static void remap_dynamic_addresses(running_machine *machine) if (LOG_DYNAMIC) logerror(" installing: %08X-%08X %s,%s\n", dynamic[addr].start, dynamic[addr].end, dynamic[addr].rdname, dynamic[addr].wrname); if (dynamic[addr].mread == NOP_HANDLER) - memory_nop_read(machine->device("maincpu")->memory().space(AS_PROGRAM), dynamic[addr].start, dynamic[addr].end, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_read(dynamic[addr].start, dynamic[addr].end); else if (dynamic[addr].mread != NULL) space->install_legacy_read_handler(dynamic[addr].start, dynamic[addr].end, 0, 0, dynamic[addr].mread, dynamic[addr].rdname); if (dynamic[addr].mwrite != NULL) diff --git a/src/mame/drivers/vendetta.c b/src/mame/drivers/vendetta.c index cd11bce91e0..b0df20cfdb9 100644 --- a/src/mame/drivers/vendetta.c +++ b/src/mame/drivers/vendetta.c @@ -170,15 +170,15 @@ static void vendetta_video_banking( running_machine *machine, int select ) if (select & 1) { - memory_install_read_bank(space, state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, 0, 0, "bank4" ); - memory_install_write8_handler(space, state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, 0, 0, paletteram_xBBBBBGGGGGRRRRR_be_w ); - memory_install_readwrite8_device_handler(space, state->k053246, state->video_banking_base + 0x0000, state->video_banking_base + 0x0fff, 0, 0, k053247_r, k053247_w ); + space->install_read_bank(state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, "bank4" ); + space->install_legacy_write_handler(state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, FUNC(paletteram_xBBBBBGGGGGRRRRR_be_w) ); + space->install_legacy_readwrite_handler(*state->k053246, state->video_banking_base + 0x0000, state->video_banking_base + 0x0fff, FUNC(k053247_r), FUNC(k053247_w) ); memory_set_bankptr(machine, "bank4", machine->generic.paletteram.v); } else { - memory_install_readwrite8_handler(space, state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, 0, 0, vendetta_K052109_r, vendetta_K052109_w ); - memory_install_readwrite8_device_handler(space, state->k052109, state->video_banking_base + 0x0000, state->video_banking_base + 0x0fff, 0, 0, k052109_r, k052109_w ); + space->install_legacy_readwrite_handler(state->video_banking_base + 0x2000, state->video_banking_base + 0x2fff, FUNC(vendetta_K052109_r), FUNC(vendetta_K052109_w) ); + space->install_legacy_readwrite_handler(*state->k052109, state->video_banking_base + 0x0000, state->video_banking_base + 0x0fff, FUNC(k052109_r), FUNC(k052109_w) ); } } diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c index 4f1968d4813..c5862c063e9 100644 --- a/src/mame/drivers/viper.c +++ b/src/mame/drivers/viper.c @@ -674,7 +674,7 @@ MACHINE_CONFIG_END static DRIVER_INIT(viper) { -// memory_install_readwrite64_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0xff200000, 0xff207fff, 0, 0, hdd_r, hdd_w ); //TODO +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0xff200000, 0xff207fff, FUNC(hdd_r), FUNC(hdd_w) ); //TODO } static DRIVER_INIT(vipercf) @@ -683,8 +683,8 @@ static DRIVER_INIT(vipercf) DRIVER_INIT_CALL(viper); - memory_install_readwrite64_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0xff000000, 0xff000fff, 0, 0, cf_card_data_r, cf_card_data_w ); - memory_install_readwrite64_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0xff200000, 0xff200fff, 0, 0, cf_card_r, cf_card_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0xff000000, 0xff000fff, FUNC(cf_card_data_r), FUNC(cf_card_data_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0xff200000, 0xff200fff, FUNC(cf_card_r), FUNC(cf_card_w) ); } diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c index c5c0566c098..3ec3a0b0dba 100644 --- a/src/mame/drivers/wardner.c +++ b/src/mame/drivers/wardner.c @@ -157,7 +157,7 @@ static WRITE8_HANDLER( wardner_ramrom_bank_sw ) if (data) { - memory_install_read_bank(mainspace, 0x8000, 0xffff, 0, 0, "bank1"); + mainspace->install_read_bank(0x8000, 0xffff, "bank1"); switch (data) { case 2: bankaddress = 0x10000; break; @@ -173,10 +173,10 @@ static WRITE8_HANDLER( wardner_ramrom_bank_sw ) } else { - memory_install_read8_handler(mainspace, 0x8000, 0x8fff, 0, 0, wardner_sprite_r); - memory_install_read_bank(mainspace, 0xa000, 0xadff, 0, 0, "bank4"); - memory_install_read_bank(mainspace, 0xae00, 0xafff, 0, 0, "bank2"); - memory_install_read_bank(mainspace, 0xc000, 0xc7ff, 0, 0, "bank3"); + mainspace->install_legacy_read_handler(0x8000, 0x8fff, FUNC(wardner_sprite_r)); + mainspace->install_read_bank(0xa000, 0xadff, "bank4"); + mainspace->install_read_bank(0xae00, 0xafff, "bank2"); + mainspace->install_read_bank(0xc000, 0xc7ff, "bank3"); memory_set_bankptr(space->machine, "bank1", &RAM[0x0000]); memory_set_bankptr(space->machine, "bank2", state->rambase_ae00); memory_set_bankptr(space->machine, "bank3", state->rambase_c000); diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c index d2e84de037c..89e921f12bf 100644 --- a/src/mame/drivers/williams.c +++ b/src/mame/drivers/williams.c @@ -531,14 +531,14 @@ void defender_install_io_space(address_space *space) device_t *pia_1 = space->machine->device("pia_1"); /* this routine dynamically installs the memory mapped above from c000-cfff */ - memory_install_write_bank (space, 0xc000, 0xc00f, 0, 0x03e0, "bank4"); - memory_install_write8_handler (space, 0xc010, 0xc01f, 0, 0x03e0, defender_video_control_w); - memory_install_write8_handler (space, 0xc3ff, 0xc3ff, 0, 0, williams_watchdog_reset_w); - memory_install_read_bank(space, 0xc400, 0xc4ff, 0, 0x0300, "bank3"); - memory_install_write8_handler(space, 0xc400, 0xc4ff, 0, 0x0300, williams_cmos_w); - memory_install_read8_handler (space, 0xc800, 0xcbff, 0, 0x03e0, williams_video_counter_r); - memory_install_readwrite8_device_handler(space, pia_1, 0xcc00, 0xcc03, 0, 0x03e0, pia6821_r, pia6821_w); - memory_install_readwrite8_device_handler(space, pia_0, 0xcc04, 0xcc07, 0, 0x03e0, pia6821_r, pia6821_w); + space->install_write_bank (0xc000, 0xc00f, 0, 0x03e0, "bank4"); + space->install_legacy_write_handler (0xc010, 0xc01f, 0, 0x03e0, FUNC(defender_video_control_w)); + space->install_legacy_write_handler (0xc3ff, 0xc3ff, FUNC(williams_watchdog_reset_w)); + space->install_read_bank(0xc400, 0xc4ff, 0, 0x0300, "bank3"); + space->install_legacy_write_handler(0xc400, 0xc4ff, 0, 0x0300, FUNC(williams_cmos_w)); + space->install_legacy_read_handler (0xc800, 0xcbff, 0, 0x03e0, FUNC(williams_video_counter_r)); + space->install_legacy_readwrite_handler(*pia_1, 0xcc00, 0xcc03, 0, 0x03e0, FUNC(pia6821_r), FUNC(pia6821_w)); + space->install_legacy_readwrite_handler(*pia_0, 0xcc04, 0xcc07, 0, 0x03e0, FUNC(pia6821_r), FUNC(pia6821_w)); memory_set_bankptr(space->machine, "bank3", space->machine->driver_data()->m_nvram); memory_set_bankptr(space->machine, "bank4", space->machine->generic.paletteram.v); } @@ -2729,7 +2729,7 @@ static DRIVER_INIT( mayday ) CONFIGURE_BLITTER(WILLIAMS_BLITTER_NONE, 0x0000); /* install a handler to catch protection checks */ - state->mayday_protection = memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa190, 0xa191, 0, 0, mayday_protection_r); + state->mayday_protection = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa190, 0xa191, FUNC(mayday_protection_r)); } @@ -2767,7 +2767,7 @@ static DRIVER_INIT( bubbles ) CONFIGURE_BLITTER(WILLIAMS_BLITTER_SC01, 0xc000); /* bubbles has a full 8-bit-wide CMOS */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xcc00, 0xcfff, 0, 0, bubbles_cmos_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xcc00, 0xcfff, FUNC(bubbles_cmos_w)); } @@ -2814,13 +2814,13 @@ static DRIVER_INIT( spdball ) CONFIGURE_BLITTER(WILLIAMS_BLITTER_SC01, 0xc000); /* add a third PIA */ - memory_install_readwrite8_device_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), pia_3, 0xc808, 0xc80b, 0, 0, pia6821_r, pia6821_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*pia_3, 0xc808, 0xc80b, FUNC(pia6821_r), FUNC(pia6821_w)); /* install extra input handlers */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc800, 0xc800, 0, 0, "AN0"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc801, 0xc801, 0, 0, "AN1"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc802, 0xc802, 0, 0, "AN2"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc803, 0xc803, 0, 0, "AN3"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc800, 0xc800, "AN0"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc801, 0xc801, "AN1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc802, 0xc802, "AN2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc803, 0xc803, "AN3"); } @@ -2828,7 +2828,7 @@ static DRIVER_INIT( alienar ) { williams_state *state = machine->driver_data(); CONFIGURE_BLITTER(WILLIAMS_BLITTER_SC01, 0xc000); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xcbff, 0xcbff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xcbff, 0xcbff); } @@ -2836,7 +2836,7 @@ static DRIVER_INIT( alienaru ) { williams_state *state = machine->driver_data(); CONFIGURE_BLITTER(WILLIAMS_BLITTER_SC01, 0xc000); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xcbff, 0xcbff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xcbff, 0xcbff); } diff --git a/src/mame/drivers/witch.c b/src/mame/drivers/witch.c index a01a4dd48c4..cbbdc70da23 100644 --- a/src/mame/drivers/witch.c +++ b/src/mame/drivers/witch.c @@ -868,7 +868,7 @@ static DRIVER_INIT(witch) UINT8 *ROM = (UINT8 *)machine->region("maincpu")->base(); memory_set_bankptr(machine, "bank1", &ROM[0x10000+UNBANKED_SIZE]); - memory_install_read8_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x7000, 0x700f, 0, 0, prot_read_700x); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x7000, 0x700f, FUNC(prot_read_700x)); state->bank = -1; } diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c index 048adbd206a..2e94c346ff7 100644 --- a/src/mame/drivers/wiz.c +++ b/src/mame/drivers/wiz.c @@ -1071,13 +1071,13 @@ static DRIVER_INIT( stinger ) static DRIVER_INIT( scion ) { - memory_nop_write(machine->device("audiocpu")->memory().space(AS_PROGRAM), 0x4000, 0x4001, 0, 0); + machine->device("audiocpu")->memory().space(AS_PROGRAM)->nop_write(0x4000, 0x4001); } static DRIVER_INIT( wiz ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xd400, 0xd400, 0, 0, wiz_protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xd400, 0xd400, FUNC(wiz_protection_r)); } diff --git a/src/mame/drivers/yunsun16.c b/src/mame/drivers/yunsun16.c index 162e2621a35..132053d5d0b 100644 --- a/src/mame/drivers/yunsun16.c +++ b/src/mame/drivers/yunsun16.c @@ -157,7 +157,7 @@ number 0 on each voice. That sample is 00000-00000. static DRIVER_INIT( magicbub ) { // remove_mem_write16_handler (0, 0x800180, 0x800181 ); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x800188, 0x800189, 0, 0, magicbub_sound_command_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x800188, 0x800189, FUNC(magicbub_sound_command_w)); } /*************************************************************************** diff --git a/src/mame/drivers/zaxxon.c b/src/mame/drivers/zaxxon.c index ce5864adf0a..e53ce9589f9 100644 --- a/src/mame/drivers/zaxxon.c +++ b/src/mame/drivers/zaxxon.c @@ -1512,15 +1512,15 @@ static DRIVER_INIT( razmataz ) nprinces_decode(machine, "maincpu"); /* additional input ports are wired */ - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc004, 0xc004, 0, 0x18f3, "SW04"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc008, 0xc008, 0, 0x18f3, "SW08"); - memory_install_read_port(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc00c, 0xc00c, 0, 0x18f3, "SW0C"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc004, 0xc004, 0, 0x18f3, "SW04"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc008, 0xc008, 0, 0x18f3, "SW08"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_port(0xc00c, 0xc00c, 0, 0x18f3, "SW0C"); /* unknown behavior expected here */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc80a, 0xc80a, 0, 0, razmataz_counter_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc80a, 0xc80a, FUNC(razmataz_counter_r)); /* connect the universal sound board */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe03c, 0xe03c, 0, 0x1f00, sega_usb_status_r, sega_usb_data_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe03c, 0xe03c, 0, 0x1f00, FUNC(sega_usb_status_r), FUNC(sega_usb_data_w)); /* additional state saving */ state->save_item(NAME(state->razmataz_dial_pos)); @@ -1533,7 +1533,7 @@ static DRIVER_INIT( ixion ) szaxxon_decode(machine, "maincpu"); /* connect the universal sound board */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xe03c, 0xe03c, 0, 0x1f00, sega_usb_status_r, sega_usb_data_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe03c, 0xe03c, 0, 0x1f00, FUNC(sega_usb_status_r), FUNC(sega_usb_data_w)); } diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c index 2ce2da8b084..26c39a70a22 100644 --- a/src/mame/drivers/zn.c +++ b/src/mame/drivers/zn.c @@ -711,13 +711,13 @@ static WRITE32_HANDLER( zn_qsound_w ) static DRIVER_INIT( coh1000c ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f3fffff, 0, 0, "bank1" ); /* fixed game rom */ - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f7fffff, 0, 0, "bank2" ); /* banked game rom */ - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00003, 0, 0, bank_coh1000c_w ); /* bankswitch */ - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40010, 0x1fb40013, 0, 0, capcom_kickharness_r ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40020, 0x1fb40023, 0, 0, capcom_kickharness_r ); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb80000, 0x1fbfffff, 0, 0, "bank3" ); /* country rom */ - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb60000, 0x1fb60003, 0, 0, zn_qsound_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f3fffff, "bank1" ); /* fixed game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f400000, 0x1f7fffff, "bank2" ); /* banked game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00003, FUNC(bank_coh1000c_w) ); /* bankswitch */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fb40010, 0x1fb40013, FUNC(capcom_kickharness_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fb40020, 0x1fb40023, FUNC(capcom_kickharness_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1fb80000, 0x1fbfffff, "bank3" ); /* country rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb60000, 0x1fb60003, FUNC(zn_qsound_w) ); zn_driver_init(machine); @@ -928,13 +928,13 @@ static WRITE32_HANDLER( bank_coh3002c_w ) static DRIVER_INIT( coh3002c ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f3fffff, 0, 0, "bank1" ); /* fixed game rom */ - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f7fffff, 0, 0, "bank2" ); /* banked game rom */ - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40010, 0x1fb40013, 0, 0, capcom_kickharness_r ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40020, 0x1fb40023, 0, 0, capcom_kickharness_r ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00003, 0, 0, bank_coh3002c_w ); /* bankswitch */ - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb80000, 0x1fbfffff, 0, 0, "bank3" ); /* country rom */ - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb60000, 0x1fb60003, 0, 0, zn_qsound_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f3fffff, "bank1" ); /* fixed game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f400000, 0x1f7fffff, "bank2" ); /* banked game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fb40010, 0x1fb40013, FUNC(capcom_kickharness_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fb40020, 0x1fb40023, FUNC(capcom_kickharness_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00003, FUNC(bank_coh3002c_w) ); /* bankswitch */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1fb80000, 0x1fbfffff, "bank3" ); /* country rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb60000, 0x1fb60003, FUNC(zn_qsound_w) ); zn_driver_init(machine); } @@ -1218,10 +1218,10 @@ static DRIVER_INIT( coh1000ta ) state->taitofx1_eeprom_size1 = 0x200; state->taitofx1_eeprom1 = auto_alloc_array( machine, UINT8, state->taitofx1_eeprom_size1 ); machine->device("eeprom1")->set_base(state->taitofx1_eeprom1, state->taitofx1_eeprom_size1); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); /* banked game rom */ - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40000, 0x1fb40003, 0, 0, bank_coh1000t_w ); /* bankswitch */ - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb80000, 0x1fb80003, 0, 0, taitofx1a_ymsound_r, taitofx1a_ymsound_w ); - memory_install_readwrite_bank( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbe0000, 0x1fbe0000 + ( state->taitofx1_eeprom_size1 - 1 ), 0, 0, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f7fffff, "bank1" ); /* banked game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1fb40000, 0x1fb40003, FUNC(bank_coh1000t_w) ); /* bankswitch */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1fb80000, 0x1fb80003, FUNC(taitofx1a_ymsound_r), FUNC(taitofx1a_ymsound_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_bank( 0x1fbe0000, 0x1fbe0000 + ( state->taitofx1_eeprom_size1 - 1 ), "bank2" ); zn_driver_init(machine); } @@ -1309,13 +1309,13 @@ static DRIVER_INIT( coh1000tb ) machine->device("eeprom1")->set_base(state->taitofx1_eeprom1, state->taitofx1_eeprom_size1); machine->device("eeprom2")->set_base(state->taitofx1_eeprom2, state->taitofx1_eeprom_size2); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); /* banked game rom */ - memory_install_readwrite_bank( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00000 + ( state->taitofx1_eeprom_size1 - 1 ), 0, 0, "bank2" ); - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb40000, 0x1fb40003, 0, 0, bank_coh1000t_w ); /* bankswitch */ - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb80000, 0x1fb8ffff, 0, 0, taitofx1b_volume_w ); - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fba0000, 0x1fbaffff, 0, 0, taitofx1b_sound_w ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbc0000, 0x1fbc0003, 0, 0, taitofx1b_sound_r ); - memory_install_readwrite_bank( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbe0000, 0x1fbe0000 + ( state->taitofx1_eeprom_size2 - 1 ), 0, 0, "bank3" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f7fffff, "bank1" ); /* banked game rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_bank( 0x1fb00000, 0x1fb00000 + ( state->taitofx1_eeprom_size1 - 1 ), "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1fb40000, 0x1fb40003, FUNC(bank_coh1000t_w) ); /* bankswitch */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1fb80000, 0x1fb8ffff, FUNC(taitofx1b_volume_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1fba0000, 0x1fbaffff, FUNC(taitofx1b_sound_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fbc0000, 0x1fbc0003, FUNC(taitofx1b_sound_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_bank( 0x1fbe0000, 0x1fbe0000 + ( state->taitofx1_eeprom_size2 - 1 ), "bank3" ); zn_driver_init(machine); } @@ -1499,11 +1499,11 @@ static DRIVER_INIT( coh1000w ) { device_t *ide = machine->device("ide"); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f1fffff, 0, 0, "bank1" ); - memory_nop_write ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f000003, 0, 0 ); - memory_install_readwrite32_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0x1f7e4000, 0x1f7e4fff, 0, 0, ide_controller32_r, ide_controller32_w ); - memory_nop_readwrite ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f7e8000, 0x1f7e8003, 0, 0 ); - memory_install_readwrite32_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0x1f7f4000, 0x1f7f4fff, 0, 0, ide_controller32_r, ide_controller32_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f1fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write ( 0x1f000000, 0x1f000003); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0x1f7e4000, 0x1f7e4fff, FUNC(ide_controller32_r), FUNC(ide_controller32_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_readwrite ( 0x1f7e8000, 0x1f7e8003); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0x1f7f4000, 0x1f7f4fff, FUNC(ide_controller32_r), FUNC(ide_controller32_w) ); zn_driver_init(machine); } @@ -1689,9 +1689,9 @@ static WRITE32_HANDLER( coh1002e_latch_w ) static DRIVER_INIT( coh1002e ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10300, 0x1fa10303, 0, 0, coh1002e_bank_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00007, 0, 0, coh1002e_latch_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f7fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fa10300, 0x1fa10303, FUNC(coh1002e_bank_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00007, FUNC(coh1002e_latch_w) ); zn_driver_init(machine); } @@ -1833,12 +1833,12 @@ static READ32_HANDLER( bam2_unk_r ) static DRIVER_INIT( bam2 ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f3fffff, 0, 0, "bank1" ); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f400000, 0x1f7fffff, 0, 0, "bank2" ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00007, 0, 0, bam2_mcu_r ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa20000, 0x1fa20003, 0, 0, bam2_unk_r ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fa10300, 0x1fa10303, 0, 0, bam2_sec_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00007, 0, 0, bam2_mcu_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f3fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f400000, 0x1f7fffff, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fb00000, 0x1fb00007, FUNC(bam2_mcu_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fa20000, 0x1fa20003, FUNC(bam2_unk_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fa10300, 0x1fa10303, FUNC(bam2_sec_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00007, FUNC(bam2_mcu_w) ); zn_driver_init(machine); } @@ -2152,18 +2152,18 @@ static DRIVER_INIT( coh1000a ) { zn_state *state = machine->driver_data(); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f1fffff, 0, 0, "bank1" ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbfff00, 0x1fbfff03, 0, 0, acpsx_00_w ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbfff10, 0x1fbfff13, 0, 0, acpsx_10_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f1fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fbfff00, 0x1fbfff03, FUNC(acpsx_00_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fbfff10, 0x1fbfff13, FUNC(acpsx_10_w) ); if( strcmp( machine->gamedrv->name, "nbajamex" ) == 0 ) { state->nbajamex_eeprom_size = 0x8000; state->nbajamex_eeprom = auto_alloc_array( machine, UINT8, state->nbajamex_eeprom_size ); - memory_install_readwrite_bank( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f200000, 0x1f200000 + ( state->nbajamex_eeprom_size - 1 ), 0, 0, "bank2" ); - memory_install_read32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbfff08, 0x1fbfff0b, 0, 0, nbajamex_08_r ); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbfff80, 0x1fbfff83, 0, 0, nbajamex_80_r, nbajamex_80_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_bank( 0x1f200000, 0x1f200000 + ( state->nbajamex_eeprom_size - 1 ), "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler ( 0x1fbfff08, 0x1fbfff0b, FUNC(nbajamex_08_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1fbfff80, 0x1fbfff83, FUNC(nbajamex_80_r), FUNC(nbajamex_80_w) ); memory_set_bankptr( machine, "bank2", state->nbajamex_eeprom ); /* ram/eeprom/?? */ } @@ -2173,9 +2173,9 @@ static DRIVER_INIT( coh1000a ) { device_t *ide = machine->device("ide"); - memory_install_read32_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0x1fbfff8c, 0x1fbfff8f, 0, 0, jdredd_idestat_r ); - memory_nop_write ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fbfff8c, 0x1fbfff8f, 0, 0 ); - memory_install_readwrite32_device_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), ide, 0x1fbfff90, 0x1fbfff9f, 0, 0, jdredd_ide_r, jdredd_ide_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler( *ide, 0x1fbfff8c, 0x1fbfff8f, FUNC(jdredd_idestat_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write ( 0x1fbfff8c, 0x1fbfff8f); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( *ide, 0x1fbfff90, 0x1fbfff9f, FUNC(jdredd_ide_r), FUNC(jdredd_ide_w) ); } zn_driver_init(machine); @@ -2330,8 +2330,8 @@ static WRITE32_HANDLER( coh1001l_bnk_w ) static DRIVER_INIT( coh1001l ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); /* banked rom */ - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00003, 0, 0, coh1001l_bnk_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f7fffff, "bank1" ); /* banked rom */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00003, FUNC(coh1001l_bnk_w) ); zn_driver_init(machine); } @@ -2372,9 +2372,9 @@ static WRITE32_HANDLER( coh1002v_bnk_w ) static DRIVER_INIT( coh1002v ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f27ffff, 0, 0, "bank1" ); - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fbfffff, 0, 0, "bank2" ); - memory_install_write32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00003, 0, 0, coh1002v_bnk_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f27ffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1fb00000, 0x1fbfffff, "bank2" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler( 0x1fb00000, 0x1fb00003, FUNC(coh1002v_bnk_w) ); zn_driver_init(machine); } @@ -2574,9 +2574,9 @@ static WRITE32_HANDLER( cbaj_z80_w ) static DRIVER_INIT( coh1002m ) { - memory_install_read_bank ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); - memory_install_readwrite32_handler( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00000, 0x1fb00003, 0, 0, cbaj_z80_r, cbaj_z80_w ); - memory_install_write32_handler ( machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1fb00004, 0x1fb00007, 0, 0, coh1002m_bank_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank ( 0x1f000000, 0x1f7fffff, "bank1" ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler( 0x1fb00000, 0x1fb00003, FUNC(cbaj_z80_r), FUNC(cbaj_z80_w) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler ( 0x1fb00004, 0x1fb00007, FUNC(coh1002m_bank_w) ); zn_driver_init(machine); } diff --git a/src/mame/machine/atari.c b/src/mame/machine/atari.c index d04681eacf2..9c473ae0e4e 100644 --- a/src/mame/machine/atari.c +++ b/src/mame/machine/atari.c @@ -105,13 +105,13 @@ void a600xl_mmu(running_machine *machine, UINT8 new_mmu) if ( new_mmu & 0x80 ) { logerror("%s MMU SELFTEST RAM\n", machine->gamedrv->name); - memory_nop_readwrite(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x57ff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_readwrite(0x5000, 0x57ff); } else { logerror("%s MMU SELFTEST ROM\n", machine->gamedrv->name); - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x57ff, 0, 0, "bank2"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5000, 0x57ff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5000, 0x57ff, "bank2"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x5000, 0x57ff); memory_set_bankptr(machine, "bank2", machine->region("maincpu")->base() + 0x5000); } } diff --git a/src/mame/machine/atarigen.c b/src/mame/machine/atarigen.c index bf21f643083..471beeba97c 100644 --- a/src/mame/machine/atarigen.c +++ b/src/mame/machine/atarigen.c @@ -496,7 +496,7 @@ void atarigen_slapstic_init(device_t *device, offs_t base, offs_t mirror, int ch slapstic_init(device->machine, chipnum); /* install the memory handlers */ - state->slapstic = memory_install_readwrite16_handler(device->memory().space(AS_PROGRAM), base, base + 0x7fff, 0, mirror, atarigen_slapstic_r, atarigen_slapstic_w); + state->slapstic = device->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(base, base + 0x7fff, 0, mirror, FUNC(atarigen_slapstic_r), FUNC(atarigen_slapstic_w)); /* allocate memory for a copy of bank 0 */ state->slapstic_bank0 = auto_alloc_array(device->machine, UINT8, 0x2000); diff --git a/src/mame/machine/beezer.c b/src/mame/machine/beezer.c index d242f421e8d..88452239667 100644 --- a/src/mame/machine/beezer.c +++ b/src/mame/machine/beezer.c @@ -170,14 +170,14 @@ WRITE8_HANDLER( beezer_bankswitch_w ) if ((data & 0x07) == 0) { via6522_device *via_0 = space->machine->device("via6522_0"); - memory_install_write8_handler(space, 0xc600, 0xc7ff, 0, 0, watchdog_reset_w); - memory_install_write8_handler(space, 0xc800, 0xc9ff, 0, 0, beezer_map_w); - memory_install_read8_handler(space, 0xca00, 0xcbff, 0, 0, beezer_line_r); + space->install_legacy_write_handler(0xc600, 0xc7ff, FUNC(watchdog_reset_w)); + space->install_legacy_write_handler(0xc800, 0xc9ff, FUNC(beezer_map_w)); + space->install_legacy_read_handler(0xca00, 0xcbff, FUNC(beezer_line_r)); space->install_readwrite_handler(0xce00, 0xcfff, read8_delegate_create(via6522_device, read, *via_0), write8_delegate_create(via6522_device, write, *via_0)); } else { UINT8 *rom = space->machine->region("maincpu")->base() + 0x10000; - memory_install_ram(space, 0xc000, 0xcfff, 0, 0, rom + (data & 0x07) * 0x2000 + ((data & 0x08) ? 0x1000: 0)); + space->install_ram(0xc000, 0xcfff, rom + (data & 0x07) * 0x2000 + ((data & 0x08) ? 0x1000: 0)); } } diff --git a/src/mame/machine/dec0.c b/src/mame/machine/dec0.c index d9b091e0f40..ff5eac4947e 100644 --- a/src/mame/machine/dec0.c +++ b/src/mame/machine/dec0.c @@ -374,8 +374,8 @@ DRIVER_INIT( hippodrm ) { UINT8 *RAM = machine->region("sub")->base(); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x180000, 0x180fff, 0, 0, hippodrm_68000_share_r, hippodrm_68000_share_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xffc800, 0xffcfff, 0, 0, sprite_mirror_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x180000, 0x180fff, FUNC(hippodrm_68000_share_r), FUNC(hippodrm_68000_share_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xffc800, 0xffcfff, FUNC(sprite_mirror_w)); h6280_decrypt(machine, "sub"); @@ -399,7 +399,7 @@ DRIVER_INIT( slyspy ) DRIVER_INIT( robocop ) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x180000, 0x180fff, 0, 0, robocop_68000_share_r, robocop_68000_share_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x180000, 0x180fff, FUNC(robocop_68000_share_r), FUNC(robocop_68000_share_w)); } DRIVER_INIT( baddudes ) diff --git a/src/mame/machine/galaxold.c b/src/mame/machine/galaxold.c index ace09ff88c4..06144f13905 100644 --- a/src/mame/machine/galaxold.c +++ b/src/mame/machine/galaxold.c @@ -217,7 +217,7 @@ DRIVER_INIT( dingoe ) rom[i] = BITSWAP8(rom[i],7,6,5,0,3,2,1,4); } - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3001, 0x3001, 0, 0, dingoe_3001_r); /* Protection check */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3001, 0x3001, FUNC(dingoe_3001_r)); /* Protection check */ } #endif @@ -266,19 +266,19 @@ CUSTOM_INPUT( _4in1_fake_port_r ) DRIVER_INIT( pisces ) { /* the coin lockout was replaced */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6002, 0x6002, 0, 0, galaxold_gfxbank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6002, 0x6002, FUNC(galaxold_gfxbank_w)); } DRIVER_INIT( checkmaj ) { /* for the title screen */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3800, 0x3800, 0, 0, checkmaj_protection_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3800, 0x3800, FUNC(checkmaj_protection_r)); } DRIVER_INIT( dingo ) { - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3000, 0x3000, 0, 0, dingo_3000_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3035, 0x3035, 0, 0, dingo_3035_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3000, 0x3000, FUNC(dingo_3000_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3035, 0x3035, FUNC(dingo_3035_r)); } @@ -296,7 +296,7 @@ static UINT8 decode_mooncrst(UINT8 data,offs_t addr) DRIVER_INIT( mooncrsu ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa000, 0xa002, 0, 0, galaxold_gfxbank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa000, 0xa002, FUNC(galaxold_gfxbank_w)); } DRIVER_INIT( mooncrst ) @@ -313,7 +313,7 @@ DRIVER_INIT( mooncrst ) DRIVER_INIT( mooncrgx ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x6002, 0, 0, galaxold_gfxbank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6000, 0x6002, FUNC(galaxold_gfxbank_w)); } DRIVER_INIT( moonqsr ) @@ -421,5 +421,5 @@ INTERRUPT_GEN( hunchbks_vh_interrupt ) DRIVER_INIT( ladybugg ) { /* Doesn't actually use the bank, but it mustn't have a coin lock! */ -memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6002, 0x6002, 0, 0, galaxold_gfxbank_w); +machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6002, 0x6002, FUNC(galaxold_gfxbank_w)); } diff --git a/src/mame/machine/konamigx.c b/src/mame/machine/konamigx.c index 3a8e8a69733..b1c7f507b31 100644 --- a/src/mame/machine/konamigx.c +++ b/src/mame/machine/konamigx.c @@ -442,7 +442,7 @@ static UINT32 fantjour_dma[8]; void fantjour_dma_install(running_machine *machine) { state_save_register_global_array(machine, fantjour_dma); - memory_install_write32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xdb0000, 0xdb001f, 0, 0, fantjour_dma_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xdb0000, 0xdb001f, FUNC(fantjour_dma_w)); memset(fantjour_dma, 0, sizeof(fantjour_dma)); } diff --git a/src/mame/machine/md_cart.c b/src/mame/machine/md_cart.c index 701c7f47504..d0f74a01af8 100644 --- a/src/mame/machine/md_cart.c +++ b/src/mame/machine/md_cart.c @@ -883,8 +883,8 @@ static void install_sram_rw_handlers(running_machine *machine, bool mask_addr) image->battery_load(state->md_cart.sram, state->md_cart.sram_end - state->md_cart.sram_start + 1, 0xff); // Dino Dini's Soccer needs backup RAM to be 1fill memcpy(megadriv_backupram, state->md_cart.sram, state->md_cart.sram_end - state->md_cart.sram_start + 1); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), state->md_cart.sram_start & mask, state->md_cart.sram_end & mask, 0, 0, genesis_sram_read); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), state->md_cart.sram_start & mask, state->md_cart.sram_end & mask, 0, 0, genesis_sram_write); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(state->md_cart.sram_start & mask, state->md_cart.sram_end & mask, FUNC(genesis_sram_read)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(state->md_cart.sram_start & mask, state->md_cart.sram_end & mask, FUNC(genesis_sram_write)); state->md_cart.sram_handlers_installed = 1; } @@ -1025,8 +1025,8 @@ static void setup_megadriv_custom_mappers(running_machine *machine) case CM_JCART: case CM_JCART_SEPROM: /* Codemasters PCB (J-Carts) */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x38fffe, 0x38ffff, 0, 0, jcart_ctrl_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x38fffe, 0x38ffff, 0, 0, jcart_ctrl_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x38fffe, 0x38ffff, FUNC(jcart_ctrl_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x38fffe, 0x38ffff, FUNC(jcart_ctrl_w)); break; case SSF2: @@ -1034,7 +1034,7 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x400000], &ROM[VIRGIN_COPY_GEN], 0x400000); memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x400000); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa130f0, 0xa130ff, 0, 0, genesis_ssf2_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa130f0, 0xa130ff, FUNC(genesis_ssf2_bank_w)); break; case LIONK3: @@ -1043,8 +1043,8 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x200000); /* default rom */ memcpy(&ROM[0x200000], &ROM[VIRGIN_COPY_GEN], 0x200000); /* default rom */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x600000, 0x6fffff, 0, 0, l3alt_prot_r, l3alt_prot_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x7fffff, 0, 0, l3alt_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x600000, 0x6fffff, FUNC(l3alt_prot_r), FUNC(l3alt_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x700000, 0x7fffff, FUNC(l3alt_bank_w)); break; case SDK99: @@ -1053,13 +1053,13 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x300000); /* default rom */ memcpy(&ROM[0x300000], &ROM[VIRGIN_COPY_GEN], 0x100000); /* default rom */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x600000, 0x6fffff, 0, 0, l3alt_prot_r, l3alt_prot_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x7fffff, 0, 0, l3alt_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x600000, 0x6fffff, FUNC(l3alt_prot_r), FUNC(l3alt_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x700000, 0x7fffff, FUNC(l3alt_bank_w)); break; case REDCLIFF: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, redclif_prot2_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400004, 0x400005, 0, 0, redclif_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(redclif_prot2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400004, 0x400005, FUNC(redclif_prot_r)); break; case REDCL_EN: @@ -1067,8 +1067,8 @@ static void setup_megadriv_custom_mappers(running_machine *machine) ROM[x] ^= 0x40; memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN + 4], 0x200000); /* default rom */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, redclif_prot2_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400004, 0x400005, 0, 0, redclif_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(redclif_prot2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400004, 0x400005, FUNC(redclif_prot_r)); break; case RADICA: @@ -1076,43 +1076,43 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x400000], &ROM[VIRGIN_COPY_GEN], 0x400000); // keep a copy for later banking.. making use of huge ROM_REGION allocated to genesis driver memcpy(&ROM[0x800000], &ROM[VIRGIN_COPY_GEN], 0x400000); // wraparound banking (from hazemd code) - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa1307f, 0, 0, radica_bank_select); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa1307f, FUNC(radica_bank_select)); break; case KOF99: //memcpy(&ROM[0x000000],&ROM[VIRGIN_COPY_GEN],0x300000); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13001, 0, 0, kof99_A13000_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13002, 0xa13003, 0, 0, kof99_A13002_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa1303e, 0xa1303f, 0, 0, kof99_00A1303E_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa13001, FUNC(kof99_A13000_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13002, 0xa13003, FUNC(kof99_A13002_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa1303e, 0xa1303f, FUNC(kof99_00A1303E_r)); break; case SOULBLAD: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400002, 0x400003, 0, 0, soulb_400002_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400004, 0x400005, 0, 0, soulb_400004_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400006, 0x400007, 0, 0, soulb_400006_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400002, 0x400003, FUNC(soulb_400002_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400004, 0x400005, FUNC(soulb_400004_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400006, 0x400007, FUNC(soulb_400006_r)); break; case MJLOVER: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, mjlovr_prot_1_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x401000, 0x401001, 0, 0, mjlovr_prot_2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(mjlovr_prot_1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x401000, 0x401001, FUNC(mjlovr_prot_2_r)); break; case SQUIRRELK: state->md_cart.squirrel_king_extra = 0; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400007, 0, 0, squirrel_king_extra_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400007, 0, 0, squirrel_king_extra_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400007, FUNC(squirrel_king_extra_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x400000, 0x400007, FUNC(squirrel_king_extra_w)); break; case SMOUSE: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400007, 0, 0, smous_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400007, FUNC(smous_prot_r)); break; case SMB: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13001, 0, 0, smbro_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa13001, FUNC(smbro_prot_r)); break; case SMB2: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13001, 0, 0, smb2_extra_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa13001, FUNC(smb2_extra_r)); break; case KAIJU: @@ -1120,7 +1120,7 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x600000], &ROM[VIRGIN_COPY_GEN], 0x200000); memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x200000); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x7fffff, 0, 0, kaiju_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x700000, 0x7fffff, FUNC(kaiju_bank_w)); break; case CHINFIGHT3: @@ -1128,48 +1128,48 @@ static void setup_megadriv_custom_mappers(running_machine *machine) memcpy(&ROM[0x600000], &ROM[VIRGIN_COPY_GEN], 0x200000); memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x200000); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x4fffff, 0, 0, chifi3_prot_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x600000, 0x6fffff, 0, 0, chifi3_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x4fffff, FUNC(chifi3_prot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x600000, 0x6fffff, FUNC(chifi3_bank_w)); break; case LIONK2: state->md_cart.lion2_prot1_data = state->md_cart.lion2_prot2_data = 0; - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400002, 0x400003, 0, 0, lion2_prot1_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400006, 0x400007, 0, 0, lion2_prot2_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, lion2_prot1_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400004, 0x400005, 0, 0, lion2_prot2_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400002, 0x400003, FUNC(lion2_prot1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400006, 0x400007, FUNC(lion2_prot2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x400000, 0x400001, FUNC(lion2_prot1_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x400004, 0x400005, FUNC(lion2_prot2_w)); break; case BUGSLIFE: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13001, 0, 0, bugl_extra_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa13001, FUNC(bugl_extra_r)); break; case ELFWOR: /* It return (0x55 @ 0x400000 OR 0xc9 @ 0x400004) AND (0x0f @ 0x400002 OR 0x18 @ 0x400006). It is probably best to add handlers for all 4 addresses. */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, elfwor_400000_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400002, 0x400003, 0, 0, elfwor_400002_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400004, 0x400005, 0, 0, elfwor_400004_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400006, 0x400007, 0, 0, elfwor_400006_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(elfwor_400000_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400002, 0x400003, FUNC(elfwor_400002_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400004, 0x400005, FUNC(elfwor_400004_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400006, 0x400007, FUNC(elfwor_400006_r)); break; case ROCKMANX3: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13001, 0, 0, rx3_extra_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa13000, 0xa13001, FUNC(rx3_extra_r)); break; case SBUBBOB: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, sbub_extra1_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400002, 0x400003, 0, 0, sbub_extra2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400000, 0x400001, FUNC(sbub_extra1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x400002, 0x400003, FUNC(sbub_extra2_r)); break; case KOF98: - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x480000, 0x480001, 0, 0, kof98_aa_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4800e0, 0x4800e1, 0, 0, kof98_aa_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4824a0, 0x4824a1, 0, 0, kof98_aa_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x488880, 0x488881, 0, 0, kof98_aa_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x480000, 0x480001, FUNC(kof98_aa_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4800e0, 0x4800e1, FUNC(kof98_aa_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4824a0, 0x4824a1, FUNC(kof98_aa_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x488880, 0x488881, FUNC(kof98_aa_r)); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4a8820, 0x4a8821, 0, 0, kof98_0a_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4f8820, 0x4f8821, 0, 0, kof98_00_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4a8820, 0x4a8821, FUNC(kof98_0a_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x4f8820, 0x4f8821, FUNC(kof98_00_r)); break; case REALTEC: @@ -1182,38 +1182,38 @@ static void setup_megadriv_custom_mappers(running_machine *machine) for (mirroraddr = 0; mirroraddr < 0x400000; mirroraddr += 0x2000) memcpy(ROM + mirroraddr, ROM + VIRGIN_COPY_GEN + 0x7e000, 0x002000); /* copy last 8kb across the whole rom region */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x400000, 0x400001, 0, 0, realtec_400000_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x402000, 0x402001, 0, 0, realtec_402000_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x404000, 0x404001, 0, 0, realtec_404000_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x400000, 0x400001, FUNC(realtec_400000_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x402000, 0x402001, FUNC(realtec_402000_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x404000, 0x404001, FUNC(realtec_404000_w)); break; case MC_SUP19IN1: memcpy(&ROM[0x400000], &ROM[VIRGIN_COPY_GEN], 0x400000); // allow hard reset to menu - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13039, 0, 0, s19in1_bank); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa13000, 0xa13039, FUNC(s19in1_bank)); break; case MC_SUP15IN1: memcpy(&ROM[0x400000], &ROM[VIRGIN_COPY_GEN], 0x200000); // allow hard reset to menu - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa13039, 0, 0, s19in1_bank); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa13000, 0xa13039, FUNC(s19in1_bank)); break; case MC_12IN1: memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x400000); /* default rom */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa13000, 0xa1303f, 0, 0, mc_12in1_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa13000, 0xa1303f, FUNC(mc_12in1_bank_w)); break; case TOPFIGHTER: memcpy(&ROM[0x000000], &ROM[VIRGIN_COPY_GEN], 0x400000); /* default rom */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6f5344, 0x6f5345, 0, 0, topfig_6F5344_r ); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6bd294, 0x6bd295, 0, 0, topfig_6BD294_r ); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x645b44, 0x645b45, 0, 0, topfig_645B44_r ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6f5344, 0x6f5345, FUNC(topfig_6F5344_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x6bd294, 0x6bd295, FUNC(topfig_6BD294_r) ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x645b44, 0x645b45, FUNC(topfig_645B44_r) ); /* readd */ - //memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x689b80, 0x689b81, 0, 0, MWA16_NOP); - //memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6d8b02, 0x6d8b03, 0, 0, MWA16_NOP); + //machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x689b80, 0x689b81, FUNC(MWA16_NOP)); + //machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6d8b02, 0x6d8b03, FUNC(MWA16_NOP)); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x700000, 0x7fffff, 0, 0, topfig_bank_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x700000, 0x7fffff, FUNC(topfig_bank_w) ); break; } @@ -1280,7 +1280,7 @@ static void setup_megadriv_custom_mappers(running_machine *machine) } /* install NOP handler for TMSS */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa14000, 0xa14003, 0, 0, genesis_TMSS_bank_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa14000, 0xa14003, FUNC(genesis_TMSS_bank_w)); } static void setup_megadriv_sram(device_image_interface &image) @@ -1308,7 +1308,7 @@ static void setup_megadriv_sram(device_image_interface &image) state->md_cart.sram_end = state->md_cart.sram_start + image.get_software_region_length("sram") - 1; state->md_cart.sram_detected = 1; megadriv_backupram = (UINT16*) (ROM + state->md_cart.sram_start); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa130f0, 0xa130f1, 0, 0, genesis_sram_toggle); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa130f0, 0xa130f1, FUNC(genesis_sram_toggle)); if (state->md_cart.last_loaded_image_length <= state->md_cart.sram_start) { state->md_cart.sram_active = 1; @@ -1330,39 +1330,39 @@ static void setup_megadriv_sram(device_image_interface &image) state->md_cart.sram_end = state->md_cart.sram_start + image.get_software_region_length("fram") - 1; state->md_cart.sram_detected = 1; megadriv_backupram = (UINT16*) (ROM + state->md_cart.sram_start); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa130f0, 0xa130f1, 0, 0, sega_6658a_reg_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa130f0, 0xa130f1, 0, 0, sega_6658a_reg_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xa130f0, 0xa130f1, FUNC(sega_6658a_reg_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa130f0, 0xa130f1, FUNC(sega_6658a_reg_w)); install_sram_rw_handlers(machine, FALSE); break; // These types might come either from xml or from old-styele loading case SEGA_EEPROM: state->md_cart.has_serial_eeprom = 1; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, wboy_v_eeprom_r, wboy_v_eeprom_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x200001, FUNC(wboy_v_eeprom_r), FUNC(wboy_v_eeprom_w)); break; case NBA_JAM: state->md_cart.has_serial_eeprom = 1; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, nba_jam_eeprom_r, nba_jam_eeprom_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x200001, FUNC(nba_jam_eeprom_r), FUNC(nba_jam_eeprom_w)); break; case NBA_JAM_TE: case NFL_QB_96: case C_SLAM: // same handling but different sizes state->md_cart.has_serial_eeprom = 1; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, nba_jam_te_eeprom_r, nba_jam_te_eeprom_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x200001, FUNC(nba_jam_te_eeprom_r), FUNC(nba_jam_te_eeprom_w)); break; case EA_NHLPA: state->md_cart.has_serial_eeprom = 1; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x200001, 0, 0, ea_nhlpa_eeprom_r, ea_nhlpa_eeprom_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x200001, FUNC(ea_nhlpa_eeprom_r), FUNC(ea_nhlpa_eeprom_w)); break; case CODE_MASTERS: case CM_JCART_SEPROM: state->md_cart.has_serial_eeprom = 1; - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x300000, 0x300001, 0, 0, codemasters_eeprom_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x380000, 0x380001, 0, 0, codemasters_eeprom_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x300000, 0x300001, FUNC(codemasters_eeprom_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x380000, 0x380001, FUNC(codemasters_eeprom_r)); break; } @@ -1414,7 +1414,7 @@ static void setup_megadriv_sram(device_image_interface &image) if (state->md_cart.last_loaded_image_length <= state->md_cart.sram_start) state->md_cart.sram_active = 1; - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa130f0, 0xa130f1, 0, 0, genesis_sram_toggle); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa130f0, 0xa130f1, FUNC(genesis_sram_toggle)); //printf("res: start %x, end %x, det %d, active %d\n", state->md_cart.sram_start, state->md_cart.sram_end, state->md_cart.sram_detected, state->md_cart.sram_active); /* Sonic 1 included in Sonic Classics doesn't have SRAM and diff --git a/src/mame/machine/megadriv.c b/src/mame/machine/megadriv.c index 132a8bc230b..b3b399bd3af 100644 --- a/src/mame/machine/megadriv.c +++ b/src/mame/machine/megadriv.c @@ -2561,7 +2561,7 @@ static WRITE16_HANDLER( _32x_68k_a15106_w ) // install the game rom in the normal 0x000000-0x03fffff space used by the genesis - this allows VDP DMA operations to work as they have to be from this area or RAM // it should also UNMAP the banked rom area... - memory_install_rom(space, 0x0000100, 0x03fffff, 0, 0, space->machine->region("gamecart")->base() + 0x100); + space->install_rom(0x0000100, 0x03fffff, space->machine->region("gamecart")->base() + 0x100); } else { @@ -2569,7 +2569,7 @@ static WRITE16_HANDLER( _32x_68k_a15106_w ) // this is actually blank / nop area // we should also map the banked area back (we don't currently unmap it tho) - memory_install_rom(space, 0x0000100, 0x03fffff, 0, 0, space->machine->region("maincpu")->base()+0x100); + space->install_rom(0x0000100, 0x03fffff, space->machine->region("maincpu")->base()+0x100); } if((a15106_reg & 4) == 0) // clears the FIFO state @@ -2861,29 +2861,29 @@ static WRITE16_HANDLER( _32x_68k_a15100_w ) if (data & 0x01) { _32x_adapter_enabled = 1; - memory_install_rom(space, 0x0880000, 0x08fffff, 0, 0, space->machine->region("gamecart")->base()); // 'fixed' 512kb rom bank + space->install_rom(0x0880000, 0x08fffff, space->machine->region("gamecart")->base()); // 'fixed' 512kb rom bank - memory_install_read_bank(space, 0x0900000, 0x09fffff, 0, 0, "bank12"); // 'bankable' 1024kb rom bank + space->install_read_bank(0x0900000, 0x09fffff, "bank12"); // 'bankable' 1024kb rom bank memory_set_bankptr(space->machine, "bank12", space->machine->region("gamecart")->base()+((_32x_68k_a15104_reg&0x3)*0x100000) ); - memory_install_rom(space, 0x0000000, 0x03fffff, 0, 0, space->machine->region("32x_68k_bios")->base()); + space->install_rom(0x0000000, 0x03fffff, space->machine->region("32x_68k_bios")->base()); /* VDP area */ - memory_install_readwrite16_handler(space, 0x0a15180, 0x0a1518b, 0, 0, _32x_common_vdp_regs_r, _32x_common_vdp_regs_w); // common / shared VDP regs - memory_install_readwrite16_handler(space, 0x0a15200, 0x0a153ff, 0, 0, _32x_68k_palette_r, _32x_68k_palette_w); // access to 'palette' xRRRRRGGGGGBBBBB - memory_install_readwrite16_handler(space, 0x0840000, 0x085ffff, 0, 0, _32x_68k_dram_r, _32x_68k_dram_w); // access to 'display ram' (framebuffer) - memory_install_readwrite16_handler(space, 0x0860000, 0x087ffff, 0, 0, _32x_68k_dram_overwrite_r, _32x_68k_dram_overwrite_w); // access to 'display ram' (framebuffer) + space->install_legacy_readwrite_handler(0x0a15180, 0x0a1518b, FUNC(_32x_common_vdp_regs_r), FUNC(_32x_common_vdp_regs_w)); // common / shared VDP regs + space->install_legacy_readwrite_handler(0x0a15200, 0x0a153ff, FUNC(_32x_68k_palette_r), FUNC(_32x_68k_palette_w)); // access to 'palette' xRRRRRGGGGGBBBBB + space->install_legacy_readwrite_handler(0x0840000, 0x085ffff, FUNC(_32x_68k_dram_r), FUNC(_32x_68k_dram_w)); // access to 'display ram' (framebuffer) + space->install_legacy_readwrite_handler(0x0860000, 0x087ffff, FUNC(_32x_68k_dram_overwrite_r), FUNC(_32x_68k_dram_overwrite_w)); // access to 'display ram' (framebuffer) - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000070, 0x000073, 0, 0, _32x_68k_hint_vector_r, _32x_68k_hint_vector_w); // h interrupt vector + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x000070, 0x000073, FUNC(_32x_68k_hint_vector_r), FUNC(_32x_68k_hint_vector_w)); // h interrupt vector } else { _32x_adapter_enabled = 0; - memory_install_rom(space, 0x0000000, 0x03fffff, 0, 0, space->machine->region("gamecart")->base()); - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000070, 0x000073, 0, 0, _32x_68k_hint_vector_r, _32x_68k_hint_vector_w); // h interrupt vector + space->install_rom(0x0000000, 0x03fffff, space->machine->region("gamecart")->base()); + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x000070, 0x000073, FUNC(_32x_68k_hint_vector_r), FUNC(_32x_68k_hint_vector_w)); // h interrupt vector } } @@ -6003,36 +6003,36 @@ void segacd_init_main_cpu( running_machine* machine ) segacd_4meg_prgbank = 0; - memory_unmap_readwrite (space, 0x020000,0x3fffff,0,0); + space->unmap_readwrite (0x020000,0x3fffff); -// memory_install_read_bank(space, 0x0020000, 0x003ffff, 0, 0, "scd_4m_prgbank"); +// space->install_read_bank(0x0020000, 0x003ffff, "scd_4m_prgbank"); // memory_set_bankptr(space->machine, "scd_4m_prgbank", segacd_4meg_prgram + segacd_4meg_prgbank * 0x20000 ); - memory_install_read16_handler (space, 0x0020000, 0x003ffff, 0, 0, scd_4m_prgbank_ram_r ); - memory_install_write16_handler (space, 0x0020000, 0x003ffff, 0, 0, scd_4m_prgbank_ram_w ); + space->install_legacy_read_handler (0x0020000, 0x003ffff, FUNC(scd_4m_prgbank_ram_r) ); + space->install_legacy_write_handler (0x0020000, 0x003ffff, FUNC(scd_4m_prgbank_ram_w) ); segacd_wordram_mapped = 1; - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x23ffff, 0, 0, segacd_main_dataram_part1_r, segacd_main_dataram_part1_w); // RAM shared with sub + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x23ffff, FUNC(segacd_main_dataram_part1_r), FUNC(segacd_main_dataram_part1_w)); // RAM shared with sub - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12000, 0xa12001, 0, 0, scd_a12000_halt_reset_r, scd_a12000_halt_reset_w); // sub-cpu control - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12002, 0xa12003, 0, 0, scd_a12002_memory_mode_r, scd_a12002_memory_mode_w); // memory mode / write protect - //memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12004, 0xa12005, 0, 0, segacd_cdc_mode_address_r, segacd_cdc_mode_address_w); - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12006, 0xa12007, 0, 0, scd_a12006_hint_register_r, scd_a12006_hint_register_w); // where HINT points on main CPU - //memory_install_read16_handler (space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12008, 0xa12009, 0, 0, cdc_data_main_r); + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12000, 0xa12001, FUNC(scd_a12000_halt_reset_r), FUNC(scd_a12000_halt_reset_w)); // sub-cpu control + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12002, 0xa12003, FUNC(scd_a12002_memory_mode_r), FUNC(scd_a12002_memory_mode_w)); // memory mode / write protect + //space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12004, 0xa12005, FUNC(segacd_cdc_mode_address_r), FUNC(segacd_cdc_mode_address_w)); + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12006, 0xa12007, FUNC(scd_a12006_hint_register_r), FUNC(scd_a12006_hint_register_w)); // where HINT points on main CPU + //space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler (0xa12008, 0xa12009, FUNC(cdc_data_main_r)); - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa1200c, 0xa1200d, 0, 0, segacd_stopwatch_timer_r, segacd_stopwatch_timer_w); // starblad + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa1200c, 0xa1200d, FUNC(segacd_stopwatch_timer_r), FUNC(segacd_stopwatch_timer_w)); // starblad - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa1200e, 0xa1200f, 0, 0, segacd_comms_flags_r, segacd_comms_flags_maincpu_w); // communication flags block + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa1200e, 0xa1200f, FUNC(segacd_comms_flags_r), FUNC(segacd_comms_flags_maincpu_w)); // communication flags block - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12010, 0xa1201f, 0, 0, segacd_comms_main_part1_r, segacd_comms_main_part1_w); - memory_install_readwrite16_handler(space->machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa12020, 0xa1202f, 0, 0, segacd_comms_main_part2_r, segacd_comms_main_part2_w); + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12010, 0xa1201f, FUNC(segacd_comms_main_part1_r), FUNC(segacd_comms_main_part1_w)); + space->machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa12020, 0xa1202f, FUNC(segacd_comms_main_part2_r), FUNC(segacd_comms_main_part2_w)); device_set_irq_callback(machine->device("segacd_68k"), segacd_sub_int_callback); - memory_install_read16_handler (space, 0x0000070, 0x0000073, 0, 0, scd_hint_vector_r ); + space->install_legacy_read_handler (0x0000070, 0x0000073, FUNC(scd_hint_vector_r) ); segacd_gfx_conversion_timer = machine->scheduler().timer_alloc(FUNC(segacd_gfx_conversion_timer_callback)); segacd_gfx_conversion_timer->adjust(attotime::never); @@ -7167,13 +7167,13 @@ static void svp_init(running_machine *machine) /* SVP stuff */ state->dram = auto_alloc_array(machine, UINT8, 0x20000); - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x300000, 0x31ffff, 0, 0, state->dram); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15000, 0xa150ff, 0, 0, svp_68k_io_r, svp_68k_io_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x300000, 0x31ffff, state->dram); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15000, 0xa150ff, FUNC(svp_68k_io_r), FUNC(svp_68k_io_w)); // "cell arrange" 1 and 2 - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x390000, 0x39ffff, 0, 0, svp_68k_cell1_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3a0000, 0x3affff, 0, 0, svp_68k_cell2_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x390000, 0x39ffff, FUNC(svp_68k_cell1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x3a0000, 0x3affff, FUNC(svp_68k_cell2_r)); - memory_install_read16_handler(machine->device("svp")->memory().space(AS_PROGRAM), 0x438, 0x438, 0, 0, svp_speedup_r); + machine->device("svp")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x438, 0x438, FUNC(svp_speedup_r)); state->iram = auto_alloc_array(machine, UINT8, 0x800); memory_set_bankptr(machine, "bank3", state->iram); @@ -10046,27 +10046,27 @@ void megatech_set_megadrive_z80_as_megadrive_z80(running_machine *machine, const device_t *ym = machine->device("ymsnd"); /* INIT THE PORTS *********************************************************************************************/ - memory_install_readwrite8_handler(machine->device(tag)->memory().space(AS_IO), 0x0000, 0xffff, 0, 0, z80_unmapped_port_r, z80_unmapped_port_w); + machine->device(tag)->memory().space(AS_IO)->install_legacy_readwrite_handler(0x0000, 0xffff, FUNC(z80_unmapped_port_r), FUNC(z80_unmapped_port_w)); /* catch any addresses that don't get mapped */ - memory_install_readwrite8_handler(machine->device(tag)->memory().space(AS_PROGRAM), 0x0000, 0xffff, 0, 0, z80_unmapped_r, z80_unmapped_w); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x0000, 0xffff, FUNC(z80_unmapped_r), FUNC(z80_unmapped_w)); - memory_install_readwrite_bank(machine->device(tag)->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank1"); + machine->device(tag)->memory().space(AS_PROGRAM)->install_readwrite_bank(0x0000, 0x1fff, "bank1"); memory_set_bankptr(machine, "bank1", genz80.z80_prgram ); - memory_install_ram(machine->device(tag)->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, genz80.z80_prgram); + machine->device(tag)->memory().space(AS_PROGRAM)->install_ram(0x0000, 0x1fff, genz80.z80_prgram); // not allowed?? -// memory_install_readwrite_bank(machine->device(tag)->memory().space(AS_PROGRAM), 0x2000, 0x3fff, 0, 0, "bank1"); +// machine->device(tag)->memory().space(AS_PROGRAM)->install_readwrite_bank(0x2000, 0x3fff, "bank1"); - memory_install_readwrite8_device_handler(machine->device(tag)->memory().space(AS_PROGRAM), ym, 0x4000, 0x4003, 0, 0, ym2612_r, ym2612_w); - memory_install_write8_handler (machine->device(tag)->memory().space(AS_PROGRAM), 0x6000, 0x6000, 0, 0, megadriv_z80_z80_bank_w); - memory_install_write8_handler (machine->device(tag)->memory().space(AS_PROGRAM), 0x6001, 0x6001, 0, 0, megadriv_z80_z80_bank_w); - memory_install_read8_handler (machine->device(tag)->memory().space(AS_PROGRAM), 0x6100, 0x7eff, 0, 0, megadriv_z80_unmapped_read); - memory_install_readwrite8_handler(machine->device(tag)->memory().space(AS_PROGRAM), 0x7f00, 0x7fff, 0, 0, megadriv_z80_vdp_read, megadriv_z80_vdp_write); - memory_install_readwrite8_handler(machine->device(tag)->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, z80_read_68k_banked_data, z80_write_68k_banked_data); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(*ym, 0x4000, 0x4003, FUNC(ym2612_r), FUNC(ym2612_w)); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_write_handler (0x6000, 0x6000, FUNC(megadriv_z80_z80_bank_w)); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_write_handler (0x6001, 0x6001, FUNC(megadriv_z80_z80_bank_w)); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_read_handler (0x6100, 0x7eff, FUNC(megadriv_z80_unmapped_read)); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x7f00, 0x7fff, FUNC(megadriv_z80_vdp_read), FUNC(megadriv_z80_vdp_write)); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8000, 0xffff, FUNC(z80_read_68k_banked_data), FUNC(z80_write_68k_banked_data)); } // these are tests for 'special case' hardware to make sure I don't break anything while rearranging things @@ -10096,24 +10096,24 @@ DRIVER_INIT( _32x ) if (_32x_adapter_enabled == 0) { - memory_install_rom(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000000, 0x03fffff, 0, 0, machine->region("gamecart")->base()); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x000070, 0x000073, 0, 0, _32x_68k_hint_vector_r, _32x_68k_hint_vector_w); // h interrupt vector + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_rom(0x0000000, 0x03fffff, machine->region("gamecart")->base()); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x000070, 0x000073, FUNC(_32x_68k_hint_vector_r), FUNC(_32x_68k_hint_vector_w)); // h interrupt vector }; a15100_reg = 0x0000; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15100, 0xa15101, 0, 0, _32x_68k_a15100_r, _32x_68k_a15100_w); // framebuffer control regs - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15102, 0xa15103, 0, 0, _32x_68k_a15102_r, _32x_68k_a15102_w); // send irq to sh2 - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15104, 0xa15105, 0, 0, _32x_68k_a15104_r, _32x_68k_a15104_w); // 68k BANK rom set - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15106, 0xa15107, 0, 0, _32x_68k_a15106_r, _32x_68k_a15106_w); // dreq stuff - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15108, 0xa15113, 0, 0, _32x_dreq_common_r, _32x_dreq_common_w); // dreq src / dst / length /fifo + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15100, 0xa15101, FUNC(_32x_68k_a15100_r), FUNC(_32x_68k_a15100_w)); // framebuffer control regs + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15102, 0xa15103, FUNC(_32x_68k_a15102_r), FUNC(_32x_68k_a15102_w)); // send irq to sh2 + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15104, 0xa15105, FUNC(_32x_68k_a15104_r), FUNC(_32x_68k_a15104_w)); // 68k BANK rom set + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15106, 0xa15107, FUNC(_32x_68k_a15106_r), FUNC(_32x_68k_a15106_w)); // dreq stuff + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15108, 0xa15113, FUNC(_32x_dreq_common_r), FUNC(_32x_dreq_common_w)); // dreq src / dst / length /fifo - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa1511a, 0xa1511b, 0, 0, _32x_68k_a1511a_r, _32x_68k_a1511a_w); // SEGA TV + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa1511a, 0xa1511b, FUNC(_32x_68k_a1511a_r), FUNC(_32x_68k_a1511a_w)); // SEGA TV - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15120, 0xa1512f, 0, 0, _32x_68k_commsram_r, _32x_68k_commsram_w); // comms reg 0-7 - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa15130, 0xa1513f, 0, 0, _32x_pwm_r, _32x_68k_pwm_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15120, 0xa1512f, FUNC(_32x_68k_commsram_r), FUNC(_32x_68k_commsram_w)); // comms reg 0-7 + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xa15130, 0xa1513f, FUNC(_32x_pwm_r), FUNC(_32x_68k_pwm_w)); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0a130ec, 0x0a130ef, 0, 0, _32x_68k_MARS_r); // system ID + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x0a130ec, 0x0a130ef, FUNC(_32x_68k_MARS_r)); // system ID /* Interrupts are masked / disabled at first */ diff --git a/src/mame/machine/mhavoc.c b/src/mame/machine/mhavoc.c index 485fa1c2133..338cc427602 100644 --- a/src/mame/machine/mhavoc.c +++ b/src/mame/machine/mhavoc.c @@ -340,6 +340,6 @@ DRIVER_INIT( mhavocrv ) { /* install the speech support that was only optionally stuffed for use */ /* in the Return to Vax hack */ - memory_install_write8_handler(machine->device("gamma")->memory().space(AS_PROGRAM), 0x5800, 0x5800, 0, 0, mhavocrv_speech_data_w); - memory_install_write8_handler(machine->device("gamma")->memory().space(AS_PROGRAM), 0x5900, 0x5900, 0, 0, mhavocrv_speech_strobe_w); + machine->device("gamma")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x5800, 0x5800, FUNC(mhavocrv_speech_data_w)); + machine->device("gamma")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x5900, 0x5900, FUNC(mhavocrv_speech_strobe_w)); } diff --git a/src/mame/machine/micro3d.c b/src/mame/machine/micro3d.c index dbbabedeec9..41f5d809bd2 100644 --- a/src/mame/machine/micro3d.c +++ b/src/mame/machine/micro3d.c @@ -650,8 +650,8 @@ DRIVER_INIT( botssa ) address_space *space = machine->device("maincpu")->memory().space(AS_PROGRAM); /* Required to pass the hardware version check */ - memory_install_read16_handler(space, 0x140000, 0x140001, 0, 0, botssa_140000_r ); - memory_install_read16_handler(space, 0x180000, 0x180001, 0, 0, botssa_180000_r ); + space->install_legacy_read_handler(0x140000, 0x140001, FUNC(botssa_140000_r) ); + space->install_legacy_read_handler(0x180000, 0x180001, FUNC(botssa_180000_r) ); DRIVER_INIT_CALL(micro3d); } diff --git a/src/mame/machine/midtunit.c b/src/mame/machine/midtunit.c index 996554e5b9d..7be4c876e7c 100644 --- a/src/mame/machine/midtunit.c +++ b/src/mame/machine/midtunit.c @@ -464,16 +464,16 @@ DRIVER_INIT( mktunit ) init_tunit_generic(machine, SOUND_ADPCM); /* protection */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1b00000, 0x1b6ffff, 0, 0, mk_prot_r, mk_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x1b00000, 0x1b6ffff, FUNC(mk_prot_r), FUNC(mk_prot_w)); /* sound chip protection (hidden RAM) */ - memory_install_ram(machine->device("adpcm")->memory().space(AS_PROGRAM), 0xfb9c, 0xfbc6, 0, 0, NULL); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_ram(0xfb9c, 0xfbc6); } DRIVER_INIT( mkturbo ) { /* protection */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfffff400, 0xfffff40f, 0, 0, mkturbo_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfffff400, 0xfffff40f, FUNC(mkturbo_prot_r)); DRIVER_INIT_CALL(mktunit); } @@ -488,20 +488,20 @@ static void init_nbajam_common(running_machine *machine, int te_protection) if (!te_protection) { nbajam_prot_table = nbajam_prot_values; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1b14020, 0x1b2503f, 0, 0, nbajam_prot_r, nbajam_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x1b14020, 0x1b2503f, FUNC(nbajam_prot_r), FUNC(nbajam_prot_w)); } else { nbajam_prot_table = nbajamte_prot_values; - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1b15f40, 0x1b37f5f, 0, 0, nbajam_prot_r, nbajam_prot_w); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1b95f40, 0x1bb7f5f, 0, 0, nbajam_prot_r, nbajam_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x1b15f40, 0x1b37f5f, FUNC(nbajam_prot_r), FUNC(nbajam_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x1b95f40, 0x1bb7f5f, FUNC(nbajam_prot_r), FUNC(nbajam_prot_w)); } /* sound chip protection (hidden RAM) */ if (!te_protection) - memory_install_ram(machine->device("adpcm")->memory().space(AS_PROGRAM), 0xfbaa, 0xfbd4, 0, 0, NULL); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_ram(0xfbaa, 0xfbd4); else - memory_install_ram(machine->device("adpcm")->memory().space(AS_PROGRAM), 0xfbec, 0xfc16, 0, 0, NULL); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_ram(0xfbec, 0xfc16); } DRIVER_INIT( nbajam ) @@ -520,19 +520,19 @@ DRIVER_INIT( jdreddp ) init_tunit_generic(machine, SOUND_ADPCM_LARGE); /* looks like the watchdog needs to be disabled */ - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d81060, 0x01d8107f, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x01d81060, 0x01d8107f); /* protection */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x1b00000, 0x1bfffff, 0, 0, jdredd_prot_r, jdredd_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x1b00000, 0x1bfffff, FUNC(jdredd_prot_r), FUNC(jdredd_prot_w)); /* sound chip protection (hidden RAM) */ - memory_install_read_bank(machine->device("adpcm")->memory().space(AS_PROGRAM), 0xfbcf, 0xfbf9, 0, 0, "bank7"); - memory_install_write_bank(machine->device("adpcm")->memory().space(AS_PROGRAM), 0xfbcf, 0xfbf9, 0, 0, "bank9"); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_read_bank(0xfbcf, 0xfbf9, "bank7"); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_write_bank(0xfbcf, 0xfbf9, "bank9"); memory_set_bankptr(machine, "bank9", auto_alloc_array(machine, UINT8, 0x80)); #if ENABLE_ALL_JDREDD_LEVELS /* how about the final levels? */ - jdredd_hack = memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xFFBA7FF0, 0xFFBA7FFf, 0, 0, jdredd_hack_r); + jdredd_hack = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xFFBA7FF0, 0xFFBA7FFf, FUNC(jdredd_hack_r)); #endif } @@ -553,13 +553,13 @@ DRIVER_INIT( mk2 ) midtunit_gfx_rom_large = 1; /* protection */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00f20c60, 0x00f20c7f, 0, 0, mk2_prot_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x00f42820, 0x00f4283f, 0, 0, mk2_prot_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a190e0, 0x01a190ff, 0, 0, mk2_prot_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a191c0, 0x01a191df, 0, 0, mk2_prot_shift_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01a3d0c0, 0x01a3d0ff, 0, 0, mk2_prot_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01d9d1e0, 0x01d9d1ff, 0, 0, mk2_prot_const_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01def920, 0x01def93f, 0, 0, mk2_prot_const_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00f20c60, 0x00f20c7f, FUNC(mk2_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x00f42820, 0x00f4283f, FUNC(mk2_prot_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01a190e0, 0x01a190ff, FUNC(mk2_prot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01a191c0, 0x01a191df, FUNC(mk2_prot_shift_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01a3d0c0, 0x01a3d0ff, FUNC(mk2_prot_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01d9d1e0, 0x01d9d1ff, FUNC(mk2_prot_const_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01def920, 0x01def93f, FUNC(mk2_prot_const_r)); } diff --git a/src/mame/machine/midwunit.c b/src/mame/machine/midwunit.c index f1f1d87e0de..b5337d88e1a 100644 --- a/src/mame/machine/midwunit.c +++ b/src/mame/machine/midwunit.c @@ -254,14 +254,14 @@ DRIVER_INIT( umk3 ) { midwunit_state *state = machine->driver_data(); init_mk3_common(machine); - state->umk3_palette = memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0106a060, 0x0106a09f, 0, 0, umk3_palette_hack_w); + state->umk3_palette = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0106a060, 0x0106a09f, FUNC(umk3_palette_hack_w)); } DRIVER_INIT( umk3r11 ) { midwunit_state *state = machine->driver_data(); init_mk3_common(machine); - state->umk3_palette = memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0106a060, 0x0106a09f, 0, 0, umk3_palette_hack_w); + state->umk3_palette = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0106a060, 0x0106a09f, FUNC(umk3_palette_hack_w)); } @@ -347,7 +347,7 @@ DRIVER_INIT( wwfmania ) init_wunit_generic(machine); /* enable I/O shuffling */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01800000, 0x0180000f, 0, 0, wwfmania_io_0_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01800000, 0x0180000f, FUNC(wwfmania_io_0_w)); /* serial prefixes 430, 528 */ midway_serial_pic_init(machine, 528); diff --git a/src/mame/machine/midyunit.c b/src/mame/machine/midyunit.c index fb1d59a4012..f48fd83791b 100644 --- a/src/mame/machine/midyunit.c +++ b/src/mame/machine/midyunit.c @@ -310,23 +310,23 @@ static void init_generic(running_machine *machine, int bpp, int sound, int prot_ { case SOUND_CVSD_SMALL: williams_cvsd_init(machine); - memory_install_write8_handler(machine->device("cvsdcpu")->memory().space(AS_PROGRAM), prot_start, prot_end, 0, 0, cvsd_protection_w); + machine->device("cvsdcpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(prot_start, prot_end, FUNC(cvsd_protection_w)); state->cvsd_protection_base = machine->region("cvsdcpu")->base() + 0x10000 + (prot_start - 0x8000); break; case SOUND_CVSD: williams_cvsd_init(machine); - memory_install_ram(machine->device("cvsdcpu")->memory().space(AS_PROGRAM), prot_start, prot_end, 0, 0, NULL); + machine->device("cvsdcpu")->memory().space(AS_PROGRAM)->install_ram(prot_start, prot_end); break; case SOUND_ADPCM: williams_adpcm_init(machine); - memory_install_ram(machine->device("adpcm")->memory().space(AS_PROGRAM), prot_start, prot_end, 0, 0, NULL); + machine->device("adpcm")->memory().space(AS_PROGRAM)->install_ram(prot_start, prot_end); break; case SOUND_NARC: williams_narc_init(machine); - memory_install_ram(machine->device("narc1cpu")->memory().space(AS_PROGRAM), prot_start, prot_end, 0, 0, NULL); + machine->device("narc1cpu")->memory().space(AS_PROGRAM)->install_ram(prot_start, prot_end); break; case SOUND_YAWDIM: @@ -499,7 +499,7 @@ static READ16_HANDLER( mkturbo_prot_r ) DRIVER_INIT( mkyturbo ) { /* protection */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xfffff400, 0xfffff40f, 0, 0, mkturbo_prot_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xfffff400, 0xfffff40f, FUNC(mkturbo_prot_r)); DRIVER_INIT_CALL(mkyunit); } @@ -521,12 +521,12 @@ static void term2_init_common(running_machine *machine, write16_space_func hack_ init_generic(machine, 6, SOUND_ADPCM, 0xfa8d, 0xfa9c); /* special inputs */ - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01c00000, 0x01c0005f, 0, 0, term2_input_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x01e00000, 0x01e0001f, 0, 0, term2_sound_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x01c00000, 0x01c0005f, FUNC(term2_input_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x01e00000, 0x01e0001f, FUNC(term2_sound_w)); /* HACK: this prevents the freeze on the movies */ /* until we figure whats causing it, this is better than nothing */ - state->t2_hack_mem = memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x010aa0e0, 0x010aa0ff, 0, 0, hack_w); + state->t2_hack_mem = machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x010aa0e0, 0x010aa0ff, FUNC(hack_w)); } DRIVER_INIT( term2 ) { term2_init_common(machine, term2_hack_w); } diff --git a/src/mame/machine/namcos1.c b/src/mame/machine/namcos1.c index 2df04baa58a..ea3d030ee72 100644 --- a/src/mame/machine/namcos1.c +++ b/src/mame/machine/namcos1.c @@ -685,12 +685,12 @@ static void set_bank(running_machine *machine, int banknum, const bankhandler *h if (!handler->bank_handler_r) { if (state->active_bank[banknum].bank_handler_r) - memory_install_read_bank(space, bankstart, bankstart + 0x1fff, 0, 0, banktags[banknum]); + space->install_read_bank(bankstart, bankstart + 0x1fff, banktags[banknum]); } else { if (!state->active_bank[banknum].bank_handler_r) - memory_install_read8_handler(space, bankstart, bankstart + 0x1fff, 0, 0, io_bank_handler_r[banknum]); + space->install_legacy_read_handler(bankstart, bankstart + 0x1fff, FUNC(io_bank_handler_r[banknum])); } /* write handlers (except for the 0xe000-0xffff range) */ @@ -699,12 +699,12 @@ static void set_bank(running_machine *machine, int banknum, const bankhandler *h if (!handler->bank_handler_w) { if (state->active_bank[banknum].bank_handler_w) - memory_install_write_bank(space, bankstart, bankstart + 0x1fff, 0, 0, banktags[banknum]); + space->install_write_bank(bankstart, bankstart + 0x1fff, banktags[banknum]); } else { if (!state->active_bank[banknum].bank_handler_r) - memory_install_write8_handler(space, bankstart, bankstart + 0x1fff, 0, 0, io_bank_handler_w[banknum]); + space->install_legacy_write_handler(bankstart, bankstart + 0x1fff, FUNC(io_bank_handler_w[banknum])); } } @@ -1216,7 +1216,7 @@ DRIVER_INIT( tankfrc4 ) }; namcos1_driver_init(machine, &tankfrce_specific); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x1400, 0x1401, 0, 0, faceoff_inputs_r); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1400, 0x1401, FUNC(faceoff_inputs_r)); } /******************************************************************************* @@ -1307,7 +1307,7 @@ static READ8_HANDLER( quester_paddle_r ) DRIVER_INIT( quester ) { namcos1_driver_init(machine, NULL); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x1400, 0x1401, 0, 0, quester_paddle_r); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1400, 0x1401, FUNC(quester_paddle_r)); } @@ -1396,7 +1396,7 @@ static READ8_HANDLER( berabohm_buttons_r ) DRIVER_INIT( berabohm ) { namcos1_driver_init(machine, NULL); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x1400, 0x1401, 0, 0, berabohm_buttons_r); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1400, 0x1401, FUNC(berabohm_buttons_r)); } @@ -1466,5 +1466,5 @@ static READ8_HANDLER( faceoff_inputs_r ) DRIVER_INIT( faceoff ) { namcos1_driver_init(machine, NULL); - memory_install_read8_handler(machine->device("mcu")->memory().space(AS_PROGRAM), 0x1400, 0x1401, 0, 0, faceoff_inputs_r); + machine->device("mcu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x1400, 0x1401, FUNC(faceoff_inputs_r)); } diff --git a/src/mame/machine/naomi.c b/src/mame/machine/naomi.c index 93a40f5076b..8ac5bfc3cba 100644 --- a/src/mame/machine/naomi.c +++ b/src/mame/machine/naomi.c @@ -171,7 +171,7 @@ static void create_pic_from_retdat(running_machine* machine) DRIVER_INIT(naomi) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc2ad238, 0xc2ad23f, 0, 0, naomi_bios_idle_skip_r); // rev e bios + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc2ad238, 0xc2ad23f, FUNC(naomi_bios_idle_skip_r)); // rev e bios jvsboard_type = JVSBD_DEFAULT; actel_id = 0xffff; @@ -188,7 +188,7 @@ DRIVER_INIT(naomi2) DRIVER_INIT(naomi_mp) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc2ad238, 0xc2ad23f, 0, 0, naomi_bios_idle_skip_r); // rev e bios + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc2ad238, 0xc2ad23f, FUNC(naomi_bios_idle_skip_r)); // rev e bios jvsboard_type = JVSBD_MAHJONG; actel_id = 0xffff; @@ -205,7 +205,7 @@ static READ64_HANDLER( naomigd_ggxxsla_idle_skip_r ) DRIVER_INIT( ggxxsla ) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc1aae18, 0xc1aae1f, 0, 0, naomigd_ggxxsla_idle_skip_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc1aae18, 0xc1aae1f, FUNC(naomigd_ggxxsla_idle_skip_r)); DRIVER_INIT_CALL(naomi); } @@ -220,7 +220,7 @@ static READ64_HANDLER( naomigd_ggxx_idle_skip_r ) DRIVER_INIT( ggxx ) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc1837b8, 0xc1837bf, 0, 0, naomigd_ggxx_idle_skip_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc1837b8, 0xc1837bf, FUNC(naomigd_ggxx_idle_skip_r)); DRIVER_INIT_CALL(naomi); } @@ -236,7 +236,7 @@ static READ64_HANDLER( naomigd_ggxxrl_idle_skip_r ) DRIVER_INIT( ggxxrl ) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc18d6c8, 0xc18d6cf, 0, 0, naomigd_ggxxrl_idle_skip_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc18d6c8, 0xc18d6cf, FUNC(naomigd_ggxxrl_idle_skip_r)); DRIVER_INIT_CALL(naomi); } @@ -251,7 +251,7 @@ static READ64_HANDLER( naomigd_sfz3ugd_idle_skip_r ) DRIVER_INIT( sfz3ugd ) { - memory_install_read64_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xc5dc900, 0xc5dc907, 0, 0, naomigd_sfz3ugd_idle_skip_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xc5dc900, 0xc5dc907, FUNC(naomigd_sfz3ugd_idle_skip_r)); DRIVER_INIT_CALL(naomi); } diff --git a/src/mame/machine/neoboot.c b/src/mame/machine/neoboot.c index 43b52f5ae55..5a81580dd53 100644 --- a/src/mame/machine/neoboot.c +++ b/src/mame/machine/neoboot.c @@ -178,9 +178,9 @@ static WRITE16_HANDLER( kof10th_bankswitch_w ) void install_kof10th_protection ( running_machine *machine ) { - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe000, 0x2fffff, 0, 0, kof10th_RAMB_r); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x23ffff, 0, 0, kof10th_custom_w); - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x240000, 0x2fffff, 0, 0, kof10th_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe000, 0x2fffff, FUNC(kof10th_RAMB_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x200000, 0x23ffff, FUNC(kof10th_custom_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x240000, 0x2fffff, FUNC(kof10th_bankswitch_w)); } void decrypt_kof10th(running_machine *machine) @@ -485,7 +485,7 @@ void patch_cthd2003( running_machine *machine ) UINT16 *mem16 = (UINT16 *)machine->region("maincpu")->base(); /* special ROM banking handler */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ffff0, 0x2fffff, 0, 0, cthd2003_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2ffff0, 0x2fffff, FUNC(cthd2003_bankswitch_w)); // theres still a problem on the character select screen but it seems to be related to cpu core timing issues, // overclocking the 68k prevents it. @@ -729,7 +729,7 @@ static WRITE16_HANDLER ( ms5plus_bankswitch_w ) void install_ms5plus_protection(running_machine *machine) { // special ROM banking handler / additional protection - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM),0x2ffff0, 0x2fffff,0, 0, mslug5_prot_r, ms5plus_bankswitch_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2ffff0, 0x2fffff,FUNC(mslug5_prot_r), FUNC(ms5plus_bankswitch_w)); } @@ -972,7 +972,7 @@ void kf2k3bl_px_decrypt( running_machine *machine ) void kf2k3bl_install_protection(running_machine *machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe000, 0x2fffff, 0, 0, kof2003_r, kof2003_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2fe000, 0x2fffff, FUNC(kof2003_r), FUNC(kof2003_w) ); } @@ -1000,7 +1000,7 @@ void kf2k3pl_px_decrypt( running_machine *machine ) void kf2k3pl_install_protection(running_machine *machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe000, 0x2fffff, 0, 0, kof2003_r, kof2003p_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2fe000, 0x2fffff, FUNC(kof2003_r), FUNC(kof2003p_w) ); } @@ -1031,7 +1031,7 @@ void kf2k3upl_px_decrypt( running_machine *machine ) void kf2k3upl_install_protection(running_machine *machine) { - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe000, 0x2fffff, 0, 0, kof2003_r, kof2003_w ); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2fe000, 0x2fffff, FUNC(kof2003_r), FUNC(kof2003_w) ); } diff --git a/src/mame/machine/neoprot.c b/src/mame/machine/neoprot.c index d78b2c39f55..9f0926561ed 100644 --- a/src/mame/machine/neoprot.c +++ b/src/mame/machine/neoprot.c @@ -101,7 +101,7 @@ void fatfury2_install_protection( running_machine *machine ) /* the protection involves reading and writing addresses in the */ /* 0x2xxxxx range. There are several checks all around the code. */ - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x200000, 0x2fffff, 0, 0, fatfury2_protection_16_r, fatfury2_protection_16_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x200000, 0x2fffff, FUNC(fatfury2_protection_16_r), FUNC(fatfury2_protection_16_w)); state->fatfury2_prot_data = 0; @@ -146,7 +146,7 @@ void install_kof98_protection( running_machine *machine ) { /* when 0x20aaaa contains 0x0090 (word) then 0x100 (normally the neogeo header) should return 0x00c200fd worked out using real hw */ - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x20aaaa, 0x20aaab, 0, 0, kof98_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x20aaaa, 0x20aaab, FUNC(kof98_prot_w)); } @@ -405,15 +405,15 @@ static void sma_install_random_read_handler( running_machine *machine, int addr1 neogeo_state *state = machine->driver_data(); state->save_item(NAME(state->neogeo_rng)); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), addr1, addr1 + 1, 0, 0, sma_random_r); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), addr2, addr2 + 1, 0, 0, sma_random_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(addr1, addr1 + 1, FUNC(sma_random_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(addr2, addr2 + 1, FUNC(sma_random_r)); } void kof99_install_protection( running_machine *machine ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2ffff0, 0x2ffff1, 0, 0, kof99_bankswitch_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe446, 0x2fe447, 0, 0, prot_9a37_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2ffff0, 0x2ffff1, FUNC(kof99_bankswitch_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe446, 0x2fe447, FUNC(prot_9a37_r)); sma_install_random_read_handler(machine, 0x2ffff8, 0x2ffffa); } @@ -421,8 +421,8 @@ void kof99_install_protection( running_machine *machine ) void garou_install_protection( running_machine *machine ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fffc0, 0x2fffc1, 0, 0, garou_bankswitch_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe446, 0x2fe447, 0, 0, prot_9a37_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2fffc0, 0x2fffc1, FUNC(garou_bankswitch_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe446, 0x2fe447, FUNC(prot_9a37_r)); sma_install_random_read_handler(machine, 0x2fffcc, 0x2ffff0); } @@ -430,8 +430,8 @@ void garou_install_protection( running_machine *machine ) void garouo_install_protection( running_machine *machine ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fffc0, 0x2fffc1, 0, 0, garouo_bankswitch_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe446, 0x2fe447, 0, 0, prot_9a37_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2fffc0, 0x2fffc1, FUNC(garouo_bankswitch_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe446, 0x2fe447, FUNC(prot_9a37_r)); sma_install_random_read_handler(machine, 0x2fffcc, 0x2ffff0); } @@ -439,8 +439,8 @@ void garouo_install_protection( running_machine *machine ) void mslug3_install_protection( running_machine *machine ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fffe4, 0x2fffe5, 0, 0, mslug3_bankswitch_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe446, 0x2fe447, 0, 0, prot_9a37_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2fffe4, 0x2fffe5, FUNC(mslug3_bankswitch_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe446, 0x2fe447, FUNC(prot_9a37_r)); // sma_install_random_read_handler(machine, 0x2ffff8, 0x2ffffa); } @@ -448,8 +448,8 @@ void mslug3_install_protection( running_machine *machine ) void kof2000_install_protection( running_machine *machine ) { - memory_install_write16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fffec, 0x2fffed, 0, 0, kof2000_bankswitch_w); - memory_install_read16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe446, 0x2fe447, 0, 0, prot_9a37_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x2fffec, 0x2fffed, FUNC(kof2000_bankswitch_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x2fe446, 0x2fe447, FUNC(prot_9a37_r)); sma_install_random_read_handler(machine, 0x2fffd8, 0x2fffda); } @@ -540,5 +540,5 @@ void install_pvc_protection( running_machine *machine ) state->pvc_cartridge_ram = auto_alloc_array(machine, UINT16, 0x2000 / 2); state->save_pointer(NAME(state->pvc_cartridge_ram), 0x2000 / 2); - memory_install_readwrite16_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2fe000, 0x2fffff, 0, 0, pvc_prot_r, pvc_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2fe000, 0x2fffff, FUNC(pvc_prot_r), FUNC(pvc_prot_w)); } diff --git a/src/mame/machine/playch10.c b/src/mame/machine/playch10.c index 9f382a5b87f..ef247b248a1 100644 --- a/src/mame/machine/playch10.c +++ b/src/mame/machine/playch10.c @@ -57,8 +57,8 @@ MACHINE_START( pc10 ) /* move to individual boards as documentation of actual boards allows */ state->nt_ram = auto_alloc_array(machine, UINT8, 0x1000); - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0, 0x1fff, 0, 0, pc10_chr_r, pc10_chr_w); - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, pc10_nt_r, pc10_nt_w); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0, 0x1fff, FUNC(pc10_chr_r), FUNC(pc10_chr_w)); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(pc10_nt_r), FUNC(pc10_nt_w)); if (NULL != state->vram) set_videoram_bank(machine, 0, 8, 0, 8); @@ -81,8 +81,8 @@ MACHINE_START( playch10_hboard ) state->vram = auto_alloc_array(machine, UINT8, 0x2000); - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0, 0x1fff, 0, 0, pc10_chr_r, pc10_chr_w); - memory_install_readwrite8_handler(machine->device("ppu")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, pc10_nt_r, pc10_nt_w); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0, 0x1fff, FUNC(pc10_chr_r), FUNC(pc10_chr_w)); + machine->device("ppu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(pc10_nt_r), FUNC(pc10_nt_w)); } /************************************* @@ -610,7 +610,7 @@ DRIVER_INIT( pcaboard ) { playch10_state *state = machine->driver_data(); /* switches vrom with writes to the $803e-$8041 area */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0x8fff, 0, 0, aboard_vrom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0x8fff, FUNC(aboard_vrom_switch_w) ); /* common init */ DRIVER_INIT_CALL(playch10); @@ -643,7 +643,7 @@ DRIVER_INIT( pcbboard ) memcpy(&prg[0x08000], &prg[0x28000], 0x8000); /* Roms are banked at $8000 to $bfff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, bboard_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(bboard_rom_switch_w) ); /* common init */ DRIVER_INIT_CALL(playch10); @@ -669,7 +669,7 @@ DRIVER_INIT( pccboard ) { playch10_state *state = machine->driver_data(); /* switches vrom with writes to $6000 */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x6000, 0, 0, cboard_vrom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6000, 0x6000, FUNC(cboard_vrom_switch_w) ); /* we have no vram, make sure switching games doesn't point to an old allocation */ state->vram = NULL; @@ -693,7 +693,7 @@ DRIVER_INIT( pcdboard ) state->mmc1_rom_mask = 0x07; /* MMC mapper at writes to $8000-$ffff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mmc1_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mmc1_rom_switch_w) ); /* common init */ @@ -710,7 +710,7 @@ DRIVER_INIT( pcdboard_2 ) { playch10_state *state = machine->driver_data(); /* extra ram at $6000-$7fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); /* common init */ DRIVER_INIT_CALL(pcdboard); @@ -809,13 +809,13 @@ DRIVER_INIT( pceboard ) memcpy(&prg[0x08000], &prg[0x28000], 0x8000); /* basically a mapper 9 on a nes */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, eboard_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(eboard_rom_switch_w) ); /* ppu_latch callback */ ppu2c0x_set_latch(machine->device("ppu"), mapper9_latch); /* nvram at $6000-$6fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x6fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x6fff); /* common init */ DRIVER_INIT_CALL(playch10); @@ -839,7 +839,7 @@ DRIVER_INIT( pcfboard ) state->mmc1_rom_mask = 0x07; /* MMC mapper at writes to $8000-$ffff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mmc1_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mmc1_rom_switch_w) ); /* common init */ DRIVER_INIT_CALL(playch10); @@ -851,7 +851,7 @@ DRIVER_INIT( pcfboard_2 ) { playch10_state *state = machine->driver_data(); /* extra ram at $6000-$6fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x6fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x6fff); state->vram = NULL; @@ -1024,10 +1024,10 @@ DRIVER_INIT( pcgboard ) memcpy(&prg[0x0c000], &prg[0x4c000], 0x4000); /* MMC3 mapper at writes to $8000-$ffff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, gboard_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(gboard_rom_switch_w) ); /* extra ram at $6000-$7fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); state->gboard_banks[0] = 0x1e; state->gboard_banks[1] = 0x1f; @@ -1077,7 +1077,7 @@ DRIVER_INIT( pciboard ) memcpy(&prg[0x08000], &prg[0x10000], 0x8000); /* Roms are banked at $8000 to $bfff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, iboard_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(iboard_rom_switch_w) ); /* common init */ DRIVER_INIT_CALL(playch10); @@ -1146,10 +1146,10 @@ DRIVER_INIT( pchboard ) memcpy(&prg[0x0c000], &prg[0x4c000], 0x4000); /* Roms are banked at $8000 to $bfff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, hboard_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(hboard_rom_switch_w) ); /* extra ram at $6000-$7fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); state->gboard_banks[0] = 0x1e; state->gboard_banks[1] = 0x1f; @@ -1177,10 +1177,10 @@ DRIVER_INIT( pckboard ) state->mmc1_rom_mask = 0x0f; /* extra ram at $6000-$7fff */ - memory_install_ram(machine->device("cart")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); /* Roms are banked at $8000 to $bfff */ - memory_install_write8_handler(machine->device("cart")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mmc1_rom_switch_w ); + machine->device("cart")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mmc1_rom_switch_w) ); /* common init */ DRIVER_INIT_CALL(playch10); diff --git a/src/mame/machine/scramble.c b/src/mame/machine/scramble.c index 269fc5f860c..4d96081fcf6 100644 --- a/src/mame/machine/scramble.c +++ b/src/mame/machine/scramble.c @@ -208,13 +208,13 @@ DRIVER_INIT( scramble_ppi ) static DRIVER_INIT( scobra ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa803, 0xa803, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa803, 0xa803, FUNC(scrambold_background_enable_w)); } #ifdef UNUSED_FUNCTION DRIVER_INIT( atlantis ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6803, 0x6803, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6803, 0x6803, FUNC(scrambold_background_enable_w)); } DRIVER_INIT( scramble ) @@ -225,14 +225,14 @@ DRIVER_INIT( scramble ) DRIVER_INIT( stratgyx ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb000, 0xb000, 0, 0, scrambold_background_green_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb002, 0xb002, 0, 0, scrambold_background_blue_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb00a, 0xb00a, 0, 0, scrambold_background_red_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb000, 0xb000, FUNC(scrambold_background_green_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb002, 0xb002, FUNC(scrambold_background_blue_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb00a, 0xb00a, FUNC(scrambold_background_red_w)); } DRIVER_INIT( tazmani2 ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb002, 0xb002, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb002, 0xb002, FUNC(scrambold_background_enable_w)); } DRIVER_INIT( ckongs ) @@ -242,15 +242,15 @@ DRIVER_INIT( ckongs ) DRIVER_INIT( mariner ) { /* extra ROM */ - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5800, 0x67ff, 0, 0, "bank1"); - memory_unmap_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5800, 0x67ff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x5800, 0x67ff, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x5800, 0x67ff); memory_set_bankptr(machine, "bank1", machine->region("maincpu")->base() + 0x5800); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x9008, 0x9008, 0, 0, mariner_protection_2_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb401, 0xb401, 0, 0, mariner_protection_1_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x9008, 0x9008, FUNC(mariner_protection_2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0xb401, 0xb401, FUNC(mariner_protection_1_r)); /* ??? (it's NOT a background enable) */ - /*memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6803, 0x6803, 0, 0);*/ + /*machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x6803, 0x6803);*/ } #ifdef UNUSED_FUNCTION @@ -328,15 +328,15 @@ DRIVER_INIT( cavelon ) UINT8 *ROM = machine->region("maincpu")->base(); /* banked ROM */ - memory_install_read_bank(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x3fff, 0, 0, "bank1"); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x3fff, "bank1"); memory_configure_bank(machine, "bank1", 0, 2, &ROM[0x00000], 0x10000); cavelon_banksw(machine); /* A15 switches memory banks */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, cavelon_banksw_r, cavelon_banksw_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x8000, 0xffff, FUNC(cavelon_banksw_r), FUNC(cavelon_banksw_w)); - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x2000, 0x2000, 0, 0); /* ??? */ - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x3800, 0x3801, 0, 0); /* looks suspicously like + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x2000, 0x2000); /* ??? */ + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x3800, 0x3801); /* looks suspicously like an AY8910, but not sure */ state_save_register_global(machine, cavelon_bank); } @@ -345,7 +345,7 @@ DRIVER_INIT( cavelon ) DRIVER_INIT( darkplnt ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xb00a, 0xb00a, 0, 0, darkplnt_bullet_color_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xb00a, 0xb00a, FUNC(darkplnt_bullet_color_w)); } DRIVER_INIT( mimonkey ) @@ -381,17 +381,17 @@ DRIVER_INIT( mimonkey ) ctr++; } - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa804, 0xa804, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa804, 0xa804, FUNC(scrambold_background_enable_w)); } DRIVER_INIT( mimonsco ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xa804, 0xa804, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xa804, 0xa804, FUNC(scrambold_background_enable_w)); } DRIVER_INIT( mimonscr ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6804, 0x6804, 0, 0, scrambold_background_enable_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6804, 0x6804, FUNC(scrambold_background_enable_w)); } diff --git a/src/mame/machine/segaic16.c b/src/mame/machine/segaic16.c index 0423f572d2b..697816a9f79 100644 --- a/src/mame/machine/segaic16.c +++ b/src/mame/machine/segaic16.c @@ -300,7 +300,7 @@ static void update_memory_mapping(running_machine *machine, struct memory_mapper if (LOG_MEMORY_MAP) mame_printf_debug("----\nRemapping:\n"); /* first reset everything back to the beginning */ - memory_install_readwrite16_handler(space, 0x000000, 0xffffff, 0, 0, segaic16_memory_mapper_lsb_r, segaic16_memory_mapper_lsb_w); + space->install_legacy_readwrite_handler(0x000000, 0xffffff, FUNC(segaic16_memory_mapper_lsb_r), FUNC(segaic16_memory_mapper_lsb_w)); /* loop over the regions */ for (rgnum = 0; chip->map[rgnum].regbase != 0; rgnum++) @@ -329,18 +329,18 @@ static void update_memory_mapping(running_machine *machine, struct memory_mapper /* map it */ if (read != NULL) - memory_install_read16_handler(space, region_start, region_end, 0, region_mirror, read); + space->install_legacy_read_handler(region_start, region_end, 0, region_mirror, FUNC(read)); else if (readbank != NULL) - memory_install_read_bank(space, region_start, region_end, 0, region_mirror, readbank); + space->install_read_bank(region_start, region_end, 0, region_mirror, readbank); else - memory_install_read16_handler(space, region_start, region_end, 0, region_mirror, segaic16_open_bus_r); + space->install_legacy_read_handler(region_start, region_end, 0, region_mirror, FUNC(segaic16_open_bus_r)); if (write != NULL) - memory_install_write16_handler(space, region_start, region_end, 0, region_mirror, write); + space->install_legacy_write_handler(region_start, region_end, 0, region_mirror, FUNC(write)); else if (writebank != NULL) - memory_install_write_bank(space, region_start, region_end, 0, region_mirror, writebank); + space->install_write_bank(region_start, region_end, 0, region_mirror, writebank); else - memory_unmap_write(space, region_start, region_end, 0, region_mirror); + space->unmap_write(region_start, region_end, 0, region_mirror); /* set the bank pointer */ if (readbank != NULL) diff --git a/src/mame/machine/segamsys.c b/src/mame/machine/segamsys.c index 87f223d7736..72a2c6a860c 100644 --- a/src/mame/machine/segamsys.c +++ b/src/mame/machine/segamsys.c @@ -1481,7 +1481,7 @@ READ8_HANDLER( sms_ioport_gg00_r ) void init_extra_gg_ports(running_machine* machine, const char* tag) { address_space *io = machine->device(tag)->memory().space(AS_IO); - memory_install_read8_handler (io, 0x00, 0x00, 0, 0, sms_ioport_gg00_r); + io->install_legacy_read_handler (0x00, 0x00, FUNC(sms_ioport_gg00_r)); } DRIVER_INIT( smsgg ) @@ -1597,12 +1597,12 @@ static WRITE8_HANDLER( mt_sms_standard_rom_bank_w ) logerror("bank w %02x %02x\n", offset, data); if ((data & 0x08) && smsgg_backupram) { - memory_install_readwrite8_handler(space, 0x8000, 0x9fff, 0, 0, smsgg_backupram_r, smsgg_backupram_w); + space->install_legacy_readwrite_handler(0x8000, 0x9fff, FUNC(smsgg_backupram_r), FUNC(smsgg_backupram_w)); } else { - memory_install_rom(space, 0x0000, 0xbfff, 0, 0, sms_rom); - memory_unmap_write(space, 0x0000, 0xbfff, 0, 0); + space->install_rom(0x0000, 0xbfff, sms_rom); + space->unmap_write(0x0000, 0xbfff); } //printf("bank ram??\n"); @@ -1646,19 +1646,19 @@ static void megatech_set_genz80_as_sms_standard_ports(running_machine *machine, address_space *io = machine->device(tag)->memory().space(AS_IO); device_t *sn = machine->device("snsnd"); - memory_install_readwrite8_handler(io, 0x0000, 0xffff, 0, 0, z80_unmapped_port_r, z80_unmapped_port_w); + io->install_legacy_readwrite_handler(0x0000, 0xffff, FUNC(z80_unmapped_port_r), FUNC(z80_unmapped_port_w)); - memory_install_read8_handler (io, 0x7e, 0x7e, 0, 0, md_sms_vdp_vcounter_r); - memory_install_write8_device_handler(io, sn, 0x7e, 0x7f, 0, 0, sn76496_w); - memory_install_readwrite8_handler(io, 0xbe, 0xbe, 0, 0, md_sms_vdp_data_r, md_sms_vdp_data_w); - memory_install_readwrite8_handler(io, 0xbf, 0xbf, 0, 0, md_sms_vdp_ctrl_r, md_sms_vdp_ctrl_w); + io->install_legacy_read_handler (0x7e, 0x7e, FUNC(md_sms_vdp_vcounter_r)); + io->install_legacy_write_handler(*sn, 0x7e, 0x7f, FUNC(sn76496_w)); + io->install_legacy_readwrite_handler (0xbe, 0xbe, FUNC(md_sms_vdp_data_r), FUNC(md_sms_vdp_data_w)); + io->install_legacy_readwrite_handler (0xbf, 0xbf, FUNC(md_sms_vdp_ctrl_r), FUNC(md_sms_vdp_ctrl_w)); - memory_install_read8_handler (io, 0x10, 0x10, 0, 0, megatech_sms_ioport_dd_r); // super tetris + io->install_legacy_read_handler (0x10, 0x10, FUNC(megatech_sms_ioport_dd_r)); // super tetris - memory_install_read8_handler (io, 0xdc, 0xdc, 0, 0, megatech_sms_ioport_dc_r); - memory_install_read8_handler (io, 0xdd, 0xdd, 0, 0, megatech_sms_ioport_dd_r); - memory_install_read8_handler (io, 0xde, 0xde, 0, 0, megatech_sms_ioport_dd_r); - memory_install_read8_handler (io, 0xdf, 0xdf, 0, 0, megatech_sms_ioport_dd_r); // adams family + io->install_legacy_read_handler (0xdc, 0xdc, FUNC(megatech_sms_ioport_dc_r)); + io->install_legacy_read_handler (0xdd, 0xdd, FUNC(megatech_sms_ioport_dd_r)); + io->install_legacy_read_handler (0xde, 0xde, FUNC(megatech_sms_ioport_dd_r)); + io->install_legacy_read_handler (0xdf, 0xdf, FUNC(megatech_sms_ioport_dd_r)); // adams family } void megatech_set_genz80_as_sms_standard_map(running_machine *machine, const char* tag, int mapper) @@ -1666,16 +1666,16 @@ void megatech_set_genz80_as_sms_standard_map(running_machine *machine, const cha /* INIT THE MEMMAP / BANKING *********************************************************************************/ /* catch any addresses that don't get mapped */ - memory_install_readwrite8_handler(machine->device(tag)->memory().space(AS_PROGRAM), 0x0000, 0xffff, 0, 0, z80_unmapped_r, z80_unmapped_w); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x0000, 0xffff, FUNC(z80_unmapped_r), FUNC(z80_unmapped_w)); /* main ram area */ - sms_mainram = (UINT8 *)memory_install_ram(machine->device(tag)->memory().space(AS_PROGRAM), 0xc000, 0xdfff, 0, 0x2000, NULL); + sms_mainram = (UINT8 *)machine->device(tag)->memory().space(AS_PROGRAM)->install_ram(0xc000, 0xdfff, 0, 0x2000); memset(sms_mainram,0x00,0x2000); megatech_set_genz80_as_sms_standard_ports(machine, tag); /* fixed rom bank area */ - sms_rom = (UINT8 *)memory_install_rom(machine->device(tag)->memory().space(AS_PROGRAM), 0x0000, 0xbfff, 0, 0, NULL); + sms_rom = (UINT8 *)machine->device(tag)->memory().space(AS_PROGRAM)->install_rom(0x0000, 0xbfff, NULL); memcpy(sms_rom, machine->region("maincpu")->base(), 0xc000); @@ -1683,14 +1683,14 @@ void megatech_set_genz80_as_sms_standard_map(running_machine *machine, const cha { - memory_install_write8_handler(machine->device(tag)->memory().space(AS_PROGRAM), 0xfffc, 0xffff, 0, 0, mt_sms_standard_rom_bank_w); + machine->device(tag)->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xfffc, 0xffff, FUNC(mt_sms_standard_rom_bank_w)); } else if (mapper == MAPPER_CODEMASTERS ) { - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0000, 0x0000, 0, 0, codemasters_rom_bank_0000_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4000, 0x4000, 0, 0, codemasters_rom_bank_4000_w); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0x8000, 0, 0, codemasters_rom_bank_8000_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x0000, 0x0000, FUNC(codemasters_rom_bank_0000_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4000, 0x4000, FUNC(codemasters_rom_bank_4000_w)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0x8000, FUNC(codemasters_rom_bank_8000_w)); } // smsgg_backupram = NULL; } diff --git a/src/mame/machine/stvprot.c b/src/mame/machine/stvprot.c index d5f2de95b64..6f028bf850e 100644 --- a/src/mame/machine/stvprot.c +++ b/src/mame/machine/stvprot.c @@ -162,7 +162,7 @@ static WRITE32_HANDLER ( twcup98_prot_w ) void install_twcup98_protection(running_machine *machine) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, twcup98_prot_r, twcup98_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(twcup98_prot_r), FUNC(twcup98_prot_w)); } /************************** @@ -227,7 +227,7 @@ static WRITE32_HANDLER ( sss_prot_w ) void install_sss_protection(running_machine *machine) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, sss_prot_r, sss_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(sss_prot_r), FUNC(sss_prot_w)); } /************************************* @@ -292,7 +292,7 @@ static WRITE32_HANDLER ( rsgun_prot_w ) void install_rsgun_protection(running_machine *machine) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, rsgun_prot_r, rsgun_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(rsgun_prot_r), FUNC(rsgun_prot_w)); } /************************* @@ -387,7 +387,7 @@ static WRITE32_HANDLER ( elandore_prot_w ) void install_elandore_protection(running_machine *machine) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, elandore_prot_r, elandore_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(elandore_prot_r), FUNC(elandore_prot_w)); } /************************* @@ -471,7 +471,7 @@ static WRITE32_HANDLER ( ffreveng_prot_w ) void install_ffreveng_protection(running_machine *machine) { - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, ffreveng_prot_r, ffreveng_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(ffreveng_prot_r), FUNC(ffreveng_prot_w)); } /************************ @@ -511,7 +511,7 @@ static WRITE32_HANDLER(astrass_prot_w) void install_astrass_protection(running_machine *machine) { ctrl_index = -1; - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4fffff0, 0x4ffffff, 0, 0, astrass_prot_r, astrass_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4fffff0, 0x4ffffff, FUNC(astrass_prot_r), FUNC(astrass_prot_w)); } /************************** @@ -663,9 +663,9 @@ void install_decathlt_protection(running_machine *machine) decathlt_prot_uploadmode = 0; decathlt_prot_uploadoffset = 0; decathlt_part = 1; - memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x37FFFF0, 0x37FFFFF, 0, 0, decathlt_prot_r, decathlt_prot_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x37FFFF0, 0x37FFFFF, FUNC(decathlt_prot_r), FUNC(decathlt_prot_w)); /* It uploads 2 tables here too, but nothing else, mirror? unused? */ -// memory_install_readwrite32_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x27FFFF0, 0x27FFFFF, 0, 0, decathlt_prot_r, decathlt_prot_w); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x27FFFF0, 0x27FFFFF, FUNC(decathlt_prot_r), FUNC(decathlt_prot_w)); } void stv_register_protection_savestates(running_machine *machine) diff --git a/src/mame/machine/tnzs.c b/src/mame/machine/tnzs.c index bc6ee7d9879..8d989884fba 100644 --- a/src/mame/machine/tnzs.c +++ b/src/mame/machine/tnzs.c @@ -514,7 +514,7 @@ DRIVER_INIT( drtoppel ) state->mcu_type = MCU_DRTOPPEL; /* drtoppel writes to the palette RAM area even if it has PROMs! We have to patch it out. */ - memory_nop_write(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xf800, 0xfbff, 0, 0); + machine->device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0xf800, 0xfbff); } DRIVER_INIT( chukatai ) @@ -528,7 +528,7 @@ DRIVER_INIT( tnzs ) tnzs_state *state = machine->driver_data(); state->mcu_type = MCU_TNZS; /* we need to install a kludge to avoid problems with a bug in the original code */ -// memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xef10, 0xef10, 0, 0, tnzs_sync_kludge_w); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xef10, 0xef10, FUNC(tnzs_sync_kludge_w)); } DRIVER_INIT( tnzsb ) @@ -537,7 +537,7 @@ DRIVER_INIT( tnzsb ) state->mcu_type = MCU_NONE_TNZSB; /* we need to install a kludge to avoid problems with a bug in the original code */ -// memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0xef10, 0xef10, 0, 0, tnzs_sync_kludge_w); +// machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xef10, 0xef10, FUNC(tnzs_sync_kludge_w)); } DRIVER_INIT( kabukiz ) @@ -555,9 +555,9 @@ DRIVER_INIT( insectx ) state->mcu_type = MCU_NONE_INSECTX; /* this game has no mcu, replace the handler with plain input port handlers */ - memory_install_read_port(machine->device("sub")->memory().space(AS_PROGRAM), 0xc000, 0xc000, 0, 0, "IN0" ); - memory_install_read_port(machine->device("sub")->memory().space(AS_PROGRAM), 0xc001, 0xc001, 0, 0, "IN1" ); - memory_install_read_port(machine->device("sub")->memory().space(AS_PROGRAM), 0xc002, 0xc002, 0, 0, "IN2" ); + machine->device("sub")->memory().space(AS_PROGRAM)->install_read_port(0xc000, 0xc000, "IN0" ); + machine->device("sub")->memory().space(AS_PROGRAM)->install_read_port(0xc001, 0xc001, "IN1" ); + machine->device("sub")->memory().space(AS_PROGRAM)->install_read_port(0xc002, 0xc002, "IN2" ); } DRIVER_INIT( kageki ) @@ -673,9 +673,9 @@ static STATE_POSTLOAD( tnzs_postload ) memory_set_bank(machine, "bank2", state->bank2); if (state->bank1 <= 1) - memory_install_write_bank(space, 0x8000, 0xbfff, 0, 0, "bank1"); + space->install_write_bank(0x8000, 0xbfff, "bank1"); else - memory_unmap_write(space, 0x8000, 0xbfff, 0, 0); + space->unmap_write(0x8000, 0xbfff); } MACHINE_START( tnzs ) @@ -756,9 +756,9 @@ WRITE8_HANDLER( tnzs_bankswitch_w ) memory_set_bank(space->machine, "bank1", state->bank1); if (state->bank1 <= 1) - memory_install_write_bank(space, 0x8000, 0xbfff, 0, 0, "bank1"); + space->install_write_bank(0x8000, 0xbfff, "bank1"); else - memory_unmap_write(space, 0x8000, 0xbfff, 0, 0); + space->unmap_write(0x8000, 0xbfff); } WRITE8_HANDLER( tnzs_bankswitch1_w ) diff --git a/src/mame/machine/vsnes.c b/src/mame/machine/vsnes.c index 8d37ca2ebd7..ffed506cf50 100644 --- a/src/mame/machine/vsnes.c +++ b/src/mame/machine/vsnes.c @@ -207,7 +207,7 @@ MACHINE_START( vsnes ) state->nt_page[0][2] = state->nt_ram[0] + 0x800; state->nt_page[0][3] = state->nt_ram[0] + 0xc00; - memory_install_readwrite8_handler(ppu1_space, 0x2000, 0x3eff, 0, 0, vsnes_nt0_r, vsnes_nt0_w); + ppu1_space->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(vsnes_nt0_r), FUNC(vsnes_nt0_w)); state->vrom[0] = machine->region("gfx1")->base(); state->vrom_size[0] = machine->region("gfx1")->bytes(); @@ -220,14 +220,14 @@ MACHINE_START( vsnes ) { for (i = 0; i < 8; i++) { - memory_install_read_bank(ppu1_space, 0x0400 * i, 0x0400 * i + 0x03ff, 0, 0, chr_banknames[i]); + ppu1_space->install_read_bank(0x0400 * i, 0x0400 * i + 0x03ff, chr_banknames[i]); memory_configure_bank(machine, chr_banknames[i], 0, state->vrom_banks, state->vrom[0], 0x400); } v_set_videorom_bank(machine, 0, 8, 0); } else { - memory_install_ram(ppu1_space, 0x0000, 0x1fff, 0, 0, state->vram); + ppu1_space->install_ram(0x0000, 0x1fff, state->vram); } } @@ -252,12 +252,12 @@ MACHINE_START( vsdual ) state->nt_page[1][2] = state->nt_ram[1] + 0x800; state->nt_page[1][3] = state->nt_ram[1] + 0xc00; - memory_install_readwrite8_handler(machine->device("ppu1")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, vsnes_nt0_r, vsnes_nt0_w); - memory_install_readwrite8_handler(machine->device("ppu2")->memory().space(AS_PROGRAM), 0x2000, 0x3eff, 0, 0, vsnes_nt1_r, vsnes_nt1_w); + machine->device("ppu1")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(vsnes_nt0_r), FUNC(vsnes_nt0_w)); + machine->device("ppu2")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x2000, 0x3eff, FUNC(vsnes_nt1_r), FUNC(vsnes_nt1_w)); // read only! - memory_install_read_bank(machine->device("ppu1")->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank2"); + machine->device("ppu1")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank2"); // read only! - memory_install_read_bank(machine->device("ppu2")->memory().space(AS_PROGRAM), 0x0000, 0x1fff, 0, 0, "bank3"); + machine->device("ppu2")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank3"); memory_configure_bank(machine, "bank2", 0, state->vrom_size[0] / 0x2000, state->vrom[0], 0x2000); memory_configure_bank(machine, "bank3", 0, state->vrom_size[1] / 0x2000, state->vrom[1], 0x2000); memory_set_bank(machine, "bank2", 0); @@ -354,7 +354,7 @@ static WRITE8_HANDLER( vsnormal_vrom_banking ) DRIVER_INIT( vsnormal ) { /* vrom switching is enabled with bit 2 of $4016 */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, vsnormal_vrom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4016, 0x4016, FUNC(vsnormal_vrom_banking)); } /**********************************************************************************/ @@ -412,7 +412,7 @@ DRIVER_INIT( vsgun ) { vsnes_state *state = machine->driver_data(); /* VROM switching is enabled with bit 2 of $4016 */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, gun_in0_r, gun_in0_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4016, 0x4016, FUNC(gun_in0_r), FUNC(gun_in0_w)); state->do_vrom_bank = 1; } @@ -453,7 +453,7 @@ DRIVER_INIT( vskonami ) memcpy(&prg[0x08000], &prg[0x18000], 0x8000); /* banking is done with writes to the $8000-$ffff area */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, vskonami_rom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(vskonami_rom_banking)); } /***********************************************************************/ @@ -482,7 +482,7 @@ DRIVER_INIT( vsgshoe ) memcpy (&prg[0x08000], &prg[0x12000], 0x2000); /* vrom switching is enabled with bit 2 of $4016 */ - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, gun_in0_r, vsgshoe_gun_in0_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4016, 0x4016, FUNC(gun_in0_r), FUNC(vsgshoe_gun_in0_w)); state->do_vrom_bank = 1; } @@ -613,7 +613,7 @@ DRIVER_INIT( drmario ) memcpy(&prg[0x0c000], &prg[0x1c000], 0x4000); /* MMC1 mapper at writes to $8000-$ffff */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, drmario_rom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(drmario_rom_banking)); state->drmario_shiftreg = 0; state->drmario_shiftcount = 0; @@ -638,7 +638,7 @@ DRIVER_INIT( vsvram ) memcpy(&prg[0x08000], &prg[0x28000], 0x8000); /* banking is done with writes to the $8000-$ffff area */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, vsvram_rom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(vsvram_rom_banking)); /* allocate state->vram */ state->vram = auto_alloc_array(machine, UINT8, 0x2000); @@ -802,10 +802,10 @@ DRIVER_INIT( MMC3 ) memcpy(&prg[0xe000], &prg[(MMC3_prg_chunks - 1) * 0x4000 + 0x12000], 0x2000); /* MMC3 mapper at writes to $8000-$ffff */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mapper4_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mapper4_w)); /* extra ram at $6000-$7fff */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); } /* Vs. RBI Baseball */ @@ -843,7 +843,7 @@ DRIVER_INIT( rbibb ) DRIVER_INIT_CALL(MMC3); /* RBI Base ball hack */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5e00, 0x5e01, 0, 0, rbi_hack_r) ; + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5e00, 0x5e01, FUNC(rbi_hack_r)) ; } /* Vs. Super Xevious */ @@ -893,10 +893,10 @@ DRIVER_INIT( supxevs ) DRIVER_INIT_CALL(MMC3); /* Vs. Super Xevious Protection */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x54ff, 0x54ff, 0, 0, supxevs_read_prot_1_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5678, 0x5678, 0, 0, supxevs_read_prot_2_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x578f, 0x578f, 0, 0, supxevs_read_prot_3_r); - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5567, 0x5567, 0, 0, supxevs_read_prot_4_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x54ff, 0x54ff, FUNC(supxevs_read_prot_1_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5678, 0x5678, FUNC(supxevs_read_prot_2_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x578f, 0x578f, FUNC(supxevs_read_prot_3_r)); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5567, 0x5567, FUNC(supxevs_read_prot_4_r)); } /* Vs. TKO Boxing */ @@ -926,7 +926,7 @@ DRIVER_INIT( tkoboxng ) DRIVER_INIT_CALL(MMC3); /* security device at $5e00-$5e01 */ - memory_install_read8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x5e00, 0x5e01, 0, 0, tko_security_r); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x5e00, 0x5e01, FUNC(tko_security_r)); } /* Vs. Freedom Force */ @@ -936,7 +936,7 @@ DRIVER_INIT( vsfdf ) vsnes_state *state = machine->driver_data(); DRIVER_INIT_CALL(MMC3); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, gun_in0_r, gun_in0_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x4016, 0x4016, FUNC(gun_in0_r), FUNC(gun_in0_w)); state->do_vrom_bank = 0; } @@ -986,7 +986,7 @@ DRIVER_INIT( platoon ) memcpy(&prg[0x08000], &prg[0x10000], 0x4000); memcpy(&prg[0x0c000], &prg[0x2c000], 0x4000); - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x8000, 0xffff, 0, 0, mapper68_rom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x8000, 0xffff, FUNC(mapper68_rom_banking)); } /**********************************************************************************/ @@ -1010,10 +1010,10 @@ static READ8_HANDLER( set_bnglngby_irq_r ) DRIVER_INIT( bnglngby ) { vsnes_state *state = machine->driver_data(); - memory_install_readwrite8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x0231, 0x0231, 0, 0, set_bnglngby_irq_r, set_bnglngby_irq_w); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x0231, 0x0231, FUNC(set_bnglngby_irq_r), FUNC(set_bnglngby_irq_w)); /* extra ram */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, NULL); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff); state->ret = 0; @@ -1046,11 +1046,11 @@ DRIVER_INIT( vsdual ) UINT8 *prg = machine->region("maincpu")->base(); /* vrom switching is enabled with bit 2 of $4016 */ - memory_install_write8_handler(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, vsdual_vrom_banking); - memory_install_write8_handler(machine->device("sub")->memory().space(AS_PROGRAM), 0x4016, 0x4016, 0, 0, vsdual_vrom_banking); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4016, 0x4016, FUNC(vsdual_vrom_banking)); + machine->device("sub")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x4016, 0x4016, FUNC(vsdual_vrom_banking)); /* shared ram at $6000 */ - memory_install_ram(machine->device("maincpu")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, &prg[0x6000]); - memory_install_ram(machine->device("sub")->memory().space(AS_PROGRAM), 0x6000, 0x7fff, 0, 0, &prg[0x6000]); + machine->device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff, &prg[0x6000]); + machine->device("sub")->memory().space(AS_PROGRAM)->install_ram(0x6000, 0x7fff, &prg[0x6000]); } diff --git a/src/mame/machine/williams.c b/src/mame/machine/williams.c index 6e055a6b675..8c3a321bcec 100644 --- a/src/mame/machine/williams.c +++ b/src/mame/machine/williams.c @@ -496,8 +496,8 @@ WRITE8_HANDLER( williams2_bank_select_w ) { /* page 0 is video ram */ case 0: - memory_install_read_bank(space, 0x0000, 0x8fff, 0, 0, "bank1"); - memory_install_write_bank(space, 0x8000, 0x87ff, 0, 0, "bank4"); + space->install_read_bank(0x0000, 0x8fff, "bank1"); + space->install_write_bank(0x8000, 0x87ff, "bank4"); memory_set_bank(space->machine, "bank1", 0); memory_set_bankptr(space->machine, "bank4", &state->videoram[0x8000]); break; @@ -505,16 +505,16 @@ WRITE8_HANDLER( williams2_bank_select_w ) /* pages 1 and 2 are ROM */ case 1: case 2: - memory_install_read_bank(space, 0x0000, 0x8fff, 0, 0, "bank1"); - memory_install_write_bank(space, 0x8000, 0x87ff, 0, 0, "bank4"); + space->install_read_bank(0x0000, 0x8fff, "bank1"); + space->install_write_bank(0x8000, 0x87ff, "bank4"); memory_set_bank(space->machine, "bank1", 1 + ((state->vram_bank & 6) >> 1)); memory_set_bankptr(space->machine, "bank4", &state->videoram[0x8000]); break; /* page 3 accesses palette RAM; the remaining areas are as if page 1 ROM was selected */ case 3: - memory_install_read_bank(space, 0x8000, 0x87ff, 0, 0, "bank4"); - memory_install_write8_handler(space, 0x8000, 0x87ff, 0, 0, williams2_paletteram_w); + space->install_read_bank(0x8000, 0x87ff, "bank4"); + space->install_legacy_write_handler(0x8000, 0x87ff, FUNC(williams2_paletteram_w)); memory_set_bank(space->machine, "bank1", 1 + ((state->vram_bank & 4) >> 1)); memory_set_bankptr(space->machine, "bank4", space->machine->generic.paletteram.v); break; @@ -781,14 +781,14 @@ WRITE8_HANDLER( defender_bank_select_w ) case 7: case 8: case 9: - memory_install_read_bank(space, 0xc000, 0xcfff, 0, 0, "bank1"); - memory_unmap_write(space, 0xc000, 0xcfff, 0, 0); + space->install_read_bank(0xc000, 0xcfff, "bank1"); + space->unmap_write(0xc000, 0xcfff); memory_set_bank(space->machine, "bank1", state->vram_bank - 1); break; /* pages A-F are not connected */ default: - memory_nop_readwrite(space, 0xc000, 0xcfff, 0, 0); + space->nop_readwrite(0xc000, 0xcfff); break; } } diff --git a/src/mame/video/simpsons.c b/src/mame/video/simpsons.c index 2d0155a555c..98fb10f4711 100644 --- a/src/mame/video/simpsons.c +++ b/src/mame/video/simpsons.c @@ -101,17 +101,17 @@ void simpsons_video_banking( running_machine *machine, int bank ) if (bank & 1) { - memory_install_read_bank(space, 0x0000, 0x0fff, 0, 0, "bank5"); - memory_install_write8_handler(space, 0x0000, 0x0fff, 0, 0, paletteram_xBBBBBGGGGGRRRRR_be_w); + space->install_read_bank(0x0000, 0x0fff, "bank5"); + space->install_legacy_write_handler(0x0000, 0x0fff, FUNC(paletteram_xBBBBBGGGGGRRRRR_be_w)); memory_set_bankptr(machine, "bank5", machine->generic.paletteram.v); } else - memory_install_readwrite8_device_handler(space, state->k052109, 0x0000, 0x0fff, 0, 0, k052109_r, k052109_w); + space->install_legacy_readwrite_handler(*state->k052109, 0x0000, 0x0fff, FUNC(k052109_r), FUNC(k052109_w)); if (bank & 2) - memory_install_readwrite8_handler(space, 0x2000, 0x3fff, 0, 0, simpsons_k053247_r, simpsons_k053247_w); + space->install_legacy_readwrite_handler(0x2000, 0x3fff, FUNC(simpsons_k053247_r), FUNC(simpsons_k053247_w)); else - memory_install_readwrite8_handler(space, 0x2000, 0x3fff, 0, 0, simpsons_k052109_r, simpsons_k052109_w); + space->install_legacy_readwrite_handler(0x2000, 0x3fff, FUNC(simpsons_k052109_r), FUNC(simpsons_k052109_w)); }