S-BASIC (MZ-1Z001) Reference Manual
これは
2014年、MZ-2000を修理し復活させたは良いが、マニュアルがない。
web を探してもなかなか適当な情報が得られなかったので、
手元のベーマガのソースコードを参考に勝手に調べてまとめよう、と決めた。
したがって、本ドキュメントは本来のリファレンスマニュアルとは違う。
勝手に調べたメモなのでそのつもりで。
(逆にマニュアルあるから教えてやるよ、と言う方がいらっしゃったら
是非教えてください。)
なお、本資料は今のところ MZ-1Z001を調べたものをまとめているが、恐らく
COLOR TAPE BASIC MZ-1Z002 も大差ないと思われるので、そのうち MZ-1Z002
についても加筆するかもしれない。
命令表
- 原則小文字は引数の説明に使用しているつもり。
- 記載の例などは最近のコーディングのトレンドに則って空白を入れているが、 当時はスペースを入れないで詰める方が普通。
- 文法の特徴:
- 大文字小文字を区別する …というか、文字列以外では大文字しか使えない。 変数名にも小文字は使えない。
- 変数名は先頭2文字のみ有効。AB=123 としたら ABCDEFG も 123。
- 多くの命令で引数の順番は任意。引数の最初の一文字で意味を 区別しているものが多い。(例: GRAPH命令)
- このバージョンのS-BASICには $xxxx や &Hxxxx のような 16進数リテラルがない(たぶん)。
command | usage | description | example |
---|---|---|---|
CONSOLE | CONSOLE St, b, Ccr, Gr | 画面表示まわりのもろもろ設定。引数は区切りカンマも含めて適当に省略・入れ替え可能。
|
CONSOLE S0, 24, C40N, GN CONSOLE R |
REM | REM comment | コメント。何もしない。 | REM ココハコメント |
CURSOR | CURSOR x, y | カーソルを x, y の位置に移動する。CONSOLE命令のスクロール範囲外も可。 | CURSOR 20, 12: PRINT "HOGE" |
GRAPH | GRAPH Ii, fill, Oo |
グラフィックス表示設定。今で言うダブル(というかトリプル)バッファ制御。
|
GRAPH I1, C, O1 GRAPH FCFC |
TEMPO | TEMPO n | MUSIC文による演奏テンポを指定する。nは1〜7。大きいほど速い。 | TEMPO 7:MUSIC "CDE" |
MUSIC | MUSIC str | 文字列 str を MML として演奏する。テンポ既定値はTEMPO命令で指定する。MMLに間違いがあってもエラーは出ない。 | MUSIC "CDEFEDCREFGAGFER" |
GET | GET var | 即時キー入力。文字変数varにその時押下されているキーコードが入る。 押されていなければNULL("")が入る。 |
100 PRINT "PUSH ANY KEY" 110 GET A$:IF A$="" THEN 110 |
POSITION | POSITION x, y | PATTERN 命令で表示するビットパタンの位置を指定する。 | POSITION 160, 100 |
PATTERN | PATTERN [-]len, str | パタンを表示する。len は 1-24 の整数値で、-をつけることができる。ただし負数という意味ではなく、-記号が必要なのでA=-1としたAをlenとして与えることはできない。strは16進数文字列。(以下詳細不明につき調査中) | PATTERN -16, "55AA0102040810204080" |
LINE | LINE x0, y0, x1, y1, x2, y2, ... | グラフィックス面に線を引く。連続して座標を指定することで 折れ線も可。 | LINE 50, 120, 100, 50, 150, 120, 50, 120 |
BLINE | BLINE x0, y0, x1, y1, x2, y2, ... | LINEの消灯版。Blank LINE あるいは Black LINE か。 | BLINE 50, 120, 100, 50, 150, 120, 50, 120 |
CHARACTER$ | CHARACTER$(x, y) | テキスト面の(x, y)座標にある文字を得る。 | ? CHARACTER$(0, 1) |
SPACE$ | SPACE$(len) | スペース(" ")をlen個並べた文字列を返す。 | ? "<";SPACE$(10);">" |
AUTO | AUTO start, step | 行番号を start から step 刻みで自動的に入力してくれる。 リスト打ち込み時などの便利機能。start, step ともデフォルトは 10。 | AUTO 100, 10 |
MON | MON | 機械語モニタ(メモリを直接いじれる簡易エディタ あるいは
超機能限定版デバッガ
のようなもの。
昔のパソコンには大抵ついていた。)に入る。 モニタからBASICに戻るには J コマンドで $1300 にジャンプ。 |
MON |
REW | REW | カセットを巻き戻しする。 | REW |
FAST | FAST | カセットを早送りする。 | FAST |
BOOT | BOOT | 再起動する。 | BOOT |
POKE | POKE addr,data | メモリのaddr 番地に data を書き込む。 | POKE 123,45 |
PEEK | PEEK(addr) | メモリのaddr番地の値を読み出す。 | ?PEEK(123) |