マイクロソフト系BASICとの相違

組込み関数

マイクロソフト系BASICの組込み関数に対し,対応すると思われるFull BASICの組込み関数を示す。

ASC関数
  ASC(a$)
  ASC("x")
CINT関数
FIX関数
HEX$関数
  HEX$(n)
INSTR関数
  INSTR(n,a$,b$)
SPACE$関数
  SPACE$(n)
SPC関数
  SPC(n)
STRING$関数
  STRING$(n,a)
  STRING$(n,a$)
  STRING$(n,"x")
→ ORD関数
= ORD(a$(1:1))
= ORD("x")
→ ROUND関数
→ IP関数
→ BSTR$関数
= BSTR$(n,16)
→ POS関数
= pos(a$,b$,n)
→ REPEAT$関数
= REPEAT$(" ",n)
→ REPEAT$関数
= REPEAT$(" ",n)
→ REPEAT$関数
= REPEAT$(CHR$(a),n)
= REPEAT$(a$(1:1),n)
= REPEAT$("x",n)

SPC関数,STRING$(n,a)以外はLIBRARY\MS.LIBに外部関数として定義してある。したがって,LIBRARY\MS.LIBを末尾に読み込むと関数名を変更せずに実行可能になる。(細部の相違で修正が必要になることはあるかも知れない)

INKEY$関数 → character input文

EXTERNAL FUNCTION INKEY$
SET ECHO "OFF"
LET S$=""
CHARACTER INPUT NOWAIT: S$
LET INKEY$=S$
END FUNCTION

 サンプルはLIBRARY\INKEY$.BASにある。INKEY$関数は引数を持たないので,呼び出し側のプログラム単位にはDECLARE EXTERNAL FUNCTION文が必須である。
---------------

16進定数の修正
---------------
&H7F → BVAL("7F",16)

-------------
MID$への代入
-------------
MID$(a$,m,n)=s$ → LET a$(m:m+n-1)=s$