FlagVM/flagpole/fvmstd.fp

36 lines
455 B
GLSL

proc putchar
0xCFFFFFFFFFFFFFFD st8
endproc
proc getchar
0xCFFFFFFFFFFFFFFE ld8
endproc
proc putuint
@val
1 @divisor
while &val &divisor u/ 9 u> do
10 &divisor u* @divisor
endwhile
while &divisor 0 u> do
&val &divisor u/ 10 u%
48 u+ :putchar
&divisor 10 u/ @divisor
endwhile
endproc
proc puts
while dup ld8 0 == not do
dup ld8 :putchar
1 u+
endwhile
pop
endproc
proc newline
10 :putchar
endproc