mirror of
https://github.com/robmcmullen/fujirun.git
synced 2024-06-15 16:29:44 +00:00
75 lines
1.1 KiB
ArmAsm
75 lines
1.1 KiB
ArmAsm
|
*= $06
|
||
|
|
||
|
hgr_ptr .ds 2
|
||
|
FIRST_CHAR_OF_SCREEN .ds 1
|
||
|
FRAME_COUNT .ds 1
|
||
|
|
||
|
*= $5000
|
||
|
|
||
|
start_set
|
||
|
jsr set_hires
|
||
|
jsr driver
|
||
|
jsr set_text
|
||
|
jmp forever
|
||
|
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
|
||
|
|
||
|
forever
|
||
|
jmp forever
|
||
|
|
||
|
; 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
|
||
|
|
||
|
|
||
|
*= $5074
|
||
|
page
|
||
|
; set hires page 1 only
|
||
|
lda #$20
|
||
|
sta setscr_smc+2
|
||
|
lda frame_count
|
||
|
ldy #0
|
||
|
lda #$ff
|
||
|
setscr_smc sta $ff00,y ; 4
|
||
|
iny ; 2
|
||
|
bne setscr_smc ; 4 = 10 * 256
|
||
|
inc setscr_smc+2 ; 6
|
||
|
ldx setscr_smc+2 ; 6
|
||
|
cpx #$40 ; 2
|
||
|
bcc setscr_smc ; 4
|
||
|
rts ; (18 + 10*256) * 32 = 82496
|
||
|
|
||
|
brk
|