命令文や関数名 | 種類 |
---|
- 書式:
- 命令や関数の書き方です。
赤太字で強調された項目は、必要とされる引数やデータです。
【】で囲まれた項目は、省略可能です。
…は、同様に繰り返し、引数やデータを与える事を現します。
これ以外の文字(予約語、()、{}、[]などの記号類)はそのまま入力しなければなりません。
コマンドやステートメントなどは、原則として命令名とデータの間には空白を入れてください。また、関数名と引数をくくる左括弧の間には空白を入れないでください。
- 省略形:
- 省略出来る命令や関数の書き方です。なお、引数、括弧などは省略できません。
- 引 数:
- 関数が原則としてどういう型の引数を必要としているかを現しています。
数値型として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】【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型の数値に変換します。stは、int型の数値に変換できる文字(0〜9、+、-)の連続です。もし int型の数値として判定できない文字があると、そこで変換するのをやめます。
stの先頭の空白文字やタブ文字は無視されます。またstには少なくとも1つ以上の数字が必要です。
stが null文字の場合は、エラーとなります。
変換できる文字列stの書式は次の通りです。
【whitespace】【sign】digits
whitespace 空白文字またはタブ文字で無視されます。 sign "+"または"-" digits 1つ以上の10進数
- → itoa
- 用 例:
AUTO | コマンド |
---|
- 書 式:auto【行番号】【増分】
- 省略形:a.
- 機 能:
プログラム行の先頭に行番号を自動的に発生させます。
行番号も増分も省略できますが、この場合は自動的に10が採用されます。
たとえば、
auto 行番号は10を先頭に20、30…と付けられます(auto 10,10と同じ) auto 100 行番号は100を先頭に110、120…と付けられます auto ,5 行番号は10を先頭に15、20…と付けられます
プログラム中にすでに存在する行と同じ行番号が発生した場合には、その行の内容がすべて表示されます。このとき、何も入力しないでリターンキーを押せば、その行の内容は変わりません。
auto機能を解除するときは、BREAKキー(または CTRL + Cキー)を押します。
解除した時のプログラム行はメモリに保存されません。
A_PLAY | AUDIO.FNC |
---|
- 書 式:a_play(na,sf,md【,lng】)
- 引 数:
- 数値型一次元配列名(na),char(sf,md,lng)
- 戻り値:void
- 機 能:
指定された配列naの PCMデータを再生します。
na…PCMデータを格納している数値型一次元配列名
sf…サンプリング周波数
0…3.9KHz
1…5.2KHz
2…7.8KHz
3…10.4KHz
4…15.6KHz
音楽を再生する場合、原則として a_rec関数で録音したときのサンプリング周波数sfを使用して下さい。それ以外を使用すると、録音した音を正常に再生できません。
md…音声出力モード(本体後面のオーディオ出力端子からの音声信号出力モード)
0…出力カット
1…左出力
2…右出力
3…ステレオ出力
lng…再生する配列naの添字0からの長さ
lngの取りうる値は、1から、配列名naで宣言された配列の添字+1までです。
lngを省略すると、すべてのPCMデータを再生します。
- 用 例:
A_REC | AUDIO.FNC |
---|
- 書 式:a_rec(na,sf,lng)
- 引 数:
- 数値型一次元配列名(na),char(sf,lng)
- 戻り値:void
- 機 能:
指定された配列naに PCMデータを録音します。
na…PCMデータを格納する数値型一次元配列名
sf…サンプリング周波数
0…3.9KHz(1秒間に消費するメモリサイズ1950バイト)
1…5.2KHz(1秒間に消費するメモリサイズ2600バイト)
2…7.8KHz(1秒間に消費するメモリサイズ3900バイト)
3…10.4KHz(1秒間に消費するメモリサイズ5200バイト)
4…15.6KHz(1秒間に消費するメモリサイズ7800バイト)
lng…録音する配列naの添字0からの長さ
lngの取りうる値は、1から、配列名naで宣言された配列の添字+1までです。
lngを省略すると、すべてのPCMデータを録音します。
- 用 例:
BEEP | ステートメント |
---|
- 書 式:beep
- 機 能:
ビープ音を鳴らします。 print chr$(7) と同じ機能です。
- 用 例:
BG_FILL | SPRITE.FNC |
---|
- 書 式:bg_fill(pg,pd)
- 引 数:char(pg),int(pd)
- 戻り値:int
- 機 能:
指定されたテキストページpgを、指定されたパターンデータpdで埋め尽くします。
pg…テキストページ(0、1)
pd…パターンデータ(0〜&HCFFF)
パターンデータpdは、次のようなビット構成になっています。
(ビット12、13は通常0になります)
ビット15…垂直反転(0:通常、1:垂直反転)
ビット14…水平反転(0:通常、1:水平反転)
ビット8〜11…パレットブロックpb(1〜15)
ビット0〜7…パターンコードcd(0〜255)
垂直反転を指定すると、実際に定義されたパターンが上下反転して表示されます。
また水平反転を指定すると、実際に定義されたパターンが左右反転して表示されます。
パレットブロックpdは各パターンに対して割り当てられているパレットで、1から15の値を返します。詳細については sp_color関数を参照して下さい。
テキストページ1しか使用しない場合のパターンコードcdは16×16ドットパターンの場合0から191までの値を返します。
テキストページ0、1とも使用する場合のパターンコードcdは16×16ドットパターンの場合0から127までの値を返します。
テキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは16×16ドットパターンの場合0から255までの値を返します。
BG_GET | SPRITE.FNC |
---|
- 書 式:bg_get(pg,x,y)
- 引 数:char
- 戻り値:int
- 機 能:
指定されたテキストページpgの指定された座標から、パターンデータを読み出します。
pg…テキストページ(0、1)
x…X座標(0〜63)
y…Y座標(0〜63)
読み出されたパターンデータpdは、次のようなビット構成になっています。
(ビット12、13は通常0になります)
ビット15…垂直反転(0:通常、1:垂直反転)
ビット14…水平反転(0:通常、1:水平反転)
ビット8〜11…パレットブロックpb(1〜15)
ビット0〜7…パターンコードcd(0〜255)
垂直反転になっている場合は、実際に定義されたパターンに対して上下が反転して表示されていることを意味します。
水平反転なっている場合は、実際に定義されたパターンに対して左右が反転して表示されていることを意味します。
パレットブロックpdは各パターンに対して指定するパレットで、詳細については sp_color関数を参照して下さい。
テキストページ1しか使用しない場合のパターンコードcdは16×16ドットパターンの場合0から191までの値をとる事が出来ます。
テキストページ0、1とも使用する場合のパターンコードcdは16×16ドットパターンの場合0から127までの値をとる事が出来ます。
テキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは16×16ドットパターンの場合0から255までの値をとる事が出来ます。
→ bg_put
BG_PUT | SPRITE.FNC |
---|
- 書 式:bg_put(pg,x,y,pd)
- 引 数:char(pg,x,y),int(pd)
- 戻り値:int
- 機 能:
指定されたテキストページpgの指定された座標に、指定されたパターンデータpdを設定します。
pg…テキストページ(0、1)
x…X座標(0〜63)
y…Y座標(0〜63)
pd…パターンデータ(0〜&HCFFF)
パターンデータpdは、次のようなビット構成になっています。
(ビット12、13は通常0になります)
ビット15…垂直反転(0:通常、1:垂直反転)
ビット14…水平反転(0:通常、1:水平反転)
ビット8〜11…パレットブロックpb(1〜15)
ビット0〜7…パターンコードcd(0〜255)
垂直反転を指定すると、実際に定義されたパターンが上下反転して表示されます。
また水平反転を指定すると、実際に定義されたパターンが左右反転して表示されます。
パレットブロックpdは各パターンに対して割り当てられているパレットで、1から15の値を返します。詳細については sp_color関数を参照して下さい。
テキストページ1しか使用しない場合のパターンコードcdは16×16ドットパターンの場合0から191までの値を返します。
テキストページ0、1とも使用する場合のパターンコードcdは16×16ドットパターンの場合0から127までの値を返します。
テキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは16×16ドットパターンの場合0から255までの値を返します。
→ 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)
なお、表示画面サイズが256×256の場合は、X、Y座標は0から511までの値をとる事が出来ます。
表示画面サイズが512×512の場合は、X、Y座標は0から1023までの値をとる事が出来ます。
ただし、表示画面サイズが512×512の場合はバックグラウンド1は表示されませんので注意してください。
- → bg_stat
BG_SET | SPRITE.FNC |
---|
- 書 式:bg_set(b【,pg】【,md】)
- 引 数:char
- 戻り値:int
- 機 能:
バックグラウンドbへのテキストページpgの割りあてと表示の設定を行います。
b …バックグラウンド(0、1)
pg…テキストページ(0、1)
md…バックグラウンドの表示
(0=表示しない、1=表示する)
なお、表示画面サイズが512×512の場合はバックグラウンド1は表示されませんので注意してください。
表示画面サイズが256×256の場合は、バックグラウンド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=表示されている)
なお、表示画面サイズが256×256の場合は、X、Y座標には0から511までの範囲の値を返します。
表示画面サイズが512×512の場合は、X、Y座標は0から1023までの範囲の値を返します。
ただし、表示画面サイズが512×512の場合はバックグラウンド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のコマンド
- 機 能:
チャイルドプロセスを実行します。
たとえば、"command.x"をチャイルドプロセスで実行するためには、パスの通ったディレクトリに"command.x"というファイルがあり、さらに"command.x"をロードするだけのエリアが、フリーエリアとは別にメモリ上になければなりません。
なお、ここで使用できるHuman68kのコマンドについての詳細は、「Human68kユーザーズマニュアル」を参照してください。
- 用 例:!dir *.*
CHR$ | 標準関数 |
---|
- 書 式:chr$(ch)
- 引 数:char
- 戻り値:str
- 機 能:
キャラクタコードchの文字を返します。ch=0のときは null文字を返します。
chは0〜255の範囲でなければなりません。
また、その文字がコントロールキャラクタとして定義されていると、基本的には文字は表示されず、そのコントロールコードの持つ機能が実行されます。ただし中には実行されないものもあります。
文字とキャラクタコードの対応については、「キャラクタコード表」を参照して下さい。
- → asc、「キャラクタコード表」
- 用 例:
CIRCLE | GRAPH.FNC |
---|
- 書 式:circle(x,y,r,p【,s】【,e】【,hv】)
- 引 数:int
- 戻り値:void
- 機 能:
グラフィック画面に上に円や楕円や扇形、円弧を描きます。
x …円の中心のX座標
y …円の中心のY座標
r …円の半径
p …パレットコード(色)
s …開始角度(度)
e …終了角度(度)
hv…偏平率
x、yは、-32768から32767までの値をとり、半径rは、0から32767までの値をとることができます。クリッピングエリアについてはwindow関数で指定された範囲になります。
また、パレットコードpは0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サイズおよび色モードによります。
開始角度s、終了角度eは通常0°から360°の値をとります。-1°から-360°の値を使用すると扇型を描く事ができます。
偏平率hvは0〜65535までの値をとる事が出来ます。
hv<256なら横長楕円
hv=256なら縦横非の真円(ただし768×512以外の表示画面サイズでは真円となりません)
hv>256なら縦長楕円
- 用 例:
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 リバース強調 白
文字の属性の0と4と8と12は、パレット(p0)に対応します。また、文字の属性の1と5と9と13は、パレット(p1)に対応し、2と6と10と14は、パレット(p2)に対応し、3と7と11と15は、パレット(p3)に対応します。
各パレットを変更するには、color[]命令を使用して下さい。
- 用 例:
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.
- 機 能:
スクロール開始行で指定した行からスクロール行数分をテキスト画面のスクロールエリアとします。
表示画面サイズが256×256以外のテキスト画面の最下行は、ファンクションキーの表示エリアになります。スクロール開始行のとりうる範囲は0から31まで、スクロール行数のとりうる範囲は1から32までです。
スクロール開始行とスクロール行数とファンクションキー表示の値をすべて加えた値は最大32までとなります。ただし、スクロール開始行で31を指定したり、あるいはスクロール行数で32を指定した場合は、ファンクションキー表示は0に設定して下さい。
表示画面サイズが256×256のテキスト画面の場合は、常時ファンクションキー表示は0に設定し、スクロール開始行は0から15まで、スクロール行数は1から16までの範囲の値をとる事ができます。
スクロール開始行とスクロール行数とファンクションキー表示の値をすべて加えた値は最大16までとなります。
なお、ファンクションキー表示は0ならファンクションキー表示OFF、1ならファンクションキー表示ONを意味します。
console命令を実行すると、実行後、カーソルは表示画面の左上に移動し、またwidth命令を実行すると、condole 0,31,1に再設定されます。
なお、console ,,0はファンクションキーのみ表示OFFとし、console ,,1はファンクションキーのみ表示ONにします。この場合、スクロールエリアは変化しません。
- 用 例:
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 = テレビ・ビデオ画面の映像のコントラストを通常にしてスーパーインポーズ表示
実行前に screen命令であらかじめ表示画面サイズを256×256または512×512に、ディスプレイ解像度をlow(標準解像度)に設定します。
カラーイメージユニットのテロッパ機能を使って、コンピュータ画像やスーパーインポーズ画像をビデオに録画する場合、crt(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 【型宣言】変数名(添え字の最大値【,添え字の最大値…】)【[文字バッファのサイズ]】【={代入定数式データリスト}】【,変数名…】
- 機 能:
配列変数を使うことを宣言します。
dim文中で代入するデータは、={}で囲めば複数行に分けて記述できます。ただし、複数行に分けて記述した場合は、そのプログラムを save@命令でセーブできても、load@命令でロードできませんので注意してください。
同じデータ型の配列はカンマで区切れば後に続けて1行に入力可能な文字数の範囲内で宣言できます。なお、型宣言を省略すると、int型の配列として扱われます。
設定できる添字の最小値は0、最大値はフリーエリアが許す範囲です。
文字バッファのサイズは1〜255の範囲で設定でき、str型の配列の1要素のとりえる文字列の最大の長さを指定します。省略した場合は32文字となります。
原則として、配列変数の宣言はメインプログラムの先頭で行って下さい。同じ名前の配列を再宣言する事はできません。
- 用 例:
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.
- 機 能:
指定されたドライブのファイルの一覧を表示します。
ドライブ名、ファイル名が省略された場合、カレントドライブのカレントディレクトリのすべてのファイル名を画面に表示します。
ドライブ名のみ指定された場合は指定されたドライブのカレントディレクトリのすべてのファイル名を画面に表示します。
ドライブ名とファイル名が指定された場合には、指定されたファイルの情報が表示されます。ワイルドカードも使用できます。
ドライブ名、ファイル名の詳細については、「Human68kユーザーズマニュアル」を参照してください。
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 の関数内では、ローカル変数を指定でき、再帰呼び出しもできるような構造になっています。ただし、原則として配列変数などはメインプログラムの先頭で宣言してください。
通常、引数はカンマ(,)で区切って引数リストに記述します。引数が無い場合は省略可能です。
それぞれの引数につづけてセミコロン(;)を書き、その後にデータ型を指定する事ができます。このデータ型の指定を省略すると引数のデータは int型になります。
メインプログラム中で、定義された関数に渡す引数のデータ型や個数は、引数リストのデータ型や個数と一致させて下さい。
func〜endfunc で定義された関数から演算結果などの値を返したい場合は次のような命令を func〜endfunc でかこまれた中で使用します。
return(【戻り値】)
func〜endfunc で定義された関数からこの return命令によって返される戻り値のデータ型は、戻り値の型で指定する事ができます。省略した場合は int型になります。
func〜endfunc で定義された関数は、プログラムとしてメモリ上に存在していればダイレクトモードでも実行できます。
- 用 例:
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…ドットパターンを読み込む数値型一次元配列名
x1、y1、x2、y2は、window関数で指定された範囲内の値をとることができます。
また、配列naへのドットパターンの読み込みかたとしてはグラフィック画面の実画面サイズおよび色モードにより次のようになります。
実画面サイズ1024×1024、16色モード(4ビット/4ドット構成)
読み込み順=(x1,y1),(x+1,y1),…(x2,y1),(x1,y1+1),(x1+1,y1+1)…(x2,y2)
char型配列の場合=2ドット単位
int型配列の場合=8ドット単位
float型配列の場合=16ドット単位
実画面サイズ512×512、16色モード
読み込み順=実画面サイズ1024×1024、16色モードと同様
ただし、apage関数によって、指定されたアクティブページ(0〜3)に対してのみ有効
実画面サイズ512×512、256色モード
読み込み順=実画面サイズ1024×1024、16色モードと同様
char型配列の場合=1ドット単位
int型配列の場合=4ドット単位
float型配列の場合=8ドット単位
ただし、apage関数によって、指定されたアクティブページ(0、1)に対してのみ有効
実画面サイズ512×512、65536色モード
読み込み順=実画面サイズ1024×1024、16色モードと同様
char型配列の場合=2要素1ドット単位
int型配列の場合=2ドット単位
float型配列の場合=4ドット単位
グラフィック画面への書込みについては put関数を参照してください。
- → 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 00(H) 00000 空き 2 01(H) 00001 3 03(H) 00011 コンピューターコントロールモード 赤色ランプ点灯 4 04(H) 00100 マニュアルモード 緑色ランプ点灯 5 05(H) 00101
<カラーイメージ> モノクロ映像 リセット、色の濃さUP DOWNいずれかで解除される。 6 06(H) 00110
< テロッパ > 出力ON 出力OFF 7 07(H) 00111 リセットで解除される 8 08(H) 01000
<カラーイメージ> リセット 色の濃さUP 色の濃さDOWN 色あいUP 色あいDOWN 映像UP 映像DOWN 各映像調整を標準の位置に戻す。 9 09(H) 01001 10 0A(H) 01010 11 0B(H) 01011 12 0C(H) 01100 13 0D(H) 01101 14 0E(H) 01110 15 0F(H) 01111 256色(2^8)モード 16 10(H) 10000
< テロッパ > リセット 色の濃さUP 色の濃さDOWN 色あいUP 色あいDOWN 映像UP 映像DOWN 各映像調整を標準の位置に戻す。 17 11(H) 10001 18 12(H) 10010 19 13(H) 10011 20 14(H) 10100 21 15(H) 10101 22 16(H) 10110 23 17(H) 10111 16色(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 【"プロンプト文";または,】変数名【,変数名…】
- 機 能:
キーボードから入力されるデータを、指定したデータ型の変数へ代入します。
データを入力したら、リターンキーを押してください。
input文では、プロンプト文と変数名の間にセミコロン(;)あるいは、カンマ(,)が指定でき、セミコロンの時はプロンプト文の後に疑問符が(?)が表示され、カンマの時は何も表示されません。
また、変数に入力できる最大文字数は、セミコロン(;)を使用した場合は、その表示画面の水平最大表示文字数-(プロンプト文字数+3)になり、カンマ(,)を使用した場合は、その表示画面の水平最大表示文字数-(プロンプト文字数+1)になります。
ただし、str型変数の場合は、設定された文字バッファのサイズ以上のデータは代入されません。なお、カンマ(,)や引用符(")は入力できません。
変数は、カンマ(,)で区切って複数指定することもできます。この場合、入力するデータもカンマ(,)で区切って、変数の数だけ入力してからリターンキーを押さなければなりません。
入力するデータの個数が足りないと、”データの個数がたりません”と表示されて入力待ちとなり、個数が多いと、”データの個数が多過ぎます”と表示され、余分に入力されたデータは無視されます。
また、対応する変数の型と入力されるデータの型は、一致しなければなりません。型が違っていた場合には、”データの型が違います”と表示されて再び入力待ちとなります。
- → 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に格納されている音色データを指定された音色番号voのメモリバッファに登録します。
戻り値として、正常のときは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に読み込みます。
戻り値として、正常のときは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、y1、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
- 用 例:
SCREEN | ステートメント |
---|
- 書 式:
- screen 【表示画面サイズ】,【グラフィック画面の実画面サイズ及び色モード】,ディスプレイ解像度【,グラフィック画面の表示ON/OFF】
- 省略形:sc.
- 機 能:
画面全体(テキスト画面、グラフィック画面、スプライト画面)のスクリーンモードを設定します。
表示画面サイズ
0…256×256
1…512×512
2…768×512
(ディスプレイ解像度が1(高解像度モード)の時のみ有効)
ただし、表示画面サイズが768×512以外のときにのみ、スプライト画面は使用できます。
また、表示画面サイズが768×512のときは、グラフィック画面の実画面サイズ及び色モードは、0しか設定できません。
グラフィック画面の実画面サイズ及び色モード
(使用可能なグラフィックページ)
0…1024×1024、16色(グラフィックページ0)
1…512×512、16色(グラフィックページ0〜3)
2…512×512、256色(グラフィックページ0、1)
3…512×512、65536色(グラフィックページ0)
ただし、グラフィック画面の実画面サイズ及び色モードが0以外のときは、表示画面サイズは0または1しか設定できません。
ディスプレイ解像度
0…Low(標準解像度)
1…High(高解像度)
ただし、screen,,0はディスプレイ解像度のみをLowに設定し、screen,,1はディスプレイ解像度のみをHighに設定します。
この場合、グラフィックRAMのデータは保存されたままです。
ディスプレイ解像度がLowのときは表示画面サイズで768×512は使用できません。
グラフィック画面の表示ON/OFF
0…表示OFF(グラフィック関数使用不可)
グラフィックRAMをグラフィック以外の目的で使用する場合に設定して下さい。
1…表示ON(グラフィック関数使用可)
グラフィックRAMをグラフィック関数などで使用する場合に設定して下さい。
なお、一旦グラフィック画面の表示ON/OFFを1に設定するとすべてのグラフィックRAMのデータは消去されます。
特にグラフィックRAMをRAMディスクとして使用している場合は、RAMディスクが破壊されますので、あらかじめRAMディスクのデータをディスクなどにセーブしてください。
screen命令実行後、window関数(グラフィック画面のクリッピングエリア)は表示画面サイズに、home関数(グラフィック画面の実画面における表示画面の左上座標)は(0,0)に再設定されます。
また、テキスト画面は、通常表示ON、スプライト画面及びグラフィック画面は表示OFFです。
グラフィック関数を使用する場合は、必ず最初に screen命令で初期化を行ってください。
SEARCH | コマンド |
---|
- 書 式:【l】search "検索文字列"
- 省略形:【l】se.
- 機 能:
指定した検索文字列を含むプログラム行をすべて表示します。
lsearch命令を使用すれば、プリンタに出力できます。
- 用 例:search "X68"
SETMSPOS | MOUSE.FNC |
---|
- 書 式:setmspos(x,y)
- 引 数:int
- 戻り値:int
- 機 能:
マウスカーソルの位置を指定します。
範囲は、msarea関数によって指定された範囲です。
戻り値として、エラーのとき-1を返します。
- 用 例:
SGN | 標準関数 |
---|
- 書 式:sgn(n)
- 引 数:float
- 戻り値:float
- 機 能:
数値nの符号を調べ、正の数だったら1を、nが0の場合は0を、負の数だったら-1を返します。
- 用 例:
SIN | 標準関数 |
---|
- 書 式:sin(n)
- 引 数:float
- 戻り値:float
- 機 能:
数値n(ラジアン)の正弦(サイン)を返します。
- 用 例:
SPACE$ | 標準関数 |
---|
- 書 式:space$(i)
- 引 数:int
- 戻り値:str
- 機 能:
長さi文字の空白文字(&20H")からなる文字列を返します。
長さiは1から255の値をとり、0または負の場合には null文字を返します。
- 用 例:
SP_CLR | SPRITE.FNC |
---|
- 書 式:sp_clr(【cd1】【,cd2】)
- 引 数:char
- 戻り値:int
- 機 能:
パターンコードcd1からパターンコードcd2で指定した範囲のスプライトやバックグラウンドのパターンを初期化します。
パターンコードcd1を省略した場合は、パターンコード0からパターンコードcd2までのパターンを初期化します。
パターンコードcd2を省略した場合は、パターンコードcd1で指定したパターンだけ、またパターンコードcd1、cd2とも省略した場合は全パターン(0〜255)が初期化されます。
cd1、cd2…パターンコード(0〜255)
SP_COLOR | SPRITE.FNC |
---|
- 書 式:sp_color(p,c【,pd】)
- 引 数:char(p,pd),int(c)
- 戻り値:int
- 機 能:
スプライトやバックグラウンドのパターン単位にパレットブロックpdを指定し、そのパターンのドット単位に(各パターンにおけるパレットブロックpdの中から)パレットコードpを設定し、そのパレットにカラーコードcを割り当てます。
なお、パレットブロックpdを省略したときは、パレットブロック1と見なされます。
パレットコード0には透明を設定して下さい。
戻り値として、指定されたパレットコードpに対する設定前のカラーコードを返します。
p …パレットコード(0〜15)
c …カラーコード(0〜65536)
pd…パレットブロック(1〜15)
SP_DEF | SPRITE.FNC |
---|
- 書 式:sp_def(cd,ca【,sz】)
- 引 数:
- char(cd,sz),char型一次元(255または63)配列名(ca)
- 戻り値:int
- 機 能:
スプライトやバックグラウンドのパターンを定義します。
cd… パターンコード(0〜255) ca… スプライトやバックグラウンドのパターンのデータが格納されているchar型一次元配列名、要素数256(sz=1のとき)または64(sz=0のとき) sz… パターンサイズ(0、1)
パターンサイズszが1の場合、定義できるパターンは16×16ドットで、1ドットにつき配列caの1要素を使用します。
0番目の要素がパターンの左上端のドット、15番目の要素がパターンの右上端のドットに対応します。
この場合の配列caの要素数は256になります。
16×16ドットのパターンが使用されるのは、スプライトのパターンや表示画面サイズが512×512の場合のバックグラウンドのパターンを定義するときです。
また、パターンサイズszが1のとき、バックグラウンドのテキストページ1しか使用しない場合のパターンコードcdは0から191までの値をとることができ、テキストページ0、1とも使用する場合のパターンコードcdは0から127までの値をとることができます。
バックグラウンドのテキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは0から255までの値をとる事ができます。
パターンサイズszが0の場合、定義できるパターンは8×8ドットで、1ドットにつき配列caの1要素を使用します。
0番目の要素がパターンの左上端のドット、7番目の要素がパターンの右上端のドットに対応します。
この場合の配列caの要素数は64になります。
8×8ドットのパターンが使用されるのは表示画面サイズが256×256の場合のバックグラウンドのパターンを定義するときです。
パターンサイズszが1のとき、パターンコードn というパターンが定義されていたとします。
この16×16ドットのパターンと同じものを定義するためには、パターンサイズszが0のとき、4つのパターンコードが必要になります。
この4つのパターンコードには、16×16ドットのパターンの内、左上の8×8ドットのパターンが、パターンコード4nに、左下の8×8ドットのパターンがパターンコード4n+1、以下同様に右上が4n+2、右下が4n+3に対応します。
ただし、パターンサイズszが0のときでも定義できるパターンの最大数は256です。
なお、パターンサイズszを省略すると、パターンサイズszは1と見なされます。また、1ドットのデータは4ビットでこの値がそのドットのパレットコードp となります。
- → sp_pat
- 用 例:
SP_DISP | SPRITE.FNC |
---|
- 書 式:sp_disp(ch)
- 引 数:char
- 戻り値:int
- 機 能:
スプライト画面(スプライトやバックグラウンド)の表示の設定をします。
なお、スプライト画面は表示画面サイズが768×512以外のとき使用できます。
ch… 0=スプライト画面を表示しない 1=スプライト画面を表示する
SP_INIT | SPRITE.FNC |
---|
- 書 式:sp_init()
- 戻り値:int
- 機 能:
スプライト画面(スプライトやバックグラウンド)を初期化します。
初期化するものは、各パターンやパレットなどです。
なお、スプライト画面は表示画面サイズが768×512以外のとき使用できます。
SP_MOVE | SPRITE.FNC |
---|
- 書 式:sp_move(s,【x】,【y】【,cd】)
- 引 数:char(s,cd),int(x,y)
- 戻り値:int
- 機 能:
パターンコードcdのスプライトパターンをプレーンsに割り当て、指定された座標位置にそのスプライトを表示します。
s …プレーン(0〜127)
x …X座標(-16〜1007)
y …Y座標(-16〜1007)
cd…パターンコード(0〜255)
表示画面の左上座標は、sp_set と異なり、(0,0)になります。
sp_move は sp_setのパラメータの一部を標準的な値に設定した関数です。
つまり、垂直・水平反転は通常、パレットブロックは1、優先度は3に、自動的に設定されます。
より高度な使い方をする場合は、sp_setを使用してください。
バックグラウンドのテキストページ1しか使用しない場合のパターンコードcdは16×16ドットパターンの場合0から191までの値をとる事が出来ます。
テキストページ0、1とも使用する場合のパターンコードcdは16×16ドットパターンの場合0から127までの値をとる事が出来ます。
テキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは16×16ドットパターンの場合0から255までの値をとる事が出来ます。
- → sp_set
- 用 例:
SP_OFF | SPRITE.FNC |
---|
- 書 式:sp_off(【s1】【,s2】)
- 引 数:char
- 戻り値:int
- 機 能:
プレーンs1からプレーンs2で指定した範囲のスプライトが表示されません。
プレーンs1を省略した場合は、プレーン0からプレーンs2までのスプライトが表示されません。
プレーンs2を省略した場合は、プレーンs1で指定したスプライトだけ、またプレーンs1、s2とも省略した場合は全スプライト(プレーン0〜127)が表示されません。
s1、s2…プレーン(0〜127)
SP_ON | SPRITE.FNC |
---|
- 書 式:sp_on(【s1】【,s2】)
- 引 数:char
- 戻り値:int
- 機 能:
プレーンs1からプレーンs2で指定した範囲のスプライトが表示されます。
プレーンs1を省略した場合は、プレーン0からプレーンs2までのスプライトが表示されます。
プレーンs2を省略した場合は、プレーンs1で指定したスプライトだけ、またプレーンs1、s2とも省略した場合は全スプライト(プレーン0〜127)が表示されます。
s1、s2…プレーン(0〜127)
SP_PAT | SPRITE.FNC |
---|
- 書 式:sp_pat(cd,ca【,sz】)
- 引 数:char(cd,sz),char型一次元(255または63)配列名(ca)
- 戻り値:int
- 機 能:
スプライトやバックグラウンドのパターンのデータを、指定された配列caに読み出します。
cd… パターンコード(0〜255) ca… スプライトやバックグラウンドのパターンのデータを格納するchar型一次元配列名、要素数256(sz=1の時)または64(sz=0の時) sz… パターンサイズ(0,1)
読み出されたパターンのデータの詳細や、パターンコードcdや配列ca、パターンサイズszの詳細については、sp_def関数を参照して下さい。
- → sp_def
- 用 例:
SP_SET | SPRITE.FNC |
---|
- 書 式:sp_set(s,【x】,【y】,【pd】【,pr】)
- 引 数:char(s,pr),int(x,y,pd)
- 戻り値:int
- 機 能:
パターンコードcdのスプライトパターンをプレーンsに割り当て、指定された座標位置にそのスプライトを表示します。
s …プレーン(0〜127)
x …X座標(0〜1023)
y …Y座標(0〜1023)
pd…パターンデータ(0〜&HCFFF)
pr…優先度(0〜3)
表示画面の左上座標は(16,16)になります。
パターンデータpdは、次のようなビット構成になっています。
(ビット12、13は通常0になります)
ビット15…垂直反転(0:通常、1:垂直反転)
ビット14…水平反転(0:通常、1:水平反転)
ビット8〜11…パレットブロックpb(1〜15)
ビット0〜7…パターンコードcd(0〜255)
テキストページ1しか使用しない場合のパターンコードcdは16×16ドットパターンの場合0から191までの値をとる事が出来ます。
テキストページ0、1とも使用する場合のパターンコードcdは16×16ドットパターンの場合0から127までの値をとる事が出来ます。
テキストページ0、1とも使用しない(バックグラウンドを使用しない)場合のパターンコードcdは16×16ドットパターンの場合0から255までの値をとる事が出来ます。
優先度prは、指定する値によってスプライトとバックグラウンド0、1の表示優先順位を次のように設定します。
0… スプライトは表示されない 1… バックグラウンド0 > バックグラウンド1 > スプライト 2… バックグラウンド0 > スプライト > バックグラウンド1 3… スプライト > バックグラウンド0 > バックグラウンド1
なお、ここでは左側にあるほど重なった時の表示は優先される事を意味しています。
- → sp_stat
SP_STAT | SPRITE.FNC |
---|
- 書 式:sp_stat(s,md)
- 引 数:char
- 戻り値:int
- 機 能:
指定されたスプライトの状態を読み出します。
s …プレーン(0〜127)
md…(0〜3)
モードmdには読み出す内容を指定します。
0=X座標(0〜1023)
1=Y座標(0〜1023)
2=パターンデータpd(0〜&HCFFF)
3=優先度pr(0〜3)
モードmdで2や3を指定した時に読み出された内容(パターンデータpdや、優先度prなど)の詳細については、sp_set関数を参照して下さい。
- → sp_set
SQR | 標準関数 |
---|
- 書 式:sqr(n)
- 引 数:float
- 戻り値:float
- 機 能:
数値nの平方根(ルート)を返します。
n≧0でなければなりません。
- 用 例:
SRAND | 標準関数 |
---|
- 書 式:srand(i)
- 引 数:int
- 戻り値:void
- 機 能:
rand関数の乱数系列を初期化します。
i…乱数のシード(0≦i≦65535)
- → rand、randomize、rnd
- 用 例:
STICK | STICK.FNC |
---|
- 書 式:stick(j)
- 引 数:int
- 戻り値:int
- 機 能:
ジョイスティックjの状態を調べます。
j…1=ジョイスティック1
2=ジョイスティック2
戻り値は次のようになります。
7(左上) 8(上) 9(右上) \ | / 4(右)− 0(中)− 6(左) / | \ 1(左下) 2(下) 3(右下)
- 用 例:
STOP | ステートメント |
---|
- 書 式:stop
- 機 能:
プログラムの実行を停止します。
プログラムの実行を停止して、直接命令が入力できる状態にします。
stop命令はプログラム内のどこに置いても構いません。
プログラムを再開するには cont命令を実行します。
- → cont
- 用 例:
STR | ステートメント |
---|
- 書 式: str 変数名【[文字バッファのサイズ]】【=文字定数式】【,…】
- 機 能:
変数を文字(str)型として宣言します。同時に文字列を代入する事もできます。
また、文字バッファのサイズを1〜255の範囲で設定できます。
文字バッファのサイズを指定しない場合は32文字とみなされます。
str型変数および定数は、常にキャラクターコードが0で終っています。
原則として、変数宣言はメインプログラムの先頭で行ってください。
また、同じ名前の変数をメインプログラム中で再宣言する事はできません。
- → char、float、int
- 用 例:
STR$ | 標準関数 |
---|
- 書 式:str$(n)
- 引 数:float
- 戻り値:str
- 機 能:
浮動小数値nを文字列に変換して返します。
- → val
- 用 例:
STRCHR | 標準関数 |
---|
- 書 式:strchr(st,ch)
- 引 数:str(st),char(ch)
- 戻り値:int
- 機 能:
文字列stの中で最初にキャラクターコードchの文字を見つけた位置を返します。
位置は文字列stの先頭が0になります。
見付からなかった場合は、-1を返します。
キャラクターコードchは、0から255の値を取ります。
- 用 例:
STRCSPN | 標準関数 |
---|
- 書 式:strcspn(st1,st2)
- 引 数:str
- 戻り値:int
- 機 能:
文字列st2中のどれか1文字を文字列st1の中で最初に見つけた位置を返します。
位置は文字列st1の先頭が0になります。見つからなかった場合は、文字列st1の長さを返します。
文字列st2が null文字の場合も、文字列st1の長さを返します。また文字列st1が null文字の場合は0を返します。
- 用 例:
STRIG | STICK.FNC |
---|
- 書 式:strig(j)
- 引 数:int
- 戻り値:int
- 機 能:
ジョイスティックjのトリガーボタンの状態を調べます。
j… 1=ジョイスティック1 2=ジョイスティック2
戻り値は次のようになります。
0…トリガーA、Bとも押されていない
1…トリガーAのみ押されている
2…トリガーBのみ押されている
3…トリガーA、Bとも押されている
- 用 例:
STRING$ 標準関数
- 書 式:string$(i,st)
- 引 数:int(i),str(st)
- 戻り値:str
- 機 能:
文字列stの先頭1文字だけでできた、長さi文字の文字列を返します。
長さiは1から255の値をとり、0または負の場合には null文字を返します。
- 用 例:
STRLEN(LEN) 標準関数
- 書 式:
- strlen(st)
len(st)
- 引 数:str
- 戻り値:int
- 機 能:
文字列stの長さ(0〜255)を返します。
文字列stが null文字の場合は0を返します。
- 用 例:
STRLWR 標準関数
- 書 式:strlwr(st)
- 引 数:str型変数名
- 戻り値:str
- 機 能:
str型変数stの中の英大文字を全て英小文字に変換します。
- 用 例:
STRNSET 標準関数
- 書 式:strnset(st,ch,i)
- 引 数:str型変数名(st),char(ch),int(i)
- 戻り値:str
- 機 能:
str型変数stの先頭から文字数i分をキャラクターコードchの文字に変換します。
キャラクターコードchは、0から255の値をとります。
文字iが0または負の時はstr型変数stの内容は変わりません。
- 用 例:
STRRCHR 標準関数
- 書 式:strrchr(st,ch)
- 引 数:str(st),char(ch)
- 戻り値:int
- 機 能:
文字列stの中でキャラクターコードchの文字が最後に見つからなかった位置を返します。位置は文字列stの先頭が0になります。
先頭でしか見つからなかった場合は0、全く見付からなかった場合は-1を返します。
キャラクターコードchは、0から255の値をとります。
- 用 例:
STRREV 標準関数
- 書 式:strrev(st)
- 引 数:str型変数名
- 戻り値:str
- 機 能:
str型変数stの並びを逆転します。
- 用 例:
STRSET 標準関数
- 書 式:strset(st,ch)
- 引 数:str型変数名(st),char(ch)
- 戻り値:str
- 機 能:
str型変数stの全ての文字を、キャラクターコードchの文字に変換します。
キャラクターコードchは、0から255の値をとります。
- 用 例:
STRSPN 標準関数
- 書 式:strspn(st1,st2)
- 引 数:str
- 戻り値:int
- 機 能:
文字列st2に属さない文字を、文字列st1の中で最初に見つけた位置を返します。位置は文字列st1の先頭が0になります。
見付からなかった場合は、文字列st1の長さを返します。
また、文字列st1あるいは文字列st2が null文字の場合は0を返します。
- 用 例:
STRTOK 標準関数
- 書 式:strtok(st1,st2)
- 引 数:str
- 戻り値:str
- 機 能:
文字列st2に含まれる文字(どれか1文字)を文字列st1の中から探し、見付かれば先頭からその位置までの文字列を返します。
最初の strtok関数の実行の場合は、文字列st1の先頭に文字列st2に含まれる文字があっても無視します。続いて、文字列st1を null文字にして strtok関数を実行すると次に文字列st2に含まれる文字が見付かった所までの文字列を返します。
文字列st2に含まれる文字が見付からなくなると、null文字を返します。
文字列st2が、null文字場合は、文字列st1をそのまま返します。
- 用 例:
STRUPR 標準関数
- 書 式:strupr(st)
- 引 数:str型変数名
- 戻り値:str
- 機 能:
str型変数stの英小文字を全て英大文字に変換します。
- 用 例:
SWITCH〜CASE〜DEFAULT〜ENDSWITCH ステートメント
- 書 式:−
- switch 式0
case 式1:文1
case 式2:文2
:
:
case 式n:文n
【default:文d】
endswitch
- 機 能:
式0と同じ値をもつcaseの式nの後の文nを実行します。
式0と同じ値をもつcaseの式nがなくてdefaultがある場合は、文dを実行してから、endswitch以後の命令文に進みます。
defaultがなければendswitch以後の命令文に進みます。
caseの式nの中には、整数及び文字定数のみ入ります。
- 用 例:
SYMBOL GRAPH.FNC
- 書 式:symbol(x,y,st,h,v,mo,p,an)
- 引 数:int(x,y,p),str(st),char(h,v,mo,an)
- 戻り値:void
- 機 能:
グラフィック画面上に文字列を表示します。
x…始点X座標
y…始点Y座標
st…文字列(文字式)
h…横方向の倍率(1〜255)
v…縦方向の倍率(1〜255)
mo…文字フォントの種類
(半角)(全角)
0…6×12 、12×12
0…8×16 、16×16
0…12×24、24×24
p…パレットコード(色)
an…回転角度(0〜3、ただし90度単位)
x、yは、-32768から32767までの値をとることができます。クリッピングエリアについてはwindow関数で指定された範囲になります。
また、パレットコードpは0から65535までの値をとることができ、その最大値はグラフィック画面の実画面サイズおよび色モードによります。
- 用 例:
SYSTEM コマンド
- 書 式:system
- 省略形:sys.
- 機 能:
親プロセスに制御を戻します。プログラム中では使用できません。プログラム中で使用する場合は、exit命令を使用してください。
TAN 標準関数
- 書 式:tan(n)
- 引 数:float
- 戻り値:float
- 機 能:
数値n(ラジアン)の正接(タンジェント)を返します。
- 用 例:
TIME$ システム変数
- 書 式:time$
- 引 数:str
- 戻り値:str
- 機 能:
現在の時刻を文字列として返します。
代入する事によって時刻を設定できます。
- 用 例:
TOASCII 標準関数
- 書 式:toascii(ch)
- 引 数:char
- 戻り値:int
- 機 能:
キャラクターコードchの文字が非アスキー文字(&H80〜&HFF)であればアスキー文字(&H00〜&H7F)に変換して返します。
キャラクターコードchには0から255の値が入り、戻り値もその範囲のキャラクターコードを返します。
非アスキー文字以外の場合はそのままのキャラクターコードを返します。
- 用 例:
TOLOWER 標準関数
- 書 式:tolower(ch)
- 引 数:char
- 戻り値:int
- 機 能:
キャラクターコードchの文字が英大文字('A'〜'Z')であれば英小文字('a'〜'z')に変換して返します。
キャラクターコードchには0から255の値が入り、戻り値もその範囲のキャラクターコードを返します。
英大文字以外の場合はそのままのキャラクターコードを返します。
- 用 例:
TOUPPER 標準関数
- 書 式:toupper(ch)
- 引 数:char
- 戻り値:int
- 機 能:
キャラクターコードchの文字が英小文字('a'〜'z')であれば英大文字('A'〜'Z')に変換して返します。
キャラクターコードchには0から255の値が入り、戻り値もその範囲のキャラクターコードを返します。
英小文字以外の場合はそのままのキャラクターコードを返します。
- 用 例:
VAL 標準関数
- 書 式:val(st)
- 引 数:str
- 戻り値:float
- 機 能:
文字列stを浮動小数値に変換して返します。
&B、&H、&O形式の整数値を表現した文字列も変換できます。
- → str$
- 用 例:
VPAGE GRAPH.FNC
- 書 式:vape(i)
- 引 数:char
- 戻り値:void
- 機 能:
各グラフィックページの表示ON/OFFを指定します。グラフィックページ番号は0〜3で最大値はグラフィック画面の実画面サイズ及び色モードによります。
グラフィック画面の実画面サイズ及び色モードによるiの値の範囲
1…表示ON
2…表示OFF
1024×1024(16色モード)…0、1(グラフィックページ0のみ)
512×512(16色モード)…0から15
i グラフィックページ3 グラフィックページ2 グラフィックページ1 グラフィックページ0 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1 10 1 0 1 0 11 1 0 1 1 12 1 1 0 0 13 1 1 0 1 14 1 1 1 0 15 1 1 1 1
512×512(256色モード)…0から3
i グラフィックページ1 グラフィックページ0 0 0 0 1 0 1 2 1 0 3 1 1
512×512(65536色モード)…0、1(グラフィックページ0のみ)
- → apage、home、screen、window
- 用 例:
V_CUT IMAGE.FNC
- 書 式:v_cut(sw)
- 引 数:char
- 戻り値:void
- 機 能:
スーパーインポーズ時のテレビ・ビデオ画面表示を制御します。
sw…制御スイッチ
(0=ONテレビ・ビデオ画面表示、1=テレビ・ビデオ画面表示OFF)
なお、この関数を実行するにはカラーイメージユニットCZ-6VT1が必要です。
WHILE〜ENDWHILE ステートメント
- 書 式:
- while 式
:
ループの内容
:
endwhile
- 機 能:
式の値が偽になるまで、指定されたループの内容を繰り返し(ループ)ます。
繰り返しの終了判定はループの内容の実行前に行われます。
式の内容によっては、一度もループの内容を実行しない場合があります。
- 用 例:
WHIDTH コマンド
- 書 式:width 文字数
- 省略形:w.
- 機 能:
表示文字数を変更します。文字数は96か64です。
この命令を実行するとテキスト画面、グラフィック画面やスプライト画面は消去されます。
また、console 0,31,1が再設定されます。
テキスト画面のパレットもデフォルトの値に再設定されます。
WINDOW GRAPH.FNC
- 書 式:window(x1,y1,x2,y2)
- 引 数:int
- 戻り値:void
- 機 能:
グラフィック画面の実画面上でクリッピングするエリア(クリッピングエリア)を指定します。
x1…実画面上でのクリッピングエリアの左上X座標
y1…実画面上でのクリッピングエリアの左上Y座標
x2…実画面上でのクリッピングエリアの右下X座標
y2…実画面上でのクリッピングエリアの右下Y座標
x1、y1、x2、y2はグラフィック画面の実画面サイズが512×512の場合は0から511まで、実画面サイズが1024×1024の場合は0から1023までの値をとる事ができます。
screen命令を実行するとx1、y1、x2、y2にはその表示画面サイズの大きさで再設定されます。ただし、この場合(x1,y1)には(0,0)が再設定されます。
- → apage、screen、vpage
- 用 例:
WIPE GRAPH.FNC