PC DOS 7.0 を CF カードへ移行してみました

私が入手した時、ThinkPad 360CE のハードディスクの中に IBM PC DOS 7.0 がインストールされていました。PC DOS の使用経験がない私にとって、興味があったので、少し操作して遊んでいました。
しかし以前の記事のとおり、ThinkPad 360CE のハードディスク(IBM DHAA-2405 , 344MB)は、騒音と動作障害( DriveFitnessTest で障害を確認)のため、CF カードに置き換えていました。前述の記事では、CF カードには新規に MS-DOS 6.2 をインストールしていましたが、この記事では、ハードディスクの中の PC DOS 7.0 を CF カードへインストールしてみることとしました。

すでにハードディスク・パックから取り出しているハードディスクを、いつもハードディスクのメンテナンスで使用しているデスクトップ・パソコンへ接続して、データをイメージコピーすることとしました。

ThinkPad 360CE のハードディスクからイメージデータを吸い出しているところです。

ハードディスクは 344MB のため、CF カードは 512 MB のものを用意しました。PartedMagic 上で dd コマンドでハードディスクから CF カードへコピーを行いました。ハードディスクの読み出し速度が遅いのか?、CF カード書き込み速度が遅いのか不明ですが、たった 344 MB のデータのコピーなのにやたらと時間が掛かっていました。

メンテナンス用のマシンに用意してあるメモリカード・スロットでコピーしました。

イメージコピーが終了した CF カードを PCMCIA アダプタ経由で ThinkPad 360CE へ装着して起動させてみました。

すると起動途中で「 Missing operating system 」の表示を掲示して停止してしまいました。

MS-DOS などでもこのようなことは、よく発生しています。ブートローダが DOS パーティションを見つけられなかったり、システムファイルを発見できないときに発生してしまいます。DOS の FDISK コマンドに何かの細工があるようで、MBR か PBR に問題が発生するようです。

そこでハードディスクを ThinkPad 360CE へ戻して、起動フロッピーディスクを作成してシステムの修復を行うこととしました。

起動フロッピーの作り方
c:\> FORMAT /S A:

PC DOS 7.0 用に起動フロッピーディスクを作って作業を行いました。

システム修復で必要となるコマンドもコピーしておきます。以下が必要なものです。

FDISK.COM
FDISKUS.COM
SYS.COM
FORMAT.COM
XCOPY.EXE

ハードディスクを ThinkPad 360CE から抜き去って、再度 CF カードをハードディスクの IDE コネクタへアダプタ経由で接続します。そして起動フロッピーディスクで ThinkPad 360CE を起動させます。そして FDISK を使って、マスターブートレコードの修復から行ってみます。

A:\> FDISK /MBR

イメージコピーをした 512 MB の CF カードです。

上記のコマンド実行後、フロッピーディスクを抜き去り、CF カードから起動させてみます。しかし「 Missing operating system 」で再度停止してしまいました。

次の手段はシステムファイルの修復を SYS コマンドを行ってみました。

A:\> SYS C:

transfered と表示が出て、システムファイルの修復が完了したところで、再度 CF カードから起動させてみました。しかし今回も「 Missing operating system 」で再度停止してしまいました。MS-DOS では SYS コマンドで修復出来ることが多いだけに残念な結果となってしまいました。

この他、CF ブートさせるために、Puppy Linux などにあるブートローダの GRUB4DOS を使って CF カードからの起動を試みましたが、残念ながら起動させることができませんでした。

ここで万策尽きた感じとなってしまいました。

ここでイメージコピーで移行するのではなく、ファイルコピーで移行する方法へ切り替えることとしました。

方法としては、すでに作ってある PC DOS 7.0 の起動フロッピーディスクで ThinkPad 360CE を起動させた後、ハードディスクのところへ装着している CF カードを再度 PC DOS 7.0 の FDISK コマンドで領域を消去して、再度確保しなおします。そしてシステム・フォーマットをし直して CF カードを起動ディスクにしました。

A:\> FDISK
A:\> FORMAT /S C:

CF カードから起動させると、確かに ThinkPad 360CE は起動させることができましたが、システムファイルしか存在しない状態となっています。この起動することが出来る状態の CF カードへ PC DOS 7.0 の各種ソフトウェアや設定データなどを元のハードディスクからファイルコピーをすることとしました。

このコピーのために別途 CF カードを用意して、元のハードディスクの中からすべてのファイルをそのままのツリーのままコピーしました。データ移行用の CF カードを ThinkPad 360CE へアダプタ経由で取り付けて、PC DOS 7.0 の起動フロッピーディスクから起動させました。

データ移動用に使用したのは東芝の 2GB の PCMCIA ハードディスクです。
全域を使用せず、前方の 344MB だけを FAT16 でフォーマットしています。

起動が完了したところで XCOPY を使ってファイルコピーを行いました。PCMCIA スロットに差し込んだ CF カードは C: ドライブで、ハードディスクに接続した CF カードは D: ドライブとなっているので、コピー元とコピー先のドライブ名には注意が必要です。

A:\> XCOPY C:\*.* D:\ /E
オプションの /E はサブ/ディレクトリも含めてすべてコピーをする意味です。

この XCOPY コマンドで順調にコピーが開始されました。大量のコピーが完了したところで、フロッピーディスクと PCMCIA カードを抜き去り、恐る恐る再起動させてみました。

無事 ThinkPad 360CE は PC DOS 7.0 で起動することができました。

CF カードで起動させることができた ThinkPad 360CE です。

DOS 時代の古いパソコンでは、ハードディスクの劣化も進んでいるため、新しいハードディスクなどへデータの移行が必要なことが増えていると思われます。今回の私の経験がお役に立てばと思っています。

ThinkPad 360CE を PCMCIA カードで起動

先日、ハードディスクから CF カードに置き換えた ThinkPad 360CE ですが、その後いろいろ調べてみると、PCMCIA カードからの起動に対応していることが判明したため、実際に PCMCIA カードから起動させてみました。

PCMCIA カードで起動させた ThinkPad 360CE です。

すでに CF カードの中に MS-DOS 6.2 をインストールしてある状態のため、この CF カードを PCMCIA 変換アダプタへ装着して、ThinkPad 360CE のカードスロットへ差し込んでみました。

MS-DOS 6.2 をインストールした CF カード
PCMCIA アダプタ経由で ThinkPad 360CE へ装着しました。

電源を投入して起動させるときに「F1」キーを押して(ビープ音が鳴るまで押しつづけます)、BIOS 画面(Easy Setup)に入って、「Start up」のページで起動させるドライブの順序を指定しておきます。

BIOS 画面の Easy Setup です。

私の事例では一番目にフロッピーディスク、二番目に PCMCIA カード、三番目にハードディスクに設定しました。この状態で設定を終了して再起動させると、PCMCIA カードからの起動が可能となります。

Start up のページで起動ドライブの順序を設定します。

PCMCIA カードからの起動が完了してドライブの状態を調べてみると C: ドライブとなっていました。なおハードディスクを装着していると、ハードディスクが D: ドライブへ変更となっていました。

PCMCIA カードから起動させた MS-DOS 6.2 です。

普通に PCMCIA カードがハードディスクと同様に読み書きをすることができました。もしかして、わざわざハードディスクを CF カードに置き換える必要はなかったのではないかと思われました。

しかし PCMCIA カードから起動している状態でネットワークを使用したいと思って、有線 LAN アダプタのダイレクト・イネーブラーを起動させた瞬間、PCMCIA カードが切り離されてしまって、システムが停止してしまいました(涙)。 カードスロットへ何かを差し込んで使用する場合には、やはりハードディスクの IDE 接続で CF カードを使用する必要がありました。

[ その他 ]
フロッピーディスクから起動したときにも PCMCIA カードを認識してくれるようで、PCMCIA カードが C: ドライブ、ハードディスクが D: ドライブとなっていました。フロッピーディスク起動でハードディスクの中身をそっくり移行させる場合などに使用出来そうです。

XFDOS 2.0 を使ってみました。ThinkPad 240 編

古いパソコンを愛用している人にはちょっとした話題だった? XFDOS 2.0 を ThinkPad 240 で使ってみました。この XFDOS が将来十分に使える領域に達したときには、遅いプロセッサ や 小さな容量のメモリ のマシンでも(趣味の範囲内において)使うことが出来るのではないかとの期待が持てます。

紹介記事はこちら

マイナビニュース 2013-04-27
DOSでWindows風UI、XFDOS 2.0登場
http://news.mynavi.jp/news/2013/04/27/038/index.html

マイナビニュース 2013-05-02
FreeDOSでGUI環境を享受する「XFDOS 2.0」
http://news.mynavi.jp/articles/2013/05/02/xfdos/index.html

XFDOS 2.0 が稼働している ThinkPad 240 です。

上記の紹介記事がネットニュースで流れて以来、ライブ CD 版の XFDOS 2.0 をちょこちょこと使っていました。比較的高速なマシンでもカーソルがカクカクと断続的に動くなど、まだまだ基本的な部分の完成度はよくないようです。そして一番使いたい DOS 版のウェブブラウザ Dello が日本語に対応しておらず、日本語のページを表示するといわゆる豆腐のようなフォントマークが羅列されてしまう状況でした。ライブ CD 版では、これらの文字化けに対応することもままならないため、ハードディスクへインストールして、いろいろと調整を行いたいと思っていました。

さらに CD ドライブからのブートが出来ない古い ThinkPad ではライブ CD 版の XFDOS 2.0 の動作を確認することすら出来ませんでした。しかも ThinkPad 365 や ThinkPad 380 のように CD ドライブを内臓している機種でもスペック不足なのか?ブート時にシステムエラーで停止してしまいます。古い ThinkPad でこそ使ってみたい XFDOS 2.0 なのですが、使えないジレンマに陥っていました。

そこで先日 FreeDOS 1.0 をインストールした ThinkPad 240 のハードディスクへ XFDOS 2.0 をインストールを実施して、とりあえず動作確認をしてみました。

[ インストール ]
ハードディスクへインストールする方法は、ハードディスク・インストール用のファイル(xfdos20h.zip)をダウンロードして、ZIP 圧縮されているファイルを解凍した後、出来上がったファイル(ディレクトリ)をハードディスクのトップ・ディレクトリへコピーするだけです。
ダウンロードサイト

nanox-microwindows-nxlib-fltk-for-dos
http://code.google.com/p/nanox-microwindows-nxlib-fltk-for-dos/downloads/list
xfdos20h.zip – XFDOS 2.0 hard disk version – ZIP archive

インストール

xfdos20h.zip を解凍したものをコピーする
C:\DESKAPPS\
C:\DESKTOP\
C:\USR\

[ 起動方法 ]
起動方法は DESKTOP ディレクトリの中にある APPSTART.BAT を実行するだけです。各アプリケーション・ソフトウェアは、なぜか動作しないものや、一度エラーを発生した後、二度目から起動するものなどがありました。まだまだ完成度は低いようです。

C:\DESKTOP\APPSTART.BAT

[ ネットワーク & パケット・ドライバ ]
ネットワークへの対応は、マシン自体にオンボードでネットワーク・アダプタが装着されていたり、PCI または ISA バス・ソケットへネットワーク・アダプタを取り付けたものであれば、XFDOS 2.0 に備わっているパケット・ドライバで動作する可能性が高いです。

左下の「START」ボタンの「Settings…」>「Internet Connection」>「Load packet driver」で自動的にネットワーク・アダプタの検出をしてくれます。実際には検出した結果から自分でパケット・ドライバの一覧から選択するようになります。

しかし ThinkPad 240 のようにオンボードでネットワーク・アダプタが装備されておらず、 PC カードでネットワーク・アダプタを取り付けるものについては、ネットワーク・アダプタのメーカーが提供している DOS 用のパケット・ドライバを使用することとなります。

私の場合には、プラネックスの FNW3600TX を使用して動作確認を行いました。メーカーのウェブサイトから DOS 用のパケット・ドライバをダウンロードして、指定通りの設定で問題ありませんでした。

メーカー純正のパケット・ドライバで対応できました。

[ ウェブブラウザ Dillodos ]
次にウェブブラウザの Dillo を起動させます。デスクトップの Dillo のアイコンをクリックすると起動を開始します。起動すると ThinkPad 240 の画面サイズ 800 x 600 よりも大きな 1024 x 768 で起動しました。画面の大きさの設定は Dillo の起動ファイル(dillo.bat)で設定するようになっていました。

C:\DESKAPPS\DILLODOS\DILLO.BAT
の中の
set NANOSCR=1024 768 565
       ↓
set NANOSCR=800 600 565

そして Dillo のネットワーク設定は WATTCP.CFG で行いました。

C:\DESKAPPS\DILLODOS\BIN\WATTCP.CFG

初期値では DHCP を使ってネットワーク設定をするようになっています。我が家では何故か DNS サーバーの設定が上手くゆかないようで、名前の解決が出来ない状況となっていました。そこで固定 IP の設定に切り替えてネットワークの接続が安定的に行えるようになりました。

Dillo の初期値の大きさは 1024×768 です。

この写真は Yahoo! Japan のトップページへアクセスしたところです。画像部分はちゃんと表示されていますが、テキスト文字の部分は縦長の長方形のいわゆる豆腐が並んだ状態となっています。Dillo のフォントは TTF フォントを使用するようなので、今後フォントまわりの調整を行ってみたいと思っています。

Yahoo!Japan のトップ・ページへアクセスしたところです。

Panasonic KXL-830AN でインストールしてみました

昨日入手した ThinkPad 240 におまけとして付いてきたパナソニック製の PCMCIA 接続の CD-ROM ドライブ KXL-830AN を使ってシステムのインストール作業を行ってみました。

