about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-06-15 12:36:38 -0700
committerKartik K. Agaram <vc@akkartik.com>2021-06-15 12:36:38 -0700
commit2bf7cb83ba9bac7926e925bb610e81123ee132ef (patch)
treee69d8f17e5ad9cf3d436c6d16c90b35e6064a1f8
parent8068b8450f163b2ba3824fb430cc3edb130b6489 (diff)
downloadmu-2bf7cb83ba9bac7926e925bb610e81123ee132ef.tar.gz
do more work per fake-screen refresh
Refreshing the fake screen is still a heavyweight operation. Double-buffering
makes it less obvious but doesn't actually reduce the amount of work. We
need to ensure that we do enough work between refreshes to make them economic.
-rw-r--r--shell/evaluate.mu2
1 files changed, 1 insertions, 1 deletions
diff --git a/shell/evaluate.mu b/shell/evaluate.mu
index e474be41..c1a4ebdc 100644
--- a/shell/evaluate.mu
+++ b/shell/evaluate.mu
@@ -27,7 +27,7 @@ fn evaluate _in-ah: (addr handle cell), _out-ah: (addr handle cell), env-h: (han
     break-if-=
     increment *call-number
     var tmp/eax: int <- copy *call-number
-    tmp <- and 0xf  # every 16 calls to evaluate
+    tmp <- and 0xffff/responsiveness  # every 64k calls to evaluate
     compare tmp, 0
     break-if-!=
     var inner-screen-var/eax: (addr handle cell) <- copy inner-screen-var