Previous 199869 Revisions Next

r44555 Friday 29th January, 2016 at 01:01:39 UTC by Angelo Salese
Added sound irq ack, removed hack (doesn't seem necessary)
[src/mame/drivers]overdriv.cpp
[src/mame/includes]overdriv.h

trunk/src/mame/drivers/overdriv.cpp
r253066r253067
127127
128128WRITE16_MEMBER(overdriv_state::overdriv_soundirq_w)
129129{
130   m_audiocpu->set_input_line(M6809_IRQ_LINE, HOLD_LINE);
130   m_audiocpu->set_input_line(M6809_IRQ_LINE, ASSERT_LINE);
131131}
132132
133
133134WRITE16_MEMBER(overdriv_state::overdriv_cpuB_irq_x_w)
134135{
135136   m_subcpu->set_input_line(5, HOLD_LINE); // likely wrong
r253066r253067
167168   AM_RANGE(0x238000, 0x238001) AM_WRITE(overdriv_cpuB_irq_x_w)
168169ADDRESS_MAP_END
169170
170// HACK ALERT
171#if UNUSED_FUNCTION
171172WRITE16_MEMBER( overdriv_state::overdriv_k053246_word_w )
172173{
173174   m_k053246->k053246_word_w(space,offset,data,mem_mask);
r253066r253067
190191   //printf("%02x %04x %04x\n", offset, data, mem_mask);
191192
192193}
194#endif
193195
194196static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16, overdriv_state )
195197   AM_RANGE(0x000000, 0x03ffff) AM_ROM
r253066r253067
197199   AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM //AM_DEVREADWRITE("k053250_1", k053250_device, ram_r, ram_w)
198200   AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("k053250_1", k053250_device, reg_r, reg_w)
199201   AM_RANGE(0x108000, 0x10800f) AM_DEVREADWRITE("k053250_2", k053250_device, reg_r, reg_w)
200   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..
202   AM_RANGE(0x118000, 0x118fff) AM_DEVREADWRITE("k053246", k053247_device, k053247_word_r, k053247_word_w) // data gets copied to sprite chip with DMA..
201203   AM_RANGE(0x120000, 0x120001) AM_DEVREAD("k053246", k053247_device, k053246_word_r)
202204   AM_RANGE(0x128000, 0x128001) AM_READWRITE(cpuB_ctrl_r, cpuB_ctrl_w) /* enable K053247 ROM reading, plus something else */
203   AM_RANGE(0x130000, 0x130007) AM_WRITE(overdriv_k053246_word_w) // AM_DEVWRITE("k053246", k053247_device, k053246_word_w)
205   AM_RANGE(0x130000, 0x130007) AM_DEVREADWRITE8("k053246", k053247_device, k053246_r,k053246_w,0xffff)
204206   AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1")
205207   AM_RANGE(0x208000, 0x20bfff) AM_RAM
206208   AM_RANGE(0x218000, 0x219fff) AM_DEVREAD("k053250_1", k053250_device, rom_r)
207209   AM_RANGE(0x220000, 0x221fff) AM_DEVREAD("k053250_2", k053250_device, rom_r)
208210ADDRESS_MAP_END
209211
212WRITE8_MEMBER(overdriv_state::sound_ack_w)
213{
214   m_audiocpu->set_input_line(M6809_IRQ_LINE, CLEAR_LINE);
215}
216
210217static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8, overdriv_state )
218   AM_RANGE(0x0000, 0x0000) AM_WRITE(sound_ack_w)
219   // 0x180
211220   AM_RANGE(0x0200, 0x0201) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
212221   AM_RANGE(0x0400, 0x042f) AM_DEVREADWRITE("k053260_1", k053260_device, read, write)
213222   AM_RANGE(0x0600, 0x062f) AM_DEVREADWRITE("k053260_2", k053260_device, read, write)
trunk/src/mame/includes/overdriv.h
r253066r253067
2424      m_k053246(*this, "k053246"),
2525      m_k053251(*this, "k053251"),
2626      m_k053252(*this, "k053252"),
27      m_sprram(*this, "sprram"),
2827      m_screen(*this, "screen")
2928   { }
3029
r253066r253067
4544   required_device<k053247_device> m_k053246;
4645   required_device<k053251_device> m_k053251;
4746   required_device<k053252_device> m_k053252;
48   required_shared_ptr<UINT16> m_sprram;
4947   required_device<screen_device> m_screen;
5048   DECLARE_WRITE16_MEMBER(eeprom_w);
5149   DECLARE_WRITE16_MEMBER(cpuA_ctrl_w);
5250   DECLARE_READ16_MEMBER(cpuB_ctrl_r);
5351   DECLARE_WRITE16_MEMBER(cpuB_ctrl_w);
5452   DECLARE_WRITE16_MEMBER(overdriv_soundirq_w);
53   DECLARE_WRITE8_MEMBER(sound_ack_w);
5554   DECLARE_WRITE16_MEMBER(overdriv_cpuB_irq_x_w);
5655   DECLARE_WRITE16_MEMBER(overdriv_cpuB_irq_y_w);
5756   virtual void machine_start() override;
r253066r253067
6059   INTERRUPT_GEN_MEMBER(cpuB_interrupt);
6160   TIMER_DEVICE_CALLBACK_MEMBER(overdriv_cpuA_scanline);
6261
63   DECLARE_WRITE16_MEMBER( overdriv_k053246_word_w );
6462   K051316_CB_MEMBER(zoom_callback_1);
6563   K051316_CB_MEMBER(zoom_callback_2);
6664   K053246_CB_MEMBER(sprite_callback);


Previous 199869 Revisions Next


© 1997-2024 The MAME Team