−−−− X-BASIC リファレンス −−−− ※BASICの各命令・関数は、以下の書式で記述されています。 命令文や関数名:種類  書式:   命令や関数の書き方です。   「」で囲まれた項目は、必要とされる引数やデータです。   【】で囲まれた項目は、省略可能です。   …は、同様に繰り返し、引数やデータを与える事を現します。   これ以外の文字(予約語、()、{}、[]などの記号類)はそのまま入力しなければなり   ません。   コマンドやステートメントなどは、原則として命令名とデータの間には、空白を入れ   てください。また、関数名と引数をくくる左括弧の間には、空白を入れないでくださ   い。  省略形:   省略出来る命令や関数の書き方です。なお、引数、括弧などは省略できません。  引 数:   関数が原則としてどういう型の引数を必要としているかを現しています。数値型とし   てint、char、float、文字型としてstrの4つのデータがありますが、複数の種類の   引数を取る関数については、それぞれのデータ型に応じて括弧でくくってまとめてあ   ります。数値型であれば何でもよい場合は数値型と表記しています。   また、引数が特に変数名や配列名(配列の場合は次元も明記しています)でなければ   ならない場合(定数、式などが引数とならない)は、そのように明記しています。  戻り値:   すべての関数について、その戻り値の型が書いてあります。int、char、float、str、   および意味を持たない戻り値(戻り値が存在しない場合も含む)として void、の5つ   の型があります。  機 能:   各命令や関数の機能および、引数の意味などを説明しています。  →   関連した命令や、文法など参考になるものを挙げてあります。  用 例:   簡単なサンプルプログラムや用例です。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− ABS:標準関数  書 式:abs(n)  引 数:float  戻り値:float  機 能:   数値n の絶対値を返します。  用 例: APAGE:GRAPH.FNC  書 式:apage(pa)  引 数:char  戻り値:void  機 能:   グラフィック画面のアクティブページpa(グラフィック画面で実際に読み書きするペー   ジ)を指定します。ページ番号は0〜3で、最大値はグラフィック画面の実画面サイズ   及び色モードによります。   グラフィック画面の実画面サイズ及び色モードによるアクティブページpa の値の範囲    1024×1024(16色モード) …0    512×512(16色モード)  …0〜3    512×512(256色モード)  …0、1    512×512(65536色モード) …0  → home、screen、vpage、window  用 例: ASC:標準関数  書 式:asc(st)  引 数:str  戻り値:int  機 能:   文字列st の先頭文字のキャラクタコードを返します。   st が null文字の場合は0を返します。文字とキャラクタコードの対応については、   『キャラクタコード表』を参照して下さい。  → chr$、『キャラクタコード表』  用 例: ATAN:標準関数  書 式:atan(n)  引 数:float  戻り値:float  機 能:   数値n の逆正接(アークタンジェント)を返します。   -π/2 から π/2 までの値を返します。  用 例: ATOF:標準関数  書 式:atof(st)  引 数:str  戻り値:float  機 能:   文字列st を float型の数値に変換します。st は、float型の数値に変換できる文字   (+、-、0〜9、.、e、E)の連続です。もし float型の数値として判定できない文字   があると、そこで変換するのをやめます。   st の先頭の空白文字やタブ文字は無視されます。また、小数点の前後には少なくと   も1つ以上の数字が必要です。さらに、指数表現では、 e あるいは E の後ろに少な   くとも1つ以上の数字が必要です。   st が null文字の場合は、エラーとなります。   変換できる文字列st の書式は次の通りです。   【whitespace】【sign】【digits】【.digits】【eまたはE【sign】digits】    whitespace…空白文字またはタブ文字で無視されます。    sign   …"+"または"-"    digits  …1つ以上の10進数で、小数点の前に何もなければ、小数点の後ろに少          なくとも1つの数字が必要です。    指数   …指数は"e"または"E"と符号をともなった10進数で構成されます。    例)      st="-2.51235e-2"  → ecvt、fcvt、gcvt  用 例: ATOI:標準関数  書 式:atoi(st)  引 数:str  戻り値:int  機 能:   文字列st を int型の数値に変換します。  → itoa  用 例: AUTO:コマンド  書 式:auto【「行番号」】【「増分」】  省略形:a.  機 能:   プログラム行の先頭に行番号を自動的に発生させます。 A_PLAY:AUDIO.FNC  書 式:a_play(na,sf,md【,lng】)  引 数:数値型一次元配列名(na),char(sf,md,lng)  戻り値:void  機 能:   指定された配列na の PCMデータを再生します。  用 例: A_REC:AUDIO.FNC  書 式:a_rec(na,sf【,lng】)  引 数:数値型一次元配列名(na),char(sf,lng)  戻り値:void  機 能:   指定された配列na に PCMデータを録音します。  用 例: BEEP:ステートメント  書 式:beep  機 能:   ビープ音を鳴らします。 print chr$(7) と同じ機能です。  用 例: BG_FILL:SPRITE.FNC  書 式:bg_fill(pg,pd)  引 数:char(pg),int(pd)  戻り値:int  機 能:   指定されたテキストページpg を、指定されたパターンデータpd で埋め尽くします。 BG_GET:SPRITE.FNC  書 式:bg_get(pg,x,y)  引 数:char  戻り値:int  機 能:   指定されたテキストページpg の指定された座標からパターンデータを読み出します。  → bg_put BG_PUT:SPRITE.FNC  書 式:bg_put(pg,x,y,pd)  引 数:char(pg,x,y),int(pd)  戻り値:int  機 能:   指定されたテキストページpg の指定された座標に、指定されたパターンデータpd を   設定します。  → bg_get BG_SCROLL:SPRITE.FNC  書 式:bg_scroll(b【,x】【,y】)  引 数:char(b),int(x,y)  戻り値:int  機 能:   バックグラウンドb のスクロール座標を設定します。    b…バックグラウンド(0、1)    x…スクロールX座標(0〜511または1023)    y…スクロールY座標(0〜511または1023)  → bg_stat BG_SET:SPRITE.FNC  書 式:bg_set(b【,pg】【,md】)  引 数:char  戻り値:int  機 能:   バックグラウンドb へのテキストページpg の割りあてと表示の設定を行います。    b …バックグラウンド(0、1)    pg…テキストページ(0、1)    md…バックグラウンドの表示     (0=表示しない、1=表示する)  → bg_stat BG_STAT:SPRITE.FNC  書 式:bg_stat(b,md)  引 数:char  戻り値:int  機 能:   指定されたバックグラウンドb の状態を読み出します。    b …バックグラウンド(0、1)    md…モード(0〜3)    モードmd には読み出す内容を指定します。     0=X座標(0〜511または1023)     1=Y座標(0〜511または1023)     2=テキストページ(0、1)     3=バックグラウンドの表示(0=表示されていない、1=表示されている)  → bg_scroll、bg_set BIN$:標準関数  書 式:bin$(i)  引 数:int  戻り値:str  機 能:   整数値i を2進数の文字列に変換し返します。なお、上位の"0"は取り除かれます。  → hex$、oct$  用 例: BOX:GRAPH.FNC  書 式:box(x1,y1,x2,y2,p【,ls】)  引 数:int  戻り値:void  機 能:   グラフィック画面上にボックス(四角形)を描きます。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標    p …パレットコード(色)    ls…ラインスタイル   x1、y1、x2、y2 は、-32768から32767までの値をとることができます。クリッピング   エリアについては window関数で指定された範囲になります。また、パレットコードp   は0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サ   イズおよび色モードによります。   ラインスタイルls は0〜65535の値をとり、これを16ビットのビットパターンとみなし、   実線(&HFFFF)や点線(&HAAAA)などを指定する事ができます。  用 例: BREAK:ステートメント  書 式:break  機 能:   最も内側のfor、repeat、switch、while文から抜け出します。  → continue  用 例: CHAR:ステートメント  書 式:char 「変数名」【=「定数式」】【,…】  機 能:   変数を整数(char)型として宣言します。同時に値を代入する事もできます。   原則として、変数宣言はメインプログラムの先頭で行ってください。また、同じ名前   の変数をメインプログラムの中で再宣言することはできません。  → float、int、str  用 例: CHDIR:コマンド  書 式:chdir "「ディレクトリ名」"  機 能:   ディレクトリを変更します。「ディレクトリ名」の詳細については、『Human68kユー   ザーズマニュアル』を参照してください。  用 例:chdir "a:\sys" CHDRV:コマンド  書 式:chdrv "「ドライブ名」"  機 能:   カレントドライブを変更します。「ドライブ名」の詳細については、『Human68kユー   ザーズマニュアル』を参照してください。  用 例:chdrv "a:" CHILD:コマンド  書 式:!「Human68kのコマンド」  機 能:   チャイルドプロセスを実行します。  用 例:!dir *.* CHR$:標準関数  書 式:chr$(ch)  引 数:char  戻り値:str  機 能:   キャラクターコードch の文字を返します。ch=0のときは null文字を返します。  → asc、『キャラクタコード表』  用 例: CIRCLE:GRAPH.FNC  書 式:circle(x,y,r,p【,s】【,e】【,hv】)  引 数:int  戻り値:void  機 能:   グラフィック画面に上に円や楕円や扇形、円弧を描きます。    x …円の中心のX座標    y …円の中心のY座標    r …円の半径    p …パレットコード(色)    s …開始角度(度)    e …終了角度(度)    hv…偏平率  用 例: CLEAR:コマンド  書 式:clear  省略形:cl.  機 能:   変数とスタックを初期化します。プログラム中では使えません。  → free CLS:ステートメント  書 式:cls  機 能:   テキスト画面のみを消去します。  用 例: COLOR:ステートメント  書 式:color 「属性」  省略形:col.  機 能:   テキスト画面の文字の属性を設定します。   文字の属性には、4つのパレットと、強調、リバースがあり、0〜15の値を使用するこ   とで設定できます。デフォルトとしては次のような属性がそれぞれ0から15に対応しま   す。    0 ノーマル 黒     8  リバース 黒    1 ノーマル シアン   9  リバース シアン    2 ノーマル 黄色    10 リバース 黄色    3 ノーマル 白     11 リバース 白    4 ノーマル強調 黒   12 リバース強調 黒    5 ノーマル強調 シアン 13 リバース強調 シアン    6 ノーマル強調 黄色  14 リバース強調 黄色    7 ノーマル強調 白   15 リバース強調 白  用 例: COLOR []:ステートメント  書 式:color [c0,c1,c2,c3]  省略形:col.  機 能:テキスト画面の各パレットにカラーコードを割りあてます。    c0…属性0、4、8、12のパレット(p0)に割りあてるカラーコード    c1…属性1、5、9、13のパレット(p1)に割りあてるカラーコード    c2…属性2、6、10、14のパレット(p2)に割りあてるカラーコード    c3…属性3、7、11、15のパレット(p3)に割りあてるカラーコード   カラーコードは0〜65535の値を使用できます。属性についてはcolor命令を参照して   ください。  用 例: CONSOLE:ステートメント  書 式:   console 【「スクロール開始行」】,【「スクロール行数」】,「ファンクションキー   表示」  省略形:cons.  機 能:   「スクロール開始行」で指定した行から「スクロール行数」分をテキスト画面のスク   ロールエリアとします。  用 例: CONT:コマンド  書 式:cont  省略形:c.  機 能:   BREAKキー(または CTRL + Cキー)入力、または stop命令によって停止したプログラ   ムの実行を再開します。実行停止中に list命令や print命令などを実行することはで   きますが、プログラムそのものの変更を行ったときは、cont命令による実行の再開は   できません。  → stop CONTINUE:ステートメント  書 式:continue  機 能:   for、repeat、while文の次のループを強制的に開始します。  → break  用 例: CONTRAST:GRAPH.FNC  書 式:contrast(ch)  引 数:char  戻り値:void  機 能:   画面全体のコントラストを指定します   ch… 0(文字やグラフィック、スプライトの表示が見えない)      :     15(文字やグラフィック、スプライトの表示がよく見える)  用 例: COS:標準関数  書 式:cos(n)  引 数:float  戻り値:float  機 能:   数値n(ラジアン)の余弦(コサイン)を返します。  用 例: CRT:標準関数  書 式:crt(cd)  引 数:char  戻り値:void  機 能:   テレビ・ビデオ画面とコンピュータ画面を切り替えます。    cd…切り替えコード(0〜3)    0 = テレビ・ビデオ画面の映像を表示    1 = コンピュータ画面を表示    2 = テレビ・ビデオ画面の映像のコントラストを下げてスーパーインポーズ表示    3 = テレビ・ビデオ画面の映像のコントラストを通常にしてスーパーインポーズ表示 CSRLIN:システム変数  書 式:csrlin  戻り値:int  機 能:   テキスト画面の現在のカーソルのY座標を返します。代入することはできません。  用 例: DATE$:システム変数  書 式:date$  引 数:str  戻り値:str  機 能:   現在の日付を文字列として返します。代入することによって日付を設定できます。  用 例: DAY$:システム変数  書 式:day$  戻り値:str  機 能:   現在の曜日を文字列として返します。代入することはできません。  用 例: DELETE:コマンド  書 式:delete 「行番号の範囲」  省略形:del.  機 能:   指定されたプログラム行を削除します。   行番号の指定方法によって、さまざまな形の削除が行えます。  delete 10  … 行番号10の行を削除します。  delete -100 … プログラムの先頭から行番号100までの行を削除します。  delete 200- … 行番号200からプログラムの最後までの行を削除します。  → list、new、renum DIM:ステートメント  書 式:   dim 【「型宣言」】「変数名」(「添え字の最大値」【,「添え字の最大値」…】)   【[「文字バッファのサイズ」]】【={「代入定数式データリスト」}】【,「変数名」…】  機 能:   配列変数を使うことを宣言します。  用 例: DSKF:標準関数  書 式:dskf(d)  引 数:char  戻り値:int  機 能:   指定されたドライブd の空きディスク容量を返します。エラーの場合は-1を返します。    d… 0 カレントドライブ      1 ドライブA      2 ドライブB      . .      . .  用 例: ECVT:標準関数  書 式:ecvt(f,i1,i2,i3)  引 数:float(F),int(i1),int型変数名(i2,i3)  戻り値:str  機 能:   浮動小数値f を文字列に変換し、その文字列を返します。文字列として返されるのは   数値のみです。   f … 文字列に変換したい浮動小数値   i1 … 文字列の桁数   i2 … 小数点の位置を返します。正の場合は、小数点は i2+1 の位置にあります。      0または負の場合は、小数点は i2-1 の位置にあります。   i3 … 符号を表わす値を返します。正の場合は0、負の場合は1になります。  → atof、fcvt、gcvt  用 例: END:ステートメント  書 式:end  機 能:   プログラムを終了します。プログラム内にいくつ置いてもかまいません。ただし、最   初に実行した end命令よりあとの命令文は実行されません。  用 例: ERRNO:システム変数  書 式:errno  戻り値:int  機 能:   外部関数でエラーが発生したときのエラー番号を返します。代入することはできませ   ん。error off のモードの場合に有効になります。戻り値として、次のような値を返   します。   0    …エラーが発生していない   正の整数 …エラー番号   負の整数 …システムエラー時のエラー番号 ERROR ON/OFF:ステートメント  書 式:error on または error off  機 能:   errror on にすると、外部関数でエラーが発生したときにエラーメッセージを表示し   て実行を停止するモードになります。   error off にすると外部関数でエラーが発生してもエラーメッセージを表示せず、次   のステートメントに実行が進められます。   run命令実行直後は error onモードになっています。   なお、error off のモードが有効なときは、プログラムで eroor off を実行している   間のみです。プログラムが終了して、"Ok"が表示されると error on のモードになり   ます。  用 例: EXIT():ステートメント  書 式:exit()  機 能:   現在オープンされているファイルをクローズするなどの処理をした後、親プロセスに   戻ります。  用 例: EXP:標準関数  書 式:exp(n)  引 数:float  戻り値:float  機 能:   自然対数の底"e"の n乗を返します。  用 例: FCLOSE:標準関数  書 式:fclose(fp)  引 数:int  戻り値:int  機 能:   fopen関数によってオープンされたファイルをクローズします。クローズした場合、戻   り値として0を返します。エラーの場合は-1を返します。   fp…ファイル番号  用 例: FCLOSEALL:標準関数  書 式:fcloseall()  戻り値:int  機 能:   オープン中の全てのファイルをクローズします。戻り値として、クローズしたファイ   ルの個数を返します。エラーの場合は-1を返します。  用 例: FCVT:標準関数  書 式:fcvt(f,i1,i2,i3)  引 数:float(f),int(i1),int型変数名(i2,i3)  戻り値:str  機 能:   浮動小数値f を文字列に変換し、その文字列を返します。文字列として返されるのは   数値のみです。   f …文字列に変換したい浮動小数値   i1…文字列の小数点以下の桁数   i2…小数点の位置を返します。正の場合は、小数点は i2+1 の位置にあります。     0または負の場合は、小数点は i2-1 の位置にあります。   i3…符号を表わす値を返します。正の場合は0、負の場合は1になります。  → atof、ecvt、gcvt  用 例: FDELETE:標準関数  書 式:fdelete(fn)  引 数:str  戻り値:int  機 能:   ファイルfn を削除します。   削除できた場合、戻り値として0を返します。エラーの場合は-1を返します。   fn…ファイル名  用 例: FEOF:標準関数  書 式:feof(fp)  引 数:int  戻り値:int  機 能:   指定されたファイルの終了チェックを行います。ファイルが終わりなら-1、終ってい   なければ0を返します。エラーの場合も-1を返します。   fp…ファイル番号  用 例: FGETC:標準関数  書 式:fgetc(fp)  引 数:int  戻り値:int  機 能:   指定されたファイルから1文字ずつ読み込みます。戻り値として、読み込んだ文字の   キャラクターコードを返します。   ファイルの最後まで読み込んだ場合や、エラーの場合は-1を返します。   fp…ファイル番号   ファイル内のデータポインタの位置は、1バイトずつ移動していきます。ファイル内   をランダムアクセスしてデータポインタを移動する場合は、fseek関数を使用します。  → fputc  用 例: FILES:コマンド  書 式:【l】files 【"【「ドライブ名」】【「ファイル名」】"】  省略形:【l】fi.  機 能:   指定されたドライブのファイルの一覧を表示します。   lfiles命令では出力先がプリンタとなります。  用 例:files "a:\*.*" FILL:GRAPH.FNC  書 式:fill(x1,y1,x2,y2,p)  引 数:int  戻り値:void  機 能:   グラフィック画面上に中を塗りつぶしたボックス(四角形)を描きます。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標    p …パレットコード(色)   x1、y1、x2、y2 は、-32768から32767までの値をとることができます。クリッピング   エリアについては window関数で指定された範囲になります。また、パレットコードp   は0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サ   イズおよび色モードによります。  用 例: FIX:標準関数  書 式:fix(f)  引 数:float  戻り値:float  機 能:   浮動小数値f の小数点以下を切り捨てた値を返します。  用 例: FLOAT:ステートメント  書 式:float 「変数名」【=「定数式」】【,…】  機 能:   変数を実数(float)型として宣言します。同時に値を代入する事もできます。原則と   して、変数宣言はメインプログラムの先頭で行ってください。また、同じ名前の変数   をメインプログラム中で再宣言することはできません。  → char、int、str  用 例: FOPEN:標準関数  書 式:fopen(fn,md)  引 数:str  戻り値:int  機 能:   指定されたファイルを、モードを決めてオープンします。戻り値として、ファイル番   号を返します。エラーの場合は-1を返します。   fn …ファイル名   md …モード    "r" すでに存在しているファイルを読み込み用(リード)としてオープンする。       ファイルがない場合はエラー。    "w" すでに存在しているファイルを書き込み用(ライト)としてオープンする。       ファイルがない場合はエラー。    "rw" すでに存在しているファイルを読み書き両用(リード/ライト)としてオープ       ンする。ファイルがない場合はエラー。    "c" 新規ファイルを読み書き両用(リード/ライト)としてオープンする。       同一ファイルが、すでに存在してる場合は、そのファイルを消去してから、       読み書き両用(リード/ライト)として新しくオープンする。   特に、既存ファイルのデータに対して、追加、修正する場合は、"w"、"rw"モードを使   用します。   オープンされたばかりのファイルでは、ファイル内のデータポインタの位置は、ファ   イルの先頭にあります。データポインタを移動する場合は、fseek関数を使用します。  用 例: FOR〜NEXT:ステートメント  書 式:   for 「int型変数名」=「初期値」 to 「最終値」    :   「ループの内容」    :   next  機 能:   for から next までの間で指定された「ループの内容」を、指定された回数だけ繰り   返し(ループ)ます。   増分は1です。   「初期値」が「最終値」と等しい場合は、1回だけ「ループの内容」が実行されます。   「初期値」が「最終値」より大きい場合は、「ループの内容」は一度も実行されませ   ん。  用 例: FPUTC:標準関数  書 式:fgetc(ch,fp)  引 数:char(ch)、int(fp)  戻り値:int  機 能:   指定されたファイルに1文字ずつ書き込みます。戻り値として、書き込んだ文字のキャ   ラクターコードch を返します。ファイルへの書き込みができなかった場合や、エラー   の場合は-1を返します。    ch…書き込むキャラクターコード    fp…ファイル番号   キャラクターコードch は、0から255の値をとります。ファイル内のデータポインタの   位置は、1バイトずつ移動していきます。ファイル内をランダムアクセスしてデータ   ポインタを移動する場合は、fseek関数を使用します。  → fgetc  用 例: FREAD:標準関数  書 式:fread(na,n,fp)  引 数:数値型一次元配列名(na),int(n,fp)  戻り値:int  機 能:   指定されたファイルから、指定された要素数分n を指定された配列に読み込みます。   戻り値として、実際に読み込んだ要素数を返します。エラーの場合は-1を返します。   na… 数値型一次元配列名(int型または、char型または、float型の一次元配列名)   n … 要素数(1バイト(char型)または4バイト(int型)または8バイト(float型)単位)   fp… ファイル番号   ファイル内のデータポインタの位置は、指定された配列na のデータ型に対応して、   char型であれば1バイトずつ、int型であれば4バイトずつ、float型であれば8バイ   トずつ、移動していきます。ファイル内をランダムアクセスしてデータポインタを移   動する場合は、fseek関数を使用します。  → fwrite  用 例: FREADS:標準関数  書 式:freads(st,fp)  引 数:str型変数名(st),int(fp)  戻り値:int  機 能:   指定されたファイルから1行を str型変数st に読み込みます。戻り値として、ファイ   ルから読み込んだ文字数を返します。ファイルの最後まで読み込んだ場合や、すでに   読み込んでいる場合あるいはエラーの場合は、-1を返します。    st…読み込んだ文字列を格納するstr型変数名    fp…ファイル番号   1行の読み込みを終了するのは、改行(CR(&HD)、LF(&H0A))が現れたときか、st の文   字バッファがいっぱいになったときです。ファイルの読み込みを終了するのは、ファ   イルが終った時か、ファイル終了コード(&H1A)が現れたときです。   なお、st の文字バッファには、改行およびファイル終了コードは書き込まれません。   ファイル内をランダムアクセスしてデータポインタを移動する場合は、fseek関数を使   用します。  → fwrites  用 例: FREE:システム変数  書 式:free  戻り値:int  機 能:   現在のメモリ上のフリーエリアを返します。代入する事はできません。  用 例: FRENAME:標準関数  書 式:frename(fn1,fn2)  引 数:str  戻り値:int  機 能:   ファイル名fn1 のファイル名をファイル名fn2 に変更します。変更できた場合、戻り   値として0を返します。エラーの場合は-1を返します。    fn1…変更したいファイル名    fn2…変更後のファイル名  用 例: FSEEK:標準関数  書 式:fseek(fp,os,md)  引 数:int  戻り値:int  機 能:   指定されたファイル内のデータポインタを移動します。ファイルをシークモードmd で   指定された位置から1バイト単位でランダムアクセスするときに使用します。シーク   モードmd で指定された位置から、オフセットos で指定されたところまで、ランダム   アクセス後、新しいデータポインタの位置を返します。エラーの場合は-1を返します。    fp…ファイル番号    os…オフセット(バイト単位)    md…シークモード      0=ファイルの先頭      1=現在の位置      2=ファイルの終わり  用 例: FUNC〜ENDFUNC〜RETURN():ステートメント  書 式:   func 【「戻り値の型」】 「関数名」(【「引数リスト」】)   :  「関数の内容」   :   endfunc  機 能:   関数を定義します。func〜endfunc の関数は、必ず end命令以後に定義します。   func〜endfunc で定義された関数から演算結果などの値を返したい場合は次のような   命令を func〜endfunc でかこまれた中で使用します。   return(【「戻り値」】)  用 例: FWRITE:標準関数  書 式:fwrite(na,n,fp)  引 数:数値型一次元配列名(na),int(n,fp)  戻り値:int  機 能:   指定された配列na のデータを、指定された要素数分n だけ指定されたファイルに書き   込みます。戻り値として、実際に書き込んだ要素数を返します。エラーの場合は-1を   返します。   na… 数値型一次元配列名(int型または、char型または、float型の一次元配列名)   n … 要素数(1バイト(char型)または4バイト(int型)または8バイト(float型)単位)   fp… ファイル番号   ファイル内のデータポインタの位置は、指定された配列na のデータ型に対応して、   char型であれば1バイトずつ、int型であれば4バイトずつ、float型であれば8バイ   トずつ、移動していきます。ファイル内をランダムアクセスしてデータポインタを移   動する場合は、fseek関数を使用します。  → fread  用 例: FWRITES:標準関数  書 式:fwrites(st,fp)  引 数:str型変数名(st),int(fp)  戻り値:int  機 能:   指定されたファイルに str型変数st の1行を書き込みます。戻り値として、ファイル   に書き込んだ文字数を返します。エラーの場合は、-1を返します。    st…書き込むべき文字列を格納しているstr型変数名    fp…ファイル番号   null文字(キャラクタコードの0)は書き込みません。ファイル内をランダムアクセス   してデータポインタを移動する場合は、fseek関数を使用します。  → freads  用 例: GCVT:標準関数  書 式:gcvt(f,i)  引 数:float(f),int(i)  戻り値:str  機 能:   浮動小数値f を文字列に変換し、その文字列を返します。    f…文字列に変換したい浮動小数値    i…文字列の桁数   通常は指定された桁数i の実数表現に変換しますが、それができない場合は指数表現   に変換します。先頭の"0"は変換の際に取り除かれます。  → atof、ecvt、fcvt  用 例: GET:GRAPH.FNC  書 式:get(x1,y1,x2,y2,na)  引 数:int(x1,y1,x2,y2),数値型一次元配列(na)  戻り値:void  機 能:   グラフィック画面の指定領域のドットパターンを指定された配列na に読み込みます。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標    na…ドットパターンを読み込む数値型一次元配列名  → put  用 例: GOSUB〜RETURN:ステートメント  書 式:gosub 「行番号」  機 能:   指定したサブルーチンを呼び出し、return命令で戻ります。   ただし、gosub命令を使用したプログラムは、行番号に依存したプログラムになるため   load@命令、save@命令は使用できません。また、renum命令による「行番号」の変更も   できなくなります。  → goto  用 例: GOTO:ステートメント  書 式:goto 「行番号」  機 能:   指定した行にジャンプします。   ただし、goto命令を使用したプログラムは、行番号に依存したプログラムになるため   load@命令、save@命令は使用できません。また、renum命令による「行番号」の変更も   できなくなります。   goto命令で、for〜next、while〜endwhile などのブロック構造から外に出てしまうと   プログラムの動作が正常でなくなる可能性があります。  用 例: HEX$:標準関数  書 式:hex$(i)  引 数:int  戻り値:str  機 能:   整数値i を16進数表現の文字列に変換し返します。なお、上位の"0"は取り除かれます。  → bin$、oct$  用 例: HOME:GRAPH.FNC  書 式:home(pa,x,y,)  引 数:chara(pa),int(x,y)  戻り値:void  機 能:   グラフィック画面の実画面における表示画面の左上座標を指定します。    pa…アクティブページ    x …実画面における表示画面の左上X座標    y …実画面における表示画面の左上Y座標   アクティブページpa はグラフィック画面の実画面サイズ及び色モードにより最大値   (0〜3)が決まり、x、y、も同様にグラフィック画面の実画面サイズ及び色モードによ   り、実画面サイズが512×512の場合は0から511まで、あるいは実画面サイズが1024×   1024の場合は0から1023までの値をとることができます。   screen命令を実行すると(x,y)には(0,0)が再設定されます。  → apage、screen、vpage、window  用 例: HSV:GRAPH.FNC  書 式:hsv(hu,sa,va)  引 数:char  戻り値:int  機 能:   色相(hu)、飽和度(sa)、明るさ(va)からカラーコードを求めます。    hu…0〜191    sa…0〜31    va…0〜31   なお、この hsv関数によって得られるカラーコードは、0〜65534までの偶数値になり   ます。したがって、それぞれの偶数値に1を加える事で、0〜65535までのカラーコード   を指定できます。  用 例: IF〜THEN〜ELSE:ステートメント  書 式:if 「条件」 then 「文」 【else 「文」】  機 能:   「条件」で条件判断を行い、その結果に応じて「文」を実行します。   if に続けて「条件」を指定します。その「条件」が満たされたときは then 以下の   「文」が実行され、そうでないときは else 以下の「文」が実行されます。   else 以降は省略することができます。その場合、条件が満たされなかったときは次の   行が実行されます。   条件には、以下のような比較演算子と論理演算子とが使えます。論理演算子は、複数   の条件を指定するときに使います。    比較演算子 意味                   例    式1= 式2 式1が式2と等しい            if a=1    式1<>式2 式1が式2と等しくない          if a<>1    式1< 式2 式1が式2より小さい           if a<10    式1> 式2 式1が式2より大きい           if a>b    式1<=式2 式1が式2と等しいしいか、式2より小さい if a<=b+1    式1>=式2 式1が式2と等しいか、式2より大きい   if a>="n"    論理演算子 例       意味    not     if not (a=1)  a が1でなければ then 以下を実行    and     if a=0 and b=3 a が0で、b が3のときのみ then 以下を実行    or     if a<0 or b=0 a が0より小さいか、bが0のときに then 以下を実行   then節または else節は、{}と組み合わせて、複数行の条件判断に使用できます。  用 例: IMG_COLOR:IMAGE.FNC  書 式:img_color(md)  引 数:char  戻り値:void  機 能:   取込み画像のグラフィックパレットを補正します。    md…グラフィック画面の色モード(0〜2)     0=グラフィック画面16色モード     1=グラフィック画面256色モード     2=グラフィック画面65536色モード IMG_HOME:IMAGE.FNC  書 式:img_home(x,y,dir,cnt,wt)  引 数:int(x,y,cnt,wt),char(dir)  戻り値:void  機 能:   グラフィック画面の表示画面の位置を移動します。    x … グラフィック画面の実画面における表示画面の左上X座標    y … グラフィック画面の実画面における表示画面の左上Y座標    dir… 移動方向(1〜9)       1=左下2=下3=右下4=左6=右7=左上8=上9=右上    cnt… 移動ドット数    wt … ウェイト時間(×約1.2μ秒)  用 例: IMG_HT:IMAGE.FNC  書 式:img_ht(x1,y1,x2,y2,p,a)  引 数:int(x1,y1,x2,y2),char(p,a)  戻り値:void  機 能:   グラフィック画面とテレビ・ビデオ画面との半透明表示を制御します。    x1… グラフィック画面の半透明領域の始点X座標    y1… グラフィック画面の半透明領域の始点Y座標    x2… グラフィック画面の半透明領域の終点X座標    y2… グラフィック画面の半透明領域の終点Y座標    p … 指定された領域内のグラフィック画面の半透明表示の設定       (0=設定しない、1=設定する)    a … 半透明表示の制御(0=半透明表示を実行しない、1=半透明表示を実行する)   なお、この関数を実行するにはカラーイメージユニットCZ-6VT1が必要です。  用 例: IMG_LOAD:標準関数  書 式:img_load(st【,x】【,y】【,b】)  引 数:str(st),int(x,y,b)  戻り値:int  機 能:   グラフィック画面をロードします。   戻り値として、正常のときは0、エラーのときは-1を返します。    st…主ファイル名    x …ロードするグラフィック画面の左上X座標    y …ロードするグラフィック画面の左上Y座標      表示画面サイズが512×512の場合       x=0,y=0      表示画面サイズが256×256の場合       0≦x≦256,0≦y≦256    b …ロード終了位置の指定       b=dy/n       dy…Y座標の下からのドット数        n…拡張子         GS0…32         GS3…16         GM0…16         GM3…8         GL0…8         GL3…4   拡張子の意味については、img_save関数を参照して下さい。 IMG_POS:IMAGE.FNC  書 式:imag_pos(hc)  引 数:char  戻り値:void  機 能:   画像取込み時の画面水平位置を補正します。    hc…水平位置補正データ(0〜255)    ・表示画面サイズが512×512の場合     画像取り込みする際、はじめは&H9Aにセットし、     静止画にした後&H2Cに設定します。    ・表示画面サイズが256×256の場合     はじめは&HEBにセットし、     静止画にした後&H24に設定します。   なお、この関数を実行するにはカラーイメージユニットCZ-6VT1が必要です。 IMG_PUT:IMAGE.FNC  書 式:img_put(x1,y1,x2,y2,ia)  引 数:int(x1,y1,x2,y2),int型一次元配列名(ia)  戻り値:void  機 能:   グラフィック画面の(x1,y1)から(x2,y2)まで、8ドットごとに移動しながら、配列ia   のデータを256×256ドットのボックスで表示します。    x1…グラフィック画面の始点X座標(0≦x1≦256)    y1…グラフィック画面の始点Y座標(0≦x1≦256)    x2…グラフィック画面の終点X座標(0≦x1≦256)    y2…グラフィック画面の終点Y座標(0≦x1≦256)    ia…get関数で読み込んだ int型一次元配列名 IMG_SAVE:IMAGE.FNC  書 式:img_save(st【,x】【,y】)  引 数:str(st),int(x,y)  戻り値:int  機 能:   グラフィック画面をセーブします。   戻り値として、正常の時は0、エラーの時は-1を返します。    st…主ファイル名   拡張子はグラフィック画面のスクリーンモードに応じて以下のように付加されます。    表示画面サイズ 色モード 拡張子    256×256    16色   GS0    256×256    256色   GM0    256×256    65536色  GL0    512×512    16色   GS3    512×512    256色   GM3    512×512    65536色  GL3    x …セーブするグラフィック画面の左上X座標    y …セーブするグラフィック画面の左上Y座標      表示画面サイズが512×512の場合       x=0,y=0      表示画面サイズが256×256の場合       0≦x≦256,0≦y≦256 IMG_SCRN:IMAGE.FNC  書 式:img_scrn(sz,co,dis)  引 数:int  戻り値:void  機 能:   グラフィック画面のスクリーンモードを設定します。   ただし、グラフィック画面クリア、パレット・コントラスト・表示モードの初期化は   行いません。    sz…表示画面サイズ(0〜2)      0=256×256      1=512×512      2=768×512    co…グラフィック画面の実画面サイズ及び色モード(0〜3)      0=1024×1024 16色      1=512×512  16色      2=512×512  256色      3=512×512  65536色    dis…ディスプレイ解像度(0、1)      0=標準解像度      1=高解像度 IMG_SET:IMAGE.FNC  書 式:imag_set(c【,c】【,c】【,c】【,c】)  引 数:char  戻り値:void  機 能:   カラーイメージユニットCZ-6VT1の各種コントロールを行います。    c…カラーイメージユニットのコントロールコード(&H00〜&HFF)   『コントロールコード一覧表(使用ポートアドレス E8E005H)』   入力する値:コード:命令              :備考    0 00(H)  00000:65536色(2^16)モード    1 01(H)  00001:空き    2 02(H)  00010:空き    3 03(H)  00011:コンピューターコントロールモード:赤色ランプ点灯    4 04(H)  00100:マニュアルモード        :緑色ランプ点灯    5 05(H)  00101:<カラーイメージ> モノクロ映像  :リセット、色の濃さUP DOWN                             いずれかで解除される。    6 06(H)  00110:<テロッパ> 出力ON    7 07(H)  00111:< 〃  > 出力OFF       :リセットで解除される    8 08(H)  01000:<カラーイメージ> リセット    :各映像調整を標準の位置に戻す。 色の濃さUP 色の濃さDOWN 色あいUP 色あいDOWN 映像UP 映像DOWN 909(H)01001  100A(H)01010  110B(H)01011  120C(H)01100  130D(H)01101  140E(H)01110  150F(H)01111256色(2^8)モード  1610(H)10000
<  テロッパ  >リセット
色の濃さUP
色の濃さDOWN
色あいUP
色あいDOWN
映像UP
映像DOWN
各映像調整を標準の位置に戻す。 1711(H)10001  1812(H)10010  1913(H)10011  2014(H)10100  2115(H)10101  2216(H)10110  2317(H)1011116色(2^4)モード  24
:
3118
:
1F(H)11000
:
11111空き    なお、この関数を実行するにはカラーイメージユニットCZ-6VT1が必要です。 IMG_STILL:IMAGE.FNC  書 式:img_still(sw)  引 数:char  戻り値:void  機 能:   画像取込みモードsw を設定します。    sw…画像取込みモードの設定      0=実行(静止画)      1=待機(動画)   実行前に、screen命令で、あらかじめ表示画面サイズを256×256または512×512に、   ディスプレイ解像度を Low(標準解像度)に設定します。   また、画像取込みを実行するプログラムの終了時には、img_still(0)を実行します。   なお、この関数を実行するにはカラーイメージユニットCZ-6VT1が必要です。 INKEY$またはINKEY$(0):システム変数  書 式:inkey$ または inkey$(0)  戻り値:str  機 能:   キーボードから入力された1文字を返します。代入することはできません。   inkey$ は、キー入力されるまで待ちます。   inkey$(0) は、キー入力待ちを行いません。  → input、『キャラクタコード表』  用 例: INPUT:ステートメント  書 式:input 【"「プロンプト文」"「;または,」】「変数名」【,「変数名」…】  機 能:   キーボードから入力されるデータを、指定したデータ型の変数へ代入します。データ   を入力したら、リターンキーを押してください。  → inkey$  用 例: INSTR:標準関数  書 式:instr(i,st1,st2)  引 数:int(i),str(st1,st2)  戻り値:int  機 能:   文字列st2を文字列st1の指定された位置i から探してその位置を返します。位置i は   1〜255の値をとります。ただし次の場合は0を返します。    ・文字列st2 が見つからなかった場合    ・指定された位置i が0または負の場合    ・文字列st1 または st2 が null文字の場合  用 例: INT:ステートメント  書 式:int 「変数名」【=「定数式」】【,…】  機 能:   変数を整数(int)型として宣言します。同時に値を代入する事もできます。   原則として、変数宣言はメインプログラムの先頭で行ってください。また、同じ名前   の変数をメインプログラムの中で再宣言することはできません。  → char、float、str  用 例: INT():標準関数  書 式:int(f)  引 数:float  戻り値:int  機 能:   浮動小数値f を越えない最大の整数値を返します。  用 例: ISALNUM:標準関数  書 式:isalnum(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が英数字('a'〜'z'、'A'〜'Z'、'0'〜'9')であるかどう   か調べます。英数字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISALPHA:標準関数  書 式:isalpha(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が英字('a'〜'z'、'A'〜'Z')であるかどうか調べます。   英字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISASCII:標準関数  書 式:isascii(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字がアスキー文字(&H00〜&H7F)であるかどうか調べます。   アスキー文字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISCNTRL:標準関数  書 式:iscntrl(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字がコントロール文字(&H00〜&H1F、&H7F)であるかどうか   調べます。コントロール文字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISDIGIT:標準関数  書 式:isdigit(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が数字('0'〜'9')であるかどうか調べます。数字であれ   ば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISGRAPH:標準関数  書 式:isgraph(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が空白文字以外の表示可能な文字(&H21〜&H7E)であるか   どうか調べます。表示可能であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISLOWER:標準関数  書 式:islower(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が英小文字('a'〜'z')であるかどうか調べます。英小文   字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISPRINT:標準関数  書 式:isprint(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が表示可能な文字(&H20〜&H7E)であるかどうか調べます。   表示可能であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISPUNCT:標準関数  書 式:ispunct(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が表示可能な記号文字(&H20〜&H2F、&H3A〜&H40、&H5B   〜&H60、&H7B〜&H7E)であるかどうか調べます。表示可能な記号文字であれば-1、そう   でなければ0を返します。  用 例: ISSPACE:標準関数  書 式:isspace(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が空白文字(&H09〜&H0D、&H20)であるかどうか調べます。   空白文字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISUPPER:標準関数  書 式:isupper(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が英大文字('A'〜'Z')であるかどうか調べます。英大文   字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ISXDIGIT:標準関数  書 式:isxdigit(ch)  引 数:char  戻り値:int  機 能:   キャラクターコードch の文字が16進数の文字('0'〜'9'、'a'〜'f'、'A'〜'F'、)であ   るかどうか調べます。16進数の文字であれば-1、そうでなければ0を返します。    ch…調べたい文字のキャラクタコード(0〜255)  用 例: ITOA:標準関数  書 式:itoa(i)  引 数:int  戻り値:str  機 能:   整数値i を文字列に変換し、その文字列を返します。  → atoi  用 例: KEY:ステートメント  書 式:key 「ファンクションキーナンバー」,「文字列」  機 能:   ファンクションキーの内容を定義します。「ファンクションキーナンバー」は1〜20で、   1〜10は F1〜F10キーを、11〜20は SHIFTキーを押しながら F1〜F10キーを押した場合   に対応します。   「文字列」の長さは32文字まで有効です。   CTRL+A(CTRLキーを押しながら Aキーを押す)やCTRL+M(CTRLキーを押しながら Mキー   を押す)のような文字を定義するには、"@A"、"@M"のように"@"と対応する各大文字を   並べて使います。   なお引用符は(”)は"@@"となります  → 『コントロールコード一覧』  用 例: KEY LIST:コマンド  書 式:key list  機 能:   ファンクションキーの内容一覧を表示します。  用 例:key list KILL:コマンド  書 式:kill "【「ドライブ名」】「ファイル名」"  省略形:ki.  機 能:   指定したファイルを削除します。  用 例:kill "a:test.bas" LEFT$:標準関数  書 式:left$(st,i)  引 数:str(st),int(i)  戻り値:str  機 能:   文字列st の先頭から指定された文字数i の文字列を取り出して返します。    st…元の文字列(文字式)     i…取り出したい文字数   文字数i は、1から255の値を取ります。   指定された文字数i が、文字列st の総文字数より多い時は、文字列st をそのまま取   り出して返します。   指定された文字数i が、0または負の場合は null文字を返します。  → mid$、right$  用 例: LINE:GRAPH.FNC  書 式:line(x1,y1,x2,y2,p【,ls】)  引 数:int  戻り値:void  機 能:   グラフィック画面上に直線を引きます。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標    p …パレットコード(色)    ls…ラインスタイル   x1、y1、x2、y2 は、-32768から32767までの値をとることができます。クリッピング   エリアについては window関数で指定された範囲になります。また、パレットコードp   は0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サ   イズおよび色モードによります。   ラインスタイルls は0〜65535の値をとり、これを16ビットのビットパターンとみなし、   実線(&HFFFF)や点線(&HAAAA)などを指定する事ができます。  用 例: LINPUT:ステートメント  書 式:linput 【"「プロンプト文」";】「str型変数名」  機 能:   指定された str型変数に、キーボードから文字列を入力します。文字列を入力したら、   リターンキーを押してください。   input命令と違い、一度に一つの str型変数にしか代入できず、また数値型の変数への   代入はできません。カンマ(,)、引用符(")なども代入する事ができます。   linput文では、疑問符(?)は表示されません。また、str型変数に入力できる最大文字   数は、その表示画面の水平最大文字数-(プロンプト文字数+1)となります。ただし、設   定されている文字バッファのサイズ以上のデータは代入されません。  用 例: LIST:コマンド  書 式:【l】list 【「行番号1」】【-「行番号2」】  省略形:【l】l.  機 能:   メモリにあるプログラムリストを画面に表示したり、プリンタに印刷します。   表示を開始する「行番号1」を省略すると、プログラムリストの先頭から表示が始ま   り、表示を終了する「行番号2」を省略すると、プログラムリストの最後までが表示   されます。たとえば、    list   プログラムリストの先頭から最後までが表示されます。    list 50  行番号50のみ表示されます。    list -100 プログラムリストの先頭から100行目までが表示されます。    list 200- プログラムリストの200行目から最後までが表示されます。   list の機能を一時停止したい時は、CTRL+Sキーを押します。何かキーを押せば、表示   を再開します。また、list の機能を終了したい時は、BREAKキー(または CTRL+Cキー)   を押します。   list命令の代りに llist命令を用いれば、プログラムリストをプリンタに印刷するこ   とができます。  用 例:list 10-300 LOAD:コマンド  書 式:load【@】 "【「ドライブ名」「ファイル名」】"【,「行番号」】【,「増分」】  省略形:lo.  機 能:   指定した BASICプログラムをロードします。   プログラムがロードされると、それまでにメモリ上にあったプログラムは消されます。   load@ は行番号を除いて(save@ によって)セーブされたプログラムに「行番号」と   その「増分」を指定(しなければともに10)してロードします。この場合、プログラ   ムは、指定された行番号から、指定された増分を付加しながらロードされます。すで   にプログラムがメモリにある場合、ロードしたプログラムがマージ(混合、追加)さ   れます。   「ドライブ名」、「ファイル名」についての詳細は。『Human68kユーザーズマニュア   ル』を参照してください。  → save  用 例:load "a:\test.bas" LOCATE:ステートメント  書 式:locate 「X座標」,「Y座標」【,カーソルスイッチ】  省略形:loc.  機 能:   カーソルをテキスト画面の「X座標」、「Y座標」で指定されたキャラクタ座標位置   へ移動します。「X座標」、「Y座標」の取りうる範囲は、スクリーンモードとスク   ロールエリアによります。「カーソルスイッチ」が0の時はカーソル表示OFFで、1なら   カーソル表示ONです。   なお、「カーソルスイッチ」が有効な時は、プログラムで「カーソルスイッチ」を0に   している間のみです。プログラムが終了して"Ok"が表示されるとカーソル表示ONにな   ります。  用 例: LOG:標準関数  書 式:log(n)  引 数:float  戻り値:float  機 能:   数値n の自然対数を返します。n>0でなければなりません。  用 例: MID$:標準関数  書 式:mid$(st,i1,i2)  引 数:str(st),int(i1,i2)  戻り値:str  機 能:   文字列st の先頭から指定された位置i1 から指定された文字数i2分の文字列を取り出   して返します。    st…元の文字列(文字式)    i1…取り出し始める位置    i2…取り出したい文字数   位置i1 および文字数i2 は、1から255の値を取ります。   取り出したい文字数i2 が、文字列st の取り出し始める位置i1 からの文字数よりも多   い時は、指定された位置i1以降の全ての文字列を取り出して返します。   取りだし始める位置i1 が、0あるいは負の場合や、文字列st の長さを越えている場合   は null文字を返します。取りだしたい文字数i2 が、0または負の場合も null文字を   返します。  → left$、right$  用 例: MIRROR$:標準関数  書 式:mirror$(st)  引 数:str  戻り値:str  機 能:   文字列の並びを逆転して返します。  用 例: MOUSE:MOUSE.FNC  書 式:mouse(ch)  引 数:char  戻り値:int  機 能:   マウスカーソルの表示、マウスの初期化などを行います。戻り値は、ch=3以外では、   通常0、エラーの時は-1を返します。    ch…0= マウスの初期化(右ボタン専有…ソフトキーボード使用可)      1= マウスカーソルを表示する      2= マウスカーソルを消す      3= マウスカーソルの表示状態を返す(表示している…-1、表示していない…0)      4= マウスの初期化(右ボタン開放…ソフトキーボード使用不可)  用 例: MSAREA:MOUSE.FNC  書 式:mousearea(x1,y1,x2,y2)  引 数:int  戻り値:int  機 能:   マウスカーソルの移動範囲を指定します。範囲は表示画面サイズによって決まります。   戻り値は通常0、エラーの時は-1を返します。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標  用 例: MSBTN:MOUSE.FNC  書 式:msbtn(n,b,t)  引 数:char(n,b),int(t)  戻り値:int  機 能:   マウスボタンが指定された状態になるまでの時間を返します。   戻り値は、0ならばドラッグされた事を示し、-1ならば指定された待ち時間の最大値t   を越えた事を示します。    n…待つボタンの状態      0=ボタンが離されるまで      1=ボタンが押されるまで    b…ボタンの左右      0=左      1=右    t…待ち時間の最大値(0、1でずっと待つ)   状態が変ればこれはリセットされます。  用 例: MSPOS:MOUSE.FNC  書 式:mspos(x,y)  引 数:int型変数名  戻り値:int  機 能:   マウスカーソルの座標を int型変数x、y に返します。  用 例: MSSTAT:MOUSE.FNC  書 式:msstat(x,y,bl,br)  引 数:int型変数名  戻り値:int  機 能:   マウスの状態を int型変数x、y、bl、br に返します。    x …X方向の相対移動量(-128〜127)    y …Y方向の相対移動量(-128〜127)    bl…左ボタンの状態(押されていれば-1、押されていなければ0を返す)    br…右ボタンの状態(押されていれば-1、押されていなければ0を返す)  用 例: M_ALLOC:MUSIC.FNC  書 式:m_alloc(t,s)  引 数:char(t),int(s)  戻り値:int  機 能:   指定されたトラックt のトラックバッファを確保します。同時に、トラック内のデー   タはクリアされます。戻り値として、正常の時は0、エラーの時は-1を返します。    t…トラック番号(1〜80)    s…トラックバッファのサイズ(1〜65536)   なお、総トラックバッファサイズ(それぞれのトラックに割り当てられているトラッ   クバッファの総合計)は、CONFIG.SYSファイル内の OPMDRV.Xの後に指定して、再度シ   ステム起動することにより変更できます。何も指定しない場合は、約64KB の総トラッ   クバッファが確保されます。    DEVICE = \SYS\OPMDRV.X #nnn    (nnn:総トラックバッファサイズ(単位:KB)) M_ASSIGN:MUSIC.FNC  書 式:m_assign(c,t)  引 数:char  戻り値:int  機 能:   FM音源の指定されたチャンネルc に、トラックt を割りふります。戻り値として、正   常のときは0、エラーの時は-1を返します。    c…チャンネル番号(1〜8)    t…トラック番号(1〜80)   複数のチャンネルに同一のトラックを割り当てると、それぞれ同じ楽譜データを演奏   します。また、複数のトラックを1つのチャンネルに割り当てると、最も新しく割り   振られたトラックの楽譜データを演奏します。   デフォルト値は、チャンネル1からチャンネル8が、それぞれトラック1からトラッ   ク8に対応します。 M_CONT:MUSIC.FNC  書 式:m_cont(【c1】【,c2】【,c3】【,c4】【,c5】【,c6】【,c7】【,c8】)  引 数:char  戻り値:int  機 能:   c1 から c8 で指定されたチャンネルにおいて、一時停止した演奏を再開します。チャ   ンネルを全て省略すると、現在一時停止している全てのチャンネルの演奏を再開しま   す。   戻り値として、正常のときは0、エラーの時は-1を返します。  → m_stop  用 例: M_FREE:MUSIC.FNC  書 式:m_free(t)  引 数:char  戻り値:int  機 能:   指定されたトラックt のトラックバッファの残りのバイト数を返します。    t…トラック番号(1〜80) M_INIT:標準関数  書 式:m_init  機 能:   FM音源(トラックの楽譜データ、音色)を初期化します。 M_PLAY:MUISC.FNC  書 式:m_Play(【c1】【,c2】【,c3】【,c4】【,c5】【,c6】【,c7】【,c8】)  引 数:char  戻り値:int  機 能:   c1 から c8 で指定されたチャンネルに割り当てられたトラックの楽譜データを演奏し   ます。チャンネルを全て省略すると、全チャンネルを演奏します。戻り値として、正   常のときは0、エラーの時は-1を返します。  用 例: M_STAT:MUSIC.FNC  書 式:m_stat(c)  引 数:char  戻り値:int  機 能:   指定されたチャンネルc が、演奏中かどうか調べ、演奏中なら1、そうでなければ0を   返します。チャンネルc を省略すると、返されるバイト値のビット0〜ビット7がチャ   ンネル1〜8に対応し、0なら停止中、1なら演奏中です。また、エラーのときは-1を返   します。    c…チャンネル番号(1〜8)  用 例: M_STOP:MUSIC.FNC  書 式:m_stop(【c1】【,c2】【,c3】【,c4】【,c5】【,c6】【,c7】【,c8】)  引 数:char  戻り値:int  機 能:   c1 から c8 で指定されたチャンネルの演奏を一時停止します。チャンネルを全て省略   すると、全チャンネルの演奏を一時停止します。   戻り値として、正常のときは0、エラーの時は-1を返します。  → m_cont  用 例: M_TENPO:MUSIC.FNC  書 式:m_tempo(te)  引 数:char  戻り値:int  機 能:   テンポte を1分間に4分音符を何拍打つかで指定します。テンポte は32〜200の範囲   です。   戻り値として、正常のときは0、エラーの時は-1を返します。  用 例: M_TRK:MUSIC.FNC  書 式:m_trk(t,st)  引 数:char(t),str(st)  戻り値:int  機 能:   MML による楽譜データをトラックt に書き込みます。厳密にいうと、トラックt に楽   譜データを追加していきます。戻り値として、正常のときは0、エラーの時は-1を返し   ます。     t…トラック番号(1〜80)    st…MML(ミュージックマクロランゲージ)データ M_VGET:MUSIC.FNC  書 式:m_vget(vo,ca)  引 数:char(vo),char型二次元(4,10)配列名(ca)  戻り値:int  機 能:   音色データを配列ca に読み込みます。戻り値として、正常のときは0、エラーの時は   -1を返します。    vo…音色番号(1〜200)。1〜68は、登録済み。    ca…音色データを格納する為の char型二次元配列名。配列の次元は(4,10)。  → m_vset  用 例: M_VSET:MUSIC.FNC  書 式:m_vset(vo,ca)  引 数:char(vo),char型二次元(4,10)配列名(ca)  戻り値:int  機 能:   配列ca に格納されている音色データを指定された音色番号vo のメモリバッファに登   録します。戻り値として、正常のときは0、エラーの時は-1を返します。    vo…音色番号(1〜200)。1〜68は、登録済み。    ca…音色データを格納する為の char型二次元配列名。配列の次元は(4,10)。    音色データの配列形式          0             1〜4(オペレータ)    0 フィードバック/アルゴリズム(0〜63) AR (0〜31)    1 スロットマスク(0〜15)        D1R(0〜31)    2 ウェーブフォーム(0〜3)        D2R(0〜31)    3 シンクロ(0、1)            RR (0〜15)    4 スピード(0〜255)           D1L(0〜15)    5 PMD(0〜127)             TL (0〜127)    6 AMD(0〜127)             KS (0〜3)    7 PMS(0〜7)              MUL(0〜15)    8 AMS(0〜3)              DT1(0〜7)    9 L,RPAN(0〜3)             DT2(0〜3)    10                    AMSイネーブル(0、1)   なお、オペレータ1はM1(モジュレータ1)、オペレータ2はC1(キャリア1)、オペ   レータ3はM1(モジュレータ2)、およびオペレータ4はC2(キャリア2)に対応して   います。  → m_vget NAME:コマンド  書 式:  name "【「ドライブ名」】「ファイル名1」","「ファイル名2」"  省略形:na.  機 能:   指定したドライブのファイル名「ファイル名1」を「ファイル名2」に変更します。   「ドライブ名」、「ファイル名」の詳細については、『Human68kユーザーズマニュア   ル』を参照してください。  用 例:name"a:\test.dat","a\test.bas" NEW:コマンド  書 式:new  機 能:   メモリにあるプログラムを消去し、すべての変数を初期化します。   new命令を実行すると、メモリにあるプログラムは全て消去され、定義されている変数   も全て初期化されます。  → delete OCT$:標準関数  書 式:oct$(i)  引 数:int  戻り値:str  機 能:   整数値i を8進表現の文字列に変換し返します。なお、上位の"0"は取り除かれます。  → bin$、hex$  用 例: PAINT:GRAPH.FNC  書 式:paint(x,y,p)  引 数:int  戻り値:void  機 能:   グラフィック画面上の任意の単色領域内を塗りつぶします。   window関数で指定されたクリッピングエリア外の領域は無視されます。    x…塗りつぶしたい領域内の1点のX座標    y…塗りつぶしたい領域内の1点のY座標    p…パレットコード(色)   x、y は、-32768から32767までの値をとることができます。また、パレットコードp   は0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サ   イズおよび色モードによります。  用 例: PALET:GRAPH.FNC  書 式:palet(p,c)  引 数:int  戻り値:void  機 能:   グラフィック画面の各パレットにカラーコードc を割り当てます。    p…パレットコード(0〜255)    c…カラーコード(0〜65535)   このパレットコードp の最大値はグラフィック画面の実画面サイズおよび色モードに   よります。   なお、グラフィック画面の実画面サイズ及び色モードが512×512、65536色の場合は、   パレットコードp とカラーコードc は1対1に対応し、同値として扱われるので、こ   の palet関数は無効となります。この場合パレットコードp は0から65535の値をとる   事ができます。  用 例: PI:標準関数  書 式:pi(【n】)  引 数:float  戻り値:float  機 能:   円周率の n倍を返します。数値n を省略すると n=1と見なされます。    n…倍数  用 例: POINT:GRAPH.FNC  書 式:point(x,y)  引 数:int  戻り値:int  機 能:   グラフィック画面上のドットのパレットコードを返します。    x…ドットのX座標    y…ドットのY座標   x、y はwindow関数で指定されたクリッピングエリア内の値をとる事ができます。戻り   値として、0から65535までのパレットコードを返します。ただし、そのパレットコー   ドの最大値はグラフィック画面の実画面サイズおよび色モードによります。  用 例: POS:システム変数  書 式:pos  戻り値:int  機 能:   テキスト画面の現在のカーソルの x座標を返します。代入する事はできません。  用 例: POW:標準関数  書 式:Pow(n1,n2)  引 数:float  戻り値:float  機 能:   数値n1 の n2乗の計算をします。n1=0 かつ n2<0 の場合と、n1<0 かつ n2 が整数で   ない場合は、エラーとなります。  用 例: PRINT:ステートメント  書 式:【l】print 【using 「書式制御文字列」】【「式」…】  省略形:【l】p. または ?  機 能:   テキスト画面に文字列や数値を表示します。   print命令に続けて数値や文字列を指定すると、その数値、文字列がテキスト画面に表   示されます。また、数値型変数や str型変数が指定されると、それらの変数に代入さ   れている数値や文字列がテキスト画面に表示されます。   print命令だけを指定すると改行が行われます。   数値を表示する場合、その後ろに必ず空白が1つ入ります。また、数値の前には符号   用の桁が用意され、プラス(+)の時には空白、マイナス(-)の時にはマイナス符号(-)が   表示されます。   複数のデータを表示する場合、それらの区切りとして、カンマ(,)、セミコロン(;)が   使えます。カンマを使うと print命令の後ろのデータはテキスト画面の一番左の列に   表示され、8桁ごとに区切って表示されます。区切りにセミコロンを使うと print命   令の後ろのデータがつながってテキスト画面に表示されます。一番最後のデータの後   ろにセミコロンを置くと、つぎの print文のデータが前のデータにつながって表示さ   れます。   lprint命令を使うと、テキスト画面の代りにプリンタに出力することができます。   print命令の省略形として疑問符(?)を使う事ができます。   print命令の後に、using と書式指定子を続けることによって、様々なフォーマットで   データを表示、出力することができます。   print using命令を使用した場合は、複数データを扱う事はできません。必ず、1つの   データになります。   「書式指定子」    1.数値型    #   表示する数値の桁数を指定します。数値の桁数が、指定された桁数より少な        ければ右詰めで表示、出力されます。    .   小数点の位置を指定します。はみ出す部分は四捨五入されます。    + -  正負の符号を付けます。負の符号は、#の列の後にのみ設定できます。    **   空白の部分をアスタリスク(*)で埋めます。    \\   空白の先頭に¥マークを付けます。    **\  空白をアスタリスク(*)で埋め、先頭に¥マークを付けます。    ^^^^^ 数値を指数表現で表示、出力します。    ,   3桁ごとにカンマ(,)をふります。    2.文字型    !     文字列の先頭の1文字のみを表示、出力します。    &(空白)& 文字列を & から & までの文字数分だけ表示、出力します。    @     文字列をすべて表示、出力します。    3.その他    _(アンダースコア) この後の書式指定子の1文字は、単なる文字として表示、出              力します。書式指定子以外の文字があった場合は、そのまま              表示、出力されます。  用 例: PSET:GRAPH.FNC  書 式:pset(x,y,p)  引 数:int  戻り値:void  機 能:   グラフィック画面上にドットを表示します。    x…ドットのX座標    y…ドットのY座標    p…パレットコード(色)   x、y は、-32768から32767までの値をとることができます。クリッピングエリアにつ   いては window関数で指定された範囲になります。また、パレットコードp は0から   65535までの値をとることができ、その最大値はグラフィック画面の実画面サイズお   よび色モードによります。  用 例: PUT:GRAPH.FNC  書 式:put(x1,y1,x2,y2,na)  引 数:int(x1,y1,x2,y2),数値型一次元配列(na)  戻り値:void  機 能:   get関数で読み込んだドットパターンを指定された配列na から読み出してグラフィッ   ク画面の指定領域に表示します。    x1…始点X座標    y1…始点Y座標    x2…終点X座標    y2…終点Y座標    na…ドットパターンが格納されている数値型一次元配列名   x1、y2、x2、y2 は、window関数で指定された範囲内の値をとることができます。   また、配列na 内のデータ構造については、get関数を参照してください。   とくに、put関数を実行する前にあらかじめ get関数で読み込んだときと同じグラフィッ   ク画面の実画面サイズおよび色モードにして、領域の大きさや配列na のデータ型、添   字などは同じになるように指定してください。  → get  用 例: RAND:標準関数  書 式:rand()  戻り値:int  機 能:   0以上32767以内の整数型乱数を返します。  → randomise、rnd、srand  用 例: RANDOMIZE:標準関数  書 式:randomize(i)  引 数:int  戻り値:void  機 能:   rnd()関数の乱数系列を初期化します。    i…乱数のシード(-32768≦i≦32767)  → rand、rnd、srand  用 例: REM:ステートメント  書 式:/*【「注釈文」】  機 能:   プログラム中に注釈を入れます。   /* に続く文字列は、プログラム中の注釈になるだけで、プログラムの実行にはまった   く関係しません。プログラムを見やすくする覚え書きとして使用して下さい。  用 例: RENUM:コマンド  書 式:renum 【「新行番号」】【,「旧行番号」】【,「増分」】  省略形:ren.  機 能:   プログラムの行番号を付け直します。   「新行番号」、「増分」とも、省略すると10が採用されます。「旧行番号」を指定し   ないと、そのプログラムの先頭から新しい行番号に変ります。たとえば、    renum      プログラム全体の行番号を付けかえます。新しい行番号は10から            始まり、20、30…と付けられます。    renum 100,50  行番号50に新しい行番号として100が付けられ、以降110、120…と            付け直されます。    renum 100,,100 プログラム全体の行番号を付けかえます。新しい行番号は100から            始り、200、300…と付けられます。   renum命令は、goto命令、gosub命令、then節、else節などで使われている行番号は変   更しません。 REPEAT〜UNTIL:ステートメント  書 式:   repeat   :  「ループの内容」   :   until 「式」  機 能:   「式」の値が真になるまで、指定された「ループの内容」を繰り返し(ループ)ます。   繰り返しの終了判定は「ループの内容」の実行後に行われます。少なくとも、1回は   「ループの内容」を実行します。  用 例: RGB:GRAPH.FNC  書 式:rgb(r,g,b)  引 数:char  戻り値:int  機 能:   r(赤)、g(緑)、b(青)の成分を0〜31で選び、カラーコードを求めます。   なお、このrgb関数によって得られるカラーコードは、0〜65534までの偶数値になりま   す。したがって、それぞれの偶数値に1を加える事で0〜65535までのカラーコードを   指定できます。  用 例: RIGHT$:標準関数  書 式:right$(st,i)  引 数:str(st),int(i)  戻り値:str  機 能:   文字列st の終わりから指定された文字数i の文字列を取り出して返します。    st…元の文字列(文字式)     i…取り出したい文字数   文字数i は、1から255の値を取ります。   指定された文字数i が、文字列st の総文字数より多い時は、文字列st をそのまま取   り出して返します。   指定された文字数i が、0または負の場合は null文字を返します。  → left$、mid$  用 例: RND:標準関数  書 式:rnd()  戻り値:float  機 能:   0以上1未満の実数型乱数を返します。  → rand、randomize、srand  用 例: RUN:コマンド  書 式:run 【「行番号」】 または run "【「ドライブ名」】「ファイル名」"  省略形:r.  機 能:   メモリにあるプログラムを実行します。   「行番号」を省略すると、先頭行からプログラムを実行します。   「ドライブ名」、「ファイル名」が指定された時は、指定されたファイルをロードし   て実行します。   「ドライブ名」、「ファイル名」については、『Human68kユーザーズマニュアル』を   参照して下さい。   途中でプログラムの実行を中止したい時は、CTRL+Cキーまたは BREAKキーを押します。 SAVE:コマンド  書 式:save【@】"【「ドライブ名」】「ファイル名」"  省略形:sa.  機 能:   メモリ上のBASICプログラムをセーブします。   saveではプログラムをアスキー形式でセーブします。セーブされる行番号の範囲は、   list命令と同様に行われます。   save@は、行番号を省略した形でプログラムがセーブされます。   「ドライブ名」、「ファイル名」については、『Human68kユーザーズマニュアル』を   参照して下さい。  → load  用 例: