MSX用ROMカートリッジリーダを作りました

以前作ったROMリーダを応用して、ROMカートリッジのリーダ&ライタを作ってみました。前回同様、I2C用のIOエキスパンダを使って、MSXカートリッジの信号線を制御することでカートリッジを分解せずともROMを読み出せるようになりました。

Read制御だけでなく、Write制御もできるようにしたため、メガロムのゲームも吸い出すことができます。

以前ブレッドボードで作ったROMリーダの記事はこちら

MSXカートリッジの信号線

MSXカートリッジの端子部分には50本の信号線が通っています。50本の信号線のアサインは以下のサイトに載っています。

これとZ80 CPUの信号線を見比べてみます。

電源など一部を除いた信号線をまとめたものが以下の表です。これをみると、Z80 CPUのほとんどの信号線がカートエッジコネクタに接続されていることがわかります。

Z80の信号線カードエッジコネクタ
A0-A15あり
D0-D7あり
/M1あり
/MREQあり
/IORQあり
/RDあり
/WRあり
/RFSHあり
/HALT
/WAITあり
/INTあり
/NMI
/BUSRQ
/BUSAK
/CLKあり
/RESETあり

カートエッジコネクタに出ていない Z80 信号線は、/NMI, /HALT, /BUSRQ, /BUSAK のみです。Z80で実現できることは MSX ではほとんどのものは実現できそうです。MSXの仕様策定当初から、ゲームができるだけでなく、HWの拡張性に重きをおいていたことが伺えます。

/BUSRQ, /BUSAK は Z80 からバスの制御権を取得する信号線ですが、これが使えないということはカートリッジ側からDMAでデータをメインRAMに転送するというような使い方はできないようです。バスの主導権はCPUが常に握っているということですね。

…続きを読む

FS-A1のBIOSをFlashに置き換えてみました

FlashとFlashライタが手に入ったので、試しにFS-A1のBIOS ROMをFlashに置き換えてみました。

FS-A1のBIOSは128kB (1MBit)のマスクROMが使われています。ちょうど都合よく同じ容量の SST39SF010A が誤って送られてきたので、このFlashに BIOS を複製して起動させてみようと思います。

ということで取り外すのは↓このマスクROMです。

裏側からハンダ吸引器で取り外し始めたのですが、FS-A1はスルーホール基板ではないので、吸引器を使うまでもなく、ハンダ吸い取り線でめちゃくちゃ簡単に取り外すことができました。スルーホールの取り外しの苦労を覚悟していたので拍子抜けでした。

↑こんな感じで簡単に取り外せました

取り外した部分には28PinのICソケットをはんだ付けしました。

これで差し替え自由になりました。

続いてFlashROM→MaskROMの変換アダプタを作成します。

Nemeae XGecu -T48 ユニバーサル プログラマー 16PIN 機能 ISP USB プログラマー
Nemeae
created by Rinker
Generic
¥1,404 (2024/10/30 09:12:46時点 Amazon調べ-詳細)
…続きを読む

AliExpressでMSX用の機材を色々買いました

MSXをいじり始めてたら色々と欲しくなったものがあり、AliExpressで色々買ってしまいました。

MSXは30年以上前のものなので、すでに改造に必要なIC等は生産終了になってるものも多く、日本では購入は難しいものが多いです。でもAliExpressではまだまだ売ってるんですよね。

検索するとMSX2+で使われたVDPのV9958なども販売してるんですね。FS-A1に搭載してBIOS書き換えればMSX2+にアップグレード? とか色々と妄想が膨らみます。

それでは買ったものを見てみましょう。

T48 (TL866II-3G) ROM/GALライター

まずは一番高かった、ROMライターの Haikou Xingong Electronics の XGecu T48 Universal Programmer です。各種ROMやGALなども書き込めます。

過去機種の TL866II Plus の方が有名ですが、上位機種のT56と共に発売されている現行機種となります。TL866II-3Gという名前でも呼ばれているようです。

↑明らかに写真の上下逆でしょ・・というパッケージ。細かいことは気にしないのかも知れません。

AliExpressで売っているところはたくさんあるのですが、コピー品は避けたかったので公式ショップで購入しました。

SOPやPLCCのアダプタがセットのものもありますが、私はアダプタ無しの一番安いやつを購入しました。使うのはDIPがメインだと思ったからです。

私が購入した時はセールをやっており、送料無料で 6,113円 でした。


Xgecu t48 [TL866-3G] Programmer

今後MSXのHWをいじる際に、パラレルFlashやGALの書き込みで使いたかったので、ネットで調べて比較的安価で実績豊富なこの商品にしました。

こちらの商品については別途レビューを書きたいと思います。

日本で公式のものを買いたい場合は aitendo さんでも購入できるようです。税込み11,550円でした。

Amazonでも検索するとたくさん出てきますね。

…続きを読む

MSXのゲームROMを読み出してみました

前回MSX用のROMカートリッジからROMを取り出しました。今回は取り出したROMからデータを読み出してエミュレータで起動させてみたいと思います。

前回の記事はこちら

ROMのピン配置

取り外したROMのピン配置をネットで探してみたところ、28Pin DIPの 1Mbit のメガロムについては大体以下のピン配置になっているようです。

似非RAMディスクの作り方のサイトにも載っていました。

1Mbit = 128KiB。217 = 128*1024 なので、アドレスバスは17本もあるんですね。データバス8本と制御線(/CS)も合わせると、26本ものGPIOが必要になります。

BASEBALLから取り外した128Kbit ROMも調べてみました。128Kbit〜1Mbit ROM を並べるとこんな感じです。

容量が倍に増えるとともにアドレス線が1本必要になるので、制御線や電源用のPinがアドレス線に侵略されていっているのが分かりますね。

…続きを読む

MSXのROMカセットを分解してみた

似非SCCや似非RAMディスクを作ったりするのには既存のROMカートリッジを改造する必要があります。

そこで元々持っていたカートリッジと今回ヤフオクで購入したカートリッジを分解してみました。

 

激突ペナントレース

まずは25年くらい前? に似非SCCを作りたくて買ったまま死蔵していた「激突ペナントレース」です。Konami製でSCC音源も搭載されています。

開けた後の爪の位置は以下の通りです。下側のカードエッジ側からこじあけました。

開け方は以下のXの投稿を参考にしました。複数の投稿で多くの写真を使って丁寧に説明されています。

開けた後に知ったのですがMSX界で有名なHRA!さんも開け方を公開してくださっていました。

シールの角を少しはがすと爪にアクセスできるようです。シールがキレイに剥がせそうならこちらのほうが良いかも。

…続きを読む