2017 04123456789101112131415161718192021222324252627282930312017 06












PC-6001カートリッジ吸い出し基板(Kazzo & ROMライタ用) 

現状PC-6001のROMカートリッジを吸い出す方法が無かったので、カートリッジを分解せずに吸い出せるようにkazzo(ファミコン吸い出し機)やTL866CS(ROMライタ)で吸い出せる基板を作成しました。

※ROMライタで吸い出すためのピンヘッダは取り付けない状態(半完成品)でお送りします。
ROMライタで吸い出す場合は、ピンヘッダを取り付けてください。
基板のシルクに電解コンデンサのマークがありますが、今回は必要ありません。
取り付けた場合はROMライタで吸い出すことが出来なくなります(ROMがショートしていると判断される)


P6-FC01.jpg 
ファミコンのようなバンク切り替えはありませんので吸い出すことは簡単です。
PC-6001用のカートリッジは最小で4kB、最大でも16KBの容量になります。
カートリッジを分解して見たところ、4KBROMが4個の基板であったり8KBROMが2個の基板があったり。
P6-FC06.jpg    P6-FC05.jpg 

エッジコネクタからのCS2とCS3でカートリッジ内の8KBのROMを切り換えているようなので、この部分を基板上のROM SELECT(ROMSW)で切り替えてROMライタで8KBずつ吸い出します。
その時のROMライタのデバイス設定は 27C64 としています。
Kazzoであればマッパー0(バンク切り替え無し)で8KBずつ吸い出して、不要な部分はバイナリカットします。
P6-FC04.jpg    P6-FC03.jpg 

ROMライタの場合はROMSW-2に切り換えて吸い出したバイナリがすべてFFだった場合はROMが無いということになり、そのカートリッジは8KB(4KB)と判断できます。
データがあった場合は、バイナリエディタ等でSW-1とSW-2で吸い出したバイナリを結合し16KBとしてください。

P6-FC02.jpg 
Kazzoの場合はNESヘッダや余計なバイナリが含まれますので、手順がちょっと変わります。
ROMSW-2に切り換えて吸い出したときに error: data is all 0xff と表示されれば、そのカートリッジは8KB(4KB)と判断します。

Kazzo用のPC-6001カートリッジ吸い出しスクリプトです → PC-6001.af 
(ダウンロード後 に拡張子の txt を af に変更してください)

吸い出したバイナリデータは不要な部分が含まれるので、下記のApolloさんのサイトからソフトをダウンロードします。
Apollo's XM7お手伝いぺ~じ
バイナリファイルの必要な部分だけを切り出すツール BINCUT

後は使用方法に従って下記のようなバッチファイルを作成します。
8KBであれば 例:
bincut p6_00.nes P6ROM_8kB.rom  10 200f

16KBであれば 例:
bincut p6_00.nes P6_00.rom  10 200f
bincut p6_01.nes P6_01.rom  10 200f
copy /B P6_00.rom+P6_01.rom P6ROM_16kB.rom

とすれば不要なバイナリをカットすることが出来ます。
吸い出した後はエミュレータやSD6031WIF等に書き込んで実機等で動作確認してみてください。

関連記事
ACR WEB ブログランキング参加してます

コメントの投稿














管理者にだけ表示を許可する

トラックバック

この記事のトラックバックURL
http://bakutendo.blog87.fc2.com/tb.php/299-36f05fc6