From aed2add6ce2df27248d5a344e3737a021bcc79ec Mon Sep 17 00:00:00 2001 From: David Stancu Date: Mon, 29 Jan 2018 23:20:16 -0500 Subject: [PATCH] cleaned up a bit with reliable inx dex branches, but need to look at it more to figure out the weird text effect --- src/main.S | 70 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 57 insertions(+), 13 deletions(-) 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +