diff options
-rw-r--r-- | src/px.c | 11 | ||||
-rw-r--r-- | src/px.h | 3 |
2 files changed, 14 insertions, 0 deletions
@@ -269,6 +269,17 @@ _pxPalt(const PxPaltArgs *args) pxpal[args->col].t = args->t; } +PxCol +pxCol(uint8_t r, uint8_t g, uint8_t b) +{ + for (int i = 0; i < 256; i++) { + const PxPal *pal = &pxpal[i]; + if (pal->r == r && pal->g == g && pal->b == b) + return i; + } + return -1; +} + int pxMin(int a, int b) { @@ -112,6 +112,9 @@ void _pxSpal(const PxSpalArgs *args); .col=-1, .t=true, ._=0, __VA_ARGS__}) void _pxPalt(const PxPaltArgs *args); +/* Try to find a color in palette, return 255 on error. */ +PxCol pxCol(uint8_t r, uint8_t g, uint8_t b); + /*** MATH ***/ int pxMin(int a, int b); int pxMax(int a, int b); |