]> git.sur5r.net Git - cc65/blobdiff - libsrc/c64/soft80_cputc.s
Merge pull request #431 from polluks/patch-2
[cc65] / libsrc / c64 / soft80_cputc.s
index 92aa728de1f280a8f467c0e8b7cfeb67baac10e6..f00f7792f0684171e14d45bb310dc0f7e94447f1 100644 (file)
@@ -1,6 +1,8 @@
 ;
 ; Groepaz/Hitmen, 11.10.2015
 ;
+; high level implementation for the soft80 implementation
+;
 ; void cputcxy (unsigned char x, unsigned char y, char c);
 ; void cputc (char c);
 ;
         .export         soft80_newline, soft80_plot
         .export         soft80_checkchar
 
-        .import         popa, _gotoxy
+        .import         gotoxy
 
         .import         soft80_kplot
-        .import         soft80_internal_bgcolor, soft80_internal_textcolor
+        .import         soft80_internal_bgcolor, soft80_internal_cellcolor
         .import         soft80_internal_cursorxlsb
 
         .importzp       tmp4,tmp3
@@ -23,8 +25,7 @@
 
 soft80_cputcxy:
         pha                     ; Save C
-        jsr     popa            ; Get Y
-        jsr     _gotoxy         ; Set cursor, drop x
+        jsr     gotoxy          ; Set cursor, drop x and y
         pla                     ; Restore C
 
 ; Plot a character - also used as internal function
@@ -148,7 +149,7 @@ draw_spaceinvers:
 .if SOFT80COLORVOODOO = 1
         jsr     soft80_putcolor
 .else
-        lda     CHARCOLOR
+        lda     soft80_internal_cellcolor
         sta     (CRAM_PTR),y    ; vram
 .endif
 
@@ -232,7 +233,7 @@ soft80_putchar:
 .if SOFT80COLORVOODOO = 1
         jsr     soft80_putcolor
 .else
-        lda     CHARCOLOR
+        lda     soft80_internal_cellcolor
         sta     (CRAM_PTR),y    ; vram
 .endif
 
@@ -436,7 +437,7 @@ soft80_putcolor:
         bne     @sk2            ; jump if odd xpos
 
         ; vram = textcol
-        lda     CHARCOLOR
+        lda     soft80_internal_cellcolor
         sta     (CRAM_PTR),y    ; vram
         rts
 
@@ -449,7 +450,7 @@ soft80_putcolor:
         beq     @sk3            ; jump if even xpos
 @sk2:
         ; colram = textcol
-        lda     soft80_internal_textcolor
+        lda     CHARCOLOR
         inc     $01             ; $35
         sta     (CRAM_PTR),y    ; colram
         stx     $01             ; $34
@@ -463,7 +464,7 @@ soft80_putcolor:
         stx     $01             ; $34
 @sk1:
         ; vram = textcol
-        lda     CHARCOLOR
+        lda     soft80_internal_cellcolor
         sta     (CRAM_PTR),y    ; vram
         rts