summaryrefslogtreecommitdiff
path: root/shared-module/displayio
diff options
context:
space:
mode:
authorScott Shawcroft <scott@tannewt.org>2019-01-17 10:57:05 -0800
committerScott Shawcroft <scott@tannewt.org>2019-01-17 10:57:05 -0800
commit5277138c992b860cfbdb767f18e034c42e31b6a1 (patch)
treebe97cf78ccf04de668b9eae5447f53eff4b62958 /shared-module/displayio
parent84292ad89070f1994ed09b59c8a693216a40cd89 (diff)
pyportal compiles and tweak blinka colors
Diffstat (limited to 'shared-module/displayio')
-rw-r--r--shared-module/displayio/Group.c3
-rw-r--r--shared-module/displayio/Group.h1
-rw-r--r--shared-module/displayio/__init__.c7
3 files changed, 9 insertions, 2 deletions
diff --git a/shared-module/displayio/Group.c b/shared-module/displayio/Group.c
index b9923128a..255349d7c 100644
--- a/shared-module/displayio/Group.c
+++ b/shared-module/displayio/Group.c
@@ -67,11 +67,14 @@ void displayio_group_construct(displayio_group_t* self, mp_obj_t* child_array, u
self->children = child_array;
self->max_size = max_size;
self->needs_refresh = false;
+ self->scale = 1;
}
bool displayio_group_get_pixel(displayio_group_t *self, int16_t x, int16_t y, uint16_t* pixel) {
x -= self->x;
y -= self->y;
+ x /= self->scale;
+ y /= self->scale;
for (int32_t i = self->size - 1; i >= 0 ; i--) {
mp_obj_t layer = self->children[i];
if (MP_OBJ_IS_TYPE(layer, &displayio_sprite_type)) {
diff --git a/shared-module/displayio/Group.h b/shared-module/displayio/Group.h
index 272f3114c..60f573ff6 100644
--- a/shared-module/displayio/Group.h
+++ b/shared-module/displayio/Group.h
@@ -36,6 +36,7 @@ typedef struct {
mp_obj_base_t base;
int16_t x;
int16_t y;
+ uint16_t scale;
uint16_t size;
uint16_t max_size;
mp_obj_t* children;
diff --git a/shared-module/displayio/__init__.c b/shared-module/displayio/__init__.c
index 48194f63f..dc5957c23 100644
--- a/shared-module/displayio/__init__.c
+++ b/shared-module/displayio/__init__.c
@@ -105,8 +105,10 @@ displayio_bitmap_t blinka_bitmap = {
};
uint32_t blinka_transparency[1] = {0x80000000};
-uint32_t blinka_colors[8] = {0x1e910000, 0x72dc722b, 0xffffb05a, 0x00000000,
- 0x80000000, 0x00000000, 0x00000000, 0x00000000};
+
+// TODO(tannewt): Fix these colors
+uint32_t blinka_colors[8] = {0x91780000, 0x879FFC98, 0xffff0000, 0x0000f501,
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000};
displayio_palette_t blinka_palette = {
.base = {.type = &displayio_palette_type },
@@ -135,6 +137,7 @@ displayio_group_t splash = {
.base = {.type = &displayio_group_type },
.x = 0,
.y = 0,
+ .scale = 2,
.size = 1,
.max_size = 1,
.children = splash_children,