((code (label main (load-immediate $0 &terminal-namespace) ; get terminal device (load-immediate $11 0) (syscall OPEN $0 $0 $11) (load-immediate $1 &help) ; print help message (call &pln ($0 $1) nil) (load-immediate $1 32) ; read in a string of max 32 char length (malloc $4 $1) ; allocate memory for the string (syscall READ $0 $4 $1) ; read the string (call &pln ($0 $4) nil) ; print the string (halt 0)) (label pln (load-immediate $3 &new-line) (string-length $2 $1) (syscall WRITE $0 $1 $2) (string-length $4 $3) (syscall WRITE $0 $3 $4) (return nil))) (data (label terminal-namespace "/dev/term/0") (label help "Enter a string: ") (label new-line "\n")))