]> git.sur5r.net Git - cc65/commitdiff
Added cclear() and cclearxy() implementations.
authorStephan Mühlstrasser <stephan.muehlstrasser@web.de>
Sun, 30 Nov 2014 13:25:16 +0000 (14:25 +0100)
committerStephan Mühlstrasser <stephan.muehlstrasser@web.de>
Sun, 30 Nov 2014 13:25:16 +0000 (14:25 +0100)
libsrc/c1p/cclear.s [new file with mode: 0644]

diff --git a/libsrc/c1p/cclear.s b/libsrc/c1p/cclear.s
new file mode 100644 (file)
index 0000000..4412f0b
--- /dev/null
@@ -0,0 +1,33 @@
+;
+; Copied from CBM implementation
+;
+; originally by:
+; Ullrich von Bassewitz, 08.08.1998
+;
+; void cclearxy (unsigned char x, unsigned char y, unsigned char length);
+; void cclear (unsigned char length);
+;
+
+        .export         _cclearxy, _cclear
+        .import         popa, _gotoxy, cputdirect
+        .importzp       tmp1
+
+_cclearxy:
+        pha                     ; Save the length
+        jsr     popa            ; Get y
+        jsr     _gotoxy         ; Call this one, will pop params
+        pla                     ; Restore the length and run into _cclear
+
+_cclear:
+        cmp     #0              ; Is the length zero?
+        beq     L9              ; Jump if done
+        sta     tmp1                                 
+L1:     lda     #$20            ; Blank - screen code
+        jsr     cputdirect      ; Direct output
+        dec     tmp1
+        bne     L1
+L9:     rts
+
+
+
+