From 4b657eb07ba894dd55a4818dc95906733d724dfa Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 24 Apr 2019 06:13:50 +0200 Subject: [PATCH 1/2] rename LV_TXT_ENC_ISO8859-1 to ..._ASCII --- lv_conf_template.h | 2 +- src/lv_conf_checker.h | 2 +- src/lv_misc/lv_txt.c | 8 ++++---- src/lv_misc/lv_txt.h | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lv_conf_template.h b/lv_conf_template.h index 655520240..908e18ce6 100644 --- a/lv_conf_template.h +++ b/lv_conf_template.h @@ -267,7 +267,7 @@ typedef void * lv_indev_drv_user_data_t; /*Type of user data in the i /* Select a character encoding for strings. * Your IDE or editor should have the same character encoding * - LV_TXT_ENC_UTF8 - * - LV_TXT_ENC_ISO8859_1 + * - LV_TXT_ENC_ASCII * */ #define LV_TXT_ENC LV_TXT_ENC_UTF8 diff --git a/src/lv_conf_checker.h b/src/lv_conf_checker.h index 60dc6985d..770a84ae5 100644 --- a/src/lv_conf_checker.h +++ b/src/lv_conf_checker.h @@ -406,7 +406,7 @@ /* Select a character encoding for strings. * Your IDE or editor should have the same character encoding * - LV_TXT_ENC_UTF8 - * - LV_TXT_ENC_ISO8859_1 + * - LV_TXT_ENC_ASCII * */ #ifndef LV_TXT_ENC #define LV_TXT_ENC LV_TXT_ENC_UTF8 diff --git a/src/lv_misc/lv_txt.c b/src/lv_misc/lv_txt.c index 8205860af..05ee952e9 100644 --- a/src/lv_misc/lv_txt.c +++ b/src/lv_misc/lv_txt.c @@ -47,7 +47,7 @@ static uint32_t lv_txt_utf8_prev(const char * txt, uint32_t * i_start); static uint32_t lv_txt_utf8_get_byte_id(const char * txt, uint32_t utf8_id); static uint32_t lv_txt_utf8_get_char_id(const char * txt, uint32_t byte_id); static uint32_t lv_txt_utf8_get_length(const char * txt); -#elif LV_TXT_ENC == LV_TXT_ENC_ISO8859_1 +#elif LV_TXT_ENC == LV_TXT_ENC_ASCII static uint8_t lv_txt_iso8859_1_size(const char * str); static uint32_t lv_txt_unicode_to_iso8859_1(uint32_t letter_uni); static uint32_t lv_txt_iso8859_1_conv_wc(uint32_t c); @@ -73,7 +73,7 @@ uint32_t (*lv_txt_encoded_prev)(const char *, uint32_t *) = lv_txt_utf8_pre uint32_t (*lv_txt_encoded_get_byte_id)(const char *, uint32_t) = lv_txt_utf8_get_byte_id; uint32_t (*lv_encoded_get_char_id)(const char *, uint32_t) = lv_txt_utf8_get_char_id; uint32_t (*lv_txt_get_encoded_length)(const char *) = lv_txt_utf8_get_length; -#elif LV_TXT_ENC == LV_TXT_ENC_ISO8859_1 +#elif LV_TXT_ENC == LV_TXT_ENC_ASCII uint8_t (*lv_txt_encoded_size)(const char *) = lv_txt_iso8859_1_size; uint32_t (*lv_txt_unicode_to_encoded)(uint32_t) = lv_txt_unicode_to_iso8859_1; uint32_t (*lv_txt_encoded_conv_wc)(uint32_t) = lv_txt_iso8859_1_conv_wc; @@ -677,9 +677,9 @@ static uint32_t lv_txt_utf8_get_length(const char * txt) return len; } -#elif LV_TXT_ENC == LV_TXT_ENC_ISO8859_1 +#elif LV_TXT_ENC == LV_TXT_ENC_ASCII /******************************* - * IOS8859-1 ENCODER/DECOER + * ASCII ENCODER/DECOER ******************************/ /** diff --git a/src/lv_misc/lv_txt.h b/src/lv_misc/lv_txt.h index 07ce64924..1150d3f23 100644 --- a/src/lv_misc/lv_txt.h +++ b/src/lv_misc/lv_txt.h @@ -30,7 +30,7 @@ extern "C" { #define LV_TXT_COLOR_CMD "#" #define LV_TXT_ENC_UTF8 1 -#define LV_TXT_ENC_ISO8859_1 2 +#define LV_TXT_ENC_ASCII 2 /********************** * TYPEDEFS From 8dc2b36bf7bc614eebee040ad0fba8890d8b1e80 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 24 Apr 2019 06:26:03 +0200 Subject: [PATCH 2/2] lv_canvas_mult_buf: fix with LV_COLOR_16_SWAP --- src/lv_objx/lv_canvas.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/lv_objx/lv_canvas.c b/src/lv_objx/lv_canvas.c index 92f70ac4a..4d7c0565b 100644 --- a/src/lv_objx/lv_canvas.c +++ b/src/lv_objx/lv_canvas.c @@ -283,12 +283,11 @@ void lv_canvas_mult_buf(lv_obj_t * canvas, void * to_copy, lv_coord_t w, lv_coor (uint16_t)((uint16_t)canvas_buf_color[j].ch.green * copy_buf_color[j].ch.green) >> 6; #else - canvas_buf_color[j].ch.red = - (uint16_t)((uint16_t)canvas_buf_color[j].ch.red * copy_buf_color[j].ch.red) >> 6; - canvas_buf_color[j].ch.blue = - (uint16_t)((uint16_t)canvas_buf_color[j].ch.blue * copy_buf_color[j].ch.blue) >> 6; - canvas_buf_color[j].ch.red = - (uint16_t)((uint16_t)canvas_buf_color[j].ch.red * copy_buf_color[j].ch.red) >> 6; + uint8_t green_canvas = (canvas_buf_color[j].ch.green_h << 3) + (canvas_buf_color[j].ch.green_l); + uint8_t green_buf = (copy_buf_color[j].ch.green_h << 3) + (copy_buf_color[j].ch.green_l); + uint8_t green_res = (uint16_t)((uint16_t)green_canvas * green_buf) >> 6; + canvas_buf_color[j].ch.green_h = (green_res >> 3) & 0x07; + canvas_buf_color[j].ch.green_l = green_res & 0x07; #endif /*LV_COLOR_16_SWAP*/ #elif LV_COLOR_DEPTH == 8