]> git.sur5r.net Git - cc65/blobdiff - libsrc/apple2/cputc.s
fix comments
[cc65] / libsrc / apple2 / cputc.s
index 75cc99d9a325105eea811792aeab67cf2b157f9b..f3adc2f5478a7fc31f46375fdf1ec9e03e878675 100644 (file)
@@ -5,22 +5,21 @@
 ; void __fastcall__ cputc (char c);
 ;
 
-        .ifdef __APPLE2ENH__
-        .constructor   initconio
+        .ifdef  __APPLE2ENH__
+        .constructor    initconio, 17
         .endif
-        .export                _cputcxy, _cputc
-        .export                _gotoxy, cputdirect
-        .export                newline, putchar
+        .export         _cputcxy, _cputc
+        .export         cputdirect, newline, putchar
+        .import         popa, _gotoxy, VTABZ
 
-        .import                popa, VTABZ
+        .include        "apple2.inc"
 
-        .include       "apple2.inc"
+        .segment        "INIT"
 
-        .segment       "INIT"
-
-        .ifdef __APPLE2ENH__
+        .ifdef  __APPLE2ENH__
 initconio:
-        sta    SETALTCHAR      ; Switch in alternate charset
+        sta     SETALTCHAR      ; Switch in alternate charset
+        bit    LORES           ; Limit SET80COL-HISCR to text
         rts
         .endif
 
@@ -29,76 +28,67 @@ initconio:
 ; Plot a character - also used as internal function
 
 _cputcxy:
-        pha                    ; Save C
-        jsr    popa            ; Get Y
-        jsr    _gotoxy
-        pla                    ; Restore C
+        pha                     ; Save C
+        jsr     popa            ; Get Y
+        jsr     _gotoxy
+        pla                     ; Restore C
 
 _cputc:
-        cmp    #$0D            ; Test for \r = carrage return
-        beq    left
-        cmp    #$0A            ; Test for \n = line feed
-        beq    newline
-        ora    #$80            ; Turn on high bit
-        .ifndef        __APPLE2ENH__
-        cmp    #$E0            ; Test for lowercase
-        bcc    cputdirect
-        and    #$DF            ; Convert to uppercase
+        cmp     #$0D            ; Test for \r = carrage return
+        beq     left
+        cmp     #$0A            ; Test for \n = line feed
+        beq     newline
+        ora     #$80            ; Turn on high bit
+        .ifndef __APPLE2ENH__
+        cmp     #$E0            ; Test for lowercase
+        bcc     cputdirect
+        and     #$DF            ; Convert to uppercase
         .endif
 
 cputdirect:
-        jsr    putchar
-        inc    CH              ; Bump to next column
-        lda    CH
-        cmp    WNDWDTH
-        bcc    :+
-left:   lda    #$00            ; Goto left edge of screen
-        sta    CH
+        jsr     putchar
+        inc     CH              ; Bump to next column
+        lda     CH
+        cmp     WNDWDTH
+        bcc     :+
+left:   lda     #$00            ; Goto left edge of screen
+        sta     CH
 :       rts
 
 newline:
-        inc    CV              ; Bump to next line
-        lda    CV
-        cmp    WNDBTM
-        bcc    :+
-        lda    WNDTOP          ; Goto top of screen
-        sta    CV
-:       jmp    VTABZ
+        inc     CV              ; Bump to next line
+        lda     CV
+        cmp     WNDBTM
+        bcc     :+
+        lda     WNDTOP          ; Goto top of screen
+        sta     CV
+:       jmp     VTABZ
                 
 putchar:
-        .ifdef __APPLE2ENH__
-        ldy    INVFLG
-        cpy    #$FF            ; Normal character display mode?
-        beq    put
-        cmp    #$E0            ; Lowercase?
-        bcc    mask
-        and    #$7F            ; Inverse lowercase
-        bra    put
+        .ifdef  __APPLE2ENH__
+        ldy     INVFLG
+        cpy     #$FF            ; Normal character display mode?
+        beq     put
+        cmp     #$E0            ; Lowercase?
+        bcc     mask
+        and     #$7F            ; Inverse lowercase
+        bra     put
         .endif
-mask:   and    INVFLG          ; Apply normal, inverse, flash
-put:    ldy    CH
-        .ifdef __APPLE2ENH__
-        bit    RD80VID         ; In 80 column mode?
-        bpl    col40           ; No, in 40 cols
+mask:   and     INVFLG          ; Apply normal, inverse, flash
+put:    ldy     CH
+        .ifdef  __APPLE2ENH__
+        bit     RD80VID         ; In 80 column mode?
+        bpl     col40           ; No, in 40 cols
         pha
         tya
-        lsr                    ; Div by 2
+        lsr                     ; Div by 2
         tay
         pla
-        bcs    col40           ; Odd cols go in 40 col memory
-        bit    HISCR
-        sta    (BASL),Y
-        bit    LOWSCR
+        bcs     col40           ; Odd cols go in 40 col memory
+        bit     HISCR           ; Assume SET80COL
+        sta     (BASL),Y
+        bit     LOWSCR          ; Assume SET80COL
         rts
         .endif
-col40:  sta    (BASL),Y
-        rts
-
-_gotoxy:
-        clc
-        adc    WNDTOP
-        sta    CV              ; Store Y
-        jsr    VTABZ
-        jsr    popa            ; Get X
-        sta    CH              ; Store X
+col40:  sta     (BASL),Y
         rts