MPL Bytecode Compiler Code
Micro Programming Language - A Portable Language for Micro Computers
Status: Beta
Brought to you by:
buzzphp
##LIBSTR
**FGETS //
**FPRINTF //
**FPUTS //
**GETS //
**PRINTF //
**PUTI // FOR DEBUGGING
**PUTS //
[
FPUTS$(S,F;SS) [SS=0;(SS+=1)<=%S@.FWRC(F,S%SS);S]
FGETS$(S,F) [
%S=0;@[S%(%S+=1)=.FRDC(F);S%%S&&S%%S<>'*N'];==S%%S?%S-=1;S
]
GETS$(S) [FGETS(S,.FINP);S%%S=='*N'?%S-=1;S]
PUTS$(S) [FPUTS(S,.FOUT);.TWRC('*N');S]
PRINTF$(FMT,ARGS!10;STR%.STR) FPUTS(VSPRINTF(STR$,FMT,ARGS$),.FOUT)
FPRINTF$(F,FMT,ARGS!10;STR%.STR) FPUTS(VSPRINTF(STR$,FMT,ARGS$),F)
PUTI$(A%10) PUTS(ITOA(A,A$))
]