.define .los .sect .text .sect .rom .sect .data .sect .bss ! d0 : # bytes ! a0 : source address .sect .text .los: move.l (sp)+,a1 move.l (sp)+,d0 move.l (sp)+,a0 cmp.l #1,d0 bne 1f clr.l d0 !1 byte move.b (a0),d0 move.l d0,-(sp) bra 3f 1: cmp.l #2,d0 bne 2f clr.l d0 !2 bytes add.l #2,a0 move.w (a0),d0 move.l d0,-(sp) bra 3f 2: add.l d0,a0 !>=4 bytes asr.l #2,d0 4: move.l -(a0),-(sp) sub.l #1,d0 bgt 4b 3: jmp (a1) .align 2