color cleanup and brightness

This commit is contained in:
2024-05-19 21:42:39 +02:00
parent 7894359f30
commit d9fd18d799
8 changed files with 126 additions and 97 deletions

View File

@ -1,7 +1,5 @@
#include "colors.h"
#define DF 5
#define DF_M 3
.section ".rodata","a"
;; color definitions according to
;; https://learn.sparkfun.com/tutorials/lilypad-protosnap-plus-activity-guide/3-custom-color-mixing
@ -9,43 +7,49 @@ colors:
.global colors
;; red, green, blue, padding
.byte 0x00, 0x00, 0x00, 0 ;; off
.byte 0x00>>DF, 0x00>>DF, 0xff>>DF, 0 ;; blue
.byte 0x00>>DF, 0xff>>DF, 0x00>>DF, 0 ;; green
.byte 0xff>>DF, 0x80>>DF, 0x00>>DF, 0 ;; orange
.byte 0xff>>DF, 0x00>>DF, 0x80>>DF, 0 ;; rose
.byte 0xff>>DF, 0x00>>DF, 0xff>>DF, 0 ;; magenta
.byte 0x80>>DF, 0x00>>DF, 0xff>>DF, 0 ;; violet
.byte 0x00>>DF, 0x80>>DF, 0xff>>DF, 0 ;; azure
.byte 0x00>>DF, 0xff>>DF, 0xff>>DF, 0 ;; cyan
.byte 0x00>>DF, 0xff>>DF, 0x80>>DF, 0 ;; springgreen
.byte 0x80>>DF, 0xff>>DF, 0x00>>DF, 0 ;; chartreuse
.byte 0xff>>DF, 0xff>>DF, 0x00>>DF, 0 ;; yellow
.byte 0xff>>DF, 0xff>>DF, 0xff>>DF, 0 ;; white
.byte 0xff>>DF, 0x00>>DF, 0x00>>DF, 0 ;; red
.byte 0x00>>DF_M, 0x00>>DF_M, 0xff>>DF_M, 0 ;; blue
.byte 0x00>>DF_M, 0xff>>DF_M, 0x00>>DF_M, 0 ;; green
.byte 0xff>>DF_M, 0x80>>DF_M, 0x00>>DF_M, 0 ;; orange
.byte 0xff>>DF_M, 0x00>>DF_M, 0x80>>DF_M, 0 ;; rose
.byte 0xff>>DF_M, 0x00>>DF_M, 0xff>>DF_M, 0 ;; magenta
.byte 0x80>>DF_M, 0x00>>DF_M, 0xff>>DF_M, 0 ;; violet
.byte 0x00>>DF_M, 0x80>>DF_M, 0xff>>DF_M, 0 ;; azure
.byte 0x00>>DF_M, 0xff>>DF_M, 0xff>>DF_M, 0 ;; cyan
.byte 0x00>>DF_M, 0xff>>DF_M, 0x80>>DF_M, 0 ;; springgreen
.byte 0x80>>DF_M, 0xff>>DF_M, 0x00>>DF_M, 0 ;; chartreuse
.byte 0xff>>DF_M, 0xff>>DF_M, 0x00>>DF_M, 0 ;; yellow
.byte 0xff>>DF_M, 0xff>>DF_M, 0xff>>DF_M, 0 ;; white
.byte 0xff>>DF_M, 0x00>>DF_M, 0x00>>DF_M, 0 ;; red
.byte 0x00, 0x00, 0xff, 0 ;; blue
.byte 0x00, 0xff, 0x00, 0 ;; green
.byte 0xff, 0x80, 0x00, 0 ;; orange
.byte 0xff, 0x00, 0x80, 0 ;; rose
.byte 0xff, 0x00, 0xff, 0 ;; magenta
.byte 0x80, 0x00, 0xff, 0 ;; violet
.byte 0x00, 0x80, 0xff, 0 ;; azure
.byte 0x00, 0xff, 0xff, 0 ;; cyan
.byte 0x00, 0xff, 0x80, 0 ;; springgreen
.byte 0x80, 0xff, 0x00, 0 ;; chartreuse
.byte 0xff, 0xff, 0x00, 0 ;; yellow
.byte 0xff, 0xff, 0xff, 0 ;; white
.byte 0xff, 0x00, 0x00, 0 ;; red
.byte 0x00>>5, 0x00>>5, 0xff>>5, 0 ;; blue
.byte 0x00>>5, 0xff>>5, 0x00>>5, 0 ;; green
.byte 0xff>>5, 0x80>>5, 0x00>>5, 0 ;; orange
.byte 0x80>>5, 0x00>>5, 0xff>>5, 0 ;; violet
.byte 0x00>>5, 0xff>>5, 0xff>>5, 0 ;; cyan
.byte 0xff>>5, 0xff>>5, 0x00>>5, 0 ;; yellow
.byte 0xff>>5, 0x00>>5, 0x00>>5, 0 ;; red
.byte 0xff>>5, 0xff>>5, 0xff>>5, 0 ;; white
.byte 0x00>>4, 0x00>>4, 0xff>>4, 0 ;; blue
.byte 0x00>>4, 0xff>>4, 0x00>>4, 0 ;; green
.byte 0xff>>4, 0x80>>4, 0x00>>4, 0 ;; orange
.byte 0x80>>4, 0x00>>4, 0xff>>4, 0 ;; violet
.byte 0x00>>4, 0xff>>4, 0xff>>4, 0 ;; cyan
.byte 0xff>>4, 0xff>>4, 0x00>>4, 0 ;; yellow
.byte 0xff>>4, 0x00>>4, 0x00>>4, 0 ;; red
.byte 0xff>>4, 0xff>>4, 0xff>>4, 0 ;; white
.byte 0x00>>3, 0x00>>3, 0xff>>3, 0 ;; blue
.byte 0x00>>3, 0xff>>3, 0x00>>3, 0 ;; green
.byte 0xff>>3, 0x80>>3, 0x00>>3, 0 ;; orange
.byte 0x80>>3, 0x00>>3, 0xff>>3, 0 ;; violet
.byte 0x00>>3, 0xff>>3, 0xff>>3, 0 ;; cyan
.byte 0xff>>3, 0xff>>3, 0x00>>3, 0 ;; yellow
.byte 0xff>>3, 0x00>>3, 0x00>>3, 0 ;; red
.byte 0xff>>3, 0xff>>3, 0xff>>3, 0 ;; white
.byte 0x00>>2, 0x00>>2, 0xff>>2, 0 ;; blue
.byte 0x00>>2, 0xff>>2, 0x00>>2, 0 ;; green
.byte 0xff>>2, 0x80>>2, 0x00>>2, 0 ;; orange
.byte 0x80>>2, 0x00>>2, 0xff>>2, 0 ;; violet
.byte 0x00>>2, 0xff>>2, 0xff>>2, 0 ;; cyan
.byte 0xff>>2, 0xff>>2, 0x00>>2, 0 ;; yellow
.byte 0xff>>2, 0x00>>2, 0x00>>2, 0 ;; red
.byte 0xff>>2, 0xff>>2, 0xff>>2, 0 ;; white
.byte 0x00>>1, 0x00>>1, 0xff>>1, 0 ;; blue
.byte 0x00>>1, 0xff>>1, 0x00>>1, 0 ;; green
.byte 0xff>>1, 0x80>>1, 0x00>>1, 0 ;; orange
.byte 0x80>>1, 0x00>>1, 0xff>>1, 0 ;; violet
.byte 0x00>>1, 0xff>>1, 0xff>>1, 0 ;; cyan
.byte 0xff>>1, 0xff>>1, 0x00>>1, 0 ;; yellow
.byte 0xff>>1, 0x00>>1, 0x00>>1, 0 ;; red
.byte 0xff>>1, 0xff>>1, 0xff>>1, 0 ;; white

