sprites: we have ship sprite

This commit is contained in:
Vince Weaver 2019-06-12 13:13:57 -04:00
parent 819e29062d
commit 2df68b8bc5

View File

@ -186,9 +186,231 @@ display_loop:
;======================================================
; 4550 -- VBLANK
; 488 -- draw ship (4+32+32+32+32+32+34+34+38+36+38+36+38+36+34)
; -10 -- keypress
;=======
; 4540
; 4084
;==========================
; draw the ship
; at Y=64 for now
ldx #64 ; 2
ldy #0 ; 2
;====
; 4
; line 0
lda #0 ; 2
sta smc064+3 ; 0 ; 4
sta smc064+8 ; 1 ; 4
sta smc064+13 ; 2 ; 4
sta smc064+23 ; 4 ; 4
sta smc064+28 ; 5 ; 4
sta smc064+33 ; 6 ; 4
lda #$ff ; 2
sta smc064+18 ; 3 ; 4
;====
; 32
; line 1
lda #0 ; 2
sta smc065+3 ; 0 ; 4
sta smc065+8 ; 1 ; 4
sta smc065+13 ; 2 ; 4
sta smc065+23 ; 4 ; 4
sta smc065+28 ; 5 ; 4
sta smc065+33 ; 6 ; 4
lda #$ff ; 2
sta smc065+18 ; 3 ; 4
;====
; 32
; line 2
lda #0 ; 2
sta smc066+3 ; 0 ; 4
sta smc066+8 ; 1 ; 4
sta smc066+13 ; 2 ; 4
sta smc066+23 ; 4 ; 4
sta smc066+28 ; 5 ; 4
sta smc066+33 ; 6 ; 4
lda #$ff ; 2
sta smc066+18 ; 3 ; 4
;====
; 32
; line 3
lda #0 ; 2
sta smc067+3 ; 0 ; 4
sta smc067+8 ; 1 ; 4
sta smc067+13 ; 2 ; 4
sta smc067+23 ; 4 ; 4
sta smc067+28 ; 5 ; 4
sta smc067+33 ; 6 ; 4
lda #$ff ; 2
sta smc067+18 ; 3 ; 4
;=====
; 32
; line 4
lda #0 ; 2
sta smc068+3 ; 0 ; 4
sta smc068+8 ; 1 ; 4
sta smc068+13 ; 2 ; 4
sta smc068+23 ; 4 ; 4
sta smc068+28 ; 5 ; 4
sta smc068+33 ; 6 ; 4
lda #$77 ; 2
sta smc068+18 ; 3 ; 4
;====
; 32
;.if 0
; line 5
lda #0 ; 2
sta smc069+3 ; 0 ; 4
sta smc069+8 ; 1 ; 4
sta smc069+13 ; 2 ; 4
sta smc069+33 ; 6 ; 4
lda #$ff ; 2
sta smc069+18 ; 3 ; 4
sta smc069+23 ; 4 ; 4
lda #$22 ; 2
sta smc069+28 ; 5 ; 4
;=====
; 34
; line 6
lda #0 ; 2
sta smc070+3 ; 0 ; 4
sta smc070+8 ; 1 ; 4
sta smc070+33 ; 6 ; 4
lda #$ff ; 2
sta smc070+18 ; 3 ; 4
sta smc070+23 ; 4 ; 4
lda #$22 ; 2
sta smc070+13 ; 2 ; 4
sta smc070+28 ; 5 ; 4
;====
; 34
; line 7
lda #0 ; 2
sta smc071+3 ; 0 ; 4
sta smc071+33 ; 6 ; 4
lda #$dd ; 2
sta smc071+8 ; 1 ; 4
lda #$66 ; 2
sta smc071+13 ; 2 ; 4
lda #$11 ; 2
sta smc071+18 ; 3 ; 4
lda #$22 ; 2
sta smc071+23 ; 4 ; 4
sta smc071+28 ; 5 ; 4
;====
; 38
; line 8
lda #$dd ; 2
sta smc072+3 ; 0 ; 4
lda #$99 ; 2
sta smc072+8 ; 1 ; 4
lda #$22 ; 2
sta smc072+13 ; 2 ; 4
sta smc072+28 ; 5 ; 4
sta smc072+33 ; 6 ; 4
lda #$44 ; 2
sta smc072+18 ; 3 ; 4
sta smc072+23 ; 4 ; 4
;====
; 36
; line 9
lda #$99 ; 2
sta smc073+3 ; 0 ; 4
lda #$11 ; 2
sta smc073+8 ; 1 ; 4
lda #$66 ; 2
sta smc073+13 ; 2 ; 4
lda #$ff ; 2
sta smc073+18 ; 3 ; 4
sta smc073+23 ; 4 ; 4
lda #$22 ; 2
sta smc073+28 ; 5 ; 4
sta smc073+33 ; 6 ; 4
;====
; 38
; line 10
lda #$dd ; 2
sta smc074+3 ; 0 ; 4
lda #$99 ; 2
sta smc074+8 ; 1 ; 4
lda #$22 ; 2
sta smc074+13 ; 2 ; 4
sta smc074+28 ; 5 ; 4
sta smc074+33 ; 6 ; 4
lda #$ff ; 2
sta smc074+18 ; 3 ; 4
sta smc074+23 ; 4 ; 4
;====
; 36
; line 11
lda #0 ; 2
sta smc075+3 ; 0 ; 4
lda #$dd ; 2
sta smc075+8 ; 1 ; 4
lda #$66 ; 2
sta smc075+13 ; 2 ; 4
lda #$77 ; 2
sta smc075+18 ; 3 ; 4
sta smc075+23 ; 4 ; 4
sta smc075+28 ; 5 ; 4
lda #$ff ; 2
sta smc075+33 ; 6 ; 4
;====
; 38
; line 12
lda #0 ; 2
sta smc076+3 ; 0 ; 4
sta smc076+8 ; 1 ; 4
lda #$22 ; 2
sta smc076+13 ; 2 ; 4
lda #$ff ; 2
sta smc076+18 ; 3 ; 4
sta smc076+23 ; 4 ; 4
sta smc076+33 ; 6 ; 4
lda #$77 ; 2
sta smc076+28 ; 5 ; 4
;====
; 36
; line 13
lda #0 ; 2
sta smc077+3 ; 0 ; 4
sta smc077+8 ; 1 ; 4
sta smc077+13 ; 2 ; 4
lda #$ff ; 2
sta smc077+18 ; 3 ; 4
sta smc077+23 ; 4 ; 4
sta smc077+33 ; 6 ; 4
lda #$77 ; 2
sta smc077+28 ; 5 ; 4
;====
; 34
;.endif
pad_time:
@ -197,11 +419,13 @@ pad_time:
; WAIT for VBLANK to finish
;============================
; Try X=9 Y=89 cycles=4540
; Try X=13 Y=57 cycles=4048 R4
nop
nop
ldy #89 ; 2
loop1: ldx #9 ; 2
ldy #57 ; 2
loop1: ldx #13 ; 2
loop2: dex ; 2
bne loop2 ; 2nt/3
dey ; 2
@ -216,72 +440,6 @@ no_keypress:
jmp display_loop ; 3
;========================
; Draw a rasterbar
; unroll as memory is free! haha
;========================
; X is location
; 2+22+24+24+24+24+6 = 126
draw_rasterbar:
ldy #0 ; 2
;====
lda y_lookup_l,X ; 4
sta OUTL ; 3
lda y_lookup_h,X ; 4
sta OUTH ; 3
smc_raster_color1_1:
lda #$33 ; 2
sta (OUTL),Y ; 6
;============
; 22
inx ; 2
lda y_lookup_l,X ; 4
sta OUTL ; 3
lda y_lookup_h,X ; 4
sta OUTH ; 3
smc_raster_color2_1:
lda #$bb ; 2
sta (OUTL),Y ; 6
inx ; 2
lda y_lookup_l,X ; 4
sta OUTL ; 3
lda y_lookup_h,X ; 4
sta OUTH ; 3
smc_raster_color3_1:
lda #$ff ; 2
sta (OUTL),Y ; 6
inx
lda y_lookup_l,X ; 4
sta OUTL ; 3
lda y_lookup_h,X ; 4
sta OUTH ; 3
smc_raster_color2_2:
lda #$bb ; 2
sta (OUTL),Y ; 6
inx
lda y_lookup_l,X ; 4
sta OUTL ; 3
lda y_lookup_h,X ; 4
sta OUTH ; 3
smc_raster_color1_2:
lda #$33 ; 2
sta (OUTL),Y ; 6
rts ; 6