From 5294f18b9cf02edffeced4f900c5e804a0c99b42 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Fri, 30 Mar 2018 15:38:23 +0200 Subject: othunder.cpp: changed to mono speaker, as shown on schematics and verified on real board [Guru] --- src/mame/drivers/othunder.cpp | 28 +++++++++------------------- src/mame/includes/othunder.h | 22 ++++++++++++---------- 2 files changed, 21 insertions(+), 29 deletions(-) diff --git a/src/mame/drivers/othunder.cpp b/src/mame/drivers/othunder.cpp index cc4abc6b0a9..4253b22a50b 100644 --- a/src/mame/drivers/othunder.cpp +++ b/src/mame/drivers/othunder.cpp @@ -264,15 +264,6 @@ Stephh's notes (based on the game M68000 code and some tests) : TODO: ----- -- With the correct clock speed of 12MHz for the 68000, garbage graphics remain - over the Taito logo on startup. This seems to be a bug in the original which - would have no effect if our timing was 100% right. The interrupt handling - should be quite correct, it's derived straight from the schematics and PAL - dump. - The current workaround is to make the 68000 run at 13MHz. Lowering below - 12MHz would work as well, and possibly be closer to the real reason (wait - states slowing the CPU down?) - - The "FIRE!" arrows pointing to padlocks are not in perfect sync with the background scrolling. Should they? @@ -667,8 +658,7 @@ void othunder_state::machine_reset() MACHINE_CONFIG_START(othunder_state::othunder) /* basic machine hardware */ -// MCFG_CPU_ADD("maincpu", M68000, 24000000/2 ) /* 12 MHz */ - MCFG_CPU_ADD("maincpu", M68000, 13000000 ) /* fixes garbage graphics on startup */ + MCFG_CPU_ADD("maincpu", M68000, 24000000/2 ) /* 12 MHz */ MCFG_CPU_PROGRAM_MAP(othunder_map) MCFG_CPU_VBLANK_INT_DRIVER("screen", othunder_state, vblank_interrupt) @@ -710,7 +700,7 @@ MACHINE_CONFIG_START(othunder_state::othunder) MCFG_TC0110PCR_PALETTE("palette") /* sound hardware */ - MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") + MCFG_SPEAKER_STANDARD_MONO("speaker") MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2) MCFG_YM2610_IRQ_HANDLER(INPUTLINE("audiocpu", 0)) @@ -722,17 +712,17 @@ MACHINE_CONFIG_START(othunder_state::othunder) MCFG_SOUND_ROUTE(2, "2610.2r", 1.0) MCFG_FILTER_VOLUME_ADD("2610.0l", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_FILTER_VOLUME_ADD("2610.0r", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_FILTER_VOLUME_ADD("2610.1l", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_FILTER_VOLUME_ADD("2610.1r", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_FILTER_VOLUME_ADD("2610.2l", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_FILTER_VOLUME_ADD("2610.2r", 0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_DEVICE_ADD("tc0140syt", TC0140SYT, 0) MCFG_TC0140SYT_MASTER_CPU("maincpu") @@ -978,4 +968,4 @@ GAME( 1988, othundero, othunder, othunder, othunder, othunder_state, 0, ORIENT GAME( 1988, othunderu, othunder, othunder, othundu, othunder_state, 0, ORIENTATION_FLIP_X, "Taito America Corporation", "Operation Thunderbolt (US, rev 1)", MACHINE_SUPPORTS_SAVE ) GAME( 1988, othunderuo, othunder, othunder, othundu, othunder_state, 0, ORIENTATION_FLIP_X, "Taito America Corporation", "Operation Thunderbolt (US)", MACHINE_SUPPORTS_SAVE ) GAME( 1988, othunderj, othunder, othunder, othundrj, othunder_state, 0, ORIENTATION_FLIP_X, "Taito Corporation", "Operation Thunderbolt (Japan)", MACHINE_SUPPORTS_SAVE ) -GAME( 1988, othunderjsc, othunder, othunder, othundrj, othunder_state, 0, ORIENTATION_FLIP_X, "Taito Corporation", "Operation Thunderbolt (Japan, SC)", MACHINE_SUPPORTS_SAVE ) +GAME( 1988, othunderjsc, othunder, othunder, othundrj, othunder_state, 0, ORIENTATION_FLIP_X, "Taito Corporation", "Operation Thunderbolt (Japan, SC)", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/includes/othunder.h b/src/mame/includes/othunder.h index a5055db1c3a..3f8711a3b7d 100644 --- a/src/mame/includes/othunder.h +++ b/src/mame/includes/othunder.h @@ -41,6 +41,18 @@ public: m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } + void othunder(machine_config &config); + +protected: + virtual void machine_start() override; + virtual void machine_reset() override; + virtual void video_start() override; + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; + +private: + void update_irq(); + void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, const int *primasks, int y_offs); + DECLARE_WRITE16_MEMBER(irq_ack_w); DECLARE_WRITE8_MEMBER(eeprom_w); DECLARE_WRITE8_MEMBER(coins_w); @@ -53,18 +65,8 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(vblank_interrupt); - void othunder(machine_config &config); void othunder_map(address_map &map); void z80_sound_map(address_map &map); -protected: - virtual void machine_start() override; - virtual void machine_reset() override; - virtual void video_start() override; - virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; - -private: - void update_irq(); - void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, const int *primasks, int y_offs); /* memory pointers */ required_shared_ptr m_spriteram; -- cgit v1.2.3