[hatari-devel] 2 little more questions

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


Hi,

In complement, I've noticed these 2 little differences :

NewCPU

00E01424 0838 0005 fa0b           BTST.B #$0005,$fffffa0b
00E0142A 67f8                     BEQ.B #$fffffffffffffff8 == $00E01424 (T)
00E01424 0838 0005 fa0b           BTST.B #$0005,$fffffa0b
00E0142A 67f8                     BEQ.B #$fffffffffffffff8 == $00E01424 (T)
00E01424 0838 0005 fa0b           BTST.B #$0005,$fffffa0b
00E0142A 67f8                     BEQ.B #$fffffffffffffff8 == $00E01424 (F)
00E0142C 4238 fa19                CLR.B $fffffa19
00E01430 4e75                     RTS.L

OldCpu

$e01424 : 0838 0005 fa0b                       btst      #5,$fffffa0b.w
$e0142a : 67f8                                 beq.s     $e01424
$e01424 : 0838 0005 fa0b                       btst      #5,$fffffa0b.w
$e0142a : 67f8                                 beq.s     $e01424
$e01424 : 0838 0005 fa0b                       btst      #5,$fffffa0b.w
$e0142a : 67f8                                 beq.s     $e01424
$e01424 : 0838 0005 fa0b                       btst      #5,$fffffa0b.w
$e0142a : 67f8                                 beq.s     $e01424
$e0142c : 4238 fa19                            clr.b     $fffffa19.w
$e01430 : 4e75                                 rts


OldCpu tests once more the address $fffffa0b.w than the newCPU.

This happens at the instruction 677 025 after the boot of hatari.
(So the first 677 024 first instructions are identical (the loops included).

It's the first time that the 2 CPUs are doing different things.
(May it be only because of different CPU timings ?)



Last difference, at instruction 677 437:

NewCPU:

00E02CD6 21fc 00e0 2ce6 0008      MOVE.L #$00e02ce6,$00000008
00E02CDE 4a38 8e09                TST.B $ffff8e09
M68000 Bus Error reading at address $ff8e09.
00E02CE6 2e49                     MOVEA.L A1,A7
00E02CE8 21ca 0008                MOVE.L A2,$00000008


OldCPU:

$e02cd6 : 21fc 00e0 2ce6 0008                  move.l    #$e02ce6,$0008.w
$e02cde : 4a38 8e09                            tst.b     $ffff8e09.w
$e02ce6 : 2e49                                 movea.l   a1,sp
$e02ce8 : 21ca 0008                            move.l    a2,$0008.w


I haven't got the address error with the old CPU.

Any idea why it doesn't display illegal address with the old CPU ?


In hardware.txt, it's written: $FF8E09|byte |General purpose register - does nothing |R/W (TT)

Regards

Laurent




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