Hi, > > This is the loop: > > $012b46 : 7a41 moveq #$41,d5 > $012b48 : b3ca cmpa.l a2,a1 > $012b4a : 6dfa blt.s $12b46 > $012b4c : 4e75 rts > > registerdump: > > D0: 00016a4c D1: 0002d9de D2: 00006a40 D3: 00000032 > D4: 00000000 D5: 00000041 D6: 00000000 D7: 000f6b8c > A0: 00029ae6 A1: 00012b48 A2: 00016a40 A3: 0000fffc > A4: 000003ec A5: 000003f0 A6: 00012b40 A7: 000003cc > USP=000f7ff2 ISP=000003cc MSP=00000000 VBR=00000000 > > >> Ok, this is definitely wrong.
I very strongly suspect that this is part of smsq_atari_hwinit_asm, which should however go : at_mdloop move.w (a0)+,(a1)+ (NOT moveq #$41,d5) cmpa.l a2,a1 blt.s at_mdlopp rts You can check this, hopefully, by checking whether a few bytes before these instructions you find the string "Use sprite for cursor". If this is really there, then somehow the instructions get corrupted, making the move.w (a0)+,(a1)+ into a moveq. Could you disassemble the code as of the address contained in A6, which is a few bytes before the loop? Is there really no way you can insert a breakpoint into the code which would call up your debugger? Wolfgang _______________________________________________ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm