vextoly/cryn

[# manual memory: make a block, fill it, sum it, free it #]
define main
  make 4 of int64 block

  move at
  set 40
  move 0
  write
  back
  set 41
  move 1
  write
  back
  set 42
  move 2
  write
  back
  set 43
  move 3
  write
  back

  make int64 i
  make int64 sum
  set 3
  move i
  write
  set 0
  home

  mark sum
  move i
  read
  compare 0
  jump done when less
  set 0
  home

  move i
  read
  push
  move block
  read
  move at
  pop
  move index
  read
  push
  move sum
  read
  add
  move sum
  write
  move i
  read
  subtract 1
  move i
  write
  set 0
  home
  jump sum

  mark done
  move sum
  read
  output

  move block
  read
  free
  return
end