LEVEL-2 BASICはHitachiが開発したものである。 (Basic Master Level 3以降はMS系になるので、Level 1/2とLevel 3に直接の互換性はない) Basic Master Level 2及びJr.に搭載されている。 Level 2はVer1.0、Level2 II/Jr.はVer1.1となる。 (機能に大きな差はない) 表記が独特な部分があるのと、マシン語を利用しないと性能は引き出せないので玄人好みではある。 |
LEVEL-2 BASIC簡易リファレンス | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
コマンド | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEQ | ― | SEQ [行番号][,増分] | SEQ 100,5 | 先頭に自動的に行番号を発生させる(増分を省略した場合は10) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DEL | ― | DEL [行番号][,[行番号2]] | DEL 10,100 | 指定した範囲の行番号を削除する (行番号を指定しない場合はエラー) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LIST | L | LIST[#] [行番号][,[行番号2] | LIST LIST 10,100 | プログラムを表示する 指定した範囲の行番号を表示する ※ 「#」を付加した場合はプリンタに印字する ※ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RESEQ | ― | RESEQ [新行番号][,増分] | RESEQ 100,10 | 新行番号を先頭に行番号をつけ直す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEW | ― | NEW | NEW | プログラムを全て消去し、変数を初期化する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CONTIUNE | CONT C | CONTIUNE | CONTIUNE | STOP,BREAKで停止したプログラムの実行を再開する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RUN | R | RUN [行番号] | RUN | 指定した行番号からプログラムを実行する(行番号を省略した場合は先頭から実行する) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SAVE | ― | SAVE ファイル名 | SAVE TEST | カセットテープにプログラムを保存する (CALL $E400の後に続けると1200baudでの動作となる) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOAD | ― | LOAD [ファイル名] | LOAD TEST | カセットテープからプログラムを読み込む ファイル名を省略した場合は最初に見つかったプログラムを読み込む (CALL $E400の後に続けると1200baudでの動作となる) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VERIFY | ― | VERIFY [ファイル名] | VERIFY TEST | カセットテープのプログラムを照合する ファイル名を省略した場合は最初に見つかったプログラムを照合する (CALL $E400の後に続けると1200baudでの動作となる) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MERGE | ― | MERGE ファイル名 | MERGE TEST | カセットテープからプログラムを読み込んで、メモリ上のプログラムとマージする | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MONITOR | MON | MONITOR | MONITOR | モニタコマンドモード ※にする | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SIZE | S | SIZE | SIZE | プログラムエリアの現在アドレスと残りメモリサイズを表示する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:プログラム制御 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
END | ― | END | END | プログラムを終了する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STOP | ― | STOP | STOP | プログラムを一時停止する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
REM | ― | REM [注釈] | REM TEST | 注釈を入れる(実行には無関係) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FOR...TO...STEP〜NEXT | ― | FOR 変数=開始値 TO 終了値 [STEP 増分]〜NEXT [変数][,変数2][,...] | FOR I=0 TO 10 STEP 2〜NEXT I | FORからNEXTまでの処理を繰り返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GOSUB | GOS | GOSUB 行番号 | GOSUB 1000 | サブルーチンを呼び出す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RETURN | RET | RETURN | RETURN | サブルーチンから復帰する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GOTO | GO | GOTO 行番号 | GOTO 1000 | 指定した行番号から実行する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IF...THEN | ― | IF 論理式 [THEN] {文 | [GOTO] 行番号} | IF A=0 {THEN END | 100} | 論理式の条件判断をする THEN以降が省略形以外の場合はTHENを省略可能(GOTOの場合はGOTOの省略不可) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ON...GOTO | ON...GO | ON 式 GOTO 行番号[,行番号2][,...] | ON A GOTO 100,200 | 式の値に応じて指定された行番号へ分岐する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ON...GOSUB | ON...GOS | ON 式 GOSUB 行番号[,行番号2][,...] | ON A GOSUB 100,200 | 式の値に応じて指定された行番号のサブルーチンを呼び出す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:変数関連 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INPUT | IN | INPUT [文字列,]変数[,変数2][,...] | INPUT "X=",X | キーボードから入力した値を変数に代入する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LET | ― | LET 変数=式 | LET A=1 | 変数に値を代入する(LETは省略できる) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DATA | ― | DATA 定数[,定数][,...] | DATA "TEST",765 | READで読み込むデータを定義する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
READ | ― | READ 変数[,変数][,...] | READ A$,B | DATAで定義したデータを変数に代入する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RESTORE | ― | RESTORE [行番号] | RESTORE 1000 | READで読み込むDATAの先頭行を設定する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RANDOMIZE | RNDM | RANDOMIZE | RANDOMIZE | 乱数発生列を変更する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DEF FN | ― | DEF FN関数名[(定義式内変数)]=定義式 | DEF FNA(X)=X^2 | ユーザ定義関数を定義する 関数名はA〜Z,A0〜Z9が使用可能 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DIM | ― | DIM 変数名(最大値[,最大値2][,...])[,...] | DIM A(100,10),B$(100) | 配列変数の定義をする | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:データ関連 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OPEN | ― | OPEN ファイル番号,デバイス番号,ファイル名,先頭アドレス | OPEN 2,3,"TEST" | ファイルをデータ入出力用にOPENする ※ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PRINT # | PR # ? # | PRINT #ファイル番号,式[,...] | OPENしたデバイスにデータを出力する ファイル番号を省略した場合はプリンタに印字する | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INPUT # | IN # | INPUT #ファイル番号,変数 | INPUT #1,A$ | OPENしたデバイスからデータを入力する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CLOSE | ― | CLOSE ファイル番号 | CLOSE 1 | OPENしたファイルをCLOSEする | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:マシン語関連 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CALL | ― | CALL アドレス | CALL $D000 | 指定したアドレスのマシン語サブルーチンを実行する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
POKE | ― | POKE アドレス,数式[,数式2][,...] | POKE $D000,$C9 | 指定したアドレスに値を書き込む | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:画面関連 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CURSOR= | CUR ! | CURSOR=X,Y | CURSOR 10,10 | 指定した位置にカーソルを移動する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CLEAR | CLR | CLEAR | CLEAR | 画面を消去する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PR ? | PRINT [式][{, | ;}[式2[,...]]] | PRINT "HELLO,WORLD" | 画面上に表示する ※ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PLOT | ― | PLOT X,Y,モード | PLOT 0,0,1 | 指定した座標にセミグラフィックを描画する ※・モード(0:消去/1:描画) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ステートメント:その他 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MUSIC | MU | MUSIC MML文字列 | MUSIC "C" | 音楽を演奏する ※ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
文字列関数 ※ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ASC | ― | ASC(文字列式) | ASC("TEST") | 文字列先頭のキャラクタコードを返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VAL | ― | VAL(文字列式) | VAL("123") | 文字列を数値に変換する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CHR$ | ― | CHR$(数式[,...]) | CHR$(41) | 指定したキャラクタコードの文字を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STR$ | ― | STR$(数式) | STR$(A) | 数値を文字列に変換する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SPC$ | ― | SPC$(数式) | SPC$(A) | 指定した長さの空白文字列を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LEFT$ | ― | LEFT$(文字列式,式) | LEFT$(A$,2) | 文字列の左側から式で指定した桁数の文字列を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MID$ | ― | MID$(文字列式,式1[,式2])[=文字列] | MID$(A$,2,1) | 文字列の式1で指定した位置から式2で指定した桁数の文字列を返す(=文字列を指定した場合はその文字列と置換する) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RIGHT$ | ― | RIGHT$(文字列式,式) | RIGHT$(A$,2) | 文字列の右側から式で指定した桁数の文字列を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LEN | ― | LEN(文字列式) | LEN(A$) | 文字列の文字数を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HEX | ― | HEX(数式) | SPC(A) | 指定した数値を4桁の16進数表記文字列に変換する(出力文字式内でのみ使用) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TAB | ― | TAB(数式) | TAB(A) | 指定した位置まで空白を返す(出力文字式内でのみ使用) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
数値関数 ※ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INT | ― | INT(数式) | INT(A) | 数式の整数値を返す(数式の値を超えない整数値) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SGN | ― | SGN(数式) | SGN(A) | 数式の符号を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RND | ― | RND(数式) | RND(A) | 0以上指定値未満の乱数を返す正数: 次の乱数を発生する | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
数学関数 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PAI | ― | PAI | PAI | 円周率(9桁)を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ABS | ― | ABS(数式) | ABS(-1000) | 絶対値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SIN | ― | SIN(数式) | SIN(3.14) | 正弦(サイン)の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
COS | ― | COS(数式) | COS(3.14) | 余弦(コサイン)の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TAN | ― | TAN(数式) | TAN(3.14) | 正接(タンジェント)の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATN | ― | ATN(数式) | ATN(3.14) | 逆正接(アークタンジェント)の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EXP | ― | EXP(数式) | EXP(1) | 自然対数の低(e)に対する指数関数の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOG | ― | LOG(数式) | LOG(1) | 自然対数の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQR | ― | SQR(数式) | SQR(2) | 平方根の値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
その他関数 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
表記 | 省略形 | 凡例 | 使用例 | 説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEEK | ― | PEEK(アドレス) | PEEK($D000) | 指定したアドレスの値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TIME | ― | TIME | TIME | 時刻変数を返す(0を基準とした1秒単位の数値:0〜32767) ($000Cの値を1/60することで1/60s単位を得られる) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INKEY$ | ― | INKEY$ | INKEY$ | 押されたキーの値を返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CURSOR | CUR ! | CURSOR=数値変数 数値変数=CURSOR | CURSOR=A A=CURSOR | カーソル位置を変数に格納する カーソル位置を変数の値にする | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CURSOR$ | CUR$ !$ | CURSOR$ | CURSOR$ | カーソル位置にある文字コードを返す | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[戻る] |
※ モニタコマンド
D : Display - ダンプリストの表示
M : Memory - メモリ内容の表示、編集
F : Fill - メモリブロックに定数を格納
T : Transfer - メモリブロックを別ブロックに転送
G : Go - マシン語プログラムを実行
S : Step - マシン語プログラムをステップ実行
R : Registor - MPUレジスタ内容の表示、編集
B : Break - ブレークポイントの設定
P : Punch - マシン語プログラムを保存(パンチカードからの連想)
L : Load - マシン語プログラムの読込
V : Verify - マシン語プログラムをメモリ上のものと比較
E : Escape - BASICに復帰([RESET]押下も同様)
※ スクロール
スクロール中にキー入力で速度をコントロール可能
高 速 : 入力なし
中高速 : [英数]
中 速 : [英記号]
中低速 : [カナ記号]
低 速 : [カナ]
※ PRINT
; : 式を続けて表示する(A;B)
例 1;2
1 2
, : 式をTABで区切って表示する(A,B)
例 1,2
1 2
CHR$ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
コード | 機能 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$01 | 次に$01〜$0F($04を除く)を指定して、グラフィック文字を出力する | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$02 | 画面スクロールアップ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$03 | 画面スクロールダウン | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$04 | 何もしない($01の後に指定不可能→中間コードで区切りとして使用しているため) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$05 | カーソルをBlink表示 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$06 | カーソルを消去 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$07 | BELL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$08 | カーソルを左移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$09 | カーソルを右移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0A | カーソルを下移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0B | カーソルを上移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0C | 画面をクリアし、カーソルをHOMEへ移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0D | カーソルを次行先頭へ移動 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0E | 画面を白地に黒文字にする | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$0F | 画面を黒地に白文字にする | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$7F | DEL |
※ 高解像度グラフィック
GRAMに対して直接書き込むことで256x192の画面に対してグラフィックを表示することが可能
・GRAM領域定義
CALL $E37E : 1ページのみを使用
CALL $E383 : 2ページ使用
・GRAMアドレス
$0900 : 1ページ目先頭アドレス
$2100 : 2ページ目先頭アドレス
それぞれのアドレスのデータ(ビット)が画面上のドットに対応する
(アドレス1つが8ドット分に対応)
・表示モード切替
1ページ目 : POKE $EFE0,$C0
2ページ目 : POKE $EFE0,$CC
テキスト : POKE $EFE0,$00
・GRAMクリア
1ページ目 : CALL $E38D
2ページ目 : CALL $E39C
※ OPEN
OPEN ファイル番号,デバイス番号,ファイル名,先頭アドレス
・ファイル番号 : 1〜15
・デバイス番号
1 : 画面
2 : キーボード
3 : CMT(OUT) - 300baud
4 : CMT(IN)
5 : CMT2(OUT) - 1200baud
6 : CMT2(IN)
7〜15 : ユーザ定義
・ファイル名 : CMTに対して使用する場合に必要
・先頭アドレス : ユーザ定義時必要(以下のように定義)
N : $7E(JMP)
N+1,+2 : OPENサブルーチン先頭アドレス
N+3 : $7E(JMP)
N+4,+5 : ドライバサブルーチン先頭アドレス
N+6 : $7E(JMP)
N+7,+8 : CLOSEサブルーチン先頭アドレス
※ MML
MMLは文字列変数か直接記述する
(直接記述では""で括らなくてよいが、文字列変数と合成する場合は括る)
音階 : トレミフソラシ
# : 半音上げる
B : 半音下げる
U : オクターブ上げる(次の音階にのみ有効)
D : オクターブ下げる(次の音階にのみ有効)
R : 休符(長さはPnで指定)
Pn : 音長(n:0[32分〜9[全])
Vn : 音量(n:1〜5でV5を1として、1つ下がるごとに1/2)
Mx : 移調(x:音階に応じた音調となる[ex.Mト : ハ長])
Qn : 音色(n:0〜4で波形が変化する)
Tn : テンポ(n:1〜7)
(1:200/2:133/3:100/4:80/5:63/6:57/7:50)
初期値:Mト P5 V4 Q0 T4
※ プリンタ
専用プリンタ(MP-1041)に対してリスト出力時行モードの切替を行うためには、以下のマシン語サブルーチン呼び出しが必要な場合がある
(CALL先が処理となっているので、CALLすればよい)
・プログラムリスト印字
132行 : CALL $E02B
80行 : LIST # (デフォルト)
40行 : CALL $E02D
・データ出力(ユーザ定義デバイスになるため、各マシン語サブルーチンを用意する必要がある)
132行 : OPEN #ファイル番号,#デバイス番号(7〜15),$E009
80行 : OPEN #ファイル番号,#デバイス番号(7〜15),$E000
40行 : OPEN #ファイル番号,#デバイス番号(7〜15),$E012
・ハードコピー
CALL $E021
※ 変数型・定数型
数値型に違いはなく、表記法が異なるのみ
整数表記 : 0〜±999999999
小数表記 : ±0.000000001〜±99999999.9
指数表記 : ±2.93873588E-39〜±1.70141183E+38
(表示桁数9/有効桁数9)
A$ : 文字列型(A$="TEST")
$ : 16進数形式($FFFF)
※ 演算子
+ : 加算・結合(A+B、A$+B$)
- : 減算(A-B)
* : 乗算(A*B)
/ : 除算(A/B)
^ : べき算(A^B)
= : 等号・代入(A=3、A=B+C)
> < : 不等号・比較(A>3、A<=2)
関係演算子の成立を1、非成立を0として、論理和に「+」、論理積に「*」を使って論理演算が可能
エラーメッセージ一覧 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
番号 | 表示 | 意味 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | SYNTAX ERROR | コマンド、またはステートメントの書き方が間違っている | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | LINE NUMBER ERROR | 未定義の行番号を指定した | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | OVERFLOW ERROR | 値が許容範囲を超えた | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | MEMORY FULL ERROR | メモリが不足している | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | ERROR 1 | 変数定義が多すぎる(およそ128個まで) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6 | ERROR 2 | ステートメントが長すぎる(79文字まで) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
7 | ERROR 3 | ファイル名が長すぎる(6文字まで) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 | ERROR 4 | 除算の分母が0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
9 | ERROR 5 | 関数やステートメントの引数が間違っている | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 | ERROR 6 | OPEN時のエラー | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
11 | ERROR 7 | 配列変数の使い方が間違っている | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | ERROR 8 | NEXTに対応したFORがない | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
13 | ERROR 9 | RETURNに対応したGOSUBがない | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
14 | ERROR 10 | 文字列変数に対して文字列以外を代入しようとしている | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 | ERROR 11 | FOR〜NEXTのネストが深すぎる(15まで)、または式が複雑すぎる | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | ERROR 12 | サブルーチンのネストが深すぎる(30まで) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
17 | ERROR 13 | 未定義の変数が使用された | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
18 | ERROR 14 | 配列が二重宣言された | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 | ERROR 15 | 配列の添字が指定した範囲外 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 | ERROR 16 | 未定義配列を参照した | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
21 | ERROR 17 | 配列の添字が定義を超えた | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
22 | ERROR 18 | 文字列変数に対して結合以外の演算を行おうとした | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | ERROR 19 | 未定義関数を参照した | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | ERROR 20 | 未定義ユーザ関数を参照した | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
25 | ERROR 21 | READに対応したDATAがない | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
26 | ERROR 22 | DATAの区切りが異常 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
27 | ERROR 23 | 数値変数に対して数値以外を代入しようとした | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
28 | ERROR 24 | ダイレクトモードで使えないステートメントを使った | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29 | ERROR 25 | プログラム中にダイレクトステートメントが存在した | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | PRINTER NOT READY | プリンタが動作可能状態ではない |