−−−− 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
< テロッパ > | リセット |
色の濃さUP | |
色の濃さDOWN | |
色あいUP | |
色あいDOWN | |
映像UP | |
映像DOWN |