diff options
Diffstat (limited to 'src/emu/cpu/psx/psx.c')
-rw-r--r-- | src/emu/cpu/psx/psx.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/emu/cpu/psx/psx.c b/src/emu/cpu/psx/psx.c index a60a1204b9f..a262c9bd42c 100644 --- a/src/emu/cpu/psx/psx.c +++ b/src/emu/cpu/psx/psx.c @@ -1417,7 +1417,7 @@ void psxcpu_device::update_rom_config() } } - if( window_size < max_window_size ) + if( window_size < max_window_size && !m_disable_rom_berr) { m_program->install_readwrite_handler( 0x1fc00000 + window_size, 0x1fffffff, read32_delegate( FUNC( psxcpu_device::berr_r ), this ), write32_delegate( FUNC( psxcpu_device::berr_w ), this ) ); m_program->install_readwrite_handler( 0x9fc00000 + window_size, 0x9fffffff, read32_delegate( FUNC( psxcpu_device::berr_r ), this ), write32_delegate( FUNC( psxcpu_device::berr_w ), this ) ); @@ -1756,6 +1756,7 @@ psxcpu_device::psxcpu_device( const machine_config &mconfig, device_type type, c m_cd_write_handler( *this ), m_ram( *this, "ram" ) { + m_disable_rom_berr = false; } cxd8530aq_device::cxd8530aq_device( const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock ) @@ -3374,6 +3375,11 @@ WRITE8_MEMBER( psxcpu_device::cd_w ) m_cd_write_handler( space, offset, data, mem_mask ); } +void psxcpu_device::set_disable_rom_berr(bool mode) +{ + m_disable_rom_berr = mode; +} + static MACHINE_CONFIG_FRAGMENT( psx ) MCFG_DEVICE_ADD( "irq", PSX_IRQ, 0 ) MCFG_PSX_IRQ_HANDLER( INPUTLINE( DEVICE_SELF, PSXCPU_IRQ0 ) ) |