■ ソフトウェア
ソフトウェア関連です。
・収録ソフトウェア
付属の microSD に収録されているソフトウェアは次の通りです。
ディスク | 内容 | システム | ドキュメント | 備考 |
---|---|---|---|---|
BLANK_DISK.DSK | 空のディスクイメージ | 2DD フォーマット (720KB)。 | ||
BLANK_FAT16.DSK 1 | 空のディスクイメージ | Nextor 用 FAT16 フォーマット (32MB)。 | ||
MSX_C_V1.1.DSK 1 | MSX-C Ver1.1 | 15 2 | MSX-DOS 用。C コンパイラ。 | |
MSX_C.DSK | MSX-C Ver1.2 | 16 2 | MSX-DOS2 用。C コンパイラ。 | |
MSX_C_LIB.DSK | MSX-C Library | 17 2 | C ライブラリ。 | |
MSX_DOS_TOOLS.DSK | MSX-DOS TOOLS | DOS1 | 5, 6, 7 | MSX-DOS 用。外部コマンド、スクリーンエディタ MED、M80 マクロアセンブラ、L80 リンカ付属。 |
MSX_DOS2_ENG.DSK | MSX-DOS2 (英語) | DOS2 | 9, 10 | ROM カートリッジは内蔵。 |
MSX_DOS2_JPN.DSK | MSX-DOS2 (日本語) | DOS2 | 9, 10 | ROM カートリッジは内蔵。 |
MSX_DOS2_TOOLS.DSK | MSX-DOS2 TOOLS | DOS2 | 11 | MSX-DOS2 用。外部コマンド、スクリーンエディタ AKID、日本語スクリーンエディタ KID、M80 マクロアセンブラ、L80 リンカ付属。 |
MSX_SBUG.DSK | MSX-SBUG | 12 | MSX-DOS 用 SBUG シンボリックデバッガ。 | |
MSX_SBUG2.DSK | MSX-SBUG2 | 13 | MSX-DOS2 用 SBUG2 シンボリックデバッガ。 | |
MSX0MENU.DSK | MSX0 Stack システムメニュー | DOS2 | 1 | MSX System Unit1 (U1) の起動ディスクに指定されている。 |
SAMPLE.DSK | IoT BASIC サンプルプログラム | 2, 3, 4 |
DOC\SAMPLE.TXT が概要になっている。 |
ドキュメントの番号は microSD の DOC\manual
に格納されている PDF に付いている番号を表しています。
・開発ツール
開発ツールの組み合わせは次のようになります。
MSX | MSX-DOS | アセンブラ/ リンカ/エディタ |
C コンパイラ | C ライブラリ | デバッガ |
---|---|---|---|---|---|
MSX1 | MSX-DOS | DOS TOOLS | MSX-C ver1.1 1 | MSX-C Library | SBUG |
MSX2 / 2+ | MSX-DOS2 | DOS2 TOOLS | MSX-C ver1.2 | MSX-C Library | SBUG2 |
See also:
・ディスクからの起動
FD イメージを microSD の DSK
フォルダに格納し、[システムメニュー | FD 変更] でディスクを指定して再起動します 3。
FD イメージをイジェクトするには [Setup Utility | MSX System Unit0] でしか行えませんが、MSX-DOS を起動したくないだけであれば、空のディスクイメージである BLANK_DISK.DSK
を指定すればよいでしょう。
MSX0 Stack で扱える FD イメージは 2DD (720KB) ベタ形式です。ファイルサイズは 737,280 bytes になります。
・ROM カートリッジからの起動
現状、現状では ROM カートリッジを挿せるアダプタは用意されておらず、任意の ROM イメージを扱う事もできません。
内蔵ゲームカートリッジは [システムメニュー | カートリッジ変更] で選択して再起動する事で起動します 3。
Project EGG のゲームはファームウェア更新という形で内蔵ゲームカートリッジを差し替えます。
Nextor + SofaRun
MSX0 Stack はファームウエアバージョン 0.07.08 で Nextor に対応しており、FAT16 32MB 空ディスクイメージ (BLANK_FAT16.DSK
) 1 に Nextor を組み込み、SofaRun を組み込む事で ROM イメージを実行できます。
ROM のダンプ (吸出し) には Gamebank-web.com の『MSX ダンパー』が使えます。
・MSX-DOS <-> BASIC への遷移
MSX-DOS から BASIC へは BASIC
で移動できます。
MSX-DOS version 1.03
Copyright 1984 by Microsoft
COMMAND version 1.11
A>BASIC
BASIC から MSX-DOS へは CALL SYSTEM
で移動できます 4。
MSX BASIC version 2.0
(C)Copyright
Microsoft 1983-2023
IoT Media Lab 2023
MSX Licensing Corp 2016-2023
25335 Bytes free
Disk BASIC version 2.00
Ok
CALL SYSTEM
MSX-DOS2 の場合、遷移時に CALL SYSTEM
のパラメータで指定したコマンドを実行できます。
CALL SYSTEM("コマンド")
パラメータを省略すると REBOOT.BAT
が検索され、存在すれば実行されます。この際、REBOOT.BAT
にはパラメータとして起動ドライブが渡されます (%1
は起動ドライブ)。
・BASIC ソースの閲覧
BASIC 上では LIST
で閲覧できますが、中間コード形式でセーブされている *.BAS ファイルはテキストエディタで読む事ができません。
LOAD "SYSMENU.BAS"
SAVE "SYSMENU2.BAS",A
BASIC で LOAD し、別名でアスキー形式セーブ (,A
を指定) しましょう。
A:>LIST SYSMENU.BAS > SYSMENU2.BAS
『MSX-DOS TOOLS』や『MSX-DOS2 TOOLS』に含まれる LIST.COM
を使って MSX-DOS 上から変換する事もできます。
・MSX べーしっ君 (BASIC コンパイラ)
『MSX べーしっ君 (X-BASIC)』の ROM カートリッジは内蔵されています。
べーしっ君には 3 種類あります。MSX0 Stack のものは、付属のマニュアルこそ無印の『MSX べーしっ君』ですが、搭載されている ROM は MSXturboR 対応の『MSX べーしっ君 たーぼ』との事です。
製品名 | Ver | 対応機種 | 形態 | 価格 |
---|---|---|---|---|
MSX べーしっ君 | 1.0 | MSX, MSX2 | ROM | ¥4,500 |
MSX べーしっ君 ぷらす | 2.0 | MSX, MSX2, MSX2+ | ROM | ¥6,800 |
MSX べーしっ君 たーぼ 5 | 2.1 | MSX, MSX2, MSX2+, MSXturboR | Disk | ¥3,500 |
BASIC プログラムを RUN
ではなく CALL RUN
で実行すると、BASIC コンパイラを通して実行されます 4。
BASIC コンパイラが実行できない命令が含まれるプログラムの場合、CALL TURBO ON
と CALL TURBO OFF
で囲った部分だけをコンパイラに処理させる事もできます。この場合には CALL RUN
ではなく RUN
で実行します。
10 PRINT "Hello,"
20 CALL TURBO ON
30 PRINT "world."
40 CALL TURBO OFF
50 END
BASIC コンパイラの詳しい使い方はドキュメントを参照してください。
ドキュメントは microSD の DOC\manual
に格納されている 14_MSXべーしっ君.pdf
です。
掲載号 | ページ | 内容 |
---|---|---|
1986/11 | pp.187-190 | ・コンパイラに挑戦 BASIC コンパイラ (MSX べーしっ君) |
1986/12 | pp.215-217 | ・コンパイラに挑戦 BASIC コンパイラ (MSX べーしっ君) Part II |
1987/03 | pp.191-192 | ・べーしっ君の使い方 (第 1 回) |
1987/04 | pp.191-192 | ・べーしっ君の使い方 (第 2 回) |
1987/05 | pp.172-175 | ・べーしっ君の使い方 (第 3 回) |
1987/06 | pp.174-177 | ・べーしっ君の使い方 (最終回) |
1989/03 | pp.150-151 pp.204-206 |
・べーしっ君ぷらす あのべーしっ君が MSX2+ 対応でパワーアップ! |
1989/04 | pp.180-183 | ・べーしっ君ぷらす べーしっ君で横スクロールゲームに挑戦だ |
1992/05 | pp.50-69 | ・MSX べーしっ君たーぼ |
1992/07 | p.145 | ・MSX べーしっ君たーぼ 補足・訂正 |
・IoT BASIC
MSX0 Stack の BASIC には IoT 拡張命令があります。IoT ROM カートリッジが内蔵され、その機能を利用しているような恰好になっています。
命令 | 説明 |
---|---|
CALL IOTPUT(パス名, 値) | ノードに対して値を書き込みます。 |
CALL IOTGET(パス名, 変数) | ノードから値を読み出します。 |
CALL IOTFIND(パス名, 数値変数) | 対象のノードが持つアイテムの個数を取得します。 |
CALL IOTFIND(パス名, 配列変数 [,個数]) | 対象のノードが持つアイテム名のリストを取得します。 |
CALL IOTINIT() | シリアル⼊出⼒などの機能を初期化します。 |
DSK\SAMPLE.DSK
に含まれるサンプルプログラムは次のようになっています。
機能 | ファイル名 | 説明 |
---|---|---|
M5 LCD タッチパネル | TOUCH_G.BAS | 本体の LCD タッチパネルを使って簡単なお絵描きができます。 |
アナログ入力 | ANALOG_G.BAS | PortB (黒) のピン 36 からのアナログ入力信号で簡単なグラフを描きます。 |
温度湿度センサ | DHT_KNJ.BAS | 温度湿度センサから取得した値を表示します。 |
加速度センサ | ACCEL.BAS | M5GO Bottom2 の加速度センサの値を取得して表示します |
Wi-Fi 値取得 | WIFILVL.BAS | 接続中の Wi-Fi AP の RSSI 値を表示します。 |
リモートコンソールへの文字列送信 | RCONSOLE.BAS | リモートコンソールに文字列を送信します。 |
サーバーとの送受信 | SEND2NET.BAS | 温度湿度センサーから値を取得しサーバーへ送信します。 |
ノードリスト表示 | TREE.BAS | ノードを再帰的にスキャンしてリスト表示します。 |
負荷測定 | PERFORMC.BAS | 仮想 Z80 の周波数を振ってオーバークロック余力を測定します。 |
I2C アクセス | I2C.BAS | DHT20 に対して直接 I2C アクセスを行い温度を取得します。 |
DSK\MSX0MENU.DSK
に含まれるシステムメニュープログラムもサンプルの一部です。
機能 | ファイル名 | 説明 |
---|---|---|
設定値変更 | SYSMENU.BAS | システム設定アプリを想定したサンプルになります。 |
空の microSD カードを挿した時に自動生成される DSK\MSX0MENU.DSK
には上記サンプルプログラムと、説明書とは異なる質素なメニュープログラムが含まれます。
機能 | ファイル名 | 説明 |
---|---|---|
情報表示 | INFO.BAS | MSX0 の情報を表示します。 |
設定値変更 | MENU.BAS | システム設定アプリを想定したサンプルになります。 |
例えば Unit0 側の CPU の動作速度を調べるには次のようにします。
CALL IOTGET("msx/u0/pm/cpu/percent", V)
PRINT V
100
Ok
Unit0 側の CPU の動作速度を 150% に変更するには次のようにします。
CALL IOTPUT("msx/u0/pm/cpu/percent", 150)
Ok
・ノード情報については ドキュメントフォルダにある 2_IoT_BASICノード情報.pdf
を参照してください。
・実際のノードツリーは SAMPLE.DSK
内の TREE.BAS
を実行して取得できます。シリアルコンソールやリモートコンソールで接続してリストを取得する事ができます。
・詳細な使い方については SAMPLE.DSK
内のソースコードを参考にしてください。
他の言語からの利用
MSX-BASIC 以外から使う方法もあります。
言語 | 説明 |
---|---|
BASIC コンパイラ | BACON (Github: @hra1129) |
C | LibIoT (Github: @renatus-xxxx) |
Turbo Pascal |
IOT.LIB (Qiita: @ht_deko) IOT.LIB (Github: @ht_deko) |
See also:
・日本語入力/表示
『MSX0 Stack』には漢字 ROM が搭載されており、日本語の入力/表示が可能です。
- 実機では
〔かな〕
で 英数入力 ⇔ かな/カナ入力 の切り替えで、〔CapsLock〕
キーで かな入力 ⇔ カナ入力 切り替え。 - 実機 (MSX2 以降) では
〔Shift〕+〔かな〕
で 英数入力 ⇔ ローマ字入力(かな/カナ) の切り替えで、〔CapsLock〕
キーで ローマ字入力 (かな) ⇔ ローマ字入力 (カナ) 切り替え。 - 実機では 漢字モード 中に
〔Ctrl〕+〔Space〕
で 日本語入力 (全角) の ON / OFF 切り替え。入力方法 (かな/ローマ字) や文字種 (Aあア) は切り替え前のものを引き継ぐ。 - 日本語入力 時の文字種が英数以外の場合に 単漢字変換 が利用可能。
現状の『MSX0 Stack』だとリモートコントロールパネルでのみ日本語入力が可能です 6。
日本語入力 / 表示が可能な 漢字モード への移行は
BASIC: CALL KANJI モード (0~3)
MSX-DOS2: KMODE モード (0~3)
元に戻すには
BASIC: CALL ANK
MSX-DOS2: KMODE OFF
となります 4。
漢字ドライバ
MSX-DOS2 で KMODE を実行して 漢字ドライバが組み込まれていない!
と怒られた場合には 2 通りの対処方法があります。
A> kmode 0
*** Kanji driver is not installed
*** use "CALL KANJI" under BASIC.
A>
・BASIC で CALL KANJI を実行する (そして CALL SYSTEM で戻ってくる)。
エラーメッセージの通りですね。なお、MSX-DOS(1) には KMODE はないのでこの方法で漢字モードにするしかありません (多分)。
A> BASIC
MSX BASIC version 2.0
(C)Copyright
Microsoft 1983-2023
IoT Media Lab 2023
MSX Licensing Corp 2016-2023
25335 Bytes free
Disk BASIC version 2.00
Ok
CALL KANJI
Ok
CALL SYSTEM
・任意の漢字モードで起動するようにディスクのブートセクタを書き替える。
毎度毎度 BASIC に移動するのが面倒な場合に。
A> KMODE OFF /S
ドライブ A: のディスクは日本語 MSX-DOS2 しか立ち上げられなくなります
何かキーを押して下さい
A>
ブートセクタを書き替えるための KMODE の書式は次の通りです。
KMODE [数値|OFF] /S [d:]
数値: 0~3 (漢字モード) | OFF: ANK 指定
d: ドライブ。未指定の場合はカレントドライブ。
最初から KMODE が使えるようになります。
・RS-232C
ファームウエアバージョン 0.11.08 以降で RS-232C をサポートしています。PortC を UART として使えます。
ピン | ケーブル | PortC (UART) |
---|---|---|
1 | 黄 | RXD |
2 | 白 | TXD |
3 | 赤 | 5V |
4 | 黒 | GND |
BASIC からだと、
CALL COMINI("0:8N1NH", 9600)
CALL COMTERM
で、簡易ターミナルが起動します。
- エコーバックは
〔F7〕
(〔Shift〕+〔F2〕
) です - 終了は
〔Ctrl〕+〔Stop〕
(〔Fn〕+〔C〕
) です
拡張 BASIC のステートメントは『MSX-Datapack Volume 2』の pp.99-145 に詳細があります。
MSX-DOS2 / Nextor
MSX-DOS2 / Nextor では、MSX-DOS2 TOOLS に含まれる ADDAUX.COM
を用いてデバイスファイル名 AUX
に RS-232C を割り当てる事ができます。
A:\addaux
通信パラメータは SPEED.COM
で設定します。
A:\speed 9600 8N1NHANN
パラメータ | 項目 | 値 |
---|---|---|
#1 | 通信速度 (1200) |
50, 75, 110, 300, 600, 1200, 1800, 2000, 2400, 3600, 4800, 7200, 9600, 19200 |
#2 | パラメータ (8N1XNNNN) |
キャラクタ長: 5, 6, 7, 8 パリティ: N(なし), E(偶数), O(奇数) ストップビット: 1(1), 2(1.5), 3(2) XON/XOFF 制御: X(あり), N(なし) CTS-RTS ハンドシェーク: H(あり), N(なし) CR 受信時の LF の付加: A(あり), N(なし) CR 送信後の LF の除去: A(あり), N(なし) SI/SO 制御: S(あり), N(なし) |
#3 | 送信タイムアウト (0) |
0..255 |
デバイスファイル名 AUX
に RS-232C が割り当てられた状態だと、次のようなコマンドで AUTOEXEC.BAT
の内容を送信できます。
A:\type autoexec.bat > AUX
ADDAUX.COM
/ SPEED.COM
については『MSX-DOS2 TOOLS ユーザーズマニュアル』の pp.19-20, pp.43-44 に詳細があります。
・MIDI
ファームウエアバージョン 0.11.08 以降で (限定的ながら) MIDI をサポートしています。
拡張 BASIC のステートメントは『MSX-Datapack turbo R 版 Volume 3』の pp.631-655 に詳細があります。
・ディスクイメージの操作
DiskExplorer
FD イメージの操作には『DiskExplorer (EDITDISK.EXE)』が紹介されています。
DSKTOOL
MSX-DOS2 のディレクトリを考慮しなくていいのであれば、『DSKTOOL』でファイル操作が可能です。
ImDisk Virtual Disk Driver
Nextor 用のディスクイメージ (FAT16) を操作するには ImDisk の利用をオススメします。
Mount new...
でディスクイメージをマウントすると仮想ドライブとして利用できます。Remove
で選択されたドライブをアンマウントします。
MountImg.exe
の方だとドラッグ&ドロップでディスクイメージを指定できて便利です。
MountImg.exe
のショートカットを作り、オプションに "D:\MSX0\NEXTOR_32MB.DSK" /MP=M:
のように指定すると、ファイル名とドライブレターが指定された状態で起動します。[OK] を押せば M:
としてマウントされます。既に M:
にマウントされている状態でこのショートカットから起動し、[Unmout] ボタンを押せばアンマウントされます。
・ブランクディスク
ブランクディスクを作る最も簡単な方法は microSD の DSK
フォルダにある BLANK_DISK.DSK
(2DD / 720KB) をコピーする事です。現状、MSX-DOS の FORMAT
コマンドや DISK BASIC の CALL FORMAT
4は動作しません。
『DSKTOOL ver 1.4』 以降では以下のコマンドでブランクディスクを作る事ができます。
DSKTOOL C 720 BLANK.DSK
Disk BIOS が有効 (MSX0 Stack では有効) かつ MSX-DOS のシステムディスクになっていないディスクに AUTOEXEC.BAS
という名前の BASIC プログラムファイルを置いておくと起動時に自動実行されます。
Nextor 用 FAT16 ブランクディスク
microSD の DSK
フォルダには Nextor 用の FAT16 フォーマットな 32MB ブランクディスクイメージ (BLANK_FAT16.DSK
) が用意されています 1。
・MSX-DOS のバージョンによる違い
ざっくりとした違いです。
MSX-DOS | MSX-DOS2 | Nextor | |
---|---|---|---|
最低動作環境 | MSX | MSX2 | MSX |
DOS ROM | 不要 | 必要 | 必要 |
Disk BASIC | ver 1.0 | ver 2.0 | Nextor BASIC |
必要メモリ | 64KB 以上 | 128KB 以上 | 128KB 以上 |
階層化ディレクトリ | なし | あり | あり |
RAM ディスク | なし | あり | あり |
環境変数 | なし | あり | あり |
REBOOT.BAT | なし | あり | あり |
ヒストリ機能 | なし | あり | あり |
TAB 補完機能 | なし | なし | あり |
・各種 DOS の起動ディスク
MSX-DOS1 の起動ディスク
MSX-DOS1 の起動ディスクは microSD の DSK
フォルダにある MSX_DOS_TOOLS.DSK
をコピーして作ります。
MSX_DOS_TOOLS.DSK
をコピーして MSX_DOS.DSK
にリネームしたものを『DiskExplorer』で開き、MSXDOS.SYS
と COMMAND.COM
を除いて削除します。
起動時、AUTOEXEC.BAT
という名前のバッチファイルが検索され、存在すれば実行されます。
MSX-DOS2 の起動ディスク
MSX-DOS2 の起動ディスクは microSD の DSK
フォルダにある MSX_DOS2_ENG.DSK
または MSX_DOS2_JPN.DSK
をコピーして作ります。
MMSX_DOS2_xxx.DSK
をコピーして MSX_DOS2.DSK
にリネームしたものを『DiskExplorer』で開き、MSXDOS2.SYS
と COMMAND2.COM
を除いて削除します。
起動時、AUTOEXEC.BAT
という名前のバッチファイルが検索され、存在すれば実行されます。この際、AUTOEXEC.BAT
にはパラメータとして起動ドライブが渡されます (%1
は起動ドライブ)。
MSX-DOS と MSX-DOS2 の混在
MSX-DOS から MSXDOS.SYS
と COMMAND.COM
、MSX-DOS2 から MSXDOS2.SYS
と COMMAND2.COM
の計 4 ファイルをブランクディスクにコピーすると、MSX-DOS2 が起動可能な環境では MSX-DOS2 が起動し、そうでない環境では MSX-DOS が起動する起動ディスクが作れます。
Nextor の起動ディスク
Nextor の起動ディスクは空のディスクイメージに NEXTOR.SYS
と、MS-DOS2 に含まれる COMMAND2.COM
をコピーして作ります。COMMAND2.COM
は The New Image (TNI) 氏による ver2.44 を使う事もできます。
Nextor は FAT16 に対応しているので、FAT16 32MB 空ディスクイメージ (BLANK_FAT16.DSK
) を使う事ができます。この際には FAT16 に対応している COMMAND2.COM ver2.44 を使うとよいでしょう。
日本語に対応したフルバージョンの NEXTOR.SYS
は NEXTOR.SYS.japanese
や NEXTORJP.SYS
という名前で配布されていますので、NEXTOR.SYS
にリネームして使います。
Nextor を起動するには Setup Utility の 設定 (MSX System Unit0) で Dos の種類を Nextor に変更する必要があります。
- Nextor (konamiman.com)
- Nextor (msxhub.com)
- Nextor DOS - MSX Wiki (MSX resource Center)
- TNI COMMAND2.COM 2.44 (tni.nl)
- TNI COMMAND2.COM 2.44 (Internet Archive)
- COMMAND2.COM 2.44 - MSX Wiki (MSX resource Center)
起動時、AUTOEXEC.BAT
という名前のバッチファイルが検索され、存在すれば実行されます。この際、AUTOEXEC.BAT
にはパラメータとして起動ドライブが渡されます (%1
は起動ドライブ)。
COMMAND2.COM ver2.44 の入手方法
The New Image (TNI) 氏のサイトにあるのはパッチなので、自前で MSX-DOS2 の COMMAND2.COM
にパッチを当てる必要があります。
- MSX-DOS2 の起動ディスクを用意
- パッチのアーカイブを解凍し、MSX-DOS2 の起動ディスクにコピー
- このディスクから起動
-
AUTOEXEC.BAT
によりCOMMAND2.COM
にパッチされる - ディスクから
COMMAND2.COM
ver2.44 を抽出
Nextor のアーカイブにはパッチ済の COMMAND2.COM
ver2.44 が含まれていますが、大した手間ではないので自分でパッチを行っておくとよいでしょう。
・ディスク機能の無効化
MSX0 Stack では 2 つのディスクドライブ (A:
, B:
) が有効になっています。挙動を見る限り、B:
ドライブは仮想ドライブ (2 ドライブシミュレータ) ではなさそうです。
2 ドライブシミュレータ というのは、1 台のドライブを都度切り替えて 2 台あるかのように振る舞う機能です。B:
ドライブへのアクセスはディスク交換で対応します。
MSX では次のようなドライブ構成ができます。MSX0 Stack では B:
ドライブの FD イメージを変更する UI がないため、(現状) B:
ドライブは使えないものと思われます。
ドライブ A: | ドライブ B: | |
---|---|---|
2 ドライブ | 実ドライブ | 実ドライブ |
2 ドライブ シミュレータ |
実ドライブ | 仮想ドライブ |
1 ドライブ | 実ドライブ | N/A |
ドライブなし | N/A | N/A |
起動時 (MSX ロゴが表示された直後) に特定のキーを押しっぱなしにして起動する事により、ディスクドライブを切り離す事ができます。
実機 | MSX0 (Faces II Keyboard) | |
---|---|---|
2 ドライブ | ||
1 ドライブ | 〔Ctrl〕 | 〔Fn〕を押して〔C〕を押しっぱなし 6 |
ドライブなし | 〔Shift〕 | 〔Alt〕を押しっぱなし |
BASIC で確認すると判りやすいです。ユーザーエリアのサイズに注目してください。
1 ドライブにするとユーザーエリアが増えます。MSX-DOS で B:
にアクセスすると Invalid Drive のエラーになります。
ドライブなしにすると純粋な ROM Basic が起動します (Disk BASIC の表示が消える)。ユーザーエリアは最大の 28,815 bytes になっています。
MSX0 Stack では CMT (カセットテープ) が使えないので、ユーザーエリアが増えても…🤔
Disk BIOS を無効にすると、結果的に AUTOEXEC.BAS
の実行をキャンセルする事ができます。ただ、ディスクを読めないので、あまり使い道はないかと思います。
・MSX-DOS と CP/M-80 の関係
MSX-DOS は CP/M-80 (v1.4) と高い互換性があります。
MSX-DOS のコマンドは MS-DOS に寄せてあるので、とても使いやすいです。以下に MSX-DOS の内部コマンドと、対応する CP/M-80 のコマンドを示します。
機能 | CP/M-80 | MSX-DOS |
---|---|---|
ファイル: リスト表示 | DIR | DIR |
ファイル: 削除 | ERA | DEL / ERA / ERASE |
ファイル: コピー | PIP (外部) | COPY |
ファイル: リネーム | REN | REN |
ファイル: メモリをセーブ | SAVE | |
ファイル: データの表示 | TYPE | TYPE |
日付/時刻: 日付表示/設定 | DATE | |
日付/時刻: 時刻表示/設定 | TIME | |
バッチファイル: 一時停止 | PAUSE | |
バッチファイル: コメント | REM | |
ディスク: フォーマット | FORMAT | |
ディスク: ベリファイ | VERIFY | |
バッチファイルの実行 | SUBMIT (外部) | |
BASIC 実行 | MBASIC など (外部) | BASIC |
画面の文字数変更 | MODE |
「コマンドが違うのに互換性?」と思われたかもしれませんが、実は CP/M-80 用の実行形式ファイル (*.COM) の多くは MSX-DOS 上でそのまま動作します。なので、MSX-DOS は「MS-DOS の操作性を備えた CP/M-80」 とも言えます。
CP/M-80 における外部コマンド (トランジェントコマンド) とは、実行形式ファイル (*.COM) 事です。実行形式ファイルなしで実行できるのが DIR のような内部コマンド (ビルトインコマンド) です。例えば CP/M-80 でファイルコピーをしたい場合には PIP.COM が必要となります。
みんな大好き Turbo Pascal とかね。
索引
- ■ メイン
- ■ ハードウェア
- ■ システムメニュー
- ■ Setup Utility
- ■ リモート接続
- ■ ソフトウェア