- --
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) |
Status [?] | Resolved | Driver | |||
Version | 0.134u4 | Fixed in Version | 0.138 | Build | Normal |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 03492: hunchbkg: Does not boot | ||||
Description | hunchbkg fails to boot and makes a horrible noise out of the speakers instead. | ||||
Steps To Reproduce | |||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | 0.134u1 | ||||
Affected Sets / Systems | hunchbkg | ||||
Attached Files
|
hunchbkg-s2650-0134-0134u1.png (14,386 bytes) Mar 12, 2010, 22:33
| ||||
Relationships
There are no relationship linked to this issue. |
Notes
4
No.05863
M.A.S.H. Senior Tester
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! |
---|---|
No.06052
couriersud Developer
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. |
No.06057
Haze Senior Tester
May 8, 2010, 12:33
|
I think in some cases games enable that line, but it wasn't connected, or was rewired elsewhere... |
No.06058
couriersud Developer
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. |