diff --git a/src/main.S b/src/main.S index 6e1d061..bc070e2 100644 --- a/src/main.S +++ b/src/main.S @@ -23,32 +23,33 @@ ldal $00C054 ; select text page 1 (there are 2) ldal $00C056 ; select "low res" graphics - rep #$30 +* rep #$30 ; show the current char on screen ; first check and discard to clear strobe, then enter loop ldx #0 eloop stal $000400,X - ldal $00C000 clc - cmp $8888 -* bcs down + ldal $00C010 + bit %1 + bne hndlkey + jmp eloop + +hndlkey cmp #$1088 + beq down clc - cmp $9595 - bcs up + cmp #$1095 + beq up + jmp eloop + +up inx jmp eloop down dex - dex - jmp eloop -up clc - cpx #50 - bcs eloop - inx - inx jmp eloop + ; working text blit * ldx #hithere+2 ; strl, first two bytes are strlen, # denotes immediate addr val * ldy #$0400 ; start of text buffer on 00 @@ -62,6 +63,7 @@ up clc SPEAKER equ $E0C030 PRODOS16 equ $E100A8 + jsl PRODOS16 ; This exit code is "device busy", why is it the only one @@ -77,6 +79,48 @@ QP adrl $0000 da $00 hithere strl "this was excruciating" +brkboi brk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +