diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-06-15 12:36:38 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-06-15 12:36:38 -0700 |
commit | 2bf7cb83ba9bac7926e925bb610e81123ee132ef (patch) | |
tree | e69d8f17e5ad9cf3d436c6d16c90b35e6064a1f8 | |
parent | 8068b8450f163b2ba3824fb430cc3edb130b6489 (diff) | |
download | mu-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.mu | 2 |
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 |