; software sprites ; by PJP loop: ldx $90 inx stx $90 lda #4 ; *** NUMBER OF SPRITES sta $3 lda #0 sta $4 multiple: lda $90 clc adc $4 tax lda sinus,x ldy cosinus,x asl tax lda ypos,x sta $00 inx lda ypos,x sta $01 ldx #0 lda #5 ; **** HEIGHT OF EACH SPRITE sta $2 draw: lda image,x sta ($0),y inx iny lda image,x sta ($0),y inx iny lda image,x sta ($0),y inx iny lda image,x sta ($0),y inx iny lda image,x sta ($0),y tya clc adc #28 tay inx dec $2 bne draw lda $4 clc adc #18 ; *** DISTANCE BETWEEN SPRITES (FROM TABLE) sta $4 dec $3 bne multiple jmp loop ; SINUS (AND COSINUS) sinus: dcb $0e, $0e, $0e, $0f, $0f, $0f, $10, $10, $10, $11 dcb $11, $11, $12, $12, $12, $13, $13, $13, $14, $14 dcb $14, $14, $15, $15, $15, $16, $16, $16, $16, $17 dcb $17, $17, $17, $18, $18, $18, $18, $19, $19, $19 dcb $19, $19, $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1b dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b cosinus: dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b dcb $1a, $1a, $1a, $1a, $1a, $1a, $19, $19, $19, $19 dcb $19, $18, $18, $18, $18, $18, $17, $17, $17, $17 dcb $16, $16, $16, $15, $15, $15, $15, $14, $14, $14 dcb $13, $13, $13, $12, $12, $12, $11, $11, $11, $10 dcb $10, $10, $0f, $0f, $0f, $0e, $0e, $0e, $0d, $0d dcb $0d, $0c, $0c, $0c, $0b, $0b, $0b, $0a, $0a, $0a dcb $09, $09, $09, $08, $08, $08, $07, $07, $07, $06 dcb $06, $06, $06, $05, $05, $05, $04, $04, $04, $04 dcb $03, $03, $03, $03, $03, $02, $02, $02, $02, $02 dcb $01, $01, $01, $01, $01, $01, $00, $00, $00, $00 dcb $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 dcb $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 dcb $00, $00, $00, $00, $00, $00, $00, $01, $01, $01 dcb $01, $01, $01, $01, $02, $02, $02, $02, $02, $03 dcb $03, $03, $03, $04, $04, $04, $04, $05, $05, $05 dcb $05, $06, $06, $06, $07, $07, $07, $07, $08, $08 dcb $08, $09, $09, $09, $0a, $0a, $0a, $0b, $0b, $0b dcb $0c, $0c, $0c, $0d, $0d dcb $0e, $0e, $0e, $0f, $0f, $0f, $10, $10, $10, $11 dcb $11, $11, $12, $12, $12, $13, $13, $13, $14, $14 dcb $14, $14, $15, $15, $15, $16, $16, $16, $16, $17 dcb $17, $17, $17, $18, $18, $18, $18, $19, $19, $19 dcb $19, $19, $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1b dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b dcb $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b dcb $1a, $1a, $1a, $1a, $1a, $1a, $19, $19, $19, $19 ; 5x5 BYTES image: dcb $0,$0,$0,$0,$0 dcb $0,$c,$c,$c,$0 dcb $0,$c,$1,$c,$0 dcb $0,$c,$c,$c,$0 dcb $0,$0,$0,$0,$0 ; YPOS LOOKUP TABLE ypos: dcb $00,$02,$20,$02,$40,$02,$60,$02 dcb $80,$02,$a0,$02,$c0,$02,$e0,$02 dcb $00,$03,$20,$03,$40,$03,$60,$03 dcb $80,$03,$a0,$03,$c0,$03,$e0,$03 dcb $00,$04,$20,$04,$40,$04,$60,$04 dcb $80,$04,$a0,$04,$c0,$04,$e0,$04 dcb $00,$05,$20,$05,$40,$05,$60,$05 dcb $80,$05,$a0,$05,$c0,$05,$e0,$05