From: Christian Groessler Date: Tue, 2 Apr 2019 17:10:52 +0000 (+0200) Subject: atari: split color.s into bordercolor.s and bgcolor.s X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=be5c212e212964fd68eacff0562cd40b73213a62;p=cc65 atari: split color.s into bordercolor.s and bgcolor.s --- diff --git a/include/atari.h b/include/atari.h index a0d4a3d27..899a6ac51 100644 --- a/include/atari.h +++ b/include/atari.h @@ -491,5 +491,11 @@ extern void atrx15p2_tgi[]; #define PxCTL_IRQ_STATUS 0x80 +/* The following #defines will cause the matching functions calls in conio.h +** to be overlaid by macros with the same names, saving the function call +** overhead. +*/ +#define _textcolor(color) 1 + /* End of atari.h */ #endif diff --git a/libsrc/atari/bgcolor.s b/libsrc/atari/bgcolor.s new file mode 100644 index 000000000..928dfff9a --- /dev/null +++ b/libsrc/atari/bgcolor.s @@ -0,0 +1,22 @@ +; +; Christian Groessler, 02-Apr-2019 +; + + .export _bgcolor + + .include "atari.inc" + + +_bgcolor: + ldx COLOR2 ; get old value + sta COLOR2 ; set new value + and #$0e + cmp #8 + bcs bright + lda #$0e + .byte $2c ; bit opcode, eats the next 2 bytes +bright: lda #0 + sta COLOR1 + txa + ldx #0 ; fix X + rts diff --git a/libsrc/atari/bordercolor.s b/libsrc/atari/bordercolor.s new file mode 100644 index 000000000..b519686c5 --- /dev/null +++ b/libsrc/atari/bordercolor.s @@ -0,0 +1,15 @@ +; +; Christian Groessler, 02-Apr-2019 +; + + .export _bordercolor + + .include "atari.inc" + + +_bordercolor: + ldx COLOR4 ; get old value + sta COLOR4 ; set new value + txa + ldx #0 ; fix X + rts diff --git a/libsrc/atari/color.s b/libsrc/atari/color.s deleted file mode 100644 index 57d0036c9..000000000 --- a/libsrc/atari/color.s +++ /dev/null @@ -1,34 +0,0 @@ -; -; Christian Groessler, 27-Dec-2002 -; - - .export _textcolor, _bgcolor, _bordercolor - .import return1 - - .include "atari.inc" - - -_textcolor = return1 - -_bgcolor: - ldx COLOR2 ; get old value - sta COLOR2 ; set new value - and #$0e - cmp #8 - bcs bright - lda #$0e - .byte $2c ; bit opcode, eats the next 2 bytes -bright: lda #0 - sta COLOR1 - txa - ldx #0 ; fix X - rts - - -_bordercolor: - ldx COLOR4 ; get old value - sta COLOR4 ; set new value - txa - ldx #0 ; fix X - rts -