global str terminal_namespace = "/dev/term/0"; global str new_line = "\n"; global int x = 1; global int y = 1; function main () { load_absolute_32 x -> $0; load_absolute_32 y -> $1; call add ($0 $1) -> $2; int_to_string $2 -> $3; call pln ($3); exit 0; } function add (int a $0, int b $1) { int result $2; add_int a b -> result; return result; } function pln (str message $0) { plex term $1; int msg_length $2; str nl $3; int nl_length $4; int mode $5; str term_ns $6; load_immediate 0 -> mode; load_address terminal_namespace -> term_ns; syscall OPEN term_ns mode term; string_length message -> msg_length; syscall WRITE term message msg_length; load_address new_line -> nl; string_length nl -> nl_length; syscall WRITE term nl nl_length; return; }