about summary refs log tree commit diff stats
path: root/500fake-screen.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-04-21 00:17:22 -0700
committerKartik K. Agaram <vc@akkartik.com>2021-04-21 00:17:22 -0700
commitd604e68c2bf993bd2ef738ce1ee8625bdfa62a86 (patch)
treedd549598dab968f6eae16226c0622bc15c45c96b /500fake-screen.mu
parent7b2d39b8d418d29cc05dc0793c976761c302eadb (diff)
downloadmu-d604e68c2bf993bd2ef738ce1ee8625bdfa62a86.tar.gz
.
Diffstat (limited to '500fake-screen.mu')
-rw-r--r--500fake-screen.mu11
1 files changed, 11 insertions, 0 deletions
diff --git a/500fake-screen.mu b/500fake-screen.mu
index 01df2d5e..fc907885 100644
--- a/500fake-screen.mu
+++ b/500fake-screen.mu
@@ -257,6 +257,17 @@ fn clear-screen _screen: (addr screen) {
   set-cursor-position screen, 0, 0
   var pixels-ah/eax: (addr handle array byte) <- get screen, pixels
   var pixels/eax: (addr array byte) <- lookup *pixels-ah
+  var i/ecx: int <- copy 0
+  var max/edx: int <- length pixels
+  {
+    compare i, max
+    break-if->=
+    var curr/eax: (addr byte) <- index pixels, i
+    var zero/ebx: byte <- copy 0
+    copy-byte-to *curr, zero
+    i <- increment
+    loop
+  }
 }
 
 fn fake-screen-empty? _screen: (addr screen) -> _/eax: boolean {