mirror of
https://github.com/holub/mame
synced 2025-07-02 00:29:37 +03:00
hmcs40: fix possible issue with irq/lpu (nw)
This commit is contained in:
parent
baa7178053
commit
1cd85518e3
@ -578,7 +578,7 @@ void hmcs40_cpu_device::execute_run()
|
|||||||
while (m_icount > 0)
|
while (m_icount > 0)
|
||||||
{
|
{
|
||||||
// LPU is handled 1 cycle later
|
// LPU is handled 1 cycle later
|
||||||
if ((m_prev_op & 0x3e0) == 0x340)
|
if ((m_prev_op & 0x7e0) == 0x340)
|
||||||
m_pc = ((m_page << 6) | (m_pc & 0x3f)) & m_pcmask;
|
m_pc = ((m_page << 6) | (m_pc & 0x3f)) & m_pcmask;
|
||||||
|
|
||||||
// remember previous state
|
// remember previous state
|
||||||
|
@ -465,7 +465,7 @@ void hmcs40_cpu_device::op_lpu()
|
|||||||
if (m_s)
|
if (m_s)
|
||||||
m_page = m_op & 0x1f;
|
m_page = m_op & 0x1f;
|
||||||
else
|
else
|
||||||
m_op = 0; // fake nop
|
m_op |= 0x400; // indicate unhandled LPU
|
||||||
}
|
}
|
||||||
|
|
||||||
void hmcs40_cpu_device::op_tbr()
|
void hmcs40_cpu_device::op_tbr()
|
||||||
|
@ -75,7 +75,7 @@
|
|||||||
- gckong random lockups (tap the jump button repeatedly): mcu stack overflow,
|
- gckong random lockups (tap the jump button repeatedly): mcu stack overflow,
|
||||||
works ok if stack levels is increased, 38800 B rev. has more stack levels?
|
works ok if stack levels is increased, 38800 B rev. has more stack levels?
|
||||||
Or it could be a race condition: irq happening too late/early.
|
Or it could be a race condition: irq happening too late/early.
|
||||||
- epacman booting the game in demo mode, pacman should go straight to the
|
- epacman2 booting the game in demo mode, pacman should go straight to the
|
||||||
upper-left power pill: mcu cycle/interrupt timing related
|
upper-left power pill: mcu cycle/interrupt timing related
|
||||||
- Though very uncommon when compared to games with LED/lamp display, some
|
- Though very uncommon when compared to games with LED/lamp display, some
|
||||||
games may manipulate VFD plate brightness by strobing it longer/shorter,
|
games may manipulate VFD plate brightness by strobing it longer/shorter,
|
||||||
|
Loading…
Reference in New Issue
Block a user