mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-27 02:31:00 +00:00
ds: no longer a physicist, now an astronaut
This commit is contained in:
parent
0e71b8bccd
commit
88b6b337fd
@ -32,6 +32,7 @@ demosplash.o: demosplash.s \
|
||||
pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \
|
||||
interrupt_handler.s \
|
||||
starbase.s starbase_action.s \
|
||||
graphics/sprites/alien.inc graphics/sprites/astronaut.inc \
|
||||
dya_space_demo.pt3 appleII_40_96.inc
|
||||
ca65 -o demosplash.o demosplash.s -l demosplash.lst
|
||||
|
||||
|
600
demosplash/graphics/sprites/alien.inc
Normal file
600
demosplash/graphics/sprites/alien.inc
Normal file
@ -0,0 +1,600 @@
|
||||
; note, for some reason these are all facing left
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; STANDING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
;====================
|
||||
; Going Left
|
||||
|
||||
alien_stand:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$10,$77,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$a5,$5a
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$0a,$00,$0a,$00
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; WALKING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_walk_progression:
|
||||
.word alien_walk_left1
|
||||
.word alien_walk_left2
|
||||
.word alien_walk_left3
|
||||
.word alien_walk_left4
|
||||
.word alien_walk_left5
|
||||
.word alien_walk_left6
|
||||
.word alien_walk_left7
|
||||
.word alien_walk_left8
|
||||
|
||||
|
||||
|
||||
|
||||
alien_walk_left1:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$5a,$00,$77,$aa
|
||||
.byte $aa,$55,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$77,$a5,$5a
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$a0,$00,$0a,$00
|
||||
|
||||
alien_walk_left2:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$5a,$77,$17,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_walk_left3:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$00,$0a
|
||||
.byte $aa,$0a,$00,$aa,$a0
|
||||
|
||||
alien_walk_left4:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$05,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
alien_walk_left5:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$5a,$55,$77,$aa
|
||||
.byte $aa,$00,$a7,$07,$aa
|
||||
.byte $a0,$a0,$0a,$00,$aa
|
||||
|
||||
alien_walk_left6:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$17,$5a
|
||||
.byte $aa,$aa,$07,$00,$a5
|
||||
.byte $aa,$5a,$55,$77,$7a
|
||||
.byte $aa,$05,$aa,$aa,$07
|
||||
.byte $a0,$a0,$aa,$0a,$00
|
||||
|
||||
alien_walk_left7:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$57,$77,$aa
|
||||
.byte $aa,$aa,$05,$a7,$07
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_walk_left8:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$5a,$10,$77,$7a
|
||||
.byte $aa,$a5,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$aa,$00,$00,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; WALKING with gun
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_walk_gun_progression:
|
||||
.word alien_walk_gun_left1
|
||||
.word alien_walk_gun_left2
|
||||
.word alien_walk_gun_left3
|
||||
.word alien_walk_gun_left4
|
||||
.word alien_walk_gun_left5
|
||||
.word alien_walk_gun_left6
|
||||
.word alien_walk_gun_left7
|
||||
.word alien_walk_gun_left8
|
||||
|
||||
|
||||
alien_walk_gun_left1:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $a0,$5a,$00,$77,$aa
|
||||
.byte $aa,$aa,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$77,$a5,$5a
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$a0,$00,$0a,$00
|
||||
|
||||
alien_walk_gun_left2:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$5a,$77,$17,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_walk_gun_left3:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a5,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$00,$0a
|
||||
.byte $aa,$0a,$00,$aa,$a0
|
||||
|
||||
alien_walk_gun_left4:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$a5,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$05,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
alien_walk_gun_left5:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $a0,$5a,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$5a,$55,$77,$aa
|
||||
.byte $aa,$00,$a7,$07,$aa
|
||||
.byte $a0,$a0,$0a,$00,$aa
|
||||
|
||||
alien_walk_gun_left6:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $a0,$5a,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$17,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$5a,$55,$77,$7a
|
||||
.byte $aa,$05,$aa,$aa,$07
|
||||
.byte $a0,$a0,$aa,$0a,$00
|
||||
|
||||
alien_walk_gun_left7:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$a5,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$57,$77,$aa
|
||||
.byte $aa,$aa,$05,$a7,$07
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_walk_gun_left8:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$a5,$10,$77,$7a
|
||||
.byte $aa,$aa,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$aa,$00,$00,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; RUNNING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_run_progression:
|
||||
.word alien_run_left1
|
||||
.word alien_run_left2
|
||||
.word alien_run_left3
|
||||
.word alien_run_left4
|
||||
.word alien_run_left5
|
||||
.word alien_run_left6
|
||||
.word alien_run_left7
|
||||
.word alien_run_left8
|
||||
|
||||
alien_run_left1:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$5a,$00,$77,$aa
|
||||
.byte $aa,$55,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$77,$a5,$5a
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$a0,$00,$0a,$00
|
||||
|
||||
alien_run_left2:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$5a,$77,$17,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_run_left3:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$aa,$07,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$00,$0a
|
||||
.byte $aa,$0a,$00,$aa,$a0
|
||||
|
||||
alien_run_left4:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$aa,$77,$55,$aa
|
||||
.byte $aa,$aa,$07,$05,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
alien_run_left5:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$10,$aa
|
||||
.byte $aa,$a7,$00,$00,$aa
|
||||
.byte $aa,$5a,$55,$77,$aa
|
||||
.byte $aa,$00,$a7,$07,$aa
|
||||
.byte $a0,$a0,$0a,$00,$aa
|
||||
|
||||
alien_run_left6:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$77,$17,$5a
|
||||
.byte $aa,$aa,$07,$00,$a5
|
||||
.byte $aa,$5a,$55,$77,$7a
|
||||
.byte $aa,$05,$aa,$aa,$07
|
||||
.byte $a0,$a0,$aa,$0a,$00
|
||||
|
||||
alien_run_left7:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$aa,$10,$77,$aa
|
||||
.byte $aa,$aa,$00,$07,$aa
|
||||
.byte $aa,$aa,$57,$77,$aa
|
||||
.byte $aa,$aa,$05,$a7,$07
|
||||
.byte $aa,$0a,$00,$00,$a0
|
||||
|
||||
alien_run_left8:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $aa,$aa,$00,$77,$aa
|
||||
.byte $aa,$5a,$10,$77,$7a
|
||||
.byte $aa,$a5,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$aa,$00,$00,$aa
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; JUMPING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; CROUCHING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_crouch_progression:
|
||||
.word alien_crouch1
|
||||
.word alien_crouch2
|
||||
|
||||
alien_crouch1:
|
||||
.byte $5,$8
|
||||
.byte $AA,$AA,$AA,$AA,$AA
|
||||
.byte $AA,$7A,$f7,$7f,$aa
|
||||
.byte $AA,$77,$07,$00,$aa
|
||||
.byte $AA,$AA,$00,$77,$aa
|
||||
.byte $AA,$A7,$17,$07,$aa
|
||||
.byte $AA,$AA,$70,$70,$aa
|
||||
.byte $AA,$AA,$07,$05,$0a
|
||||
.byte $AA,$0A,$00,$AA,$00
|
||||
|
||||
|
||||
alien_crouch2:
|
||||
.byte $5,$8
|
||||
.byte $AA,$AA,$AA,$AA,$AA
|
||||
.byte $AA,$AA,$7A,$fA,$aa
|
||||
.byte $AA,$77,$7f,$07,$aa
|
||||
.byte $AA,$A7,$00,$70,$aa
|
||||
.byte $AA,$7A,$70,$07,$aa
|
||||
.byte $AA,$AA,$70,$70,$aa
|
||||
.byte $AA,$AA,$07,$55,$0a
|
||||
.byte $AA,$0A,$00,$0A,$00
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; TURNING
|
||||
;=====================
|
||||
;=====================
|
||||
alien_turning_sprite:
|
||||
.byte $5,$8
|
||||
.byte $aa,$57,$77,$aa,$aa
|
||||
.byte $0a,$05,$00,$0a,$aa
|
||||
.byte $77,$00,$00,$55,$aa
|
||||
.byte $77,$00,$00,$55,$aa
|
||||
.byte $aa,$00,$00,$a5,$aa
|
||||
.byte $aa,$77,$55,$aa,$aa
|
||||
.byte $07,$aa,$05,$aa,$aa
|
||||
.byte $00,$aa,$00,$aa,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; YELLING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_yell_progression:
|
||||
.word alien_yelling_1
|
||||
.word alien_yelling_2
|
||||
|
||||
alien_yelling_1:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $0a,$a7,$07,$00,$aa
|
||||
.byte $00,$aa,$00,$77,$aa
|
||||
.byte $aa,$55,$10,$77,$7a
|
||||
.byte $aa,$aa,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
alien_yelling_2:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $00,$77,$07,$00,$aa
|
||||
.byte $0a,$5a,$00,$77,$aa
|
||||
.byte $aa,$a5,$10,$77,$7a
|
||||
.byte $aa,$aa,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; SHOOTING UPWARD
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_shoot_up_progression:
|
||||
.word alien_shooting_up_sprite
|
||||
.word alien_shooting_up_sprite
|
||||
.word alien_yelling_1
|
||||
.word alien_yelling_2
|
||||
|
||||
alien_shooting_up_sprite:
|
||||
.byte $5,$8
|
||||
.byte $00,$7a,$f7,$7f,$aa
|
||||
.byte $00,$77,$07,$00,$aa
|
||||
.byte $55,$aa,$00,$77,$aa
|
||||
.byte $aa,$55,$10,$77,$7a
|
||||
.byte $aa,$aa,$00,$00,$a7
|
||||
.byte $aa,$aa,$55,$77,$aa
|
||||
.byte $aa,$aa,$a5,$07,$aa
|
||||
.byte $aa,$0a,$00,$00,$aa
|
||||
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; DISINTEGRATING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_disintegrating_progression:
|
||||
.word alien_disintegrating_2 ; 0
|
||||
.word alien_disintegrating_3 ; 1
|
||||
.word alien_disintegrating_4 ; 2
|
||||
.word alien_disintegrating_4 ; 3
|
||||
.word alien_disintegrating_4 ; 4
|
||||
.word alien_disintegrating_4 ; 5
|
||||
.word alien_disintegrating_3 ; 6
|
||||
.word alien_disintegrating_9 ; 7
|
||||
.word alien_disintegrating_10 ; 8
|
||||
.word alien_disintegrating_11 ; 9
|
||||
.word alien_disintegrating_12 ; 10
|
||||
.word alien_disintegrating_13 ; 11
|
||||
.word alien_disintegrating_14 ; 12
|
||||
.word alien_disintegrating_14 ; 13
|
||||
|
||||
|
||||
alien_disintegrating_2: ; 0
|
||||
.byte $5,$8
|
||||
.byte $aa,$ea,$ea,$ea,$aa
|
||||
.byte $fe,$ff,$ff,$ee,$ea
|
||||
.byte $ef,$ff,$ff,$ff,$ee
|
||||
.byte $aa,$ff,$ff,$ff,$ee
|
||||
.byte $fe,$fe,$ff,$ff,$ee
|
||||
.byte $ef,$ff,$ff,$ff,$ee
|
||||
.byte $ee,$ff,$ff,$ff,$ff
|
||||
.byte $fe,$ff,$ff,$ee,$ff
|
||||
|
||||
alien_disintegrating_3: ; 1
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$ff,$ff,$aa,$aa
|
||||
.byte $af,$af,$fa,$ff,$aa
|
||||
.byte $af,$af,$fa,$ff,$aa
|
||||
.byte $fa,$fa,$aa,$ff,$aa
|
||||
.byte $af,$ff,$ff,$ff,$aa
|
||||
.byte $aa,$ff,$ff,$fa,$fa
|
||||
.byte $fa,$ff,$aa,$aa,$ff
|
||||
|
||||
alien_disintegrating_4: ; 2
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $0a,$00,$00,$aa,$aa
|
||||
.byte $a0,$a0,$0a,$00,$aa
|
||||
.byte $a0,$a0,$0a,$00,$aa
|
||||
.byte $0a,$0a,$aa,$00,$aa
|
||||
.byte $a0,$00,$00,$00,$aa
|
||||
.byte $aa,$00,$00,$0a,$0a
|
||||
.byte $0a,$00,$aa,$aa,$00
|
||||
|
||||
alien_disintegrating_9: ; 3
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$fa,$aa
|
||||
.byte $5a,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$0a
|
||||
.byte $a7,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$af,$aa
|
||||
.byte $aa,$7a,$aa,$aa,$7a
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$aa,$aa,$aa,$aa
|
||||
|
||||
alien_disintegrating_10: ; 4
|
||||
.byte $5,$8
|
||||
.byte $5a,$aa,$aa,$aa,$fa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$fa,$a0
|
||||
.byte $a7,$aa,$aa,$fa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$7a
|
||||
.byte $a7,$aa,$aa,$aa,$a7
|
||||
.byte $fa,$aa,$aa,$aa,$aa
|
||||
|
||||
alien_disintegrating_11: ; 5
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$5a,$aa,$fa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$fa
|
||||
.byte $a7,$aa,$aa,$aa,$0a
|
||||
.byte $a7,$aa,$aa,$aa,$fa
|
||||
.byte $aa,$aa,$aa,$aa,$7a
|
||||
.byte $aa,$aa,$aa,$aa,$7a
|
||||
.byte $fa,$aa,$aa,$aa,$aa
|
||||
|
||||
alien_disintegrating_12: ; 6
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$a5,$aa,$fa,$aa
|
||||
.byte $aa,$aa,$aa,$0a,$aa
|
||||
.byte $7a,$aa,$aa,$aa,$af
|
||||
.byte $7a,$aa,$aa,$aa,$af
|
||||
.byte $fa,$aa,$aa,$aa,$5a
|
||||
|
||||
alien_disintegrating_13: ; 7
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$fa,$aa
|
||||
.byte $aa,$a5,$aa,$0a,$aa
|
||||
.byte $5a,$a7,$aa,$aa,$fa
|
||||
|
||||
alien_disintegrating_14: ; 8
|
||||
.byte $5,$8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $7a,$5a,$fa,$0a,$fa
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; SHOOTING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
alien_shoot_sprite:
|
||||
.byte $5,$8
|
||||
.byte $aa,$7a,$f7,$7f,$aa
|
||||
.byte $aa,$77,$07,$00,$aa
|
||||
.byte $0a,$aa,$00,$77,$aa
|
||||
.byte $aa,$a7,$17,$10,$aa
|
||||
.byte $aa,$aa,$00,$00,$aa
|
||||
.byte $aa,$aa,$77,$a5,$5a
|
||||
.byte $aa,$aa,$07,$aa,$05
|
||||
.byte $aa,$0a,$00,$0a,$00
|
||||
|
741
demosplash/graphics/sprites/astronaut.inc
Normal file
741
demosplash/graphics/sprites/astronaut.inc
Normal file
@ -0,0 +1,741 @@
|
||||
; these are all facing left
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; STANDING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
;====================
|
||||
; Going Left
|
||||
|
||||
astro_stand:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$fa,$f4,$aa,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; WALKING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
astro_walk_progression:
|
||||
.word astro_walk_left1
|
||||
.word astro_walk_left2
|
||||
.word astro_walk_left3
|
||||
.word astro_walk_left4
|
||||
.word astro_walk_left5
|
||||
.word astro_walk_left6
|
||||
.word astro_walk_left7
|
||||
.word astro_walk_left8
|
||||
.word astro_walk_left9
|
||||
.word astro_walk_left10
|
||||
|
||||
|
||||
|
||||
astro_walk_left1:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ab,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$a4,$cc,$aa
|
||||
.byte $af,$af,$7a,$7c,$aa
|
||||
|
||||
astro_walk_left2:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$a4,$cc,$aa
|
||||
.byte $af,$f4,$7a,$7c,$aa
|
||||
|
||||
astro_walk_left3:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$a4,$cc,$aa
|
||||
.byte $fa,$f4,$7a,$7c,$aa
|
||||
|
||||
astro_walk_left4:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$a4,$ca,$aa
|
||||
.byte $fa,$f4,$aa,$7c,$a7
|
||||
|
||||
astro_walk_left5:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$bb,$00,$aa,$aa
|
||||
.byte $7a,$aa,$44,$aa,$aa
|
||||
.byte $aa,$cc,$44,$aa,$aa
|
||||
.byte $aa,$f7,$f4,$aa,$aa
|
||||
|
||||
astro_walk_left6:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $7a,$cc,$a4,$4a,$aa
|
||||
.byte $aa,$a7,$fa,$f4,$aa
|
||||
|
||||
astro_walk_left7:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $aa,$cc,$a4,$4a,$aa
|
||||
.byte $a7,$7c,$fa,$f4,$aa
|
||||
|
||||
astro_walk_left8:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $aa,$cc,$a4,$44,$aa
|
||||
.byte $7a,$7c,$aa,$fa,$af
|
||||
|
||||
astro_walk_left9:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$aa,$c4,$a4,$fa
|
||||
.byte $aa,$7a,$7c,$af,$aa
|
||||
|
||||
astro_walk_left10:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$fa,$7f,$7c,$aa
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; RUNNING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
astro_run_progression:
|
||||
.word astro_run_left1
|
||||
.word astro_run_left2
|
||||
.word astro_run_left3
|
||||
.word astro_run_left4
|
||||
.word astro_run_left5
|
||||
.word astro_run_left6
|
||||
.word astro_run_left7
|
||||
.word astro_run_left8
|
||||
.word astro_run_left9
|
||||
.word astro_run_left9
|
||||
|
||||
astro_run_left1:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$aa,$44,$ac,$77
|
||||
.byte $aa,$fa,$f4,$aa,$aa
|
||||
|
||||
astro_run_left2:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $ba,$ab,$00,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $aa,$ac,$44,$4a,$aa
|
||||
.byte $aa,$aa,$fa,$f4,$aa
|
||||
|
||||
astro_run_left3:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $ab,$ab,$00,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $aa,$cc,$a4,$4a,$aa
|
||||
.byte $a7,$a7,$fa,$af,$aa
|
||||
|
||||
astro_run_left4:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $ba,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$ab,$00,$aa,$aa
|
||||
.byte $aa,$ca,$44,$aa,$aa
|
||||
.byte $aa,$cc,$aa,$44,$aa
|
||||
.byte $7a,$a7,$aa,$fa,$af
|
||||
|
||||
astro_run_left5:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ab,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$44,$4a,$fa
|
||||
.byte $aa,$cc,$aa,$aa,$af
|
||||
.byte $7a,$7c,$aa,$aa,$aa
|
||||
|
||||
astro_run_left6:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ab,$00,$aa,$aa
|
||||
.byte $aa,$aa,$44,$4a,$fa
|
||||
.byte $aa,$aa,$cc,$aa,$af
|
||||
.byte $aa,$7a,$7c,$aa,$aa
|
||||
|
||||
astro_run_left7:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ab,$0b,$aa,$aa
|
||||
.byte $aa,$4a,$44,$aa,$aa
|
||||
.byte $aa,$a4,$c4,$ff,$aa
|
||||
.byte $aa,$7a,$7c,$aa,$aa
|
||||
|
||||
astro_run_left8:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$ba,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$ba,$aa
|
||||
.byte $aa,$4a,$44,$aa,$aa
|
||||
.byte $aa,$44,$ac,$ca,$aa
|
||||
.byte $af,$af,$7a,$7c,$aa
|
||||
|
||||
astro_run_left9:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$bb,$aa
|
||||
.byte $aa,$aa,$00,$bb,$aa
|
||||
.byte $aa,$aa,$44,$ca,$aa
|
||||
.byte $aa,$44,$aa,$cc,$aa
|
||||
.byte $fa,$f4,$aa,$7a,$7c
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; JUMPING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; KICKING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
; note: he needs to be facing left by default
|
||||
kick1:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $bb,$ab,$00,$ba,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$a4,$ca,$aa
|
||||
.byte $af,$f4,$5a,$5c,$aa
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; SHOOTING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
shooting1:
|
||||
.byte 5,8
|
||||
.byte $AA,$AA,$9A,$9A,$AA
|
||||
.byte $AA,$AA,$bb,$99,$AA
|
||||
.byte $0A,$0A,$AA,$0B,$AA
|
||||
.byte $AA,$A0,$AB,$B0,$AA
|
||||
.byte $AA,$AA,$AA,$00,$AA
|
||||
.byte $AA,$AA,$AA,$44,$AA
|
||||
.byte $AA,$AA,$44,$c4,$AA
|
||||
.byte $AA,$fA,$f4,$7A,$7C
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; FALLING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
; note: he falls into a crouch
|
||||
|
||||
astro_falling:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$9a,$9a,$aa
|
||||
.byte $aa,$aa,$bb,$99,$aa
|
||||
.byte $ab,$ba,$ba,$b0,$0b
|
||||
.byte $aa,$aa,$aa,$00,$00
|
||||
.byte $aa,$aa,$aa,$44,$44
|
||||
.byte $ca,$4c,$44,$a4,$aa
|
||||
.byte $f5,$f4,$aa,$aa,$aa
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; CROUCHING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
crouch_progression:
|
||||
.word crouch1
|
||||
.word crouch2
|
||||
|
||||
crouch1:
|
||||
.byte 3,8
|
||||
.byte $aa,$aa,$aa
|
||||
.byte $9a,$9a,$aa
|
||||
.byte $bb,$99,$aa
|
||||
.byte $aa,$0b,$aa
|
||||
.byte $aa,$bb,$aa
|
||||
.byte $aa,$bb,$aa
|
||||
.byte $44,$44,$aa
|
||||
.byte $5a,$fc,$f4
|
||||
|
||||
crouch2:
|
||||
.byte 5,8
|
||||
.byte $AA,$aa,$aa,$aa,$AA
|
||||
.byte $AA,$aa,$aa,$aa,$AA
|
||||
.byte $AA,$9a,$9a,$aa,$AA
|
||||
.byte $AA,$bb,$99,$aa,$AA
|
||||
.byte $AA,$aa,$0b,$0a,$AA
|
||||
.byte $AA,$aa,$bb,$00,$AA
|
||||
.byte $AA,$ba,$4b,$aa,$AA
|
||||
.byte $AA,$54,$f4,$f4,$AA
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; SWIMMING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
; see physicist_l1_swim.inc
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; COLLAPSING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
;=======================
|
||||
; I've got a match
|
||||
; your embrace, and my collapse
|
||||
|
||||
collapse_progression:
|
||||
.word collapse1 ; 00
|
||||
.word collapse2 ; 02
|
||||
.word collapse3 ; 04
|
||||
.word collapse4 ; 06
|
||||
.word collapse5 ; 08
|
||||
.word collapse5 ; 10
|
||||
.word collapse5 ; 12
|
||||
.word collapse5 ; 14
|
||||
.word collapse5 ; 16
|
||||
|
||||
collapse1:
|
||||
.byte 4,8
|
||||
.byte $9a,$9a,$aa,$aa
|
||||
.byte $ab,$99,$aa,$aa
|
||||
.byte $aa,$0b,$aa,$aa
|
||||
.byte $aa,$bb,$aa,$aa
|
||||
.byte $aa,$bb,$aa,$aa
|
||||
.byte $aa,$44,$aa,$aa
|
||||
.byte $aa,$a4,$4a,$aa
|
||||
.byte $aa,$fa,$f4,$aa
|
||||
|
||||
|
||||
collapse2:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $b9,$99,$aa,$aa,$aa
|
||||
.byte $ab,$b9,$aa,$aa,$aa
|
||||
.byte $aa,$b0,$aa,$aa,$aa
|
||||
.byte $aa,$bb,$00,$aa,$aa
|
||||
.byte $aa,$bb,$44,$4a,$aa
|
||||
.byte $aa,$ab,$aa,$a4,$4a
|
||||
.byte $aa,$aa,$aa,$fa,$f4
|
||||
|
||||
|
||||
|
||||
collapse3:
|
||||
.byte 6,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $9a,$9a,$aa,$aa,$aa,$aa
|
||||
.byte $bb,$99,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$0b,$0a,$aa,$aa,$aa
|
||||
.byte $aa,$bb,$00,$4a,$aa,$aa
|
||||
.byte $aa,$bb,$a0,$44,$44,$fa
|
||||
.byte $aa,$ab,$aa,$aa,$a4,$ff
|
||||
|
||||
collapse4:
|
||||
.byte 7,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $9a,$9a,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $99,$bb,$00,$0a,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$00,$44,$4a,$fa
|
||||
.byte $aa,$aa,$aa,$bb,$aa,$a4,$ff
|
||||
|
||||
|
||||
collapse5:
|
||||
.byte 8,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa
|
||||
.byte $99,$b9,$00,$b0,$00,$bb,$4a,$aa
|
||||
.byte $a9,$ab,$aa,$aa,$bb,$b4,$44,$ff
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; JUMPING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
|
||||
astro_jump_progression:
|
||||
.word jump1
|
||||
.word jump2
|
||||
.word jump3
|
||||
.word jump4
|
||||
.word jump5
|
||||
.word jump6
|
||||
.word jump7
|
||||
.word jump8
|
||||
|
||||
|
||||
jump1:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$bb,$aa,$aa
|
||||
.byte $aa,$ba,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$44,$aa,$aa
|
||||
.byte $aa,$44,$cc,$aa,$aa
|
||||
.byte $fa,$f4,$5c,$aa,$aa
|
||||
|
||||
jump2:
|
||||
.byte 5,8
|
||||
.byte $9a,$9a,$aa,$aa,$aa
|
||||
.byte $bb,$99,$aa,$aa,$aa
|
||||
.byte $aa,$0b,$00,$aa,$aa
|
||||
.byte $aa,$00,$bb,$aa,$aa
|
||||
.byte $aa,$a0,$bb,$aa,$aa
|
||||
.byte $aa,$44,$cb,$aa,$aa
|
||||
.byte $aa,$44,$cc,$aa,$aa
|
||||
.byte $fa,$f4,$5c,$aa,$aa
|
||||
|
||||
jump3:
|
||||
.byte 5,8
|
||||
.byte $9a,$9a,$aa,$aa,$aa
|
||||
.byte $bb,$99,$aa,$aa,$aa
|
||||
.byte $aa,$0b,$00,$aa,$aa
|
||||
.byte $aa,$00,$bb,$aa,$aa
|
||||
.byte $aa,$a0,$bb,$aa,$aa
|
||||
.byte $44,$c4,$cb,$aa,$aa
|
||||
.byte $a4,$4c,$cc,$cc,$aa
|
||||
.byte $fa,$f4,$5a,$a5,$aa
|
||||
|
||||
jump4:
|
||||
.byte 5,8
|
||||
.byte $9a,$9a,$aa,$aa,$aa
|
||||
.byte $bb,$99,$aa,$aa,$aa
|
||||
.byte $aa,$0b,$00,$aa,$aa
|
||||
.byte $aa,$00,$bb,$aa,$aa
|
||||
.byte $aa,$a0,$bb,$aa,$aa
|
||||
.byte $aa,$4b,$c4,$ca,$5a
|
||||
.byte $aa,$44,$4c,$ac,$55
|
||||
.byte $aa,$aa,$f4,$f4,$aa
|
||||
|
||||
jump5:
|
||||
.byte 5,8
|
||||
.byte $b9,$99,$aa,$aa,$aa
|
||||
.byte $ab,$b9,$aa,$aa,$aa
|
||||
.byte $ba,$b0,$0b,$aa,$aa
|
||||
.byte $aa,$aa,$00,$aa,$aa
|
||||
.byte $aa,$aa,$00,$aa,$aa
|
||||
.byte $aa,$cc,$44,$4a,$aa
|
||||
.byte $5a,$5c,$a4,$44,$fa
|
||||
.byte $aa,$aa,$aa,$aa,$af
|
||||
|
||||
jump6:
|
||||
.byte 5,8
|
||||
.byte $aa,$b9,$99,$aa,$aa
|
||||
.byte $aa,$ab,$b9,$aa,$aa
|
||||
.byte $ab,$ba,$b0,$aa,$aa
|
||||
.byte $aa,$aa,$00,$aa,$aa
|
||||
.byte $aa,$aa,$40,$aa,$aa
|
||||
.byte $aa,$cc,$44,$4a,$fa
|
||||
.byte $aa,$cc,$a4,$a4,$ff
|
||||
.byte $a5,$a5,$aa,$aa,$aa
|
||||
|
||||
jump7:
|
||||
.byte 5,8
|
||||
.byte $aa,$b9,$99,$aa,$aa
|
||||
.byte $aa,$ab,$b9,$aa,$aa
|
||||
.byte $aa,$aa,$b0,$aa,$aa
|
||||
.byte $ab,$ab,$00,$aa,$aa
|
||||
.byte $aa,$aa,$40,$aa,$aa
|
||||
.byte $aa,$cc,$44,$4a,$fa
|
||||
.byte $aa,$cc,$a4,$a4,$ff
|
||||
.byte $a5,$a5,$aa,$aa,$aa
|
||||
|
||||
jump8:
|
||||
.byte 5,8
|
||||
.byte $aa,$9a,$9a,$aa,$aa
|
||||
.byte $aa,$bb,$99,$aa,$aa
|
||||
.byte $aa,$aa,$0b,$aa,$aa
|
||||
.byte $aa,$b0,$bb,$aa,$aa
|
||||
.byte $aa,$aa,$40,$aa,$aa
|
||||
.byte $aa,$4a,$44,$aa,$aa
|
||||
.byte $aa,$44,$c4,$ca,$aa
|
||||
.byte $fa,$f4,$5a,$5c,$aa
|
||||
|
||||
|
||||
;====================
|
||||
;====================
|
||||
; On Spike
|
||||
;====================
|
||||
;====================
|
||||
|
||||
; 9x40
|
||||
astronaut_spike_sprite:
|
||||
.byte 3,4
|
||||
.byte $AA,$11,$AA
|
||||
.byte $0A,$90,$0A
|
||||
.byte $BB,$A9,$BB
|
||||
.byte $BB,$AA,$BB
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; CROUCH SHOOTING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
crouch_shooting:
|
||||
.byte 5,8
|
||||
.byte $AA,$AA,$aa,$aa,$aa
|
||||
.byte $AA,$AA,$aa,$aa,$aa
|
||||
.byte $AA,$AA,$9a,$9a,$aa
|
||||
.byte $AA,$AA,$bb,$99,$aa
|
||||
.byte $0A,$0A,$aa,$0b,$0a
|
||||
.byte $AA,$A0,$ba,$bb,$00
|
||||
.byte $AA,$AA,$4a,$4b,$aa
|
||||
.byte $AA,$AA,$54,$f4,$f4
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; CROUCH KICKING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
crouch_kicking:
|
||||
.byte 5,8
|
||||
.byte $AA,$AA,$aa,$aa,$aa
|
||||
.byte $AA,$AA,$aa,$aa,$aa
|
||||
.byte $AA,$AA,$9a,$9a,$aa
|
||||
.byte $AA,$AA,$bb,$99,$aa
|
||||
.byte $AA,$AA,$aa,$0b,$0a
|
||||
.byte $AA,$AA,$aa,$bb,$00
|
||||
.byte $AA,$AA,$4a,$bb,$a0
|
||||
.byte $5A,$5C,$A4,$f4,$f4
|
||||
|
||||
|
||||
|
||||
|
||||
;=====================
|
||||
;=====================
|
||||
; DISINTEGRATING
|
||||
;=====================
|
||||
;=====================
|
||||
|
||||
disintegrate_progression:
|
||||
.word disintegrating_2 ; 0
|
||||
.word disintegrating_3 ; 1
|
||||
.word disintegrating_4 ; 2
|
||||
.word disintegrating_4 ; 3
|
||||
.word disintegrating_4 ; 4
|
||||
.word disintegrating_4 ; 5
|
||||
.word disintegrating_3 ; 6
|
||||
.word disintegrating_9 ; 7
|
||||
.word disintegrating_10 ; 8
|
||||
.word disintegrating_11 ; 9
|
||||
.word disintegrating_12 ; 10
|
||||
.word disintegrating_13 ; 11
|
||||
.word disintegrating_14 ; 12
|
||||
.word disintegrating_14 ; 13
|
||||
|
||||
disintegrating_2:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $ee,$fe,$fe,$ee,$aa
|
||||
.byte $ee,$ff,$ff,$ee,$aa
|
||||
.byte $aa,$ee,$ff,$ee,$aa
|
||||
.byte $ae,$ef,$ff,$ee,$aa
|
||||
.byte $aa,$ee,$ff,$ee,$aa
|
||||
.byte $aa,$ee,$ff,$ee,$aa
|
||||
.byte $ff,$fe,$ff,$ee,$aa
|
||||
|
||||
disintegrating_3:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$fa,$fa,$aa,$aa
|
||||
.byte $aa,$ff,$ff,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
.byte $aa,$af,$fa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
.byte $aa,$aa,$ff,$aa,$aa
|
||||
.byte $aa,$fa,$ff,$aa,$aa
|
||||
|
||||
disintegrating_4:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$0a,$0a,$aa,$aa
|
||||
.byte $aa,$00,$00,$aa,$aa
|
||||
.byte $aa,$aa,$0a,$aa,$aa
|
||||
.byte $aa,$a0,$0a,$aa,$aa
|
||||
.byte $aa,$aa,$0a,$aa,$aa
|
||||
.byte $aa,$aa,$00,$aa,$aa
|
||||
.byte $aa,$0a,$00,$aa,$aa
|
||||
|
||||
disintegrating_9:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$aa,$af,$aa,$aa
|
||||
.byte $aa,$5a,$aa,$af,$aa
|
||||
.byte $aa,$aa,$aa,$0a,$aa
|
||||
.byte $af,$aa,$0a,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$fa,$aa
|
||||
.byte $af,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
|
||||
disintegrating_10:
|
||||
.byte 5,8
|
||||
.byte $fa,$aa,$af,$aa,$aa
|
||||
.byte $aa,$5a,$aa,$aa,$fa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$aa,$aa,$aa,$a0
|
||||
.byte $aa,$aa,$aa,$0a,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$5a
|
||||
.byte $fa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
|
||||
disintegrating_11:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
.byte $af,$aa,$aa,$aa,$af
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$aa,$aa,$aa,$a0
|
||||
.byte $aa,$aa,$aa,$0a,$fa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $af,$aa,$fa,$aa,$aa
|
||||
|
||||
disintegrating_12:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$fa,$aa,$aa
|
||||
.byte $aa,$af,$aa,$aa,$fa
|
||||
.byte $fa,$a5,$aa,$0a,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$a0
|
||||
.byte $fa,$aa,$fa,$aa,$aa
|
||||
|
||||
disintegrating_13:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$af,$aa,$aa
|
||||
.byte $aa,$4a,$aa,$0a,$a0
|
||||
.byte $fa,$aa,$5a,$aa,$af
|
||||
|
||||
disintegrating_14:
|
||||
.byte 5,8
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $aa,$aa,$aa,$aa,$aa
|
||||
.byte $fa,$5a,$5a,$0a,$fa
|
||||
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
||||
|
||||
handle_keypress:
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
bmi no_keypress ; ignore keypress if dying/action
|
||||
|
||||
lda KEYPRESS ; 4
|
||||
@ -79,7 +79,7 @@ left_pressed:
|
||||
bne left_going_right
|
||||
|
||||
left_going_left:
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_STANDING
|
||||
beq walk_left
|
||||
cmp #P_SHOOTING
|
||||
@ -94,7 +94,7 @@ left_going_left:
|
||||
jmp done_keypress
|
||||
|
||||
left_going_right:
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_RUNNING
|
||||
beq walk_right
|
||||
cmp #P_WALKING
|
||||
@ -133,7 +133,7 @@ right_pressed:
|
||||
|
||||
|
||||
right_going_right:
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_STANDING
|
||||
beq walk_right
|
||||
cmp #P_SHOOTING
|
||||
@ -148,7 +148,7 @@ right_going_right:
|
||||
jmp done_keypress
|
||||
|
||||
right_going_left:
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_RUNNING
|
||||
beq walk_left
|
||||
cmp #P_WALKING
|
||||
@ -203,7 +203,7 @@ run_right:
|
||||
bne update_state
|
||||
|
||||
update_state:
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
jmp done_keypress
|
||||
|
||||
|
||||
@ -224,7 +224,7 @@ up:
|
||||
;=============================
|
||||
;=============================
|
||||
|
||||
lda PHYSICIST_STATE ; shoot if charging
|
||||
lda ASTRONAUT_STATE ; shoot if charging
|
||||
cmp #P_CROUCH_SHOOTING
|
||||
beq up_no_fire
|
||||
|
||||
@ -240,7 +240,7 @@ up_on_elevator:
|
||||
|
||||
up_not_elevator:
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_CROUCHING
|
||||
beq stand_up
|
||||
cmp #P_CROUCH_SHOOTING
|
||||
@ -279,7 +279,7 @@ check_down:
|
||||
;==========================
|
||||
down:
|
||||
|
||||
lda PHYSICIST_STATE ; shoot if charging
|
||||
lda ASTRONAUT_STATE ; shoot if charging
|
||||
cmp #P_SHOOTING
|
||||
beq down_no_fire
|
||||
|
||||
@ -294,7 +294,7 @@ down_on_elevator:
|
||||
jmp change_state_clear_gait
|
||||
|
||||
down_not_elevator:
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_SHOOTING
|
||||
bne start_crouch
|
||||
|
||||
@ -310,7 +310,7 @@ start_crouch:
|
||||
ldx #4 ; slide a bit
|
||||
stx GAIT
|
||||
ora #P_CROUCHING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
jmp done_keypress
|
||||
|
||||
start_crouch_norun:
|
||||
@ -342,7 +342,7 @@ not_already_firing:
|
||||
|
||||
inc GUN_STATE
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
and #STATE_CROUCHING
|
||||
beq crouch_charge
|
||||
ldy #P_CROUCH_SHOOTING
|
||||
@ -350,7 +350,7 @@ not_already_firing:
|
||||
crouch_charge:
|
||||
ldy #P_SHOOTING
|
||||
crouch_charge_go:
|
||||
sty PHYSICIST_STATE
|
||||
sty ASTRONAUT_STATE
|
||||
|
||||
jmp shoot
|
||||
|
||||
@ -372,7 +372,7 @@ space:
|
||||
|
||||
inc GUN_FIRE ; if charging, shoot
|
||||
shoot:
|
||||
lda PHYSICIST_STATE ; if in stance, then shoot
|
||||
lda ASTRONAUT_STATE ; if in stance, then shoot
|
||||
cmp #P_SHOOTING
|
||||
beq in_position
|
||||
cmp #P_CROUCH_SHOOTING
|
||||
@ -396,7 +396,7 @@ stand_stance:
|
||||
jmp change_state_clear_gait
|
||||
|
||||
kick:
|
||||
bit PHYSICIST_STATE ; crouching state in V now
|
||||
bit ASTRONAUT_STATE ; crouching state in V now
|
||||
bvc kick_standing
|
||||
|
||||
lda #P_CROUCH_KICKING
|
||||
@ -405,7 +405,7 @@ kick:
|
||||
kick_standing:
|
||||
lda #P_KICKING
|
||||
kick_final:
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
lda #15
|
||||
sta GAIT
|
||||
unknown:
|
||||
@ -416,7 +416,7 @@ done_keypress:
|
||||
|
||||
|
||||
change_state_clear_gait:
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
lda #0
|
||||
sta GAIT
|
||||
jmp done_keypress
|
||||
|
@ -70,7 +70,7 @@ wait_loop:
|
||||
;.include "gr_offsets.s"
|
||||
.include "keyboard.s"
|
||||
|
||||
.include "starbase_physicist.s"
|
||||
.include "starbase_astronaut.s"
|
||||
.include "starbase_alien.s"
|
||||
|
||||
.include "starbase_doors.s"
|
||||
@ -83,12 +83,10 @@ wait_loop:
|
||||
.include "starbase_friend.s"
|
||||
.include "starbase_alien_laser.s"
|
||||
|
||||
;.include "ootw_c4_action.s"
|
||||
|
||||
; room backgrounds
|
||||
.include "graphics/starbase/ootw_c4_city.inc"
|
||||
; sprites
|
||||
.include "graphics/sprites/physicist.inc"
|
||||
.include "graphics/sprites/astronaut.inc"
|
||||
.include "graphics/sprites/alien.inc"
|
||||
|
||||
|
||||
|
@ -59,9 +59,9 @@ starbase_init:
|
||||
sta HAVE_GUN
|
||||
|
||||
lda #19
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
lda #230 ; start offscreen
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
lda #28
|
||||
sta fall_down_destination_smc+1
|
||||
@ -70,7 +70,7 @@ starbase_init:
|
||||
sta fall_sideways_destination_smc+1
|
||||
|
||||
lda #P_FALLING_DOWN ; fall into level
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda #$2c
|
||||
sta falling_stop_smc
|
||||
@ -143,12 +143,12 @@ room0:
|
||||
lda #0
|
||||
sta cel_smc+1
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_FALLING_DOWN
|
||||
beq room0_falling
|
||||
|
||||
lda #28
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
room0_falling:
|
||||
|
||||
; load background
|
||||
@ -178,7 +178,7 @@ room1:
|
||||
sta cel_smc+1
|
||||
|
||||
lda #8
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
; load background
|
||||
lda #>(hallway_rle)
|
||||
@ -207,7 +207,7 @@ room2:
|
||||
sta cel_smc+1
|
||||
|
||||
lda #18
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
; load background
|
||||
lda #>(causeway1_rle)
|
||||
@ -243,7 +243,7 @@ room3:
|
||||
sta cel_smc+1
|
||||
|
||||
lda #18
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
; load top high
|
||||
lda #>(causeway2_rle)
|
||||
@ -292,17 +292,17 @@ room4:
|
||||
lda #5
|
||||
sta cer_smc+1
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_IMPALED
|
||||
beq r4_impaled
|
||||
cmp #P_FALLING_DOWN
|
||||
beq r4_impaled
|
||||
|
||||
lda #8
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
lda #P_CROUCHING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
r4_impaled:
|
||||
; load background
|
||||
@ -410,7 +410,7 @@ no_scroll:
|
||||
|
||||
check_falling:
|
||||
; only fall if falling sideways/down
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_FALLING_SIDEWAYS
|
||||
beq falling_sideways
|
||||
cmp #P_FALLING_DOWN
|
||||
@ -429,11 +429,11 @@ falling_sideways:
|
||||
and #$3
|
||||
bne no_fall_undo
|
||||
|
||||
dec PHYSICIST_X
|
||||
dec PHYSICIST_Y
|
||||
dec PHYSICIST_Y
|
||||
dec PHYSICIST_Y
|
||||
dec PHYSICIST_Y
|
||||
dec ASTRONAUT_X
|
||||
dec ASTRONAUT_Y
|
||||
dec ASTRONAUT_Y
|
||||
dec ASTRONAUT_Y
|
||||
dec ASTRONAUT_Y
|
||||
no_fall_undo:
|
||||
jmp scroll_check
|
||||
before:
|
||||
@ -442,28 +442,28 @@ before:
|
||||
and #$1
|
||||
bne extra_boost
|
||||
|
||||
inc PHYSICIST_X
|
||||
inc ASTRONAUT_X
|
||||
extra_boost:
|
||||
jmp scroll_check
|
||||
|
||||
|
||||
falling_down:
|
||||
; if falling down, and Y>=32, then impale
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
cmp #32
|
||||
bcc scroll_check ; blt
|
||||
|
||||
lda #9
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
|
||||
lda #38
|
||||
sta PHYSICIST_Y
|
||||
sta ASTRONAUT_Y
|
||||
|
||||
lda #0
|
||||
sta GAIT
|
||||
|
||||
lda #P_IMPALED
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
jmp not_falling
|
||||
|
||||
@ -477,7 +477,7 @@ scroll_check:
|
||||
|
||||
scroll_bg_check22:
|
||||
|
||||
lda PHYSICIST_Y ; once Y=22, stop falling (scroll instead)
|
||||
lda ASTRONAUT_Y ; once Y=22, stop falling (scroll instead)
|
||||
cmp #22
|
||||
bcc not_far_enough ; blt
|
||||
|
||||
@ -553,12 +553,12 @@ c4_no_bg_action:
|
||||
; move physicist
|
||||
;===============================
|
||||
|
||||
jsr move_physicist
|
||||
jsr move_astronaut
|
||||
|
||||
;===================
|
||||
; check room limits
|
||||
;===================
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_FALLING_DOWN
|
||||
beq done_room_limits
|
||||
cmp #P_IMPALED
|
||||
@ -580,7 +580,7 @@ done_room_limits:
|
||||
bne regular_room
|
||||
|
||||
; don't start fall if impaled or already falling
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_IMPALED
|
||||
beq regular_room
|
||||
cmp #P_FALLING_DOWN
|
||||
@ -590,24 +590,24 @@ done_room_limits:
|
||||
|
||||
|
||||
; only start falling if y>=18
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
cmp #18
|
||||
bcc regular_room ; blt
|
||||
|
||||
; only start falling if x>=7 and positive
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
bmi regular_room
|
||||
cmp #7
|
||||
bcc regular_room ; blt
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_JUMPING
|
||||
beq fall_sideways
|
||||
|
||||
; if not jumping then fall down
|
||||
|
||||
lda #P_FALLING_DOWN
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda #2
|
||||
sta BG_SCROLL
|
||||
@ -617,7 +617,7 @@ done_room_limits:
|
||||
fall_sideways:
|
||||
|
||||
lda #P_FALLING_SIDEWAYS
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda #2
|
||||
sta BG_SCROLL
|
||||
@ -630,26 +630,26 @@ regular_room:
|
||||
|
||||
; if in charger, draw that
|
||||
lda WHICH_ROOM ; charger only room0
|
||||
bne just_draw_physicist
|
||||
bne just_draw_astronaut
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp #10
|
||||
bne just_draw_physicist
|
||||
bne just_draw_astronaut
|
||||
|
||||
lda GUN_CHARGE
|
||||
cmp #200
|
||||
bcs just_draw_physicist ; bge
|
||||
bcs just_draw_astronaut ; bge
|
||||
|
||||
lda #P_STANDING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
jsr draw_charger
|
||||
|
||||
jmp after_draw_physicist
|
||||
jmp after_draw_astronaut
|
||||
|
||||
just_draw_physicist:
|
||||
jsr draw_physicist
|
||||
after_draw_physicist:
|
||||
just_draw_astronaut:
|
||||
jsr draw_astronaut
|
||||
after_draw_astronaut:
|
||||
|
||||
;===============
|
||||
; draw alien
|
||||
@ -775,7 +775,7 @@ city_frame_no_oflo:
|
||||
cmp #4
|
||||
bne regular_exit_check
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp #32
|
||||
bcc regular_exit_check ; blt
|
||||
|
||||
@ -807,7 +807,7 @@ regular_exit_check:
|
||||
city_right_yes_exit:
|
||||
|
||||
lda #0
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
cer_smc:
|
||||
lda #$0 ; smc+1 = exit location
|
||||
sta WHICH_CAVE
|
||||
@ -819,7 +819,7 @@ cer_smc:
|
||||
city_exit_left:
|
||||
|
||||
lda #37
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
cel_smc:
|
||||
lda #0 ; smc+1
|
||||
sta WHICH_CAVE
|
||||
|
@ -140,7 +140,7 @@ alien_no_move_run:
|
||||
move_alien_standing:
|
||||
|
||||
; turn to face physicist if on same level
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
cmp alien_y,X
|
||||
bne done_move_alien_standing
|
||||
|
||||
@ -151,7 +151,7 @@ move_alien_standing:
|
||||
and #$3f
|
||||
bne done_move_alien_standing
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp alien_x,X
|
||||
bcs alien_face_right
|
||||
|
||||
|
@ -1,19 +1,19 @@
|
||||
;=======================================
|
||||
; Move physicist based on current state
|
||||
; Move astronaut based on current state
|
||||
;
|
||||
|
||||
move_physicist:
|
||||
lda PHYSICIST_STATE
|
||||
move_astronaut:
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_WALKING
|
||||
beq move_physicist_walking
|
||||
beq move_astronaut_walking
|
||||
cmp #P_RUNNING
|
||||
beq move_physicist_running
|
||||
beq move_astronaut_running
|
||||
rts
|
||||
|
||||
;======================
|
||||
; walking
|
||||
|
||||
move_physicist_walking:
|
||||
move_astronaut_walking:
|
||||
inc GAIT ; cycle through animation
|
||||
|
||||
lda GAIT
|
||||
@ -24,16 +24,16 @@ move_physicist_walking:
|
||||
lda DIRECTION
|
||||
beq p_walk_left
|
||||
|
||||
inc PHYSICIST_X ; walk right
|
||||
inc ASTRONAUT_X ; walk right
|
||||
rts
|
||||
p_walk_left:
|
||||
dec PHYSICIST_X ; walk left
|
||||
dec ASTRONAUT_X ; walk left
|
||||
no_move_walk:
|
||||
rts
|
||||
|
||||
;======================
|
||||
; running
|
||||
move_physicist_running:
|
||||
move_astronaut_running:
|
||||
; inc GAIT ; cycle through animation
|
||||
inc GAIT ; cycle through animation
|
||||
|
||||
@ -45,59 +45,59 @@ move_physicist_running:
|
||||
lda DIRECTION
|
||||
beq p_run_left
|
||||
|
||||
inc PHYSICIST_X ; run right
|
||||
inc ASTRONAUT_X ; run right
|
||||
rts
|
||||
p_run_left:
|
||||
dec PHYSICIST_X ; run left
|
||||
dec ASTRONAUT_X ; run left
|
||||
no_move_run:
|
||||
rts
|
||||
;======================
|
||||
; standing
|
||||
|
||||
move_physicist_standing:
|
||||
move_astronaut_standing:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
pstate_table_lo:
|
||||
.byte <physicist_standing ; 00
|
||||
.byte <physicist_walking ; 01
|
||||
.byte <physicist_running ; 02
|
||||
.byte <physicist_crouching ; 03
|
||||
.byte <physicist_kicking ; 04
|
||||
.byte <physicist_jumping ; 05
|
||||
.byte <physicist_collapsing ; 06
|
||||
.byte <physicist_falling_sideways; 07
|
||||
.byte <physicist_standing ; 08 swinging
|
||||
.byte <physicist_standing ; 09 elevator up
|
||||
.byte <physicist_standing ; 0A elevator down
|
||||
.byte <physicist_shooting ; 0B
|
||||
.byte <physicist_falling_down ; 0C
|
||||
.byte <physicist_impaled ; 0D
|
||||
.byte <physicist_crouch_shooting; 0E
|
||||
.byte <physicist_crouch_kicking ; 0F
|
||||
.byte <physicist_disintegrating ; 10
|
||||
.byte <astronaut_standing ; 00
|
||||
.byte <astronaut_walking ; 01
|
||||
.byte <astronaut_running ; 02
|
||||
.byte <astronaut_crouching ; 03
|
||||
.byte <astronaut_kicking ; 04
|
||||
.byte <astronaut_jumping ; 05
|
||||
.byte <astronaut_collapsing ; 06
|
||||
.byte <astronaut_falling_sideways; 07
|
||||
.byte <astronaut_standing ; 08 swinging
|
||||
.byte <astronaut_standing ; 09 elevator up
|
||||
.byte <astronaut_standing ; 0A elevator down
|
||||
.byte <astronaut_shooting ; 0B
|
||||
.byte <astronaut_falling_down ; 0C
|
||||
.byte <astronaut_impaled ; 0D
|
||||
.byte <astronaut_crouch_shooting; 0E
|
||||
.byte <astronaut_crouch_kicking ; 0F
|
||||
.byte <astronaut_disintegrating ; 10
|
||||
|
||||
|
||||
pstate_table_hi:
|
||||
.byte >physicist_standing
|
||||
.byte >physicist_walking
|
||||
.byte >physicist_running
|
||||
.byte >physicist_crouching
|
||||
.byte >physicist_kicking
|
||||
.byte >physicist_jumping
|
||||
.byte >physicist_collapsing
|
||||
.byte >physicist_falling_sideways
|
||||
.byte >physicist_standing ; 08 swinging
|
||||
.byte >physicist_standing ; 09 elevator up
|
||||
.byte >physicist_standing ; 0A elevator down
|
||||
.byte >physicist_shooting ; 0B
|
||||
.byte >physicist_falling_down ; 0C
|
||||
.byte >physicist_impaled ; 0D
|
||||
.byte >physicist_crouch_shooting; 0E
|
||||
.byte >physicist_crouch_kicking ; 0F
|
||||
.byte >physicist_disintegrating ; 10
|
||||
.byte >astronaut_standing
|
||||
.byte >astronaut_walking
|
||||
.byte >astronaut_running
|
||||
.byte >astronaut_crouching
|
||||
.byte >astronaut_kicking
|
||||
.byte >astronaut_jumping
|
||||
.byte >astronaut_collapsing
|
||||
.byte >astronaut_falling_sideways
|
||||
.byte >astronaut_standing ; 08 swinging
|
||||
.byte >astronaut_standing ; 09 elevator up
|
||||
.byte >astronaut_standing ; 0A elevator down
|
||||
.byte >astronaut_shooting ; 0B
|
||||
.byte >astronaut_falling_down ; 0C
|
||||
.byte >astronaut_impaled ; 0D
|
||||
.byte >astronaut_crouch_shooting; 0E
|
||||
.byte >astronaut_crouch_kicking ; 0F
|
||||
.byte >astronaut_disintegrating ; 10
|
||||
|
||||
; Urgh, make sure this doesn't end up at $FF or you hit the
|
||||
; NMOS 6502 bug
|
||||
@ -110,12 +110,12 @@ pjump:
|
||||
.align 1
|
||||
|
||||
;======================================
|
||||
; draw physicist
|
||||
; draw astronaut
|
||||
;======================================
|
||||
|
||||
draw_physicist:
|
||||
draw_astronaut:
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
and #$1f ; mask off high state bits
|
||||
tax
|
||||
lda pstate_table_lo,x
|
||||
@ -129,12 +129,12 @@ draw_physicist:
|
||||
; STANDING
|
||||
;==================================
|
||||
|
||||
physicist_standing:
|
||||
astronaut_standing:
|
||||
|
||||
lda #<phys_stand
|
||||
lda #<astro_stand
|
||||
sta INL
|
||||
|
||||
lda #>phys_stand
|
||||
lda #>astro_stand
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -143,7 +143,7 @@ physicist_standing:
|
||||
; SHOOTING
|
||||
;==================================
|
||||
|
||||
physicist_shooting:
|
||||
astronaut_shooting:
|
||||
|
||||
lda #<shooting1
|
||||
sta INL
|
||||
@ -158,7 +158,7 @@ physicist_shooting:
|
||||
; KICKING
|
||||
;==================================
|
||||
|
||||
physicist_kicking:
|
||||
astronaut_kicking:
|
||||
lda #<kick1
|
||||
sta INL
|
||||
|
||||
@ -171,7 +171,7 @@ physicist_kicking:
|
||||
bne short_draw
|
||||
|
||||
lda #P_STANDING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
short_draw:
|
||||
jmp finally_draw_him
|
||||
@ -180,7 +180,7 @@ short_draw:
|
||||
; CROUCHING
|
||||
;===================================
|
||||
|
||||
physicist_crouching:
|
||||
astronaut_crouching:
|
||||
|
||||
; FIXME: we have an animation?
|
||||
|
||||
@ -193,10 +193,10 @@ physicist_crouching:
|
||||
|
||||
lda DIRECTION
|
||||
beq p_slide_left
|
||||
inc PHYSICIST_X
|
||||
inc ASTRONAUT_X
|
||||
jmp crouch_done_slide
|
||||
p_slide_left:
|
||||
dec PHYSICIST_X
|
||||
dec ASTRONAUT_X
|
||||
|
||||
crouch_done_slide:
|
||||
|
||||
@ -212,14 +212,14 @@ crouch_done_slide:
|
||||
; CROUCH KICKING
|
||||
;===================================
|
||||
|
||||
physicist_crouch_kicking:
|
||||
astronaut_crouch_kicking:
|
||||
|
||||
dec GAIT
|
||||
lda GAIT
|
||||
bpl still_kicking
|
||||
|
||||
lda #P_CROUCHING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
still_kicking:
|
||||
|
||||
@ -235,7 +235,7 @@ still_kicking:
|
||||
; CROUCH SHOOTING
|
||||
;===================================
|
||||
|
||||
physicist_crouch_shooting:
|
||||
astronaut_crouch_shooting:
|
||||
|
||||
lda #<crouch_shooting
|
||||
sta INL
|
||||
@ -250,7 +250,7 @@ physicist_crouch_shooting:
|
||||
; JUMPING
|
||||
;===================================
|
||||
|
||||
physicist_jumping:
|
||||
astronaut_jumping:
|
||||
|
||||
lda GAIT
|
||||
cmp #32
|
||||
@ -258,22 +258,22 @@ physicist_jumping:
|
||||
|
||||
; done juming
|
||||
lda #STATE_RUNNING
|
||||
bit PHYSICIST_STATE
|
||||
bit ASTRONAUT_STATE
|
||||
beq jump_to_stand
|
||||
|
||||
jump_to_run:
|
||||
lda #0
|
||||
sta GAIT
|
||||
lda #P_RUNNING
|
||||
sta PHYSICIST_STATE
|
||||
jmp physicist_running
|
||||
sta ASTRONAUT_STATE
|
||||
jmp astronaut_running
|
||||
|
||||
jump_to_stand:
|
||||
lda #0
|
||||
sta GAIT
|
||||
lda #P_STANDING
|
||||
sta PHYSICIST_STATE
|
||||
jmp physicist_standing
|
||||
sta ASTRONAUT_STATE
|
||||
jmp astronaut_standing
|
||||
|
||||
still_jumping:
|
||||
|
||||
@ -282,16 +282,16 @@ still_jumping:
|
||||
|
||||
tax
|
||||
|
||||
lda phys_jump_progression,X
|
||||
lda astro_jump_progression,X
|
||||
sta INL
|
||||
|
||||
lda phys_jump_progression+1,X
|
||||
lda astro_jump_progression+1,X
|
||||
sta INH
|
||||
|
||||
inc GAIT
|
||||
|
||||
lda #STATE_RUNNING
|
||||
bit PHYSICIST_STATE
|
||||
bit ASTRONAUT_STATE
|
||||
beq jump_change_x_regular
|
||||
|
||||
jump_change_x_running:
|
||||
@ -313,11 +313,11 @@ jump_change_x:
|
||||
beq jump_left
|
||||
|
||||
jump_right:
|
||||
inc PHYSICIST_X
|
||||
inc ASTRONAUT_X
|
||||
jmp finally_draw_him
|
||||
|
||||
jump_left:
|
||||
dec PHYSICIST_X
|
||||
dec ASTRONAUT_X
|
||||
|
||||
jump_no_move:
|
||||
jmp finally_draw_him
|
||||
@ -328,7 +328,7 @@ jump_no_move:
|
||||
; Walking
|
||||
;================================
|
||||
|
||||
physicist_walking:
|
||||
astronaut_walking:
|
||||
lda GAIT
|
||||
cmp #40
|
||||
bcc gait_fine ; blt
|
||||
@ -342,10 +342,10 @@ gait_fine:
|
||||
|
||||
tax
|
||||
|
||||
lda phys_walk_progression,X
|
||||
lda astro_walk_progression,X
|
||||
sta INL
|
||||
|
||||
lda phys_walk_progression+1,X
|
||||
lda astro_walk_progression+1,X
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -354,7 +354,7 @@ gait_fine:
|
||||
; Running
|
||||
;================================
|
||||
|
||||
physicist_running:
|
||||
astronaut_running:
|
||||
lda GAIT
|
||||
cmp #40
|
||||
bcc run_gait_fine ; blt
|
||||
@ -368,10 +368,10 @@ run_gait_fine:
|
||||
|
||||
tax
|
||||
|
||||
lda phys_run_progression,X
|
||||
lda astro_run_progression,X
|
||||
sta INL
|
||||
|
||||
lda phys_run_progression+1,X
|
||||
lda astro_run_progression+1,X
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -381,7 +381,7 @@ run_gait_fine:
|
||||
; COLLAPSING
|
||||
;==================================
|
||||
|
||||
physicist_collapsing:
|
||||
astronaut_collapsing:
|
||||
|
||||
lda GAIT
|
||||
cmp #18
|
||||
@ -417,7 +417,7 @@ no_collapse_progress:
|
||||
; DISINTEGRATING
|
||||
;==================================
|
||||
|
||||
physicist_disintegrating:
|
||||
astronaut_disintegrating:
|
||||
|
||||
lda GAIT
|
||||
cmp #28
|
||||
@ -455,20 +455,20 @@ no_disintegrate_progress:
|
||||
; FALLING SIDEWAYS
|
||||
;==================================
|
||||
|
||||
physicist_falling_sideways:
|
||||
astronaut_falling_sideways:
|
||||
|
||||
|
||||
lda FRAMEL
|
||||
and #$3
|
||||
bne no_fall_progress
|
||||
|
||||
inc PHYSICIST_X
|
||||
inc PHYSICIST_Y ; must me mul of 2
|
||||
inc PHYSICIST_Y
|
||||
inc ASTRONAUT_X
|
||||
inc ASTRONAUT_Y ; must me mul of 2
|
||||
inc ASTRONAUT_Y
|
||||
|
||||
no_fall_progress:
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
fall_sideways_destination_smc:
|
||||
cmp #22
|
||||
bne still_falling
|
||||
@ -477,15 +477,15 @@ done_falling:
|
||||
; sta GAIT
|
||||
|
||||
lda #P_CROUCHING
|
||||
sta PHYSICIST_STATE
|
||||
jmp physicist_crouching
|
||||
sta ASTRONAUT_STATE
|
||||
jmp astronaut_crouching
|
||||
|
||||
still_falling:
|
||||
|
||||
lda #<phys_falling
|
||||
lda #<astro_falling
|
||||
sta INL
|
||||
|
||||
lda #>phys_falling
|
||||
lda #>astro_falling
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -495,7 +495,7 @@ still_falling:
|
||||
; FALLING DOWN
|
||||
;==================================
|
||||
|
||||
physicist_falling_down:
|
||||
astronaut_falling_down:
|
||||
|
||||
falling_stop_smc: ; $2C to fall, $4C for not
|
||||
bit still_falling_down
|
||||
@ -504,27 +504,27 @@ falling_stop_smc: ; $2C to fall, $4C for not
|
||||
and #$1
|
||||
bne no_fall_down_progress
|
||||
|
||||
inc PHYSICIST_Y ; must be mul of 2
|
||||
inc PHYSICIST_Y
|
||||
inc ASTRONAUT_Y ; must be mul of 2
|
||||
inc ASTRONAUT_Y
|
||||
|
||||
no_fall_down_progress:
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
fall_down_destination_smc:
|
||||
cmp #22
|
||||
bne still_falling_down
|
||||
done_falling_down:
|
||||
|
||||
lda #P_CROUCHING
|
||||
sta PHYSICIST_STATE
|
||||
jmp physicist_crouching
|
||||
sta ASTRONAUT_STATE
|
||||
jmp astronaut_crouching
|
||||
|
||||
still_falling_down:
|
||||
|
||||
lda #<phys_stand
|
||||
lda #<astro_stand
|
||||
sta INL
|
||||
|
||||
lda #>phys_stand
|
||||
lda #>astro_stand
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -535,7 +535,7 @@ still_falling_down:
|
||||
; IMPALED
|
||||
;==================================
|
||||
|
||||
physicist_impaled:
|
||||
astronaut_impaled:
|
||||
|
||||
lda GAIT
|
||||
cmp #$80
|
||||
@ -550,16 +550,16 @@ impale_not_done:
|
||||
|
||||
cmp #2 ; slide down one more
|
||||
bne impale_enough
|
||||
inc PHYSICIST_Y
|
||||
inc PHYSICIST_Y
|
||||
inc ASTRONAUT_Y
|
||||
inc ASTRONAUT_Y
|
||||
|
||||
impale_enough:
|
||||
inc GAIT
|
||||
|
||||
lda #<physicist_spike_sprite
|
||||
lda #<astronaut_spike_sprite
|
||||
sta INL
|
||||
|
||||
lda #>physicist_spike_sprite
|
||||
lda #>astronaut_spike_sprite
|
||||
sta INH
|
||||
|
||||
jmp finally_draw_him
|
||||
@ -570,10 +570,10 @@ impale_enough:
|
||||
|
||||
|
||||
finally_draw_him:
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
sta XPOS
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
sec
|
||||
sbc EARTH_OFFSET ; adjust for earthquakes
|
||||
sta YPOS
|
||||
@ -600,7 +600,7 @@ facing_right:
|
||||
check_screen_limit:
|
||||
|
||||
clc
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
adc #$80
|
||||
cmp LEFT_WALK_LIMIT
|
||||
bcs just_fine_left ; (bge==bcs)
|
||||
@ -608,7 +608,7 @@ check_screen_limit:
|
||||
left_on_screen:
|
||||
|
||||
; if limit was -4, means we are off screen
|
||||
; otherwise, stop physicist at limit
|
||||
; otherwise, stop astronaut at limit
|
||||
|
||||
lda LEFT_WALK_LIMIT
|
||||
cmp #($80 - 4)
|
||||
@ -616,12 +616,12 @@ left_on_screen:
|
||||
|
||||
left_stop_at_barrier:
|
||||
lda #0
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda LEFT_WALK_LIMIT
|
||||
sec
|
||||
sbc #$7f
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
|
||||
rts
|
||||
|
||||
@ -634,7 +634,7 @@ just_fine_left:
|
||||
|
||||
; Check right edge of screen
|
||||
|
||||
; lda PHYSICIST_X
|
||||
; lda ASTRONAUT_X
|
||||
cmp RIGHT_WALK_LIMIT
|
||||
bcc just_fine_right ; blt
|
||||
|
||||
@ -642,7 +642,7 @@ just_fine_left:
|
||||
right_on_screen:
|
||||
|
||||
; if limit was 39, means we are off screen
|
||||
; otherwise, stop physicist at limit
|
||||
; otherwise, stop astronaut at limit
|
||||
|
||||
lda RIGHT_WALK_LIMIT
|
||||
cmp #($80 + 39)
|
||||
@ -650,12 +650,12 @@ right_on_screen:
|
||||
|
||||
right_stop_at_barrier:
|
||||
lda #0
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda RIGHT_WALK_LIMIT
|
||||
clc
|
||||
adc #$7f
|
||||
sta PHYSICIST_X
|
||||
sta ASTRONAUT_X
|
||||
rts
|
||||
|
||||
too_far_right:
|
@ -16,9 +16,9 @@ fire_blast:
|
||||
lda blast0_out
|
||||
bne done_fire_blast
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
sta COLLISION_X
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
sta COLLISION_Y
|
||||
|
||||
; activate blast slot
|
||||
@ -39,11 +39,11 @@ fire_blast:
|
||||
|
||||
; set y
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
clc
|
||||
adc #4
|
||||
|
||||
ldx PHYSICIST_STATE
|
||||
ldx ASTRONAUT_STATE
|
||||
cpx #P_CROUCH_SHOOTING
|
||||
bne blast_ypos_done
|
||||
|
||||
@ -67,7 +67,7 @@ blast_ypos_done:
|
||||
blast_left:
|
||||
jsr calc_gun_left_collision
|
||||
|
||||
ldx PHYSICIST_X
|
||||
ldx ASTRONAUT_X
|
||||
dex
|
||||
stx blast0_end
|
||||
|
||||
@ -81,7 +81,7 @@ blast_left:
|
||||
blast_right:
|
||||
jsr calc_gun_right_collision
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
clc
|
||||
adc #5
|
||||
sta blast0_start
|
||||
|
@ -3,7 +3,7 @@ TARGET_DOOR = $10
|
||||
TARGET_SHIELD = $20
|
||||
TARGET_FRIEND = $30
|
||||
TARGET_ALIEN = $40
|
||||
TARGET_PHYSICIST= $80
|
||||
TARGET_ASTRONAUT= $80
|
||||
|
||||
;=============================
|
||||
;=============================
|
||||
@ -33,7 +33,7 @@ recalc_walk_left:
|
||||
dey
|
||||
recalc_walk_left_loop:
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp (DOOR_X),Y
|
||||
bcc recalc_walk_left_continue ; blt
|
||||
|
||||
@ -41,7 +41,7 @@ recalc_walk_left_loop:
|
||||
lda (DOOR_Y),Y
|
||||
clc
|
||||
adc #4
|
||||
cmp PHYSICIST_Y
|
||||
cmp ASTRONAUT_Y
|
||||
bne recalc_walk_left_continue
|
||||
|
||||
; only if closer than previous found
|
||||
@ -75,10 +75,10 @@ recalc_walk_right_loop:
|
||||
lda (DOOR_Y),Y
|
||||
clc
|
||||
adc #4
|
||||
cmp PHYSICIST_Y
|
||||
cmp ASTRONAUT_Y
|
||||
bne recalc_walk_right_continue
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp (DOOR_X),Y
|
||||
bcs recalc_walk_right_continue ; bge
|
||||
|
||||
@ -273,25 +273,25 @@ done_calc_gun_right_friend_collision:
|
||||
calc_gun_right_physicist:
|
||||
|
||||
lda COLLISION_X
|
||||
cmp PHYSICIST_X
|
||||
cmp ASTRONAUT_X
|
||||
bcs calc_gun_right_physicist_continue ; bge
|
||||
|
||||
; only if closer than previous found
|
||||
lda RIGHT_SHOOT_LIMIT
|
||||
cmp PHYSICIST_X
|
||||
cmp ASTRONAUT_X
|
||||
bcc calc_gun_right_physicist_continue ; blt
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_DISINTEGRATING
|
||||
beq calc_gun_right_physicist_continue
|
||||
|
||||
calc_gun_right_physicist_there:
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
sta RIGHT_SHOOT_LIMIT
|
||||
|
||||
; set target if hit
|
||||
lda #TARGET_PHYSICIST
|
||||
lda #TARGET_ASTRONAUT
|
||||
sta RIGHT_SHOOT_TARGET
|
||||
|
||||
calc_gun_right_physicist_continue:
|
||||
@ -517,25 +517,25 @@ done_calc_gun_left_friend_collision:
|
||||
calc_gun_left_physicist:
|
||||
|
||||
lda COLLISION_X
|
||||
cmp PHYSICIST_X
|
||||
cmp ASTRONAUT_X
|
||||
beq calc_gun_left_physicist_continue ; ble (not w self)
|
||||
bcc calc_gun_left_physicist_continue ; blt
|
||||
|
||||
; only if closer than previous found
|
||||
lda LEFT_SHOOT_LIMIT
|
||||
cmp PHYSICIST_X
|
||||
cmp ASTRONAUT_X
|
||||
bcs calc_gun_left_physicist_continue ; bge
|
||||
|
||||
lda PHYSICIST_STATE
|
||||
lda ASTRONAUT_STATE
|
||||
cmp #P_DISINTEGRATING
|
||||
beq calc_gun_left_physicist_continue
|
||||
|
||||
calc_gun_left_physicist_there:
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
sta LEFT_SHOOT_LIMIT
|
||||
; set target if hit
|
||||
lda #TARGET_PHYSICIST
|
||||
lda #TARGET_ASTRONAUT
|
||||
sta LEFT_SHOOT_TARGET
|
||||
|
||||
calc_gun_left_physicist_continue:
|
||||
|
@ -149,10 +149,10 @@ handle_doors_open:
|
||||
lda (DOOR_Y),Y
|
||||
clc
|
||||
adc #4
|
||||
cmp PHYSICIST_Y
|
||||
cmp ASTRONAUT_Y
|
||||
bne close_door
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp (DOOR_XMAX),Y
|
||||
bcs close_door ; bge
|
||||
|
||||
@ -175,10 +175,10 @@ handle_doors_closed:
|
||||
lda (DOOR_Y),Y
|
||||
clc
|
||||
adc #4
|
||||
cmp PHYSICIST_Y
|
||||
cmp ASTRONAUT_Y
|
||||
bne handle_doors_continue
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
cmp (DOOR_XMAX),Y
|
||||
bcs handle_doors_continue
|
||||
|
||||
|
@ -152,7 +152,7 @@ draw_gun_charging:
|
||||
|
||||
zap_left:
|
||||
|
||||
ldx PHYSICIST_X
|
||||
ldx ASTRONAUT_X
|
||||
dex
|
||||
dex
|
||||
stx XPOS
|
||||
@ -161,17 +161,17 @@ zap_left:
|
||||
|
||||
zap_right:
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
clc
|
||||
adc #5
|
||||
sta XPOS
|
||||
done_zap:
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
clc
|
||||
adc #4
|
||||
|
||||
ldy PHYSICIST_STATE
|
||||
ldy ASTRONAUT_STATE
|
||||
cpy #P_CROUCH_SHOOTING
|
||||
bne done_zap_ypos
|
||||
clc
|
||||
|
@ -44,9 +44,9 @@ laser1_count: .byte $0
|
||||
;=========================
|
||||
|
||||
fire_laser:
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
sta COLLISION_X
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
sta COLLISION_Y
|
||||
|
||||
lda laser0_out
|
||||
@ -63,11 +63,11 @@ fire_laser:
|
||||
|
||||
; set y
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
clc
|
||||
adc #4
|
||||
|
||||
ldx PHYSICIST_STATE
|
||||
ldx ASTRONAUT_STATE
|
||||
cpx #P_CROUCH_SHOOTING
|
||||
bne laser_crouch_done
|
||||
laser_crouch:
|
||||
@ -90,7 +90,7 @@ laser_left:
|
||||
|
||||
jsr calc_gun_left_collision
|
||||
|
||||
ldx PHYSICIST_X
|
||||
ldx ASTRONAUT_X
|
||||
dex
|
||||
stx laser0_end
|
||||
|
||||
@ -105,7 +105,7 @@ laser_right:
|
||||
|
||||
jsr calc_gun_right_collision
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
clc
|
||||
adc #5
|
||||
sta laser0_start
|
||||
@ -304,7 +304,7 @@ hit_something_common:
|
||||
cmp #TARGET_FRIEND
|
||||
beq laser_hit_friend
|
||||
|
||||
cmp #TARGET_PHYSICIST
|
||||
cmp #TARGET_ASTRONAUT
|
||||
beq laser_hit_physicist
|
||||
|
||||
; FIXME: reduce shields if hit them?
|
||||
@ -341,7 +341,7 @@ laser_hit_friend:
|
||||
laser_hit_physicist:
|
||||
|
||||
lda #P_DISINTEGRATING
|
||||
sta PHYSICIST_STATE
|
||||
sta ASTRONAUT_STATE
|
||||
|
||||
lda #0
|
||||
sta GAIT
|
||||
|
@ -59,7 +59,7 @@ found_shield_slot:
|
||||
|
||||
; set y
|
||||
|
||||
lda PHYSICIST_Y
|
||||
lda ASTRONAUT_Y
|
||||
sta shield_y,X
|
||||
|
||||
; set x
|
||||
@ -68,7 +68,7 @@ found_shield_slot:
|
||||
|
||||
shield_left:
|
||||
|
||||
ldy PHYSICIST_X
|
||||
ldy ASTRONAUT_X
|
||||
dey
|
||||
tya
|
||||
sta shield_x,X
|
||||
@ -77,7 +77,7 @@ shield_left:
|
||||
|
||||
shield_right:
|
||||
|
||||
lda PHYSICIST_X
|
||||
lda ASTRONAUT_X
|
||||
clc
|
||||
adc #5
|
||||
sta shield_x,X
|
||||
|
@ -195,7 +195,7 @@ STATE_NO_KEYPRESS = $80
|
||||
STATE_CROUCHING = $40
|
||||
STATE_RUNNING = $20
|
||||
|
||||
PHYSICIST_STATE = $EA
|
||||
ASTRONAUT_STATE = $EA
|
||||
P_STANDING = $00
|
||||
P_WALKING = $01
|
||||
P_RUNNING = $02 | STATE_RUNNING
|
||||
@ -225,10 +225,10 @@ DRAW_PAGE = $EE ; ALL
|
||||
OFFSET = $EF
|
||||
|
||||
INTRO_LOOPL = $F0 ; INTRO
|
||||
PHYSICIST_X = $F0 ; ALL
|
||||
ASTRONAUT_X = $F0 ; ALL
|
||||
|
||||
INTRO_LOOPH = $F1 ; INTRO
|
||||
PHYSICIST_Y = $F1 ; ALL
|
||||
ASTRONAUT_Y = $F1 ; ALL
|
||||
|
||||
SPRITETEMP = $F2 ; ALL
|
||||
XPOS = $F3 ; ALL
|
||||
|
Loading…
Reference in New Issue
Block a user