MSX ROMダンプ
arduinoで、ROMのダンプくらい簡単にできるんではないかと検索してみるとarduinoでアドレスのピンが足りない→アドレスデコーダチップ?で変換してみたいな感じだった。
ピンが足りないなら、多いやつ使えばそのままつなげるんじゃないかなと、arduino MEGA(の互換機)を買ってきたんだけど、スロットコネクタがないので接続が出来ず放置してた。
ふと、転がっていたピンヘッダに差し込んでみたら、ちょっと緩いけどぴったりだったので曲げてみたところ、良い感じに繋げられた。(曲げるのは糞面倒だったが)
ピンの先を外側に曲げてから、内側に曲げると良い感じに。
arduinoのプログラムとダンプしたテキストをバイナリに変換するpythonソースです。
今のところ、メガロムには対応してませんので、16KとかのROMならいけるかと思われます。
結線は出来ているので、後はプログラムでマッパの対応が出来れば良さそう。
msxdump.ino(462)
dump.py(474)
※結線図は後ほど。ただ写真で判るとおり、L字のピンヘッダをデジタルにぶっさしてるだけで、端の5Vと信号線をジャンパでつないでるだけです。
arduinoの開発ツールで書き込んだら、ツールからシリアルモニタを開いて、速度を115200bpsに設定します。
コマンドはこんな感じ
hでヘルプ sXXXXでスタートアドレスの設定(XXXXは16進4桁) lXXXXでダンプサイズの設定(XXXXは16進4桁) dでダンプ開始
ダンプしたテキストをテキストファイルに書き出して、pythonでバイナリに変換。
そのうちシリアルの受信自体をpythonで出来るようにすれば、手間が減るか。