From 286222b681b3b6f61725947df323a7605aecf43f Mon Sep 17 00:00:00 2001 From: shokre Date: Thu, 16 Sep 2021 17:27:22 +0200 Subject: [PATCH] feat: add micro mem view --- orao/micro_mem_view.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 orao/micro_mem_view.py diff --git a/orao/micro_mem_view.py b/orao/micro_mem_view.py new file mode 100644 index 0000000..1ba0761 --- /dev/null +++ b/orao/micro_mem_view.py @@ -0,0 +1,19 @@ +import pygame +import numpy + +palette = [] +# below chars +palette += [(i * 8, 0, 0) for i in range(32)] +# text chars +palette += [(i * 2, 255, 0) for i in range(128 - 32)] +# other +palette += [(i * 2, 0, 255) for i in range(128)] + +micro_mem_view_dims = (32, 192) +micro_mem_view = pygame.Surface(micro_mem_view_dims, depth=8) +micro_mem_view.set_palette(palette) + +def store_mem_view(memory): + w, h = micro_mem_view_dims + arr = numpy.reshape(memory[0:(w * h)], (h, w)) + pygame.surfarray.blit_array(micro_mem_view, numpy.transpose(arr))