Re: [hatari-devel] problems in b/w mode

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Hi,

On sunnuntai 08 tammikuu 2012, Thomas Huth wrote:
> > However, TOSv4 still asserts at boot:
> > ----
> > $ hatari -m --machine falcon --tos tos404.img
> > ...
> > hatari: /home/eero/work/hatari/src/video.c:2788:
> > Video_StartInterrupts: Assertion `CyclesPerVBL <= 8012800/49' failed.
> > Aborted
> 
> When did you update your source tree? I noticed a problem in Falcon
> mode, too, and updated it ca. 3h ago. Now it's working fine for me in
> Falcon mode, too.

Doesn't work for me, even with "make clean & make".

Gdb tells:
hatari: /home/eero/work/hatari/src/video.c:2788: Video_StartInterrupts: 
Assertion `CyclesPerVBL <= 8012800/49' failed.

Program received signal SIGABRT, Aborted.
0xb7fe2424 in __kernel_vsyscall ()
(gdb) bt
#0  0xb7fe2424 in __kernel_vsyscall ()
#1  0xb7bfb751 in *__GI_raise (sig=6) at 
.../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7bfeb82 in *__GI_abort () at abort.c:92
#3  0xb7bf48b8 in *__GI___assert_fail (assertion=0x8215953 "CyclesPerVBL <= 
8012800/49", file=0x8215f54 "/home/eero/work/hatari/src/video.c", line=2788, 
    function=0x8215b26 "Video_StartInterrupts") at assert.c:81
#4  0x080d4582 in Video_StartInterrupts (PendingCyclesOver=10) at 
/home/eero/work/hatari/src/video.c:2788
#5  0x080d47f0 in Video_InterruptHandler_VBL () at 
/home/eero/work/hatari/src/video.c:2842
#6  0x08113a81 in m68k_run_1 (may_quit=1) at /home/eero/work/hatari/src/uae-
cpu/newcpu.c:1776
#7  m68k_go (may_quit=1) at /home/eero/work/hatari/src/uae-cpu/newcpu.c:1872
#8  0x080b7b34 in M68000_Start () at /home/eero/work/hatari/src/m68000.c:246
#9  0x080b895e in main (argc=6, argv=0xbffff324) at 
/home/eero/work/hatari/src/main.c:782

(gdb) up 4
#4  0x080d4582 in Video_StartInterrupts (PendingCyclesOver=10) at 
/home/eero/work/hatari/src/video.c:2788
2788            assert(CyclesPerVBL <= CPU_FREQ/49);
(gdb) info locals
FrameCycles = 78
HblCounterVideo = 0
LineCycles = <value optimized out>
Pos = 4681
__PRETTY_FUNCTION__ = "Video_StartInterrupts"
(gdb) print 8012800/49
$3 = 163526
(gdb) print CyclesPerVBL
$4 = 254508

(gdb) list
2785            /* TODO replace CYCLES_PER_FRAME */
2786            CyclesPerVBL = CYCLES_PER_FRAME;
2787            /* Note: Refresh rate less than 50 Hz does not make sense! 
*/
2788            assert(CyclesPerVBL <= CPU_FREQ/49);
>>> CYCLES_PER_FRAME is:
(gdb) print nScanlinesPerFrame*nCyclesPerLine
$11 = 254508
(gdb) print nScanlinesPerFrame
$13 = 501
(gdb) print nCyclesPerLine
$14 = 508

Which of the above values is wrong?


Btw. Why clocks_timings.c has global and video.c a local version of
CyclesPerVBL?

clock_timings.c default for CyclesPerVBL is also > 8012800/49:
(gdb) print MachineClocks.CPU_Freq / nScreenRefreshRate
$6 = 225950



	- Eero



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/