[hatari-devel] Bootup differences

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


Hi,

I'm seeing differences in profiles of successive, identical
EmuTOS boots with Hatari.  Profile is from Hatari start until
EmuTOS desktop first calls evnt_multi().

I'm running Hatari with:
--fastfdc off --rtc off --timer-d off --fast-forward yes --sound off


I'm assuming that the differences are due to differences when
interrupts happen, because I'm seeing differences in cycles that
certain instructions, for example:
 $e0026a :  moveq     #0,d0                      0.00% (7, 28, 0)
-$e0026c :  move.b    $fffffc00.w,d1             0.00% (7, 152, 0)
+$e0026c :  move.b    $fffffc00.w,d1             0.00% (7, 144, 0)
 $e00270 :  move.b    d1,d0                      0.00% (7, 28, 0)

There are also places where some things are run slightly
different number of times, but I think all of them are also
somehow related to interrupt handling, for example:
 _ikbd_writeb:
 $e06a9e :  move.l    a2,-(sp)                   0.00% (26, 312, 0)
 $e06aa0 :  move.l    d2,-(sp)                   0.00% (26, 312, 0)
 $e06aa2 :  move.b    $d(sp),d2                  0.00% (26, 312, 0)
 $e06aa6 :  lea       $e06a8e(pc),a2             0.00% (26, 208, 0)
-$e06aaa :  jsr       (a2)                       0.04% (1540, 24640, 0)
-$e06aac :  tst.l     d0                         0.04% (1540, 6216, 0)
-$e06aae :  beq.s     $e06aaa                    0.04% (1540, 18376, 0)
+$e06aaa :  jsr       (a2)                       0.04% (1541, 24656, 0)
+$e06aac :  tst.l     d0                         0.04% (1541, 6220, 0)
+$e06aae :  beq.s     $e06aaa                    0.04% (1541, 18388, 0)
 $e06ab0 :  move.b    d2,$fffffc02.w             0.00% (26, 624, 0)
 $e06ab4 :  move.l    (sp)+,d2                   0.00% (26, 312, 0)
 $e06ab6 :  movea.l   (sp)+,a2                   0.00% (26, 312, 0)
@@ -3270,7 +3270,7 @@
 $e06ad8 :  tst.w     d2                         0.00% (18, 72, 0)
 $e06ada :  bge.s     $e06acc                    0.00% (18, 204, 0)
 $e06adc :  movem.l   (sp)+,d2/a2-a3             0.00% (3, 108, 0)
-$e06ae0 :  rts                                  0.00% (3, 104, 0)
+$e06ae0 :  rts                                  0.00% (3, 48, 0)
                                                     ---^   ^----

I was assuming that host clock could through RTC affect when interrupts
start ticking, but disabling that didn't help.

Nicolas, what else could be causing differences between successive
TOS bootups?

(This isn't a new problem, it happens also with e.g. Hatari v1.6.2.)


	- Eero



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