c{0: 0 (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) -- nil
c{0: 1 (((nrows integer)) <- ((next-input))) -- nil
c{0: 2 (((ncols integer)) <- ((next-input))) -- nil
c{0: 3 (((result screen-address)) <- ((new)) ((screen literal)) ((nrows integer))) -- nil
c{0: 4 (((rowidx integer)) <- ((copy)) ((0 literal))) -- nil
c{0: 5 (((curr-line-address-address line-address-address)) <- ((index-address)) ((result screen-address) (deref)) ((rowidx integer))) -- ((open 5))
c{0: 6 (((curr-line-address-address line-address-address) (deref)) <- ((new)) ((line literal)) ((ncols integer))) -- ((open 5))
c{0: 7 (((curr-line-address line-address)) <- ((copy)) ((curr-line-address-address line-address-address) (deref))) -- ((open 5))
c{0: 8 (((rowidx integer)) <- ((add)) ((rowidx integer)) ((1 literal))) -- ((open 5))
c{0: 9 (((x boolean)) <- ((not-equal)) ((rowidx integer)) ((nrows integer))) -- ((open 5))
c{0: 10 (((loop-if)) ((x boolean))) -- ((open 5))
c{0: 11 (((reply)) ((result screen-address))) -- ((close 11) (open 5))
c{1: 0 ✓ (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
c{1: 1 ✓ (((nrows integer)) <- ((next-input)))
c{1: 2 ✓ (((ncols integer)) <- ((next-input)))
c{1: 3 ✓ (((result screen-address)) <- ((new)) ((screen literal)) ((nrows integer)))
c{1: 4 ✓ (((rowidx integer)) <- ((copy)) ((0 literal)))
c{1: 5 ✓ (((curr-line-address-address line-address-address)) <- ((index-address)) ((result screen-address) (deref)) ((rowidx integer)))
c{1: 6 ✓ (((curr-line-address-address line-address-address) (deref)) <- ((new)) ((line literal)) ((ncols integer)))
c{1: 7 ✓ (((curr-line-address line-address)) <- ((copy)) ((curr-line-address-address line-address-address) (deref)))
c{1: 8 ✓ (((rowidx integer)) <- ((add)) ((rowidx integer)) ((1 literal)))
c{1: 9 ✓ (((x boolean)) <- ((not-equal)) ((rowidx integer)) ((nrows integer)))
c{1: 10 X (((loop-if)) ((x boolean))) => (((jump-if)) ((x boolean)) ((-6 offset)))
c{1: 11 ✓ (((reply)) ((result screen-address)))
c{0: 0 (((1 screen-address) (global)) <- ((new-screen)) ((5 literal)) ((5 literal))) -- nil
c{1: 0 ✓ (((1 screen-address) (global)) <- ((new-screen)) ((5 literal)) ((5 literal)))
cn0: convert-names in new-screen
cn0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) nil nil
cn0: checking arg ((space literal))
cn0: checking arg ((30 literal))
cn0: checking oarg ((default-space space-address))
maybe-add: ((default-space space-address))
cn0: (((nrows integer)) <- ((next-input))) nil nil
cn0: checking oarg ((nrows integer))
maybe-add: ((nrows integer))
cn0: location for oarg ((nrows integer)): 1
cn0: (((ncols integer)) <- ((next-input))) ((nrows 1)) nil
cn0: checking oarg ((ncols integer))
maybe-add: ((ncols integer))
cn0: location for oarg ((ncols integer)): 2
cn0: (((result screen-address)) <- ((new)) ((screen literal)) ((nrows integer))) ((ncols 2) (nrows 1)) nil
cn0: checking arg ((screen literal))
cn0: checking arg ((nrows integer))
maybe-add: ((nrows integer))
cn0: checking oarg ((result screen-address))
maybe-add: ((result screen-address))
cn0: location for oarg ((result screen-address)): 3
cn0: (((rowidx integer)) <- ((copy)) ((0 literal))) ((ncols 2) (nrows 1) (result 3)) nil
cn0: checking arg ((0 literal))
cn0: checking oarg ((rowidx integer))
maybe-add: ((rowidx integer))
cn0: location for oarg ((rowidx integer)): 4
cn0: (((curr-line-address-address line-address-address)) <- ((index-address)) ((result screen-address) (deref)) ((rowidx integer))) ((ncols 2) (nrows 1) (result 3) (rowidx 4)) nil
cn0: checking arg ((result screen-address) (deref))
maybe-add: ((result screen-address) (deref))
cn0: checking arg ((rowidx integer))
maybe-add: ((rowidx integer))
cn0: checking oarg ((curr-line-address-address line-address-address))
maybe-add: ((curr-line-address-address line-address-address))
cn0: location for oarg ((curr-line-address-address line-address-address)): 5
cn0: (((curr-line-address-address line-address-address) (deref)) <- ((new)) ((line literal)) ((ncols integer))) ((curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4)) nil
cn0: checking arg ((line literal))
cn0: checking arg ((ncols integer))
maybe-add: ((ncols integer))
cn0: checking oarg ((curr-line-address-address line-address-address) (deref))
maybe-add: ((curr-line-address-address line-address-address) (deref))
cn0: (((curr-line-address line-address)) <- ((copy)) ((curr-line-address-address line-address-address) (deref))) ((curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4)) nil
cn0: checking arg ((curr-line-address-address line-address-address) (deref))
maybe-add: ((curr-line-address-address line-address-address) (deref))
cn0: checking oarg ((curr-line-address line-address))
maybe-add: ((curr-line-address line-address))
cn0: location for oarg ((curr-line-address line-address)): 6
cn0: (((rowidx integer)) <- ((add)) ((rowidx integer)) ((1 literal))) ((curr-line-address 6) (curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4)) nil
cn0: checking arg ((rowidx integer))
maybe-add: ((rowidx integer))
cn0: checking arg ((1 literal))
cn0: checking oarg ((rowidx integer))
maybe-add: ((rowidx integer))
cn0: (((x boolean)) <- ((not-equal)) ((rowidx integer)) ((nrows integer))) ((curr-line-address 6) (curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4)) nil
cn0: checking arg ((rowidx integer))
maybe-add: ((rowidx integer))
cn0: checking arg ((nrows integer))
maybe-add: ((nrows integer))
cn0: checking oarg ((x boolean))
maybe-add: ((x boolean))
cn0: location for oarg ((x boolean)): 7
cn0: (((jump-if)) ((x boolean)) ((-6 offset))) ((curr-line-address 6) (curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4) (x 7)) nil
cn0: checking arg ((x boolean))
maybe-add: ((x boolean))
cn0: checking arg ((-6 offset))
cn0: (((reply)) ((result screen-address))) ((curr-line-address 6) (curr-line-address-address 5) (ncols 2) (nrows 1) (result 3) (rowidx 4) (x 7)) nil
cn0: checking arg ((result screen-address))
maybe-add: ((result screen-address))
cn0: convert-names in test-new-screen
cn0: (((1 screen-address) (global)) <- ((new-screen)) ((5 literal)) ((5 literal))) nil nil
cn0: checking arg ((5 literal))
cn0: checking arg ((5 literal))
cn0: checking oarg ((1 screen-address) (global))
maybe-add: ((1 screen-address) (global))
cn1: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
cn1: (((1 integer)) <- ((next-input)))
cn1: (((2 integer)) <- ((next-input)))
cn1: (((3 screen-address)) <- ((new)) ((screen literal)) ((1 integer)))
cn1: (((4 integer)) <- ((copy)) ((0 literal)))
cn1: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
cn1: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
cn1: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
cn1: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
cn1: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
cn1: (((jump-if)) ((7 boolean)) ((-6 offset)))
cn1: (((reply)) ((3 screen-address)))
cn1: (((1 screen-address) (global)) <- ((new-screen)) ((5 literal)) ((5 literal)))
schedule: test-new-screen
run: test-new-screen 0: (((1 screen-address) (global)) <- ((new-screen)) ((5 literal)) ((5 literal)))
run: new-screen/test-new-screen 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: new-screen/test-new-screen 0: 101000 => ((default-space space-address))
run: new-screen/test-new-screen 1: (((1 integer)) <- ((next-input)))
arg: nil 0 (5 5)
run: new-screen/test-new-screen 1: 5 => ((1 integer))
mem: ((1 integer)): 101002 <= 5
run: new-screen/test-new-screen 2: (((2 integer)) <- ((next-input)))
arg: nil 1 (5 5)
run: new-screen/test-new-screen 2: 5 => ((2 integer))
mem: ((2 integer)): 101003 <= 5
run: new-screen/test-new-screen 3: (((3 screen-address)) <- ((new)) ((screen literal)) ((1 integer)))
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 3: 101031 => ((3 screen-address))
mem: ((3 screen-address)): 101004 <= 101031
run: new-screen/test-new-screen 4: (((4 integer)) <- ((copy)) ((0 literal)))
run: new-screen/test-new-screen 4: 0 => ((4 integer))
mem: ((4 integer)): 101005 <= 0
run: new-screen/test-new-screen 5: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
mem: ((4 integer)) => 0
array-len: ((101031 screen) (raw))
mem: ((101031 integer) (raw)) => 5
run: new-screen/test-new-screen 5: 101032 => ((5 line-address-address))
mem: ((5 line-address-address)): 101006 <= 101032
run: new-screen/test-new-screen 6: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
mem: ((2 integer)) => 5
run: new-screen/test-new-screen 6: 101037 => ((5 line-address-address) (deref))
mem: ((5 line-address-address) (deref)): 101032 <= 101037
run: new-screen/test-new-screen 7: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
mem: ((5 line-address-address) (deref)) => 101037
run: new-screen/test-new-screen 7: 101037 => ((6 line-address))
mem: ((6 line-address)): 101007 <= 101037
run: new-screen/test-new-screen 8: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 0
run: new-screen/test-new-screen 8: 1 => ((4 integer))
mem: ((4 integer)): 101005 <= 1
run: new-screen/test-new-screen 9: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
mem: ((4 integer)) => 1
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 9: t => ((7 boolean))
mem: ((7 boolean)): 101008 <= t
run: new-screen/test-new-screen 10: (((jump-if)) ((7 boolean)) ((-6 offset)))
mem: ((7 boolean)) => t
run: new-screen/test-new-screen 5: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
mem: ((4 integer)) => 1
array-len: ((101031 screen) (raw))
mem: ((101031 integer) (raw)) => 5
run: new-screen/test-new-screen 5: 101033 => ((5 line-address-address))
mem: ((5 line-address-address)): 101006 <= 101033
run: new-screen/test-new-screen 6: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
mem: ((2 integer)) => 5
run: new-screen/test-new-screen 6: 101043 => ((5 line-address-address) (deref))
mem: ((5 line-address-address) (deref)): 101033 <= 101043
run: new-screen/test-new-screen 7: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
mem: ((5 line-address-address) (deref)) => 101043
run: new-screen/test-new-screen 7: 101043 => ((6 line-address))
mem: ((6 line-address)): 101007 <= 101043
run: new-screen/test-new-screen 8: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 1
run: new-screen/test-new-screen 8: 2 => ((4 integer))
mem: ((4 integer)): 101005 <= 2
run: new-screen/test-new-screen 9: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
mem: ((4 integer)) => 2
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 9: t => ((7 boolean))
mem: ((7 boolean)): 101008 <= t
run: new-screen/test-new-screen 10: (((jump-if)) ((7 boolean)) ((-6 offset)))
mem: ((7 boolean)) => t
run: new-screen/test-new-screen 5: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
mem: ((4 integer)) => 2
array-len: ((101031 screen) (raw))
mem: ((101031 integer) (raw)) => 5
run: new-screen/test-new-screen 5: 101034 => ((5 line-address-address))
mem: ((5 line-address-address)): 101006 <= 101034
run: new-screen/test-new-screen 6: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
mem: ((2 integer)) => 5
run: new-screen/test-new-screen 6: 101049 => ((5 line-address-address) (deref))
mem: ((5 line-address-address) (deref)): 101034 <= 101049
run: new-screen/test-new-screen 7: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
mem: ((5 line-address-address) (deref)) => 101049
run: new-screen/test-new-screen 7: 101049 => ((6 line-address))
mem: ((6 line-address)): 101007 <= 101049
run: new-screen/test-new-screen 8: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 2
run: new-screen/test-new-screen 8: 3 => ((4 integer))
mem: ((4 integer)): 101005 <= 3
run: new-screen/test-new-screen 9: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
mem: ((4 integer)) => 3
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 9: t => ((7 boolean))
mem: ((7 boolean)): 101008 <= t
run: new-screen/test-new-screen 10: (((jump-if)) ((7 boolean)) ((-6 offset)))
mem: ((7 boolean)) => t
run: new-screen/test-new-screen 5: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
mem: ((4 integer)) => 3
array-len: ((101031 screen) (raw))
mem: ((101031 integer) (raw)) => 5
run: new-screen/test-new-screen 5: 101035 => ((5 line-address-address))
mem: ((5 line-address-address)): 101006 <= 101035
run: new-screen/test-new-screen 6: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
mem: ((2 integer)) => 5
run: new-screen/test-new-screen 6: 101055 => ((5 line-address-address) (deref))
mem: ((5 line-address-address) (deref)): 101035 <= 101055
run: new-screen/test-new-screen 7: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
mem: ((5 line-address-address) (deref)) => 101055
run: new-screen/test-new-screen 7: 101055 => ((6 line-address))
mem: ((6 line-address)): 101007 <= 101055
run: new-screen/test-new-screen 8: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 3
run: new-screen/test-new-screen 8: 4 => ((4 integer))
mem: ((4 integer)): 101005 <= 4
run: new-screen/test-new-screen 9: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
mem: ((4 integer)) => 4
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 9: t => ((7 boolean))
mem: ((7 boolean)): 101008 <= t
run: new-screen/test-new-screen 10: (((jump-if)) ((7 boolean)) ((-6 offset)))
mem: ((7 boolean)) => t
run: new-screen/test-new-screen 5: (((5 line-address-address)) <- ((index-address)) ((3 screen-address) (deref)) ((4 integer)))
mem: ((4 integer)) => 4
array-len: ((101031 screen) (raw))
mem: ((101031 integer) (raw)) => 5
run: new-screen/test-new-screen 5: 101036 => ((5 line-address-address))
mem: ((5 line-address-address)): 101006 <= 101036
run: new-screen/test-new-screen 6: (((5 line-address-address) (deref)) <- ((new)) ((line literal)) ((2 integer)))
mem: ((2 integer)) => 5
run: new-screen/test-new-screen 6: 101061 => ((5 line-address-address) (deref))
mem: ((5 line-address-address) (deref)): 101036 <= 101061
run: new-screen/test-new-screen 7: (((6 line-address)) <- ((copy)) ((5 line-address-address) (deref)))
mem: ((5 line-address-address) (deref)) => 101061
run: new-screen/test-new-screen 7: 101061 => ((6 line-address))
mem: ((6 line-address)): 101007 <= 101061
run: new-screen/test-new-screen 8: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 4
run: new-screen/test-new-screen 8: 5 => ((4 integer))
mem: ((4 integer)): 101005 <= 5
run: new-screen/test-new-screen 9: (((7 boolean)) <- ((not-equal)) ((4 integer)) ((1 integer)))
mem: ((4 integer)) => 5
mem: ((1 integer)) => 5
run: new-screen/test-new-screen 9: nil => ((7 boolean))
mem: ((7 boolean)): 101008 <= nil
run: new-screen/test-new-screen 10: (((jump-if)) ((7 boolean)) ((-6 offset)))
mem: ((7 boolean)) => nil
run: new-screen/test-new-screen 11: (((reply)) ((3 screen-address)))
mem: ((3 screen-address)) => 101031
run: test-new-screen 0: 101031 => ((1 screen-address) (global))
mem: ((1 screen-address) (global)): 1 <= 101031
schedule: done with routine nil
