This web site is only compatible with Japanese text.
EIA-232C 経由でバックアップ
備忘録として作成した、ドリームキャストの GD-ROM のバックアップをシリアルポート経由で行う記事です。
今となっては、記事内で使用している各種プログラムを公開していたウェブサイトが消滅していて記事の使い道がありませんが、動画の変換方法などを記載しているのでそのまま掲載します。
この記事で紹介している各プログラムを使用する場合、次に挙げる条件を満たす必要が有ります。
- 使用する PC は、PC/AT 互換機である事。
- PC/AT 互換機上で動作するオペレーティングシステムは、Windows である事。
- PC/AT 互換機のマザーボードにシリアルポートが付いている事。
- ドリームキャストは MIL-CD 対応形である事。
GD-ROM のデータをバックアップする際の基本的な手順を次に示します。
GD-ROM のバックアップ |
順序 |
説明文 |
1 |
最初に、必要なプログラムをダウンロードします。
なお、使用するプログラムが「Serial upload slave」の場合は、Console/Emulator Programming 内に有る「DreamCast 吸出しの全て」を参照して下さい。
|
2 |
正常に動作するドリームキャスト本体や PC/AT 互換機を用意し、PC/AT 互換機では作業用に次のフォルダを作成します。
- C:¥dc-tool
作業用プログラムの置場
- C:¥image
GD-ROM からバックアップした .gz ファイルと解凍した ISO イメージの置場
- C:¥data
ISO イメージを分解したデータの置場
|
3 |
続いて、接続ケーブルの製作を行います。接続ケーブルはConsole/Emulator Programming 内に回路図が掲載されているので、それを元に製作します。
|
4 |
ケーブルを製作したら、dcload-serial を CD-R へ書き込みます。少なくとも、バージョン 1.03 ならばディスクイメージが有りますので、簡単に書込みが完了します。
高度な機能 ( 外部からドリームキャスト本体へクロック信号を入力して制御、など ) を行う場合は、ディスクイメージの作成から行う必要が有るかも知れません。
|
5 |
ハードウェアの準備と使用するプログラムを全てダウンロードして解答する所まで完了したら、TeraTerm を使用する準備を行います。
TeraTerm は次の様に設定します。
- ボーレート : 57600bps
- データ : 8bit
- パリティ : なし
- ストップ : 1bit
- フロー制御 : ハードウェア
- 送信改行コード : CR+LF
詳細な設定方法は TeraTerm のバージョンにより異なると思われますので、各自検索して下さい。
|
6 |
先ほど作成した CD-R をドリームキャスト本体へ入れて、電源を投入して下さい。画面上で
dcload 1.0.x idle...
と出たら、成功しています。 ( 「1.0.x」はバージョン番号です。 )
|
7 |
ドリームキャスト本体と PC/AT 互換機をケーブルにて接続して、コマンドプロンプトを起動してください。
コマンドプロンプトは Windows のバージョンにより開き方が異なる為、各自検索して下さい。
|
8 |
コマンドプロンプトの起動後、枠の中には次のように表示される筈です。
C:¥Windows>
|
9 |
次のように入力し、Enter キーを押下してください。
C:¥Windows>cd C:¥dc-tool
|
10 |
枠の中には次のように表示される筈です。
C:¥dc-tool>
|
11 |
続いて次のように入力し、Enter キーを押下してください。
コマンド入力時、接続ケーブルが PC/AT 互換機のどのシリアルポートへ接続しているのかによって、「COM1」部分の数字を変更 ( 例えば、「COM2」 ) する必要が有ります。
C:¥dc-tool>dc-tool.exe -t COM1 -b 115200 -x dreamrip.srec
|
12 |
Enter キーを押下した後、異常な結果を出さずに次のような表示が出れば成功しています。
C:¥dc-tool>dc-tool.exe -t COM1 -b 115200 -x dreamrip.srec
Console enabled
Changing speed to 115200 bps... done
Upload <dreamrip.srec>
File format is srec, start address is 0x8c010000
Section .sec1, lma 0x8c010000, size 65726
send_data: CCCCCCCCC
Section .sec2, lma 0x8c0200c0, size 5892
send_data: C
Section .sec3, lma 0x8c021844, size 6472
send_data: C
effective: 16942.937850 bytes / sec
Executing at <0x8c010000>
Sending execute command (0x8c010000, console=1)...executing
C:¥dc-tool>
異常な結果になる場合は、接続ケーブルそのものや端子の接続状態の確認などを行ってから、再度実行して下さい。
|
13 |
終わったらコマンドプロンプトを閉じて TeraTerm を起動し、接続先として「Serial」「COM1」を指定します。
接続しているシリアルポートによって、「COM1」部分の数字が変わるのは、先述した通りです。
|
14 |
TeraTerm 上で「ok」と入力するとトラック情報が出てくるので、保存先に C:¥image を指定し、「1k」と「binary」にチェックして保存してください。
この時、「first=3 last=3」の場合ならそのまま保存して良いですが、「first=3 last= ( 3 を超えた数値 ) 」なら、トラック情報やスタートセクターの数値は記録して下さい。後で必要になります。
|
15 |
これで後は、丸一日くらい放置してバックアップが完了するのを待ちます。
|
バックアップが完了したばかりのデータの拡張子を見ると「gz」になっていますが、これは UNIX 系のオペレーティングシステムで用いられている圧縮形式で、対応している解凍プログラムで解凍すると拡張子が「iso」のディスクイメージファイルが出てきます。
なお、解凍プログラムによっては破損しているという結果を吐き出す事も有りますが、その場合は別の解凍ソフトを試してみてください。解凍できることがあります。
拡張子が「iso」のディスクイメージを、各ファイルに分解する際の基本的な手順を次に示します。この項目で使用するプログラムは、GD-ROM のデータをバックアップする際にダウンロードしたプログラムを使用します。
データ分解 |
順序 |
説明文 |
1 |
次のように入力し、Enter キーを押下してください。
C:¥dc-tool>cd C:¥data
|
2 |
枠の中には次のように表示される筈です。
C:¥data>
|
3 |
続いて次のように入力し、Enter キーを押下してください。
C:¥data>C:¥dc-tool¥extract C:¥image¥track03.iso
- 「first=3 last= ( 3 を超えた数値 ) 」の場合
C:¥data>C:¥dc-tool¥extract C:¥image¥track03.iso C:¥image¥track¥ ( 3 を超えた数値 ) .iso ( セクターの数値 )
|
これで、data フォルダに拡張子が「iso」のディスクイメージを分解したデータが出来上がったと思います。
分解したデータには、BGM や動画、画像データが格納されています。ドリームキャスト専用のファイル形式になっていますが、一般的なファイル形式へ変換 ( 上手く変換できない場合も有る ) する事で再生する事が可能です。変換する際の基本的な手順を次に示します。
この項目で使用するプログラムは、GD-ROM のデータをバックアップする際にダウンロードしたプログラムに加え、以下のプログラムを使用します。
MP2 へ変換できれば必ずしも tooLAME でなくても問題ありません。sfd2mpg が標準的に用いる外部エンコーダが tooLAME というだけの理由で紹介しています。
但し、GD-ROM に収録されているデータによっては、別のエンコーダを用いないと正常に変換できません。sfd2mpg の説明書内でも紹介されている CH3's homepage の DOWNLOAD ページから、「smxwin151.zip」をダウンロードした方が良いかもしれません。
データ変換の手順 |
順序 |
説明文 |
1 |
分解したデータの中に「track ( 数字 ) .raw」のファイルが有る場合、これは音楽トラックデータになります。
次のように入力し、Enter キーを押下してください。
C:¥dc-tool¥raw2wav.exe C:¥data¥track ( 数字 ) .raw
これで、data フォルダ内に拡張子が「wav」のデータが出来上がったと思います。
|
2 |
分解したデータの中に拡張子が「adx」のデータが有る場合、これは BGM データになります。
次のように入力し、Enter キーを押下してください。
C:¥dc-tool¥adx2wav.exe C:¥data¥ ( BGM ファイルの名前 ) .adx
これで、data フォルダ内に拡張子が「wav」のデータが出来上がったと思います。
拡張子が「afs」のデータが有る場合、内部に拡張子が「adx」のデータが格納されている事が有り、その場合は次のコマンドで必要なデータを取り出せる事が有ります。
C:¥dc-tool¥afs_extract.exe C:¥data¥ ( ファイルの名前 ) .afs
分解して出てきたファイルが「adx」ではない場合、そのファイルは BGM 用のデータでは有りません。
|
3 |
分解したデータの中に拡張子が「sfd」のデータが有る場合、これは動画データになります。
次のように入力し、Enter キーを押下してください。
C:¥dc-tool¥sfd2mpg.exe -c toolame32 -b ( ビットレートの数字 ) C:¥data¥ ( 動画ファイルの名前 ) .sfd
これで、data フォルダ内に MPEG-1 Audio Layer II 形式のデータが出来上がったと思います。エンコード時の数値を調整すれば、昔懐かしい VideoCD と同一の規格に出来ます。
|
4 |
分解したデータの中に拡張子が「pvr」のデータが有る場合、これは画像データになります。
次のように入力し、Enter キーを押下してください。
C:¥dc-tool¥pvr2bmp.exe C:¥data¥ ( 画像ファイルの名前 ) .pvr
これで、data フォルダ内に拡張子が「bmp」のデータが出来上がったと思います。
|
データを変換した後は、大抵の動画再生ソフトや画像閲覧ソフトなどで扱う事が出来ます。
GD-ROM をバックアップする際、令和六年 ( 2024 年 ) 現在だと GD EMU ( GD-ROM ドライブを仮想ドライブ化するキット ) を用いる事の方が多いと思われ余り需要は無い気もしますが、作業手順は残しておきます。
この項目では、以下のプログラムを使用します。
大元は Get Induced! で公開されていた様なのですが、既にファイルが失われています。
自動起動 ( セルフブート ) 化 |
順序 |
説明文 |
1 |
まずは Sbinducr.exe をダウンロードして解凍します。解凍先のフォルダは C:¥Sbinducr とします。
|
2 |
解凍後、Inducer フォルダ内にあるファイルを全て削除します。
|
3 |
Inducer フォルダへ、セルフブート化したい GD-ROM のデータ一式を入れます。
|
4 |
Sbinducr.exe を実行してディスクイメージを生成します。NERO 形式または Disc Juggler 形式のどちらでも選択可能です。
ディスクイメージは C:¥Sbinducr に出来上がります。
|
ドリームキャスト本体内部の BIOS や Flash ROM をバックアップしたい場合、GD-ROM をバックアップする手順のうち、dreamrip.srec を送信する直前まで同一の手順で進めます。
準備が整ったら次のように入力し、Enter キーを押下してください。
C:¥dc-tool>dc-tool.exe -t COM1 -b 115200 -d dc_bios.bin -a 0x000000 -s 0x200000
C:¥dc-tool>dc-tool.exe -t COM1 -b 115200 -d dc_flash.bin -a 0x200000 -s 0x20000
参考文献
|