From 0e0a60013d392b5b3920781ec04c3b6a1a061bbb Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Sun, 15 Nov 2020 13:11:43 -0800 Subject: 7238 - mu.subx: final restrictions on 'addr' I had to tweak one app that wasn't following the rules. --- apps/browse/main.mu | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'apps/browse') diff --git a/apps/browse/main.mu b/apps/browse/main.mu index d2510071..91eb46e0 100644 --- a/apps/browse/main.mu +++ b/apps/browse/main.mu @@ -19,20 +19,13 @@ fn main args-on-stack: (addr array addr array byte) -> _/ebx: int { return 0 # TODO: get at Num-test-failures somehow } # otherwise interactive mode - var result/ebx: int <- interactive args-on-stack - return result -} - -fn interactive _args: (addr array addr array byte) -> _/ebx: int { - # initialize fs from args[1] - var args/eax: (addr array addr array byte) <- copy _args + var args/eax: (addr array addr array byte) <- copy args-on-stack var arg/eax: (addr addr array byte) <- index args, 1 var filename/eax: (addr array byte) <- copy *arg var file-storage: (handle buffered-file) var file-storage-addr/esi: (addr handle buffered-file) <- address file-storage open filename, 0, file-storage-addr - var _fs/eax: (addr buffered-file) <- lookup file-storage - var fs/esi: (addr buffered-file) <- copy _fs + var fs/eax: (addr buffered-file) <- lookup file-storage # if no file, exit { compare fs, 0 @@ -41,6 +34,11 @@ fn interactive _args: (addr array addr array byte) -> _/ebx: int { return 1 } # + interactive fs + return 0 +} + +fn interactive fs: (addr buffered-file) { enable-screen-grid-mode enable-keyboard-immediate-mode # initialize screen state @@ -57,7 +55,6 @@ fn interactive _args: (addr array addr array byte) -> _/ebx: int { } enable-keyboard-type-mode enable-screen-type-mode - return 0 } fn render screen: (addr paginated-screen), fs: (addr buffered-file) { -- cgit 1.4.1-2-gfad0