Re: [hatari-devel] Reeking rumber analysis

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


Am Sun, 08 Sep 2013 23:33:01 +0200
schrieb Laurent Sallafranque <laurent.sallafranque@xxxxxxx>:

> Hi,
> 
> I've given a closer look at reeking rumber :
[...]
> $0707a0 : 2811                                 move.l    (a1),d4
> $0707a2 : 2612                                 move.l    (a2),d3
> $0707a4 : b803                                 cmp.b     d3,d4
>  >
> $0707a6 : 6706                                 beq.s     $707ae
> $0707a8 : 6202                                 bhi.s     $707ac
> $0707aa : 5103                                 subq.b    #8,d3
> $0707ac : 5803                                 addq.b    #4,d3
> $0707ae : e19b                                 rol.l     #8,d3
> $0707b0 : e19c                                 rol.l     #8,d4
> $0707b2 : b803                                 cmp.b     d3,d4
> $0707b4 : 6706                                 beq.s     $707bc
>  >
> $0707b6 : 6202                                 bhi.s     $707ba
> $0707b8 : 5103                                 subq.b    #8,d3
> $0707ba : 5803                                 addq.b    #4,d3
> $0707bc : e19b                                 rol.l     #8,d3
> $0707be : e19c                                 rol.l     #8,d4
> $0707c0 : b803                                 cmp.b     d3,d4
> $0707c2 : 6706                                 beq.s     $707ca
> $0707c4 : 6202                                 bhi.s     $707c8
>  >
> $0707c6 : 5103                                 subq.b    #8,d3
> $0707c8 : 5803                                 addq.b    #4,d3
> $0707ca : 4843                                 swap      d3
> $0707cc : b699                                 cmp.l     (a1)+,d3
> $0707ce : 6702                                 beq.s     $707d2
> $0707d0 : 7a01                                 moveq     #1,d5
> $0707d2 : 24c3                                 move.l    d3,(a2)+
> $0707d4 : 51ce ffca                            dbra      d6,$707a0
>  >
> $0707d8 : 4a85                                 tst.l     d5             
>              <------- Here is the the test that never goes throw with hatari
> $0707da : 6680                                 bne.s     $7075c
> $0707dc : 4cdf 07ff                            movem.l (sp)+,d0-d7/a0-a2
> $0707e0 : 4e75                                 rts
> 
> 
> At least, the game runs under hatari except for this infinite loop that 
> never finishs because of this d5 register.
> 
> May this gives some ideas to somebody.

As far as I can see, d5 is never set back to 0 in this loop ... that
could mean that it is supposed to be changed by an interrupt handler
instead. Have you checked the usual suspects? VBL? HBL? Timer-B?

 Thomas



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