286 lines
4.0 KiB
ArmAsm
286 lines
4.0 KiB
ArmAsm
; AUTOGENERATED FILE; DO NOT EDIT!
|
|
;
|
|
; This file was generated by asmgen.py, a 6502 code generator sponsored by
|
|
; the Player/Missile Podcast. (The sprite compiler is based on HiSprite by
|
|
; Quinn Dunki).
|
|
;
|
|
; The code produced by asmgen is licensed under the Creative Commons
|
|
; Attribution 4.0 International (CC BY 4.0), so you are free to use the code in
|
|
; this file for any purpose. (The code generator itself is licensed under the
|
|
; GPLv3.)
|
|
|
|
FIRST_CHAR_OF_SCREEN = $06
|
|
FIRST_CHAR_OF_LINE = $07
|
|
CURRENT_CHAR = $08
|
|
FRAME_COUNT = $09
|
|
|
|
|
|
*= $5000
|
|
|
|
start_set
|
|
jsr set_hires
|
|
jsr clrscr
|
|
jsr driver
|
|
jsr set_text
|
|
rts
|
|
brk
|
|
|
|
driver
|
|
lda #$00
|
|
sta FIRST_CHAR_OF_SCREEN
|
|
lda #64
|
|
sta FRAME_COUNT
|
|
page_loop
|
|
jsr page
|
|
dec FRAME_COUNT
|
|
bne page_loop
|
|
rts
|
|
|
|
; os memory map
|
|
KEYBOARD = $c000
|
|
KBDSTROBE = $c010
|
|
CLRTEXT = $c050
|
|
SETTEXT = $c051
|
|
CLRMIXED = $c052
|
|
SETMIXED = $c053
|
|
TXTPAGE1 = $c054
|
|
TXTPAGE2 = $c055
|
|
CLRHIRES = $c056
|
|
SETHIRES = $c057
|
|
|
|
|
|
set_hires bit CLRTEXT ; start with HGR page 1, full screen
|
|
bit CLRMIXED
|
|
bit TXTPAGE1
|
|
bit SETHIRES
|
|
rts
|
|
|
|
set_text bit SETTEXT
|
|
bit CLRMIXED
|
|
bit TXTPAGE1
|
|
bit CLRHIRES
|
|
rts
|
|
|
|
; clear hires page 1 only
|
|
clrscr lda #$20
|
|
sta clrscr_smc+2
|
|
lda #0
|
|
ldy #0
|
|
clrscr_smc sta $ff00,y
|
|
iny
|
|
bne clrscr_smc
|
|
inc clrscr_smc+2
|
|
ldx clrscr_smc+2
|
|
cpx #$40
|
|
bcc clrscr_smc
|
|
rts
|
|
|
|
*= $5074
|
|
|
|
page
|
|
|
|
FASTCLEAR_2000 ; A,X clobbered
|
|
lda FRAME_COUNT
|
|
ldx #39
|
|
FASTCLEAR_2000_INNER
|
|
sta $2000,x
|
|
sta $2400,x
|
|
sta $2800,x
|
|
sta $2c00,x
|
|
sta $3000,x
|
|
sta $3400,x
|
|
sta $3800,x
|
|
sta $3c00,x
|
|
sta $2080,x
|
|
sta $2480,x
|
|
sta $2880,x
|
|
sta $2c80,x
|
|
sta $3080,x
|
|
sta $3480,x
|
|
sta $3880,x
|
|
sta $3c80,x
|
|
sta $2100,x
|
|
sta $2500,x
|
|
sta $2900,x
|
|
sta $2d00,x
|
|
sta $3100,x
|
|
sta $3500,x
|
|
sta $3900,x
|
|
sta $3d00,x
|
|
sta $2180,x
|
|
sta $2580,x
|
|
sta $2980,x
|
|
sta $2d80,x
|
|
sta $3180,x
|
|
sta $3580,x
|
|
sta $3980,x
|
|
sta $3d80,x
|
|
sta $2200,x
|
|
sta $2600,x
|
|
sta $2a00,x
|
|
sta $2e00,x
|
|
sta $3200,x
|
|
sta $3600,x
|
|
sta $3a00,x
|
|
sta $3e00,x
|
|
sta $2280,x
|
|
sta $2680,x
|
|
sta $2a80,x
|
|
sta $2e80,x
|
|
sta $3280,x
|
|
sta $3680,x
|
|
sta $3a80,x
|
|
sta $3e80,x
|
|
sta $2300,x
|
|
sta $2700,x
|
|
sta $2b00,x
|
|
sta $2f00,x
|
|
sta $3300,x
|
|
sta $3700,x
|
|
sta $3b00,x
|
|
sta $3f00,x
|
|
sta $2380,x
|
|
sta $2780,x
|
|
sta $2b80,x
|
|
sta $2f80,x
|
|
sta $3380,x
|
|
sta $3780,x
|
|
sta $3b80,x
|
|
sta $3f80,x
|
|
sta $2028,x
|
|
sta $2428,x
|
|
sta $2828,x
|
|
sta $2c28,x
|
|
sta $3028,x
|
|
sta $3428,x
|
|
sta $3828,x
|
|
sta $3c28,x
|
|
sta $20a8,x
|
|
sta $24a8,x
|
|
sta $28a8,x
|
|
sta $2ca8,x
|
|
sta $30a8,x
|
|
sta $34a8,x
|
|
sta $38a8,x
|
|
sta $3ca8,x
|
|
sta $2128,x
|
|
sta $2528,x
|
|
sta $2928,x
|
|
sta $2d28,x
|
|
sta $3128,x
|
|
sta $3528,x
|
|
sta $3928,x
|
|
sta $3d28,x
|
|
sta $21a8,x
|
|
sta $25a8,x
|
|
sta $29a8,x
|
|
sta $2da8,x
|
|
sta $31a8,x
|
|
sta $35a8,x
|
|
sta $39a8,x
|
|
sta $3da8,x
|
|
sta $2228,x
|
|
sta $2628,x
|
|
sta $2a28,x
|
|
sta $2e28,x
|
|
sta $3228,x
|
|
sta $3628,x
|
|
sta $3a28,x
|
|
sta $3e28,x
|
|
sta $22a8,x
|
|
sta $26a8,x
|
|
sta $2aa8,x
|
|
sta $2ea8,x
|
|
sta $32a8,x
|
|
sta $36a8,x
|
|
sta $3aa8,x
|
|
sta $3ea8,x
|
|
sta $2328,x
|
|
sta $2728,x
|
|
sta $2b28,x
|
|
sta $2f28,x
|
|
sta $3328,x
|
|
sta $3728,x
|
|
sta $3b28,x
|
|
sta $3f28,x
|
|
sta $23a8,x
|
|
sta $27a8,x
|
|
sta $2ba8,x
|
|
sta $2fa8,x
|
|
sta $33a8,x
|
|
sta $37a8,x
|
|
sta $3ba8,x
|
|
sta $3fa8,x
|
|
sta $2050,x
|
|
sta $2450,x
|
|
sta $2850,x
|
|
sta $2c50,x
|
|
sta $3050,x
|
|
sta $3450,x
|
|
sta $3850,x
|
|
sta $3c50,x
|
|
sta $20d0,x
|
|
sta $24d0,x
|
|
sta $28d0,x
|
|
sta $2cd0,x
|
|
sta $30d0,x
|
|
sta $34d0,x
|
|
sta $38d0,x
|
|
sta $3cd0,x
|
|
sta $2150,x
|
|
sta $2550,x
|
|
sta $2950,x
|
|
sta $2d50,x
|
|
sta $3150,x
|
|
sta $3550,x
|
|
sta $3950,x
|
|
sta $3d50,x
|
|
sta $21d0,x
|
|
sta $25d0,x
|
|
sta $29d0,x
|
|
sta $2dd0,x
|
|
sta $31d0,x
|
|
sta $35d0,x
|
|
sta $39d0,x
|
|
sta $3dd0,x
|
|
sta $2250,x
|
|
sta $2650,x
|
|
sta $2a50,x
|
|
sta $2e50,x
|
|
sta $3250,x
|
|
sta $3650,x
|
|
sta $3a50,x
|
|
sta $3e50,x
|
|
sta $22d0,x
|
|
sta $26d0,x
|
|
sta $2ad0,x
|
|
sta $2ed0,x
|
|
sta $32d0,x
|
|
sta $36d0,x
|
|
sta $3ad0,x
|
|
sta $3ed0,x
|
|
sta $2350,x
|
|
sta $2750,x
|
|
sta $2b50,x
|
|
sta $2f50,x
|
|
sta $3350,x
|
|
sta $3750,x
|
|
sta $3b50,x
|
|
sta $3f50,x
|
|
sta $23d0,x
|
|
sta $27d0,x
|
|
sta $2bd0,x
|
|
sta $2fd0,x
|
|
sta $33d0,x
|
|
sta $37d0,x
|
|
sta $3bd0,x
|
|
sta $3fd0,x
|
|
dex
|
|
bmi FASTCLEAR_2000_RTS
|
|
|
|
jmp FASTCLEAR_2000_INNER
|
|
FASTCLEAR_2000_RTS
|
|
rts
|
|
|
|
|