changeset 3:875333bc1461 draft

Faster display update
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Thu, 22 Feb 2018 09:41:06 +0100
parents 2c172c745298
children 09d3bfacb0a6
files lameboy.py
diffstat 1 files changed, 7 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lameboy.py	Thu Feb 22 09:20:01 2018 +0100
+++ b/lameboy.py	Thu Feb 22 09:41:06 2018 +0100
@@ -13,13 +13,14 @@
         self._cs = cs or (lambda x: x)
         self._rst = rst or (lambda x: x)
         self._dc = dc
-        self._fn = bytearray([0x20])
+        self._fn = bytearray((0x20,))
         buffer = bytearray(504)
-        self.fb = framebuf.FrameBuffer(buffer, 84, 48, framebuf.MVLSB)
+        self.fb = framebuf.FrameBuffer(buffer, 84, 48, framebuf.MONO_VLSB)
         self._buffer = memoryview(buffer)
 
         self.reset()
         self.contrast()
+        self.inverse(0)
 
     def _write(self, data, command=True):
         self._dc(not command)
@@ -50,14 +51,10 @@
 
     def update(self):
         self._cs(0)
-        index = 0
-        for page in range(6):
-            self._command[0] = 0x40 | page
-            self._dc(0)
-            self._spi.write(self._command)
-            self._dc(1)
-            self._spi.write(self._buffer[index:index + 84])
-            index += self.width
+        self._dc(0)
+        self._spi.write(self._command)
+        self._dc(1)
+        self._spi.write(self._buffer)
         self._cs(1)