]> git.sur5r.net Git - cc65/blob - libsrc/pce/color.s
more cleanup, joystick works again
[cc65] / libsrc / pce / color.s
1 ;
2 ; unsigned char __fastcall__ textcolor (unsigned char color);
3 ; unsigned char __fastcall__ bgcolor (unsigned char color);
4 ; unsigned char __fastcall__ bordercolor (unsigned char color);
5 ;
6
7
8                 .export     _textcolor, _bgcolor, _bordercolor
9
10                 .include    "pce.inc"
11
12 _textcolor:
13                 ldx     CHARCOLOR       ; get old value
14                 sta     CHARCOLOR       ; set new value
15                 txa
16                 rts
17
18 _bgcolor:
19                 ldx     BGCOLOR         ; get old value
20                 sta     BGCOLOR         ; set new value
21                 asl a
22                 tay
23
24                 stz     VCE_ADDR_LO
25                 stz     VCE_ADDR_HI
26                 lda     colors,y
27                 sta     VCE_DATA_LO
28                 lda     colors+1,y
29                 sta     VCE_DATA_HI
30
31                 txa
32                 rts
33
34 _bordercolor:
35                 lda #0
36                 txa
37                 rts
38
39                 .export colors
40
41 colors:               ; G      R      B
42                 .word ((0<<6)+(0<<3)+(0))           ; 0 black
43                 .word ((7<<6)+(7<<3)+(7))           ; 1 white
44                 .word ((0<<6)+(7<<3)+(0))           ; 2 red
45                 .word ((7<<6)+(0<<3)+(7))           ; 3 cyan
46                 .word ((0<<6)+(5<<3)+(7))           ; 4 violett
47                 .word ((7<<6)+(0<<3)+(0))           ; 5 green
48                 .word ((0<<6)+(0<<3)+(7))           ; 6 blue
49                 .word ((7<<6)+(7<<3)+(0))           ; 7 yellow
50                 .word ((5<<6)+(7<<3)+(0))           ; 8 orange
51                 .word ((3<<6)+(4<<3)+(3))           ; 9 brown
52                 .word ((4<<6)+(7<<3)+(4))           ; a light red
53                 .word ((3<<6)+(3<<3)+(3))           ; b dark grey
54                 .word ((4<<6)+(4<<3)+(4))           ; c middle grey
55                 .word ((7<<6)+(4<<3)+(4))           ; d light green
56                 .word ((4<<6)+(4<<3)+(7))           ; e light blue
57                 .word ((6<<6)+(6<<3)+(6))           ; f light gray