====== FreeDOS - DOS/V 化計画 ======
===== ゆうめいどころ : FreeDOS/V 2006.01 =====
* Web Archive になりますが : [[https://web.archive.org/web/20230531233901/http://dos.minashiro.net/freedosvd.html|FreeDOS/V 珠洲版]]
===== FreeDOS 1.4 (2025) のみでできる限り日本語なPC対応にもっていく =====
* 大前提 : MS-DOS 6.20 (PC-98版、DOS/V版) 相当の利用知識はもちあわせていること。
* 仕様
* FreeDOS 純正バイナリのみを使う
* 日本語106キーボードに対応する
* IDE/ATAPI接続のDVDドライブをよめる
* フォント操作はしない (ゆえに日本語は文字化けする) という制限事項な割り切り
* 組み立て環境 : Oracle VirtualBox 最新Ver。 動作確認は86Box も可。(VMwareをメインで用いないのは、DOS/V化すると墜落することがあるから)
* 構築先 : 作業用に500MB~2GB程度のvhd HDDイメージ、最終的には 1.44MB rawベタ ( .flp とかのベタなフロッピー形式) に収まるようにする
* FreeDOS 由来は \dos\ に、フリーウェア類の実行ファイルは \bin\ に、デバドラは \dev\ におさめる。
* システムファイルである KERNEL.SYS COMMAND.COM FDCONFIG.SYS FDAUTO.BAT はルートディレクトリに配置。
==== 事前準備 : HDD への FreeDOS 1.4 2025 のインストール ====
CDブートして、DOS Plain でHDDイメージに導入する。インストール時に言語は英語、キーボードはJapaneseを選んでおく。
C: から起動して、FDCONFIG.SYS を観察。(EDIT コマンドを使う)
keyb.exe と keyboard.sys のふたつがキモとわかるので、フロッピーイメージを準備 (FORMAT /S A: でシステムこみこみのフロッピーにする)
==== システム入りフロッピーにファイル追加などをする ====
DIR A: したら COMMAND.COM KERNEL.SYS の2つがある状態から。
=== エディタのコピー ===
エディタがないと困るのでフロッピーにコピーする。
C:\FREEDOS\BIN\> copy EDIT.* a:
=== 日本語キー対応 ===
C:\> cd \freedos\bin
C:\FREEDOS\BIN> copy keyb.exe a:
C:\FREEDOS\BIN> copy keyboard.sys a:
C:\FREEDOS\BIN> a:
A:\> edit autoexec.bat
autoexec.bat の中身
@echo off
lh a:\keyb.exe JP,932,a:\keyboard.sys
これでフロッピーからブートして検証。コロンとか @ とかといった英語・日本語キーボードで異なるキーを入力して日本語106キーが適用されていることを確認する。
=== DVDドライブ対応 ===
C:\FreeDOS\BIN\CDROM.BAT を EDIT で開いて観察。重要そうなワードを切り出す。
ERRORLEVEL 多発の行の寸前にある SHSUCDX コマンドが MSCDEX に相当するとわかる。
「DEVID FDCDX001」もメモしておく。Oracle VirtualBox の場合、UDVD2 を用いていることがわかるため、UDVD2もメモ対象に。
UDVD2 は devload を用いてロードしているため、devload コマンドもいる。
以上を反映させるため、 UDVD2.SYS SHSUCDX.COM DEVLOAD.COM の 3 ファイル (C:\FreeDOS\BIN 以下) を A: にコピー。
A:\AUTOEXEC.BAT を開き、末尾に追加。
devload /h A:\UDVD2.SYS /D:FDCDX001
lh shsucdx /QQ /~ /D:FDCDX001,X
以上でフロッピー起動を試みるが、XMS がないと常駐失敗する模様なので、メモリ関連も組み込む。
必要になるのは FDCONFIG.SYS から察するに、 HIMEMX.EXE JEMM386.EXE あたりなので、これをベースにファイルを C: からコピーし、 CONFIG.SYS を A:\ に作成。
lastdrive=z
buffers=20
files=40
dos=high
dos=umb
dosdata=umb
device=himemx.exe
device=jemm386.exe noems novme noinvplg
shellhigh=command.com a:\ /e:1024 /p=a:\autoexec.bat