1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-15 02:29:32 +00:00

removed DIRECT_SCREEN define

git-svn-id: svn://svn.cc65.org/cc65/trunk@176 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cpg 2000-07-21 08:26:44 +00:00
parent 2f933e35d7
commit 72294dc011
5 changed files with 3 additions and 114 deletions

View File

@ -2,7 +2,7 @@
# makefile for CC65 Atari runtime library
#
ATARIDEFS = -DDIRECT_SCREEN
ATARIDEFS =
.SUFFIXES: .o .s .c

View File

@ -19,11 +19,7 @@ _cclear:
cmp #0 ; Is the length zero?
beq L9 ; Jump if done
sta tmp1
.ifdef DIRECT_SCREEN
L1: lda #0 ; Blank - screen code
.else
L1: lda #$20 ; Blank
.endif
jsr cputdirect ; Direct output
dec tmp1
bne L1

View File

@ -19,11 +19,7 @@ _chline:
cmp #0 ; Is the length zero?
beq L9 ; Jump if done
sta tmp1
.ifdef DIRECT_SCREEN
L1: lda #$12+64 ; Horizontal line, screen code
.else
L1: lda #$12 ; Horizontal line
.endif
jsr cputdirect ; Direct output
dec tmp1
bne L1

View File

@ -5,11 +5,7 @@
;
.export _clrscr
.include "atari.inc"
.ifdef DIRECT_SCREEN
.importzp ptr1
_clrscr:lda SAVMSC ; screen memory
@ -37,11 +33,3 @@ done: sta COLCRS
sta ROWCRS
rts
.else
.import putchar
_clrscr:
lda #ATCLR
jmp putchar
.endif

View File

@ -8,6 +8,8 @@
.export _cputcxy, _cputc
.export plot, cputdirect, putchar
.import popa, _gotoxy, mul40
.importzp tmp4,ptr4
.import _revflag
.include "atari.inc"
@ -17,11 +19,6 @@ _cputcxy:
jsr _gotoxy ; Set cursor, drop x
pla ; Restore C
.ifdef DIRECT_SCREEN
.importzp tmp4,ptr4
.import _revflag
_cputc:
cmp #$0D ; CR
bne L4
@ -87,91 +84,3 @@ L3: clc
.rodata
ataint: .byte 64,0,32,96
;****************************************************************
.else ;***** above DIRECT_SCREEN, below thru OS ***************
;****************************************************************
.import __do_oserror,cursor,__oserror
; Plot a character - also used as internal function
_cputc: cmp #$0D ; CR?
bne L1
lda #0
sta COLCRS
beq plot ; Recalculate pointers
; don't know whether this is needed. the compiler generates
; already ATEOL chars for \n
L1: cmp #$0A ; LF?
bne L2
lda #ATEOL
; Printable char of some sort
L2:
cputdirect:
pha
and #$7f
cmp #32 ; control char?
bcs goon
lda #$1b
jsr putchar
goon: pla
jsr putchar ; Write the character to the screen
plot: ldy COLCRS
ldx ROWCRS
rts
; Write one character to the screen without doing anything else, return X
; position in Y
putchar:
.if 0
tax
lda #>(retr-1)
pha
lda #<(retr-1)
pha
lda ICPTH
pha
lda ICPTL
pha
lda #0
sta LOGCOL
txa
rts
retr:
.endif
.if 1
pha
ldx #0 ; iocb #0 (screen editor)
txa
sta ICBLL,x
sta ICBLH,x
sta ICBAL,x
sta ICBAH,x
lda #PUTCHR
sta ICCOM,x
lda cursor
beq putc7
lda #0
beq putc8
putc7: lda #1
putc8: sta CRSINH
pla
jsr CIOV
bpl putc9
jmp __do_oserror ; update system specific error code
putc9: tya
ldx #0
stx __oserror
ldy COLCRS
.endif
rts
.endif ; not defined DIRECT_SCREEN