mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-30 12:34:36 +00:00
megademo: spacebars auto-drive
This commit is contained in:
parent
8aa31b7d47
commit
8ec257cde9
@ -33,6 +33,7 @@
|
|||||||
30378 -- update the e-mail text
|
30378 -- update the e-mail text
|
||||||
30633 -- with all the music added in
|
30633 -- with all the music added in
|
||||||
31323 -- finish takeoff
|
31323 -- finish takeoff
|
||||||
|
31607 -- space-bars auto-driving
|
||||||
|
|
||||||
Further ideas to reduce:
|
Further ideas to reduce:
|
||||||
+ Optimize all the .align calls
|
+ Optimize all the .align calls
|
||||||
|
@ -44,7 +44,7 @@ apple_iie:
|
|||||||
;===================
|
;===================
|
||||||
jsr HOME
|
jsr HOME
|
||||||
|
|
||||||
; jsr mode7_flying
|
; jsr space_bars
|
||||||
|
|
||||||
; C64 Opening Sequence
|
; C64 Opening Sequence
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ shadow_left:
|
|||||||
.byte $aa,$00,$a0
|
.byte $aa,$00,$a0
|
||||||
.byte $a0,$0a,$00
|
.byte $a0,$0a,$00
|
||||||
|
|
||||||
.align 100
|
.align $100
|
||||||
|
|
||||||
.assert >ship_forward = >ship_forward_end, error, "ship_forward crosses page"
|
.assert >ship_forward = >ship_forward_end, error, "ship_forward crosses page"
|
||||||
|
|
||||||
|
@ -272,13 +272,29 @@ sbloopF:dex ; 2
|
|||||||
; -3470 draw_framebuffer
|
; -3470 draw_framebuffer
|
||||||
; -533 setup framebuffer
|
; -533 setup framebuffer
|
||||||
; -21 frame count
|
; -21 frame count
|
||||||
|
; -16 auto-move
|
||||||
; -7 timeout
|
; -7 timeout
|
||||||
; -34 keypress
|
; -34 keypress
|
||||||
; -1 adjust center mark back
|
; -1 adjust center mark back
|
||||||
; ===========
|
; ===========
|
||||||
; 484
|
; 468
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;====================
|
||||||
|
; Auto-move ship
|
||||||
|
;====================
|
||||||
|
; look it up in lookup table?
|
||||||
|
|
||||||
|
lda FRAMEH ; 3
|
||||||
|
lsr ; 2
|
||||||
|
and #$1f ; 2
|
||||||
|
tax ; 2
|
||||||
|
lda sb_x_lookup,X ; 4
|
||||||
|
sta XPOS ; 3
|
||||||
|
;=======
|
||||||
|
; 16
|
||||||
|
|
||||||
;=====================
|
;=====================
|
||||||
; timeout
|
; timeout
|
||||||
;=====================
|
;=====================
|
||||||
@ -290,9 +306,12 @@ sbloopF:dex ; 2
|
|||||||
|
|
||||||
; Try X=11 Y=8 cycles=489 R2
|
; Try X=11 Y=8 cycles=489 R2
|
||||||
; Try X=31 Y=3 cycles=484
|
; Try X=31 Y=3 cycles=484
|
||||||
|
; Try X=22 Y=4 cycles=465 R3
|
||||||
|
|
||||||
ldy #3 ; 2
|
lda $0
|
||||||
sbloop1:ldx #31 ; 2
|
|
||||||
|
ldy #4 ; 2
|
||||||
|
sbloop1:ldx #22 ; 2
|
||||||
sbloop2:dex ; 2
|
sbloop2:dex ; 2
|
||||||
bne sbloop2 ; 2nt/3
|
bne sbloop2 ; 2nt/3
|
||||||
dey ; 2
|
dey ; 2
|
||||||
@ -512,6 +531,10 @@ offset_lookup:
|
|||||||
|
|
||||||
.byte 29,24,20,16,13,10,8,6,4,3,2,1,0,0
|
.byte 29,24,20,16,13,10,8,6,4,3,2,1,0,0
|
||||||
|
|
||||||
|
sb_x_lookup:
|
||||||
|
.byte 15,14,13,12,11,10, 9, 8, 8, 9,10,11,12,13,14,15
|
||||||
|
.byte 15,16,17,18,19,20,21,22, 22,21,20,19,18,17,16,15
|
||||||
|
|
||||||
;.align $100
|
;.align $100
|
||||||
|
|
||||||
; 2 + 40*13 + 5 = 527
|
; 2 + 40*13 + 5 = 527
|
||||||
|
Loading…
x
Reference in New Issue
Block a user