diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-04-10 20:49:20 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-04-10 20:49:20 -0700 |
commit | a509279aea989b4c0f47d1e11965ed297a4d6587 (patch) | |
tree | 5e3fb59b00bc6fa7f586dd9fd1cffbbfbe8caf16 /shell/sandbox.mu | |
parent | 400574f956f8428785ecefe5536ebf5512f23408 (diff) | |
download | mu-a509279aea989b4c0f47d1e11965ed297a4d6587.tar.gz |
shell: start on support for fake keyboard
Diffstat (limited to 'shell/sandbox.mu')
-rw-r--r-- | shell/sandbox.mu | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/shell/sandbox.mu b/shell/sandbox.mu index f39c9d24..e40f4ab6 100644 --- a/shell/sandbox.mu +++ b/shell/sandbox.mu @@ -2,11 +2,12 @@ type sandbox { data: (handle gap-buffer) value: (handle stream byte) screen-var: (handle cell) + keyboard-var: (handle cell) trace: (handle trace) cursor-in-trace?: boolean } -fn initialize-sandbox _self: (addr sandbox), screen?: boolean { +fn initialize-sandbox _self: (addr sandbox), screen-and-keyboard?: boolean { var self/esi: (addr sandbox) <- copy _self var data-ah/eax: (addr handle gap-buffer) <- get self, data allocate data-ah @@ -17,10 +18,12 @@ fn initialize-sandbox _self: (addr sandbox), screen?: boolean { populate-stream value-ah, 0x1000/4KB # { - compare screen?, 0/false + compare screen-and-keyboard?, 0/false break-if-= var screen-ah/eax: (addr handle cell) <- get self, screen-var new-screen screen-ah, 5/width, 4/height + var keyboard-ah/eax: (addr handle cell) <- get self, keyboard-var + allocate-keyboard keyboard-ah, 5/capacity } # var trace-ah/eax: (addr handle trace) <- get self, trace |