View File

@ -2,51 +2,20 @@
#define _COLORS_H_
#define _off 0x00
#define _off 0
#define _blue 0x01
#define _green 0x02
#define _orange 0x03
#define _rose 0x04
#define _magenta 0x05
#define _violet 0x06
#define _azure 0x07
#define _cyan 0x08
#define _springgreen 0x09
#define _chartreuse 0x0a
#define _yellow 0x0b
#define _white 0x0c
#define _red 0x0d
#define _blue 1
#define _green 2
#define _orange 3
#define _violet 4
#define _cyan 5
#define _yellow 6
#define _red 7
#define _white 8
#define _medium_blue 0x0e
#define _medium_green 0x0f
#define _medium_orange 0x10
#define _medium_rose 0x11
#define _medium_magenta 0x12
#define _medium_violet 0x13
#define _medium_azure 0x14
#define _medium_cyan 0x15
#define _medium_springgreen 0x16
#define _medium_chartreuse 0x17
#define _medium_yellow 0x18
#define _medium_white 0x19
#define _medium_red 0x1a
#define _dazzling_blue 0x1b
#define _dazzling_green 0x1c
#define _dazzling_orange 0x1d
#define _dazzling_rose 0x1e
#define _dazzling_magenta 0x1f
#define _dazzling_violet 0x20
#define _dazzling_azure 0x21
#define _dazzling_cyan 0x22
#define _dazzling_springgreen 0x23
#define _dazzling_chartreuse 0x24
#define _dazzling_yellow 0x25
#define _dazzling_white 0x26
#define _dazzling_red 0x27
#define _color_end 0x28
#define _brightness_offset 8
#define _brightness_shifts 5
#define _color_end (_brightness_offset * _brightness_shifts)
#endif