summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/konamigq.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/konamigq.cpp')
-rw-r--r--src/mame/drivers/konamigq.cpp23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/mame/drivers/konamigq.cpp b/src/mame/drivers/konamigq.cpp
index 9980d38ff96..4ce806a8005 100644
--- a/src/mame/drivers/konamigq.cpp
+++ b/src/mame/drivers/konamigq.cpp
@@ -93,7 +93,8 @@ public:
m_soundcpu(*this, "soundcpu"),
m_dasp(*this, "dasp"),
m_am53cf96(*this, "am53cf96"),
- m_k056800(*this, "k056800")
+ m_k056800(*this, "k056800"),
+ m_pcmram(*this, "pcmram")
{
}
@@ -102,6 +103,7 @@ public:
required_device<tms57002_device> m_dasp;
required_device<am53cf96_device> m_am53cf96;
required_device<k056800_device> m_k056800;
+ required_shared_ptr<uint8_t> m_pcmram;
uint8_t *m_p_n_pcmram;
uint8_t m_sector_buffer[ 512 ];
@@ -151,12 +153,12 @@ WRITE16_MEMBER(konamigq_state::eeprom_w)
WRITE8_MEMBER(konamigq_state::pcmram_w)
{
- m_p_n_pcmram[ offset ] = data;
+ m_pcmram[ offset ] = data;
}
READ8_MEMBER(konamigq_state::pcmram_r)
{
- return m_p_n_pcmram[ offset ];
+ return m_pcmram[ offset ];
}
/* Video */
@@ -242,6 +244,13 @@ static ADDRESS_MAP_START( konamigq_dasp_map, AS_DATA, 8, konamigq_state )
ADDRESS_MAP_END
+/* K058141 memory handling */
+static ADDRESS_MAP_START( konamigq_k054539_map, 0, 8, konamigq_state )
+ AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("k054539", 0)
+ AM_RANGE(0x080000, 0x3fffff) AM_RAM AM_SHARE("pcmram")
+ADDRESS_MAP_END
+
+
/* 058141 */
WRITE_LINE_MEMBER(konamigq_state::k054539_irq_gen)
{
@@ -297,12 +306,10 @@ void konamigq_state::scsi_dma_write( uint32_t *p_n_psxram, uint32_t n_address, i
DRIVER_INIT_MEMBER(konamigq_state,konamigq)
{
- m_p_n_pcmram = memregion( "shared" )->base() + 0x80000;
}
MACHINE_START_MEMBER(konamigq_state,konamigq)
{
- save_pointer(NAME(m_p_n_pcmram), 0x380000);
save_item(NAME(m_sector_buffer));
save_item(NAME(m_sound_ctrl));
save_item(NAME(m_sound_intck));
@@ -354,13 +361,13 @@ MACHINE_CONFIG_START(konamigq_state::konamigq)
MCFG_K056800_INT_HANDLER(INPUTLINE("soundcpu", M68K_IRQ_1))
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL(18'432'000))
- MCFG_K054539_REGION_OVERRRIDE("shared")
+ MCFG_DEVICE_ADDRESS_MAP(0, konamigq_k054539_map)
MCFG_K054539_TIMER_HANDLER(WRITELINE(konamigq_state, k054539_irq_gen))
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL(18'432'000))
- MCFG_K054539_REGION_OVERRRIDE("shared")
+ MCFG_DEVICE_ADDRESS_MAP(0, konamigq_k054539_map)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
@@ -453,7 +460,7 @@ ROM_START( cryptklr )
ROM_REGION( 0x80000, "soundcpu", 0 ) /* 68000 sound program */
ROM_LOAD16_WORD_SWAP( "420a01.2g", 0x000000, 0x080000, CRC(84fc2613) SHA1(e06f4284614d33c76529eb43b168d095200a9eac) )
- ROM_REGION( 0x400000, "shared", 0 )
+ ROM_REGION( 0x80000, "k054539", 0 )
ROM_LOAD( "420a02.3m", 0x000000, 0x080000, CRC(2169c3c4) SHA1(6d525f10385791e19eb1897d18f0bab319640162) )
ROM_REGION32_LE( 0x080000, "maincpu:rom", 0 ) /* bios */