diff options
Diffstat (limited to 'apps/plugins/lib')
| -rw-r--r-- | apps/plugins/lib/fixedpoint.c | 3 | ||||
| -rw-r--r-- | apps/plugins/lib/grey_core.c | 2 | ||||
| -rw-r--r-- | apps/plugins/lib/helper.c | 14 |
3 files changed, 17 insertions, 2 deletions
diff --git a/apps/plugins/lib/fixedpoint.c b/apps/plugins/lib/fixedpoint.c index 7b9b68a..0ae2cde 100644 --- a/apps/plugins/lib/fixedpoint.c +++ b/apps/plugins/lib/fixedpoint.c @@ -22,6 +22,7 @@ ****************************************************************************/ #include <inttypes.h> +#include "plugin.h" #include "fixedpoint.h" /* Inverse gain of circular cordic rotation in s0.31 format. */ @@ -144,7 +145,7 @@ long fsincos(unsigned long phase, long *cos) */ long fsqrt(long a, unsigned int fracbits) { - long b = a/2 + (1 << fracbits); /* initial approximation */ + long b = a/2 + BIT_N(fracbits); /* initial approximation */ unsigned n; const unsigned iterations = 4; diff --git a/apps/plugins/lib/grey_core.c b/apps/plugins/lib/grey_core.c index 18b2716..ea70ae9 100644 --- a/apps/plugins/lib/grey_core.c +++ b/apps/plugins/lib/grey_core.c @@ -860,7 +860,7 @@ static void grey_screendump_hook(int fd) + _GREY_MULUQ(_grey_info.width, gy & ~_GREY_BMASK); #if LCD_DEPTH == 1 - mask = 1 << (y & 7); + mask = BIT_N(y & 7); src = rb->lcd_framebuffer + _GREY_MULUQ(LCD_WIDTH, y >> 3); do diff --git a/apps/plugins/lib/helper.c b/apps/plugins/lib/helper.c index e35e43a..b95ee7a 100644 --- a/apps/plugins/lib/helper.c +++ b/apps/plugins/lib/helper.c @@ -22,6 +22,20 @@ #include "plugin.h" #include "helper.h" +#ifdef CPU_SH +/* Lookup table for using the BIT_N() macro in plugins */ +const unsigned bit_n_table[32] = { + 1LU<< 0, 1LU<< 1, 1LU<< 2, 1LU<< 3, + 1LU<< 4, 1LU<< 5, 1LU<< 6, 1LU<< 7, + 1LU<< 8, 1LU<< 9, 1LU<<10, 1LU<<11, + 1LU<<12, 1LU<<13, 1LU<<14, 1LU<<15, + 1LU<<16, 1LU<<17, 1LU<<18, 1LU<<19, + 1LU<<20, 1LU<<21, 1LU<<22, 1LU<<23, + 1LU<<24, 1LU<<25, 1LU<<26, 1LU<<27, + 1LU<<28, 1LU<<29, 1LU<<30, 1LU<<31 +}; +#endif + /* Force the backlight on */ void backlight_force_on(void) { |