mirror of
https://github.com/holub/mame
synced 2025-04-24 17:30:55 +03:00
Started moving hardware in the CPU into the CPU core. Next step will be to use delegates to split dependencies, which is similar to how the real thing works as the address decoding is in the CPU and then each external chip has it's own bus.
This commit is contained in:
parent
92146956ae
commit
35968f9281
@ -64,6 +64,8 @@
|
||||
#include "emu.h"
|
||||
#include "debugger.h"
|
||||
#include "psx.h"
|
||||
#include "includes/psx.h"
|
||||
#include "sound/spu.h"
|
||||
|
||||
#define LOG_BIOSCALL ( 0 )
|
||||
|
||||
@ -1533,7 +1535,21 @@ int psxcpu_device::store_data_address_breakpoint( UINT32 address )
|
||||
// On-board RAM and peripherals
|
||||
static ADDRESS_MAP_START( psxcpu_internal_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x00800000, 0x1effffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_NOP /* scratchpad */
|
||||
AM_RANGE(0x1f800400, 0x1f800fff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x1f801004, 0x1f80101f) AM_RAM
|
||||
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE(psx_com_delay_r, psx_com_delay_w)
|
||||
AM_RANGE(0x1f801024, 0x1f80102f) AM_RAM
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_RAM
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x20000000, 0x7fffffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x80800000, 0x9effffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0xa0800000, 0xbeffffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
@ -1543,7 +1559,20 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( cxd8661r_internal_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x01000000, 0x1effffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_NOP /* scratchpad */
|
||||
AM_RANGE(0x1f800400, 0x1f800fff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x1f801004, 0x1f80101f) AM_RAM
|
||||
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE(psx_com_delay_r, psx_com_delay_w)
|
||||
AM_RANGE(0x1f801024, 0x1f80102f) AM_RAM
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_RAM
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x20000000, 0x7fffffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0x81000000, 0x9effffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
AM_RANGE(0xa1000000, 0xbeffffff) AM_DEVREADWRITE(DEVICE_SELF,psx_berr_r, psx_berr_w)
|
||||
|
@ -3112,6 +3112,11 @@ READ16_HANDLER( spu_r )
|
||||
{
|
||||
spu_device *spu = space->machine().device<spu_device>("spu");
|
||||
|
||||
if (spu == NULL )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!spu->installed_dma_hooks)
|
||||
{
|
||||
psx_dma_install_read_handler(space->machine(), 4, spu_dma_read);
|
||||
@ -3126,6 +3131,11 @@ WRITE16_HANDLER( spu_w )
|
||||
{
|
||||
spu_device *spu = space->machine().device<spu_device>("spu");
|
||||
|
||||
if (spu == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!spu->installed_dma_hooks)
|
||||
{
|
||||
psx_dma_install_read_handler(space->machine(), 4, spu_dma_read);
|
||||
|
@ -180,22 +180,6 @@ static ADDRESS_MAP_START( konamigq_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f300000, 0x1f5fffff) AM_READWRITE(pcmram_r, pcmram_w)
|
||||
AM_RANGE(0x1f680000, 0x1f68001f) AM_READWRITE(mb89371_r, mb89371_w)
|
||||
AM_RANGE(0x1f780000, 0x1f780003) AM_WRITENOP /* watchdog? */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_READNOP
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
|
||||
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
|
||||
|
@ -168,22 +168,6 @@ static ADDRESS_MAP_START( konamigv_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f180000, 0x1f180003) AM_DEVWRITE("eeprom", eeprom_w)
|
||||
AM_RANGE(0x1f680000, 0x1f68001f) AM_READWRITE(mb89371_r, mb89371_w)
|
||||
AM_RANGE(0x1f780000, 0x1f780003) AM_WRITENOP /* watchdog? */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_RAM
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
|
||||
AM_RANGE(0x80000000, 0x801fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
|
||||
|
@ -1224,22 +1224,6 @@ static ADDRESS_MAP_START( konami573_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f620000, 0x1f623fff) AM_DEVREADWRITE8("m48t58", timekeeper_r, timekeeper_w, 0x00ff00ff)
|
||||
AM_RANGE(0x1f680000, 0x1f68001f) AM_READWRITE(mb89371_r, mb89371_w)
|
||||
AM_RANGE(0x1f6a0000, 0x1f6a0003) AM_READWRITE( security_r, security_w )
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_RAM
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("bios", 0)
|
||||
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
|
||||
|
@ -282,22 +282,6 @@ public:
|
||||
|
||||
static ADDRESS_MAP_START( namcos10_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE("share1") /* ram */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_READNOP
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
|
||||
AM_RANGE(0x80000000, 0x80ffffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
|
||||
|
@ -703,22 +703,6 @@ static READ32_HANDLER( lightgun_r )
|
||||
|
||||
static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_READNOP
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fa04000, 0x1fa0ffff) AM_RAM AM_BASE_MEMBER(namcos11_state, m_sharedram) /* shared ram with C76 */
|
||||
AM_RANGE(0x1fa20000, 0x1fa2ffff) AM_WRITE(keycus_w) AM_BASE_SIZE_MEMBER(namcos11_state, m_keycus, m_keycus_size) /* keycus */
|
||||
AM_RANGE(0x1fa30000, 0x1fa30fff) AM_DEVREADWRITE8("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */
|
||||
|
@ -1221,23 +1221,7 @@ static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f140000, 0x1f140fff) AM_DEVREADWRITE8("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */
|
||||
AM_RANGE(0x1f1bff08, 0x1f1bff0f) AM_WRITENOP /* ?? */
|
||||
AM_RANGE(0x1f700000, 0x1f70ffff) AM_WRITE(dmaoffset_w) /* dma */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801003) AM_WRITE(s12_dma_bias_w)
|
||||
AM_RANGE(0x1f801004, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80102f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_READNOP
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fa00000, 0x1fbfffff) AM_ROMBANK("bank1") /* banked roms */
|
||||
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
|
||||
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
|
@ -921,17 +921,6 @@ static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f000000, 0x1f1fffff) AM_READWRITE(flash_s1_r, flash_s1_w)
|
||||
AM_RANGE(0x1f200000, 0x1f3fffff) AM_READWRITE(flash_s2_r, flash_s2_w)
|
||||
AM_RANGE(0x1f400000, 0x1f5fffff) AM_READWRITE(flash_s3_r, flash_s3_w)
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f80100f) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_RAM
|
||||
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE(psx_com_delay_r, psx_com_delay_w)
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1")
|
||||
AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ_PORT("P2")
|
||||
AM_RANGE(0x1fa00200, 0x1fa00203) AM_READ_PORT("SERVICE")
|
||||
|
@ -254,25 +254,6 @@ public:
|
||||
|
||||
/* RTC */
|
||||
|
||||
static WRITE32_HANDLER( twinkle_unknown_w )
|
||||
{
|
||||
twinkle_state *state = space->machine().driver_data<twinkle_state>();
|
||||
|
||||
/* printf( "set unknown data=%08x\n", data ); */
|
||||
|
||||
state->m_unknown = data;
|
||||
}
|
||||
|
||||
static READ32_HANDLER( twinkle_unknown_r )
|
||||
{
|
||||
twinkle_state *state = space->machine().driver_data<twinkle_state>();
|
||||
UINT32 data = state->m_unknown;
|
||||
|
||||
/* printf( "get unknown data=%08x\n", data ); */
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
#define LED_A1 0x0001
|
||||
#define LED_A2 0x0002
|
||||
#define LED_B 0x0004
|
||||
@ -637,31 +618,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1f230000, 0x1f230003) AM_WRITENOP
|
||||
AM_RANGE(0x1f240000, 0x1f240003) AM_READ_PORT("IN6")
|
||||
AM_RANGE(0x1f250000, 0x1f250003) AM_WRITENOP
|
||||
|
||||
|
||||
AM_RANGE(0x1f260000, 0x1f260003) AM_WRITE(serial_w)
|
||||
AM_RANGE(0x1f270000, 0x1f270003) AM_WRITE_PORT("OUTSEC")
|
||||
AM_RANGE(0x1f280000, 0x1f280003) AM_READ_PORT("INSEC")
|
||||
AM_RANGE(0x1f290000, 0x1f29007f) AM_DEVREADWRITE8("rtc", rtc65271_rtc_r, rtc65271_rtc_w, 0x00ff00ff)
|
||||
AM_RANGE(0x1f2a0000, 0x1f2a007f) AM_DEVREADWRITE8("rtc", rtc65271_xram_r, rtc65271_xram_w, 0x00ff00ff)
|
||||
AM_RANGE(0x1f2b0000, 0x1f2b00ff) AM_WRITE(twinkle_output_w)
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
|
||||
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f80100c, 0x1f80100f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_READNOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_RAM
|
||||
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE(twinkle_unknown_r, twinkle_unknown_w)
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_WRITENOP
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
|
||||
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
|
||||
|
@ -418,23 +418,6 @@ static WRITE32_HANDLER( coin_w )
|
||||
static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */
|
||||
AM_RANGE(0x00400000, 0x007fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
|
||||
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
|
||||
AM_RANGE(0x1f801000, 0x1f80100f) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f801010, 0x1f801013) AM_NOP
|
||||
AM_RANGE(0x1f801014, 0x1f801017) AM_RAM
|
||||
AM_RANGE(0x1f801018, 0x1f80101f) AM_NOP
|
||||
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE(psx_com_delay_r, psx_com_delay_w)
|
||||
AM_RANGE(0x1f801024, 0x1f80102f) AM_NOP
|
||||
AM_RANGE(0x1f801040, 0x1f80105f) AM_READWRITE(psx_sio_r, psx_sio_w)
|
||||
AM_RANGE(0x1f801060, 0x1f80106f) AM_RAM
|
||||
AM_RANGE(0x1f801070, 0x1f801077) AM_READWRITE(psx_irq_r, psx_irq_w)
|
||||
AM_RANGE(0x1f801080, 0x1f8010ff) AM_READWRITE(psx_dma_r, psx_dma_w)
|
||||
AM_RANGE(0x1f801100, 0x1f80112f) AM_READWRITE(psx_counter_r, psx_counter_w)
|
||||
AM_RANGE(0x1f801810, 0x1f801817) AM_READWRITE(psx_gpu_r, psx_gpu_w)
|
||||
AM_RANGE(0x1f801820, 0x1f801827) AM_READWRITE(psx_mdec_r, psx_mdec_w)
|
||||
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE16(spu_r, spu_w, 0xffffffff)
|
||||
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
|
||||
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
|
||||
AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1")
|
||||
AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ_PORT("P2")
|
||||
AM_RANGE(0x1fa00200, 0x1fa00203) AM_READ_PORT("SERVICE")
|
||||
|
Loading…
Reference in New Issue
Block a user