[hatari-devel] Hatari asserts on video interrupts when running under monochrome

npomarede at corp.free.fr npomarede at corp.free.fr
Sun Jan 24 18:53:15 CET 2010


On Sun, 24 Jan 2010, Eero Tamminen wrote:

> Hi,
>
> On Sunday 10 January 2010, Eero Tamminen wrote:
>> While testing GEMDOS changes with latest Hatari on TOS 1.4 and monochrome
>> screen, I'm seeing frequently asserts from interrupt handling while TOS
>> is idling in GEM (usually some time after showing a dialog if that's
>> important):
>>
>> hatari: cycInt.c:377: CycInt_AddRelativeInterruptWithOffset: Assertion
>> `CycleTime >= 0' failed.
>
> Any idea about why this happens?
>
> I'm pretty sure I've only gotten it in monochrome when TOS is showing
> some dialog.  Maybe only when I've used fast forward mode (although
> I didn't see in fast forward mode anything that would affect the video
> or interrupt variables).
>

Hello,

I didn't have time to look at this (I rarely use monochrome mode) ; I will 
try to reproduce it, but if you can get a 100% reproductible case it would 
help :)


>
> 	- Eero
>
>> Program received signal SIGABRT, Aborted.
>> [Switching to Thread 0xb79ad6b0 (LWP 3913)]
>> 0xb7f7e424 in __kernel_vsyscall ()
>> (gdb) bt
>> #0  0xb7f7e424 in __kernel_vsyscall ()
>> #1  0xb7c26640 in raise () from /lib/i686/cmov/libc.so.6
>> #2  0xb7c28018 in abort () from /lib/i686/cmov/libc.so.6
>> #3  0xb7c1f5be in __assert_fail () from /lib/i686/cmov/libc.so.6
>> #4  0x08053fe6 in CycInt_AddRelativeInterruptWithOffset (CycleTime=-24,
>>     CycleType=1, Handler=INTERRUPT_VIDEO_ENDLINE, CycleOffset=0)
>>     at cycInt.c:377
>> #5  0x08054017 in CycInt_AddRelativeInterrupt (CycleTime=-24,
>> CycleType=1, Handler=INTERRUPT_VIDEO_ENDLINE) at cycInt.c:337
>> #6  0x0807e16c in Video_InterruptHandler_EndLine () at video.c:1609
>> #7  0x08087179 in m68k_go (may_quit=1) at newcpu.c:1751
>> #8  0x0806b444 in M68000_Start () at m68000.c:228
>> ...
>> (gdb) up
>> #6  0x0807e16c in Video_InterruptHandler_EndLine () at video.c:1609
>> 1609                    CycInt_AddRelativeInterrupt ( LineTimerBCycle -
>> LineCycles + nCyclesPerLine,
>> (gdb) print LineTimerBCycle
>> $1 = 188
>> (gdb) print LineCycles
>> $2 = 436
>> (gdb) print nCyclesPerLine
>> $3 = 224
>> (gdb) print LineTimerBCycle - LineCycles + nCyclesPerLine
>> $4 = -24
>>      ^^^
>>
>> Other video state:
>> (gdb) info locals
>> FrameCycles = 436
>> HblCounterVideo = 1
>> LineCycles = 436
>> PendingCycles = 24
>> (gdb) print nHBL
>> $6 = 0
>> (gdb) print nScanlinesPerFrame
>> $7 = 501
>> (gdb) print STRam[0xfffa03]
>> $10 = 4 '\004'
>> (gdb) print STRam[0xfffa03] & ( 1 << 3 )
>> $11 = 0
>
> _______________________________________________
> hatari-devel mailing list
> hatari-devel at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/hatari-devel
>



More information about the hatari-devel mailing list