From 3b07b8b8e3771ab297707facc043bbf78a542029 Mon Sep 17 00:00:00 2001 From: jede Date: Fri, 26 Jul 2019 23:04:54 +0200 Subject: [PATCH] Add cclear and cclearxy --- libsrc/telestrat/cclear.s | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 libsrc/telestrat/cclear.s diff --git a/libsrc/telestrat/cclear.s b/libsrc/telestrat/cclear.s new file mode 100644 index 000000000..bf875ec1a --- /dev/null +++ b/libsrc/telestrat/cclear.s @@ -0,0 +1,35 @@ +; +; 2019-07-07, Jede (jede@oric.org) +; +; void cclearxy (unsigned char x, unsigned char y, unsigned char length); +; void cclear (unsigned char length); +; + + .export _cclearxy, _cclear + .import update_adscr + + .importzp tmp1 + .import popax + .include "telestrat.inc" + + +_cclearxy: + pha ; Save the length + jsr popax ; Get X and Y + sta SCRY ; Store Y + stx SCRX ; Store X + jsr update_adscr + pla ; Restore the length and run into _cclear + +_cclear: + tax ; Is the length zero? + beq @L9 ; Jump if done +@L1: + stx tmp1 + lda #' ' + BRK_TELEMON XFWR + ldx tmp1 + dex + bne @L1 +@L9: + rts