True BASICとの相違

3.本BASICで使えない機能

True BASIC独自の機能で本BASICで使えないもの(おもなもの)

・制御関係
    library文
    MERGE文で対応可能
    OPTION TYPO
    オプション−文法−変数宣言を強要 に相当
    OPTION NOLET
    文法−Microsoft BASIC互換 で対応
    GET KEY
    CHARACTER INPUTの後,ORD関数を適用する
  KEY INPUT
    ASK CHARACTER PENDINGで対応
  END DATA, MORE DATA 
    READ文にIF MISSINGを書いて対応
  DECLARE PUBLIC
    DECLARE EXTERNAL NUMERIC
    および
    DECLARE EXTERNAL STRING
    に相当
    PUBLIC
    PUBLIC NUMERIC
    および
    PUBLIC STRING
    に分けて書く。
  PRIVATE
        share文に書き換える。
    (ただし,現バージョンでは非公開にならない)

・グラフィックス
    SET BACKGROUND COLOR  (SET BACK)
    SET COLOR MIX (0) の後,CLEAR
    ASK BACKGROUND COLOR  (ASK BACK)
    ASK COLOR MIX (0) で対応
  BOX LINES
    GRAPH LINES文で対応
        副プログラムとして定義しておくとよい。
          EXTERNAL SUB BOX_LINES(l,r,b,t)
            GRAPH LINES: l,b; r,b; r,t; l,t; l,b
          END SUB
    BOX AREA
    GRAPH AREA文で対応 EXTERNAL SUB BOX_AREA(l,r,b,t) GRAPH AREA: l,b; r,b; r,t; l,t END SUB   BOX CLEAR     GRAPH AREA文で対応   BOX CIRCLE,BOX ELLIPSE      DRAW circleで対応   BOX KEEP     ASK PIXEL ARRAYで対応   BOX SHOW     MAT PLOT CELLSで対応   GET MOUSE     MOUSE POLL(規格外)が機能的に近い SET MODE, ASK MODE     対応なし(ただしグラフィックは常に利用できる)     ビットマップのサイズ変更は SET BITMAP SIZE(規格外) SET CURSOR, ASK CURSOR     対応なし OPEN SCREEN     対応なし   WINDOW #     対応なし      ・ファイル,I/O関係 可変長ファイル (ORG RANDOM)     対応なし 固定長ファイル (ORG RECORD)     対応なし バイトファイル     OPTION CHARACTER BYTEを宣言し,CHARACTER INPUT文とPRINT文で対応 open文のCREATE句     対応なし(本BASICの既定値が適用される) END #,MORE #   INPUT文などに IF MISSING THENを書いて対応   UNSAVE FILE DELETE(規格外)と同義 ASK FREE MEMORY     対応なし ・音楽機能 PLAY文,SOUND文     対応なし(本BASICのPLAY文とは機能が異なる)       ・組み込み関数 CPOS, CPOSR, NCPOS, NCPOSR, POSR 外部関数を定義する 例 EXTERNAL FUNCTION CPOS(a$,b$,n) FOR i=n TO LEN(a$) IF POS(b$,a$(i:i))>0 THEN LET CPOS=i EXIT FUNCTION END IF NEXT i LET CPOS=0 END FUNCTION   PEEK, UNPACKB, NUM, NUM$, RUNTIME     対応なし ・組込み副プログラム   DIVIDE 外部副プログラム定義を利用     EXTERNAL SUB DIVIDE(a,b,q,r) LET q=INT(a,b) LET r=MOD(a,b) END SUB