summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/overdriv.cpp
diff options
context:
space:
mode:
author angelosa <salese_corp_ltd@email.it>2016-01-28 23:49:55 +0100
committer angelosa <salese_corp_ltd@email.it>2016-01-29 02:01:39 +0100
commit2323219c5c7b80fefe78c79d14f80a5a1322446d (patch)
treedfa0f2f63fd43b09c1e190758d5a3c6335fbb461 /src/mame/drivers/overdriv.cpp
parent8baa2b6b69c6183670b97026d4785a2afc05ae74 (diff)
Added sound irq ack, removed hack (doesn't seem necessary)
Diffstat (limited to 'src/mame/drivers/overdriv.cpp')
-rw-r--r--src/mame/drivers/overdriv.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/mame/drivers/overdriv.cpp b/src/mame/drivers/overdriv.cpp
index d4feb91680c..6af30811242 100644
--- a/src/mame/drivers/overdriv.cpp
+++ b/src/mame/drivers/overdriv.cpp
@@ -127,9 +127,10 @@ WRITE16_MEMBER(overdriv_state::cpuB_ctrl_w)
WRITE16_MEMBER(overdriv_state::overdriv_soundirq_w)
{
- m_audiocpu->set_input_line(M6809_IRQ_LINE, HOLD_LINE);
+ m_audiocpu->set_input_line(M6809_IRQ_LINE, ASSERT_LINE);
}
+
WRITE16_MEMBER(overdriv_state::overdriv_cpuB_irq_x_w)
{
m_subcpu->set_input_line(5, HOLD_LINE); // likely wrong
@@ -167,7 +168,7 @@ static ADDRESS_MAP_START( overdriv_master_map, AS_PROGRAM, 16, overdriv_state )
AM_RANGE(0x238000, 0x238001) AM_WRITE(overdriv_cpuB_irq_x_w)
ADDRESS_MAP_END
-// HACK ALERT
+#if UNUSED_FUNCTION
WRITE16_MEMBER( overdriv_state::overdriv_k053246_word_w )
{
m_k053246->k053246_word_w(space,offset,data,mem_mask);
@@ -190,6 +191,7 @@ WRITE16_MEMBER( overdriv_state::overdriv_k053246_word_w )
//printf("%02x %04x %04x\n", offset, data, mem_mask);
}
+#endif
static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16, overdriv_state )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -197,17 +199,24 @@ static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16, overdriv_state )
AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM //AM_DEVREADWRITE("k053250_1", k053250_device, ram_r, ram_w)
AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("k053250_1", k053250_device, reg_r, reg_w)
AM_RANGE(0x108000, 0x10800f) AM_DEVREADWRITE("k053250_2", k053250_device, reg_r, reg_w)
- AM_RANGE(0x118000, 0x118fff) AM_RAM AM_SHARE("sprram") //AM_DEVREADWRITE("k053246", k053247_device, k053247_word_r, k053247_word_w) // data gets copied to sprite chip with DMA..
+ AM_RANGE(0x118000, 0x118fff) AM_DEVREADWRITE("k053246", k053247_device, k053247_word_r, k053247_word_w) // data gets copied to sprite chip with DMA..
AM_RANGE(0x120000, 0x120001) AM_DEVREAD("k053246", k053247_device, k053246_word_r)
AM_RANGE(0x128000, 0x128001) AM_READWRITE(cpuB_ctrl_r, cpuB_ctrl_w) /* enable K053247 ROM reading, plus something else */
- AM_RANGE(0x130000, 0x130007) AM_WRITE(overdriv_k053246_word_w) // AM_DEVWRITE("k053246", k053247_device, k053246_word_w)
+ AM_RANGE(0x130000, 0x130007) AM_DEVREADWRITE8("k053246", k053247_device, k053246_r,k053246_w,0xffff)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x208000, 0x20bfff) AM_RAM
AM_RANGE(0x218000, 0x219fff) AM_DEVREAD("k053250_1", k053250_device, rom_r)
AM_RANGE(0x220000, 0x221fff) AM_DEVREAD("k053250_2", k053250_device, rom_r)
ADDRESS_MAP_END
+WRITE8_MEMBER(overdriv_state::sound_ack_w)
+{
+ m_audiocpu->set_input_line(M6809_IRQ_LINE, CLEAR_LINE);
+}
+
static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8, overdriv_state )
+ AM_RANGE(0x0000, 0x0000) AM_WRITE(sound_ack_w)
+ // 0x180
AM_RANGE(0x0200, 0x0201) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
AM_RANGE(0x0400, 0x042f) AM_DEVREADWRITE("k053260_1", k053260_device, read, write)
AM_RANGE(0x0600, 0x062f) AM_DEVREADWRITE("k053260_2", k053260_device, read, write)