X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fnes%2Fcputc.s;h=10915028b9fd78b4526f8a5696825e90b4efa1f6;hb=85885001b133e2dc320b6f6459259afa69784ca8;hp=57f3244b2cbc7c68ccfef83e3dab5a250a23f253;hpb=44fd1082ae807a0b6b4046c65914e20a7e27101c;p=cc65 diff --git a/libsrc/nes/cputc.s b/libsrc/nes/cputc.s index 57f3244b2..10915028b 100644 --- a/libsrc/nes/cputc.s +++ b/libsrc/nes/cputc.s @@ -6,73 +6,73 @@ ; void cputc (char c); ; - .export _cputcxy, _cputc, cputdirect, putchar - .export newline + .export _cputcxy, _cputc, cputdirect, putchar + .export newline .constructor initconio - .import popa, _gotoxy + .import popa, _gotoxy .import ppuinit, paletteinit, ppubuf_put .import setcursor .importzp tmp3,tmp4 - .include "nes.inc" + .include "nes.inc" ;----------------------------------------------------------------------------- .code _cputcxy: - pha ; Save C - jsr popa ; Get Y - jsr _gotoxy ; Set cursor, drop x - pla ; Restore C + pha ; Save C + jsr popa ; Get Y + jsr _gotoxy ; Set cursor, drop x + pla ; Restore C ; Plot a character - also used as internal function -_cputc: cmp #$0d ; CR? - bne L1 - lda #0 - sta CURS_X - beq plot ; Recalculate pointers +_cputc: cmp #$0d ; CR? + bne L1 + lda #0 + sta CURS_X + beq plot ; Recalculate pointers -L1: cmp #$0a ; LF? - beq newline ; Recalculate pointers +L1: cmp #$0a ; LF? + beq newline ; Recalculate pointers ; Printable char of some sort cputdirect: - jsr putchar ; Write the character to the screen + jsr putchar ; Write the character to the screen ; Advance cursor position advance: - ldy CURS_X - iny - cpy #xsize - bne L3 - inc CURS_Y ; new line - ldy #0 ; + cr -L3: sty CURS_X - jmp plot + ldy CURS_X + iny + cpy #xsize + bne L3 + inc CURS_Y ; new line + ldy #0 ; + cr +L3: sty CURS_X + jmp plot newline: - inc CURS_Y + inc CURS_Y ; Set cursor position, calculate RAM pointers -plot: ldy CURS_X - ldx CURS_Y - jmp setcursor ; Set the new cursor +plot: ldy CURS_X + ldx CURS_Y + jmp setcursor ; Set the new cursor ; Write one character to the screen without doing anything else, return X ; position in Y putchar: - ora RVS ; Set revers bit + ora RVS ; Set revers bit ldy SCREEN_PTR+1 - ldx SCREEN_PTR - jmp ppubuf_put + ldx SCREEN_PTR + jmp ppubuf_put ;----------------------------------------------------------------------------- ; Initialize the conio subsystem. Code goes into the INIT segment, which may @@ -82,12 +82,12 @@ putchar: initconio: jsr ppuinit - jsr paletteinit + jsr paletteinit - lda #0 - sta RVS - sta CURS_X - sta CURS_Y + lda #0 + sta RVS + sta CURS_X + sta CURS_Y jmp plot ; Set the cursor