.define Stil .sect .text .sect .rom .sect .data .sect .bss .sect .text ! This subroutine stores indirect a block of bytes if ! the number of bytes is greater than four. ! The destination address is in registerpair AX. ! The lowbyte of the number of bytes is in Y, ! the highbyte is in zeropage location NBYTES+1. Stil: sta ADDR+3 ! destination address (highbyte) stx ADDR+2 ! destination address (lowbyte) sty NBYTES ! number of bytes (lowbyte) clc lda SP+2 sta ADDR ! source address (lowbyte) adc NBYTES sta SP+2 ! new stackpointer (lowbyte) lda SP+1 sta ADDR+1 ! source address (highbyte) adc NBYTES+1 sta SP+1 ! new stackpointer (highbyte) inc NBYTES+1 jmp Blmnp ! do the move