Viewing Issue Advanced Details
|ID||Category [?]||Severity [?]||Reproducibility||Date Submitted||Last Update|
|03492||Crash/Freeze||Critical (emulation)||Always||Oct 28, 2009, 17:27||May 13, 2010, 10:56|
|Tester||Luigi30||View Status||Public||Platform||MAME (Self-compiled)|
|Assigned To||couriersud||Resolution||Fixed||OS||Windows XP (32-bit)|
|Version||0.134u4||Fixed in Version||0.138||Build||Normal|
|Summary||03492: hunchbkg: Does not boot|
|Description||hunchbkg fails to boot and makes a horrible noise out of the speakers instead.|
|Steps To Reproduce|
|Affected Sets / Systems||hunchbkg|
hunchbkg-s2650-0134-0134u1.png (14,386 bytes) Mar 12, 2010, 22:33
|There are no relationship linked to this issue.|
Mar 12, 2010, 22:33
Couriersud improved the S2650 CPU in MAME 0.134u1. I compare the changes made
for the S2650 CPU and found that
CHECK_IRQ_LINE changed to s2650c->icount -= check_irq_line(s2650c).
There are 3x CHECK_IRQ_LINE in MAME 0.134, but only 1x in 0.134u1 (see compare picture).
hunchbkg boot/works if you added to the last a check_irq_line (see cursor in compare pic).
Added to MAME 0.137 src\emu\cpu\s2650\s2650.c line 857:
s2650c->icount -= check_irq_line(s2650c);
The bug must be assign to Couriersud!
May 7, 2010, 21:08
edited on: May 7, 2010, 21:10
The interrupt handling in the s2650 core is fine and follows the specification. The game primarily fails due to using "pulse" interrupt calls. The irq line for 2650 is a level line, i.e. an interrupt is raised when the line is asserted. This is completely different from "pulsed", i.e. state change depend lines. Your change would have caused interrupts being taken without having a valid cpu context. This is not in line with how cpu cores should handle interrupts.
There is another timing related issue to be reviewed pending right now. Once this has been done, I will submit an improved driver. Interestingly enough, hunchbkg uses the "stars enable" line of the galaxian hardware and enables the scrolling star field.
May 8, 2010, 12:33
|I think in some cases games enable that line, but it wasn't connected, or was rewired elsewhere...|
May 8, 2010, 14:28
The S2650 boards were plugged into the Z80 cpu socket. There are a number of those as well for dkong boards. The stars enable line is decoded on the galaxian main board. I *think* it would have been an overkill to manually cut it - and it would have rendered the conversion a one way route.
Some hires pcb pictures of hunchbkg would help here.