I assign ZP labels to successive locations in defined ranges to avoid clashes
* = $20 atemp .byte ? xtemp .byte ? ytemp .byte ? zarray .fill 10
.segment "SONGSTATE" note: .byte 0 phrase: .byte 0 .segment "DECRUNCHPTRS" zpsp: .word 0 zpdp: .word 0 .segment "CODE" play: ldx#14 voiceloop: