PHC-25 エミュレータ

はじめに
これは、Sanyo のパソコン PHC-25 をエミュレートするプログラムです。 Z80 CPU は EmuZ-2500 の武田さんが作成した CP/M Player for Win32 の物を使用、 そして、PSG は M88 の cisc さんが作成した fmgen08 を使用しました。

動作環境
動作機種 Windows98/2000/XP 以上の OS が正常に動作する機種
OS Windows98/2000/XP
フルスクリーンモードで動作させる場合は 320x240 の解像度に対応している必要があります。
サウンドを再生する場合は DirectSound に対応している必要があります。
ジョイスティックは 2P まで対応しています。

ダウンロード
日付 Version 実行ファイル ソースファイル 説明 変更点
2004.10.23 1.01 phc25emu101.zip phc25emu101_src.zip PHC-25 エミュレータ
・家庭用テレビのにじみに対応した。
・天丸さんのアイコンを使用した。
2004.06.14 1.00 phc25emu100.zip phc25emu100_src.zip PHC-25 エミュレータ 最初のバージョン
2004.04.10 1.00 p6_phc25.zip p6_phc25_src.zip P6 ファイルから ROM イメージを取り出す

ROM イメージファイルの作成
ROM イメージファイルを作成するには、PHC-25 本体、 それに対応したデータレコーダが必要です。 また、Windows パソコン側にライン端子を装備した サウンド機能が必要です。

(1) 準備
PHC-25 にデータレコーダとディスプレイを接続します。そして、カセットテープを 1 本用意します。

(2) PHC-25 に ROM をデータレコーダに書き出すプログラムを作成
PHC-25 電源を入れ SCREEN ? で 2 を押します。 そして、以下のプログラムを打ち込みます。
10 SCREEN 4,1,1:CLS
20 INPUT "BANK =";B
30 FOR I=0 TO 6*1024-1
40 POKE &H6000+I,PEEK(B*1024*6+I)
50 NEXT
60 SSAVE "ROM"+RIGHT$(STR$(B),1)
(3) 打ち込んだプログラムを実行
データレコーダにカセットをセットして録音状態にします。 カセットは指で回し黒い部分まであらかじめ進めておきます。 打ち込んだプログラムに間違いがない事を確認して RUN します。すると BANK 番号を聞いてきます。
0 は 0000h ~ 17FFh までを保存。
1 は 1800h ~ 2FFFh までを保存。
2 は 3000h ~ 47FFh までを保存。
3 は 4800h ~ 5FFFh までを保存。
ROM のアドレスは 0000h から 5FFFh までですので、 4 回に分けて保存する必要があります。

(4) 録音したテープから wav ファイルを作成
データレコーダーを Windows パソコンのライン端子に接続して (3) で作成したテープを wav ファイルに録音します。 Windows 標準のサウンドレコーダーでは約 1 分までしか 録音できないので、長時間録音できるソフトウェアを 用意する必要があります。作者は
ぽけっとれこーだーを使用しています。 44.1KHz モノラル 8 ビットフォーマットで録音するのが無難だと思います。 リモート端子が無い場合など各自、臨機応変に対応してください。 (3) で録音した BANK 0 ~ 3 の 4 つの wav ファイルを作成する事になります。 ファイル名は bank0.wav、bank1.wav、bank2.wav、bank3.wav としてください。

(5) wav ファイルから p6 ファイルを作成
wav ファイルから p6 ファイルを作成するためには PC-6001 用の テープイメージ作成プログラムを使用します。 こちらに P6DatRec が 公開されています。P6DatRec を起動するとデータレコーダの形をしたウインドウが 表示されるので、それに (4) で作成した wav ファイルをドラッグ & ドロップします。 すると、bank0.p6、bank1.p6、bank2.p6、bank3.p6 が作成されます。

(6) p6 ファイルからイメージファイルを作成
p6 ファイルからイメージファイルを作成するために p6_phc25.zip を使います。 これはコマンドプロンプトで動くプログラムですので まず、コマンドプロンプトを起動します。 そして、
>cd [p6 ファイルのあるフォルダ] [Enter]
を実行して、p6 ファイルのあるフォルダにカレントディレクトリを移動した後、
>p6_phc25 bank0.p6 bank0.bin [Enter]
>p6_phc25 bank1.p6 bank1.bin [Enter]
>p6_phc25 bank2.p6 bank2.bin [Enter]
>p6_phc25 bank3.p6 bank3.bin [Enter]
を実行します。 すると、bank0.bin、bank1.bin、bank2.bin、bank3.bin が作成されます。 p6 ファイルが異常な場合は動作が変になったりファイルが 作成されなかったりすることがあります。 その場合は (3) からやり直してください。 ファイルが作成された場合は、
>copy /b bank0.bin+bank1.bin+bank2.bin+bank3.bin phc25rom.bin[Enter]
を実行します。すると、phc25rom.bin が作成されるので、 phc25.exe と同じフォルダにコピーしてください。

(7) チェックサム
まず、下記のプログラムを PHC-25 実機で打ち込みます。 SCREEN ? は 1 でも 2 でも構いません。
10 FOR I=0 TO 11
20 S=0
30 FOR J=0 TO 2048-1
40 S=S+PEEK(I*2048+J)
50 NEXT
60 PRINT "block";I;"=";S
70 NEXT
打ち込んだプログラムに間違いがない事を確認して RUN します。すると block 0 ~ 11 のチェックサムが 表示されます。 そして、phc25.exe を実行すると report.txt というファイルが 作成され、それをメモ帳などで見ると (6) で作ったファイルの チェックサムが記録されています。 実機で表示したチェックサムと report.txt に記録されている チェックサムが同じならば正常です。 もし、チェックサムが違っている場合は (3) からやり直してください。 作者はチェックサムが合うまで 20 回以上繰り返して やっとの思いで ROM イメージを作成しました・・・。

以上で ROM のイメージ作成は終了です。
おつかれさまでした。

トップページに戻る