もともとSHARP BASIC(シャープ・ベーシック)と呼ばれ、後にS-BASIC(エスベーシック)と呼ばれることになったものは、シャープの8ビットマイクロコンピュータ、MZシリーズに標準添付されていたBASICである。

S-BASICなる名称が正式に登場したのはMZ-700からで、MZ-700にはS-BASIC以外にHu-BASICが同梱されていたためである。それ以前は「SHARP BASIC」という名称だった。

本項目では便宜上S-BASICと呼ぶ。

概説 MZシリーズにはコンパクトカセットテープで標準添付されており、本体搭載のデータレコーダでロードし使用するものである。

グラフィックス描画、サウンドなど、本体に搭載されている機能をほぼ全て使うことができる。

実行速度は速く、変数は逐次処理され、フリーエリアも多く取れる傾向にあった。

予約語はPET 2001のBASICのものが参考にされたとされる。

製品番号 S-BASICの各バージョンには製品番号がついていた。主要なものを太字で表示し、一時期しか流通しなかったものなどマイナーなバージョンは細字で表示する。 SP-5002 SP-5010 ─ 初期のバージョン。当初のMZ-80Kに付属 SP-5020 SP-5025 ─ 欧州で販売されたMZ-80K/Cに付属したもので、SP-5010を原型にしたもの。 SP-5030 ─ MZ-80K/C/K2/K2E/1200に付属。 SB-5520 ─ MZ-80B/B2 に付属 SB-6520 ─ MZ-80B系用DISKBASIC 1Z-007B ─ MZ-700に付属。「S-BASIC」と表記 5Z-001 ─ MZ-1500に付属 MZ-1Z001 ─ MZ-2000に付属 MZ-6Z001 ─ MZ-2500 BASIC S25

SP-5030 予約語 SP-5030では次のとおり。 コマンド ─ AUTO, LIST, NEW, CONT, RUN, SAVE, LOAD, VERIFY, BYE ステートメント プログラム制御 ─ END, STOP, REM, FOR...TO...STEP~NEXT, GOSUB, RETURN, GOTO, IF...THEN, IF...GOTO, IF...GOSUB, ON...GOTO, ON...GOSUB 変数関連 ─ INPUT, GET, LET, DATA, READ, RESTORE, DEF FN, DIM, CLR データ関連 ─ WOPEN, PRINT /T, ROPEN, INPUT /T, CLOSE 機械語関連 ─ LIMIT, USR, POKE I/O関連 ─ INP, OUT 画面関連 ─ CURSOR, PRINT, SET, RESET プリント ─ PRINT /P サウンド関連 ─ TEMPO, MUSIC 関数 文字列関数 ─ ASC, VAL, CHR$, STR$, LEN, LEFT$, MID$, RIGHT$, TAB, SPC 数値関数 ─ INT, SGN, RND 数学関数 ─ π, ABS, SIN, COS, TAN, ATN, EXP, LN, LOG, SQR その他関数 ─ TI$, PEEK, SIZE

その他 仕様など PRINTの書式 ─ 印字する文字列内に特殊文字を埋め込むことができ、↑,↓, ←,→ を埋め込むとカーソルが上下左右に動き、Hはホームに移動、Cはホームに移動し画面クリア。 音を制御するMMLの文法は、音階指定はC,D,E,F,G,A,B。音階前に「+」でオクターブ上げ、「-」でオクターブ下げ。音長は0〜9の引数で渡し、0は32分音符、1は16分音符、2は付点16分音符、3は8分音符...などと定められ、TEMPOでテンポを指定する。

その後のバージョンなど 単精度浮動小数点演算など、基本的な命令セットの標準添付のBASIC以外に、倍精度、カラー表示対応、漢字表示対応などの機能そのものを拡張したBASICや、QD、ミニフロッピーディスクに対応した、DISK-BASIC等もシャープから別途供給された。

MZ-80B/MZ-2000シリーズに搭載されていたフルロジックコントロールデータレコーダの制御命令を装備していたため、プログラム上から必要なデータの頭出しを行うことが出来、ユーザーからは「TOS(Tape Operating System)」とも呼ばれた。

なお、X1でHu-BASICが標準BASICとして採用された後、MZ-2500シリーズではシャープの文法に則ったBASIC(BASIC S25)のほかに、N88-BASICライクな文法のBASIC(BASIC M25)が付属していた。これはハドソン製ではなかった。純正以外にもバイナリパッチを当て、機能を拡張した亜種のBASICも販売されていた。

エミュレータ 2010年代にはS-BASICのカセットテープを入手することは困難な状態になっていた。2017年にハル研究所がMZ-80Cをミニチュアサイズで復刻した「PasocomMini MZ-80C」では、オリジナルのS-BASICが使えなかったため、S-BASICとほぼ同等の動作をする「KM-BASIC for MZ-80K/MZ-700」というソフトウェアを使うことを想定した。これはGPLライセンスでオープンソースのものである。

脚注 注

出典

外部リンク シャープ公式マニュアル『MZ-80 SERIES BASIC』のアーカイブ