diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-05-31 12:56:15 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-05-31 15:18:25 -0700 |
commit | ee536ff3e8693a942edcf73ccd929881e0615226 (patch) | |
tree | bc102cd3e7928699fb82d2bad853f882e11d4796 /shell/evaluate.mu | |
parent | 82171a0fdfa28251cbc360dcf205392fee2c7eeb (diff) | |
download | mu-ee536ff3e8693a942edcf73ccd929881e0615226.tar.gz |
.
Diffstat (limited to 'shell/evaluate.mu')
-rw-r--r-- | shell/evaluate.mu | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/shell/evaluate.mu b/shell/evaluate.mu index d1be2246..403b9d14 100644 --- a/shell/evaluate.mu +++ b/shell/evaluate.mu @@ -2,6 +2,7 @@ # we never modify `_in-ah` or `env` # ignore args past 'trace' on a first reading; they're for the environment not the language # 'call-number' is just for showing intermediate progress; this is a _slow_ interpreter +# side-effect: prints to real screen if not in a test (screen-cell != 0) fn evaluate _in-ah: (addr handle cell), _out-ah: (addr handle cell), env-h: (handle cell), globals: (addr global-table), trace: (addr trace), screen-cell: (addr handle cell), keyboard-cell: (addr handle cell), call-number: int { # stack overflow? # disable when enabling Really-debug-print check-stack @@ -24,6 +25,7 @@ fn evaluate _in-ah: (addr handle cell), _out-ah: (addr handle cell), env-h: (han } var in-ah/esi: (addr handle cell) <- copy _in-ah # show intermediate progress on screen if necessary + # treat input at the real keyboard as interrupting { compare screen-cell, 0 break-if-= |