4cade/src/demo/galaxian.a

64 lines
1.3 KiB
Plaintext

;license:MIT
;(c) 2021-2022 by Frank M., qkumba
!cpu 6502
!to "build/DEMO/GALAXIAN#060320",plain
*=$320
!source "src/constants.a" ; no code in these
!source "src/macros.a"
+ENABLE_ACCEL_LC
+LOAD_XSINGLE title
lda #$60
sta $5813
jsr $5800 ; decompress
ldx #0
stx $83F
inx
stx $847 ; reset vector fix
lda #$2C
sta $1909
sta $190C ; ignore joystick buttons
ldx #5-1
- lda patch1, x
sta $8E5, x ; exit on keypress during title screen
lda patch2, x
sta $E50, x ; exit on keypress during demo
dex
bpl -
lda #<callback
sta $8FF+1
lda #>callback
sta $8FF+2 ; set exit at end of demo cycle
+DISABLE_ACCEL
jmp $800
callback dec count
bne +
ldx #0
stx $8FF+1
inx
stx $8FF+2 ; exit after 3 times
+ jmp $A00
count !byte $03
patch1 !byte $10,$05,$4C,$00,$01
patch2 !byte $10,$49,$4C,$00,$01
title !byte x_e-x_b
x_b !text "GALAXIAN"
x_e
!if * > $3F0 {
!error "code is too large, ends at ", *
}