ROMイメージの抜き出し…3
'03.11.22:作成
TransROMを用いて、ROMイメージを抜き出すことに成功し、PC-8801mkIISRをエミュ
レータで起動することに成功しましたが、これでは、単にROM BASICが起動
するのみです。
次は、5インチフロッピーディスクに入っているソフトからディスクイメージを
作成して、実際にエミュレータで動かしてみたい。
5インチフロッピーのソフトからディスクイメージを作成するには、TransDisk
(xdisk2.07)やXDISKWIN2を使用すれば良いのですが、
前回それらを使って、ROMイメージの抜き出し作
業に失敗しており、おそらく、ディスクイメージの作成も失敗するでしょう。
そこで、再度、
googleで検索をかけて調べてみました。
そうすると、ありました。同じ症状に関する情報が…
M88やTransdiskの作者
cisc.さんのペー
ジの過去ログ(投稿日:22 Jan 2002 05:45:38 旅人さんの投稿)
これによると、古いモデルでは、ポート6Fhからの読み出しがうまくいかないみ
たいとのことで、それの対処が書いてありました。
手順としては、転送用プログラムを88側で実行して一度88のメモリに読み込ませ
た後、機械語モニタモードからそれを編集して再度実行するというもの
これを読んだ時、昔、マニュアルを読みながら、機械語モニタモードを起動した
ことを思いだしました。16進数が並んでいて、コンピュータ内部を見ている様な
気がしたものです。さっぱりわからんかったけど
88のユーザーズガイドを引っ張り出して、機械語モニタモードの操作を確認して
おきました。
Transdisk(xdsik2.07)を用いた手順
※最初の手順は、ROMイメージの抜き出し…1
の「手順」1〜5と同じです。その続きから書きます。
-
TransDisk/88 2.07
Copyeright (C) 2000 cisc.
Push [STOP] key to terminate.
|
|
←88の画面 |
この画面で、SOTPキー(88のキーボード)を押し、TransDisk/88 2.07を停
止します。
- 機械語モニタモードに切替えます。
88側で、monと入力し、リターンを押します。すると、h]が表示され機械語モニ
タモードに切り替わります。
TransDisk/88 2.07
Copyeright (C) 2000 cisc.
Push [STOP] key to terminate.
OK
mon
h]
|
|
←88の画面 |
- アドレスC068〜C06Aを「00」に、アドレスC06Fを「07」(19200bpsの場合は、
「08」)に書き換える。
機械語モニタモードで、「E」がスクリーンエディタを用いた編集コマンドです
ので、ec068と入力し、リターンを押します。(アドレスC068をスクリーンエディ
タで開くってこと)(コマンドは、大文字でも小文字でも可)
TransDisk/88 2.07
Copyeright (C) 2000 cisc.
Push [STOP] key to terminate.
OK
mon
h]ec068
|
|
←88の画面 |
- メモリーの内容が画面に表示されます。
簡単に説明すると、機械語は、16進数モード(最初は、16進数モードになってい
る)の場合、
- アドレス:4桁(0000〜FFFF)
- メモリ内容:2桁(00〜FF)
となっていて、eコマンドで表示した画面では、一番左の列がアドレスを示し、
その右に、メモリー内容が、16個横に並んでいます。
つまり、C060の行について見ると、アドレスC060のメモリはF3、アドレスC061は、
C9という様に、アドレスの順に右へメモリの内容が並んでいます。最後のC06Fの
メモリは、FFとなります。
ec068を実行すると、アドレスC068のメモリである。32の位置にカーソルがある状態で
下記の画面が表示されます。
C060 |
F3 |
C9 |
ED |
73 |
74 |
C0 |
DB |
6F |
32 |
6F |
C0 |
CD |
19 |
B8 |
3E |
FF |
C070 |
CD |
56 |
B6 |
31 |
E5 |
B3 |
21 |
73 |
C0 |
E5 |
CD |
E5 |
B6 |
FE |
21 |
28 |
C080 |
4E |
FE |
2A |
28 |
18 |
FE |
2B |
20 |
F1 |
CD |
8C |
C4 |
24 |
32 |
53 |
49 |
C090 |
4F |
20 |
45 |
72 |
72 |
6F |
72 |
24 |
37 |
0D |
0A |
00 |
C9 |
CD |
8C |
C4 |
〜以下略〜 |
|
|
←88の画面 |
アドレスC068〜C06Aを「00」に、C06Fを「07」に書き換えます。
以下の赤文字が書き換えた箇所。
書き換え後は、STOPキーまたは、ESCキーを押すとエディターが終了します。
C060 |
F3 |
C9 |
ED |
73 |
74 |
C0 |
DB |
6F |
00 |
00 |
00 |
CD |
19 |
B8 |
3E |
07 |
C070 |
CD |
56 |
B6 |
31 |
E5 |
B3 |
21 |
73 |
C0 |
E5 |
CD |
E5 |
B6 |
FE |
21 |
28 |
C080 |
4E |
FE |
2A |
28 |
18 |
FE |
2B |
20 |
F1 |
CD |
8C |
C4 |
24 |
32 |
53 |
49 |
C090 |
4F |
20 |
45 |
72 |
72 |
6F |
72 |
24 |
37 |
0D |
0A |
00 |
C9 |
CD |
8C |
C4 |
〜以下略〜 |
|
|
←88の画面 |
機械語モニタモードからBASICモードへ戻します。
ctrl+bキーを押します。
A=USR(0)と入力し、リターンを押します。
TransDisk/88 2.07が起動されます。
この先は、xdis2.txtに書いてある通りやれば、いいのですが
PC/AT側のDOSプロンプトでxdisk2 s -p1 -9を実行して、ROMイメージを抜
き出します。
C:\Xdisk>xdisk2 s -p1 -9
TransDisk 2.07
Copyright (C) 2000 cisc.
通信ポート 1, 9600 bps で接続します.
ROM データを受信中 (57/58)
終了しました。
|
|
←PC/AT側のDOSプロンプト画面 |
Connected to host system.
Sending ROM #
89.
Completed.
|
|
←88の画面 |
無事、TransDiskを用いて、ROMイメージを吸い出すこと
に成功しました。

