ROM-BASIC
出典: フリー百科事典『ウィキペディア(Wikipedia)』
ROM-BASIC(ロムベーシック)とは、8ビットパーソナルコンピュータの殆んどと、一部16ビットパーソナルコンピュータに搭載されていた、ROMに書き込まれたスタンドアロンBASICである。
ROM-BASICという概念は、ROMにBASICを内蔵せずカセットテープやフロッピーディスクなどからロードするものと比較していう場合と、素のROM-BASICを拡張してフロッピーディスクを利用可能にしたDISK-BASICと比較していう場合とがある。
目次 |
[編集] 概要
[編集] メリット
- パーソナルコンピュータにOSの概念を入れ込むことなく、すぐにBASICを使用することが出来る。特に、カセットテープから長時間かけてロードするものと比べるとそのメリットは絶大である。
- ROM内部に置かれたグラフィック描画などのサブルーチンを呼び出すことが出来、アセンブラで独自プログラムを作成する際の工数を削減することが出来た。
[編集] デメリット
- 特に8ビット機の初期においては、元々64Kbyteしかないアドレス空間の半分以上をROMに占有されてしまい、さらに若いアドレスが使えなくなることで、CP/Mなどを使用するのに苦労した。
- メリットで挙げたサブルーチンのエントリやデータの受け渡し方法がメーカーによって公開されていることはまれで、サードパーティーのソフトウェア開発業者などが解析した結果をドキュメント化して出版したものを入手して参照するか、自力でROM内部をリバースエンジニアリングせざるを得なかった。当然バグフィックスが行われるなどで、ROMのリビジョンが変わってしまうと使えなくなる可能性があった。
ROM-BASICでサポートされていた外部記憶装置はオーディオ用コンパクトカセットを流用したデータレコーダであり、一部の機種を除いて専用ではなかったために記録速度は300~1200bpsと極低速である(アナログ電話回線のダイアルアップ接続の最高速度が56000bpsであることから推して知るべし)。
なおクリーンコンピュータ思想で設計されていたシャープのX1に用意されていたROM-BASIC「Hu-BASIC CZ8RB01 Ver.1.0」は、上記のものとは違い、テープで供給されていた「CZ8CB01」をROMに書き込み、IPLから読み出してRAMに配置するという形をとっていた。これはROMにMS-DOSを書き込んでブートする方法に似ている。また、X1TurboシリーズやMZ-2500シリーズに至っては、BASICではなくグラフィック描画サブルーチンなどをシャドーROMに配置し、さらにサブルーチンの呼出方法とアセンブラソースコードをメーカーであるシャープ自身が公開していた。
NECのPC-9821シリーズにもROM-BASICが搭載されていたが、カセットインターフェースが無くなってしまっていたたため、単独での使用は実質不可能であった。もっともこの時代にはスタンドアロンBASICの利用自体ほとんど行われなくなっていた。