X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=main.c;fp=main.c;h=a8f7324908316e99fb95a0568122a464c847fe27;hb=713be444bff004385f2397856be48508628c746a;hp=64cf2f13f7d07c098ef28122194ec64e4f5ddd4d;hpb=c3567b7908dd3b08dd7a8c2d051991bf50670a42;p=rgblamp.git diff --git a/main.c b/main.c index 64cf2f1..a8f7324 100644 --- a/main.c +++ b/main.c @@ -144,29 +144,16 @@ signed char bright = BRIGHT_INIT; bit bright_up; signed char pbHeldCount; -/* Return the constrained brightness level for use in computing RGB values */ -unsigned char bright_get() -{ - if (bright > BRIGHT_MAX) - return BRIGHT_MAX; - else if (bright < BRIGHT_MIN) - return BRIGHT_MIN; - else - return bright; -} - -/* RGB values will not illuminate the LED */ +/* Combine LED color value and brightness level to generate an RGB value */ unsigned char led_get(unsigned value) { - value = (value * bright_get()) >> 8; -#ifdef CEIL256 - if (value && value < 0x26) - return 0x26; -#else - if (value && value < 4) - return 4; -#endif - return value; + unsigned char tmp = bright; + + if (tmp > BRIGHT_MAX) + tmp = BRIGHT_MAX; + else if (tmp < BRIGHT_MIN) + tmp = BRIGHT_MIN; + return (value * tmp) >> 8; } /* Set the LEDs using both color and brightness values. */