<< | 2018-9 | >> | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
2018-9-24
メガロムダンプ続き
うーん、よく分からんけど、安定したかな。
たまたまかもしれないけど。
ディーヴァはmd5一致した。
msxdump.zipは、arduinoのソースで、コンパイルして、arduino MEGA 2560互換に書き込みます。
arduinoのシリアルを起動して、ボーレートを115200に設定して下さい。
コマンドが実行出来ます。
dump2.py はpythonでシリアル接続して、コマンドを発行してダンプを行います。
python3とpyserialをインストールして下さい。
シリアルポートは直書きなので、ソースを修正して下さい。
>python dump2.py filename.rom
msxdump.zip(482)
dump2.py(489)
2018-9-15
メガロム続き
あら、まだダメそうだな。バンクの切り換え安定しないな。
もうちょっと調べないとダメか。
2018-9-14
メガロムダンプ続き
昨日上げたarduinoのソースは汚いし余計な処理が多そうなので、後で直すつもり。と思っても直したことはないけど。
とりあえず、asc8(DAIVA)でダンプ出来たっぽい。
バンクの切り換えが全然反応しなくって、クロックっぽい動作を入れてみたりとか。
3.5MHzのCLOCK入れないとダメなのかといろいろやってるうちに、
WAITにGNDつないでみたらバンク切り換えが反応した。理由は分からんけどとりあえず結果オーライ。
他のメガロムも試してみるかな。
配線はこんな感じ。
2018-9-13
メガロムダンプ続き
お、メガロムのダンプいけたかも?
いろいろ弄ってて、/WAITをGNDに落としたら、バンク切り換えられるようになったぽい?
それか、配線間違ってただけかも。
msxdump.ino(496)
2018-9-4
MSXロムダンプ続き
メガロムのダンプに苦戦中.... バンク切り換えが出来ないな〜
msxdump.ino(488)
2018-9-1
MSX ROMダンプ
arduinoで、ROMのダンプくらい簡単にできるんではないかと検索してみるとarduinoでアドレスのピンが足りない→アドレスデコーダチップ?で変換してみたいな感じだった。
ピンが足りないなら、多いやつ使えばそのままつなげるんじゃないかなと、arduino MEGA(の互換機)を買ってきたんだけど、スロットコネクタがないので接続が出来ず放置してた。
ふと、転がっていたピンヘッダに差し込んでみたら、ちょっと緩いけどぴったりだったので曲げてみたところ、良い感じに繋げられた。(曲げるのは糞面倒だったが)
ピンの先を外側に曲げてから、内側に曲げると良い感じに。
arduinoのプログラムとダンプしたテキストをバイナリに変換するpythonソースです。
今のところ、メガロムには対応してませんので、16KとかのROMならいけるかと思われます。
結線は出来ているので、後はプログラムでマッパの対応が出来れば良さそう。
msxdump.ino(487)
dump.py(503)
※結線図は後ほど。ただ写真で判るとおり、L字のピンヘッダをデジタルにぶっさしてるだけで、端の5Vと信号線をジャンパでつないでるだけです。
arduinoの開発ツールで書き込んだら、ツールからシリアルモニタを開いて、速度を115200bpsに設定します。
コマンドはこんな感じ
hでヘルプ sXXXXでスタートアドレスの設定(XXXXは16進4桁) lXXXXでダンプサイズの設定(XXXXは16進4桁) dでダンプ開始
ダンプしたテキストをテキストファイルに書き出して、pythonでバイナリに変換。
そのうちシリアルの受信自体をpythonで出来るようにすれば、手間が減るか。