[hatari-devel] Freeze / abort in Talk2Talk 2 demo?

npomarede at corp.free.fr npomarede at corp.free.fr
Sun Aug 8 00:25:04 CEST 2010


On Tue, 27 Jul 2010, npomarede at corp.free.fr wrote:

> On Mon, 12 Jul 2010, npomarede at corp.free.fr wrote:
>
>> On Mon, 12 Jul 2010, Per Almered wrote:
>> 
>>> I can try to re-save that particular song in a newer version of
>>> maxYMiser, and if you want, I could deliver the source code for
>>> the "readme" program too, just let me know if that would help!
>>> 
>>> 
>>> Per.
>> 
>> Thanks ; I will try first to enable traces to see what I can get, I'll let 
>> you know if I see then a "strange" piece of code that could be assembled to 
>> get a standalone test case.
>> 
>> Nicolas
>> 
>
> Hi
>
> I found the cause of the problem, it's when adding a dma interrupt (for ste 
> sound) at the exact same time that another hatari's internal interrupt 
> expires. Problem is in cycInt.c, I will fix it soon, but I need to be careful 
> when modifying, as this is a very central part of the emulation.
>
> Nicolas
>

Hello,

a fix was committed. In the case when a new interrupt is added and 
PendingInterruptCount was already <0, a call to CycInt_UpdateInterrupt() 
is also made, which prevents loosing a pending interrupt (loosing an 
internal HBL interrupt in Hatari could eventually cause a crash, as seen 
in the talktalk2 demo).

Hopefully, this should not create regressions in other cases.

Nicolas




More information about the hatari-devel mailing list