summaryrefslogtreecommitdiff
path: root/shared-module/framebufferio/FramebufferDisplay.c
diff options
context:
space:
mode:
authorJeff Epler <jepler@gmail.com>2020-07-31 15:46:39 -0500
committerJeff Epler <jepler@gmail.com>2020-08-12 07:32:18 -0500
commit8021f3b4cbb96e0edaf139fa88ea7273c92a5493 (patch)
tree43f713121a82fd6b1eea30ed9cd99543ec36d7c4 /shared-module/framebufferio/FramebufferDisplay.c
parenta84cc19499e1cb71387cb5be379676d0c8b84f9a (diff)
framebufferio: handle sharp memory displays
A bit of cheating; we need to add a protocol getter for reverse_bytes_in_word
Diffstat (limited to 'shared-module/framebufferio/FramebufferDisplay.c')
-rw-r--r--shared-module/framebufferio/FramebufferDisplay.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/shared-module/framebufferio/FramebufferDisplay.c b/shared-module/framebufferio/FramebufferDisplay.c
index b00797537..190d3cb9d 100644
--- a/shared-module/framebufferio/FramebufferDisplay.c
+++ b/shared-module/framebufferio/FramebufferDisplay.c
@@ -51,7 +51,7 @@ void common_hal_framebufferio_framebufferdisplay_construct(framebufferio_framebu
uint16_t ram_width = 0x100;
uint16_t ram_height = 0x100;
-
+ uint16_t depth = self->framebuffer_protocol->get_color_depth(self->framebuffer);
displayio_display_core_construct(
&self->core,
NULL,
@@ -62,12 +62,13 @@ void common_hal_framebufferio_framebufferdisplay_construct(framebufferio_framebu
0,
0,
rotation,
- self->framebuffer_protocol->get_color_depth(self->framebuffer),
- false,
- false,
+ depth,
+ (depth < 12), // grayscale
+ true, // pixels_in_byte_share_row
self->framebuffer_protocol->get_bytes_per_cell(self->framebuffer),
- false,
- false);
+ true, // reverse_pixels_in_byte
+ false // reverse_bytes_in_word
+ );
self->first_manual_refresh = !auto_refresh;