mirror of
https://github.com/holub/mame
synced 2025-06-07 13:23:50 +03:00
tenkai, mjreach: Regression fix (nw)
This commit is contained in:
parent
2bc56e7e7b
commit
1a3b847e44
@ -74,6 +74,9 @@ TODO:
|
|||||||
|
|
||||||
- neruton / majxtal7: girls are behind the background in demo mode.
|
- neruton / majxtal7: girls are behind the background in demo mode.
|
||||||
|
|
||||||
|
- tenkai: Interrupts are not quite right; "RAM ERROR" at startup and music slows
|
||||||
|
down while dealing tiles in attract mode.
|
||||||
|
|
||||||
*********************************************************************************************************************/
|
*********************************************************************************************************************/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
@ -4777,15 +4780,9 @@ MACHINE_CONFIG_END
|
|||||||
Mahjong Tenkaigen
|
Mahjong Tenkaigen
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
TIMER_DEVICE_CALLBACK_MEMBER(dynax_state::tenkai_interrupt)
|
void dynax_state::tenkai_update_irq()
|
||||||
{
|
{
|
||||||
int scanline = param;
|
|
||||||
|
|
||||||
if(scanline == 256)
|
|
||||||
m_maincpu->set_input_line(INPUT_LINE_IRQ0, HOLD_LINE);
|
m_maincpu->set_input_line(INPUT_LINE_IRQ0, HOLD_LINE);
|
||||||
|
|
||||||
if(scanline == 0)
|
|
||||||
m_maincpu->set_input_line(INPUT_LINE_IRQ1, HOLD_LINE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE_LINE_MEMBER(dynax_state::tenkai_rtc_irq)
|
WRITE_LINE_MEMBER(dynax_state::tenkai_rtc_irq)
|
||||||
@ -4807,7 +4804,6 @@ static MACHINE_CONFIG_START( tenkai )
|
|||||||
MCFG_TLCS90_PORT_P7_WRITE_CB(WRITE8(dynax_state, tenkai_p7_w))
|
MCFG_TLCS90_PORT_P7_WRITE_CB(WRITE8(dynax_state, tenkai_p7_w))
|
||||||
MCFG_TLCS90_PORT_P8_READ_CB(READ8(dynax_state, tenkai_p8_r))
|
MCFG_TLCS90_PORT_P8_READ_CB(READ8(dynax_state, tenkai_p8_r))
|
||||||
MCFG_TLCS90_PORT_P8_WRITE_CB(WRITE8(dynax_state, tenkai_p8_w))
|
MCFG_TLCS90_PORT_P8_WRITE_CB(WRITE8(dynax_state, tenkai_p8_w))
|
||||||
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", dynax_state, tenkai_interrupt, "screen", 0, 1)
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD("bankdev", ADDRESS_MAP_BANK, 0)
|
MCFG_DEVICE_ADD("bankdev", ADDRESS_MAP_BANK, 0)
|
||||||
MCFG_DEVICE_PROGRAM_MAP(tenkai_banked_map)
|
MCFG_DEVICE_PROGRAM_MAP(tenkai_banked_map)
|
||||||
@ -4836,10 +4832,11 @@ static MACHINE_CONFIG_START( tenkai )
|
|||||||
MCFG_SCREEN_VISIBLE_AREA(4, 512-1, 4, 255-8-4) // hide first 4 horizontal pixels (see scroll of gal 4 in test mode)
|
MCFG_SCREEN_VISIBLE_AREA(4, 512-1, 4, 255-8-4) // hide first 4 horizontal pixels (see scroll of gal 4 in test mode)
|
||||||
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hnoridur)
|
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hnoridur)
|
||||||
MCFG_SCREEN_PALETTE("palette")
|
MCFG_SCREEN_PALETTE("palette")
|
||||||
|
MCFG_SCREEN_VBLANK_CALLBACK(INPUTLINE("maincpu", INPUT_LINE_IRQ1))
|
||||||
|
|
||||||
MCFG_PALETTE_ADD("palette", 16*256)
|
MCFG_PALETTE_ADD("palette", 16*256)
|
||||||
|
|
||||||
MCFG_VIDEO_START_OVERRIDE(dynax_state,mjelctrn)
|
MCFG_VIDEO_START_OVERRIDE(dynax_state,tenkai)
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
@ -267,8 +267,6 @@ public:
|
|||||||
INTERRUPT_GEN_MEMBER(jantouki_sound_vblank_interrupt);
|
INTERRUPT_GEN_MEMBER(jantouki_sound_vblank_interrupt);
|
||||||
INTERRUPT_GEN_MEMBER(yarunara_clock_interrupt);
|
INTERRUPT_GEN_MEMBER(yarunara_clock_interrupt);
|
||||||
|
|
||||||
TIMER_DEVICE_CALLBACK_MEMBER(tenkai_interrupt);
|
|
||||||
|
|
||||||
void tenkai_update_rombank();
|
void tenkai_update_rombank();
|
||||||
|
|
||||||
DECLARE_WRITE_LINE_MEMBER(sprtmtch_sound_callback);
|
DECLARE_WRITE_LINE_MEMBER(sprtmtch_sound_callback);
|
||||||
@ -297,6 +295,7 @@ public:
|
|||||||
DECLARE_VIDEO_START(mcnpshnt);
|
DECLARE_VIDEO_START(mcnpshnt);
|
||||||
DECLARE_PALETTE_INIT(janyuki);
|
DECLARE_PALETTE_INIT(janyuki);
|
||||||
DECLARE_VIDEO_START(neruton);
|
DECLARE_VIDEO_START(neruton);
|
||||||
|
DECLARE_VIDEO_START(tenkai);
|
||||||
|
|
||||||
inline void blitter_plot_pixel( int layer, int mask, int x, int y, int pen, int wrap, int flags );
|
inline void blitter_plot_pixel( int layer, int mask, int x, int y, int pen, int wrap, int flags );
|
||||||
int blitter_drawgfx( int layer, int mask, memory_region *gfx, int src, int pen, int x, int y, int wrap, int flags );
|
int blitter_drawgfx( int layer, int mask, memory_region *gfx, int src, int pen, int x, int y, int wrap, int flags );
|
||||||
@ -312,6 +311,7 @@ public:
|
|||||||
void sprtmtch_update_irq();
|
void sprtmtch_update_irq();
|
||||||
void jantouki_update_irq();
|
void jantouki_update_irq();
|
||||||
void mjelctrn_update_irq();
|
void mjelctrn_update_irq();
|
||||||
|
void tenkai_update_irq();
|
||||||
void jantouki_sound_update_irq();
|
void jantouki_sound_update_irq();
|
||||||
void tenkai_show_6c();
|
void tenkai_show_6c();
|
||||||
};
|
};
|
||||||
|
@ -1039,6 +1039,14 @@ VIDEO_START_MEMBER(dynax_state,neruton)
|
|||||||
m_update_irq_func = &dynax_state::mjelctrn_update_irq;
|
m_update_irq_func = &dynax_state::mjelctrn_update_irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START_MEMBER(dynax_state,tenkai)
|
||||||
|
{
|
||||||
|
VIDEO_START_CALL_MEMBER(hnoridur);
|
||||||
|
|
||||||
|
m_priority_table = priority_mjelctrn;
|
||||||
|
m_update_irq_func = &dynax_state::tenkai_update_irq;
|
||||||
|
}
|
||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user