インストールを行ったマシンは ThinkPad 240 ( 2609-43J ) です。インストールしたのは FreeDOS 1.0 です。ちゃんと PCMCIA 接続の CD-ROM ドライブでもインストールが出来ることを確認しました。しかし完了するまで結構な試行錯誤があり大変でした(笑)。

もともとは Puppy Linux を起動させるつもりだったのですが、フロッピーディスクの DOS ブートで呼び出した KXL-830AN のドライバーなどが、最初に読み込まれる vmlinuz のミニ・カーネルへ制御が移管されると KXL-830AN を見失ってしまいます。そのため起動を途中で停止してしまいます。古い Vine Linux や Turbo Linux では、この KXL-830AN に対応していたらしいのですが、最近の各 Linux ディストリビューションではもう対応していない模様です。この KXL-830AN を使って CD-ROM から Linux を起動させるのは大変難しいものと思われます。
可能性があるとすれば、CD-ROM  の内容をハードディスクの予備領域へコピーしたあと、別途予備領域へコピーした CD-ROM の内容の中からインストーラーを起動させる方法しかないようです。

[ FreeDOS の起動フロッピー ]

まずは起動フロッピーの作成です。
パナソニックの公式ウェブサイトの KXL-830AN のページから「起動ディスク作成ツール(ATAPI PC Cardドライブ用)」のツールソフトウェア(F2H_ATAPI.EXE)をダウンロードしてきます。これを Windows マシン上で解凍をすると新しく「F2H」というディレクトリ(ファイルフォルダ)が作られます。この中にある次の三つのファイルを新しくフロッピーディスクへコピーしておきます。

起動ディスク作成ツール(ATAPI PC Cardドライブ用)
http://panasonic.jp/com/support/drive/other/f2h_atapi.html

ATAS365.SYS PCMCIAカードイネーブラ
ATASMGR.SYS カードマネージャー用
KMESATCD.SYS デバイスドライバ

次に FreeDOS の公式ウェブサイトから FreeDOS のブート用フロッピーディスク・イメージ(fdboot.img)をダウンロードしてきます。

FreeDOS 1.0 Floppy
http://www.freedos.org/download/

ダウンロードしてきたフロッピーディスク・イメージ(fdboot.img)を Linux マシン上の dd コマンドでブート用に用意した 2HD フロッピーディスクへ書き込みます。

dd if=fdboot.img of=/dev/fd0

出来上がった起動フロッピーディスクへ先ほど抜き出した KXL-830AN の3種類のドライバ類をコピーします。なおコピーするディレクトリは A:\DRIVER\ となります。

次に KXL-830AN のドライバー類をフロッピーブート時に読み込ませるように FDCONFIG.SYS を編集します。

編集した場所は一行追加と一行修正でした。

★28行目へ追加
345?!DEVICE=A:\DRIVER\ATAS365.SYS /port=190 /mem=D000

★29行目を修正
345?!DEVICEHIGH=A:\DRIVER\XCDROM.SYS /D:FDCD0000
            ↓
345?!DEVICE=A:\DRIVER\KMESATCD.SYS /D:FDCD0000

以上で FreeDOS の起動フロッピーディスクの準備ができました。

[ FreeDOS のインストール ]

いよいよ FreeDOS のインストールを行ってみます。
KXL-830AN の PCMCIA コネクタをマシンの PC カードソケットへ挿入します。 KXL-830AN の電源は、マシン本体から PCMCIA カードを通じて供給されるようになっています。そのため外部電源の用意は必要ありません。

フロッピーディスク・ドライブへ FreeDOS 起動ディスクを挿入して、マシンの電源を投入します。すると自動的にドライバー類を読み込んで KXL-830AN も稼働状態で起動してきます。起動画面では五つの選択肢が提示されていますが、一番安全な動作をする「5」を選択します。

起動完了直後にはドライブはフロッピーディスク・ドライブの A: となっています。そこで CD-ROM ドライブの X: へ切り替えます。

A:> X:
X:>

そして CD-ROM ドライブ内を DIR コマンドを使って確認してみてください。

X:> DIR

すると CD-ROM ドライブの内容が表示されるはずです。

ここで CD-ROM ドライブ内にある SETUP.BAT コマンドでインストールを実施します。

X:> SETUP.BAT

後は、表示される問い合わせに応じて回答する形でインストールが行われます。インストールするソフトウェアも途中で何度も問い合わせがあるため、最初から最後までマシンの前で作業をすることとなります。

なお私がインストールを行った時には、SETUP.BAT のインストール作業の途中で提示されるパーティショニングの FDISK コマンドが上手く動作してくれませんでした。そのため、インストールを中断して、単独に FreeDOS の FDISK コマンドでハードディスクの領域を確保した後に SETUP.BAT によるインストールを実施しました。これで最後までインストールを完了することができました。