ユーザーブロマガは2021年10月7日(予定)をもちましてサービスを終了します

cartreader(SFC等吸出し機)製作
閉じる
閉じる

cartreader(SFC等吸出し機)製作

2018-07-14 19:53
  • 1

2018/8/14 記事の一部編集・追記

レトロゲームのROMイメージ吸出し機について、sanni氏が素晴らしい回路図とプログラムを公開してくれている。
https://github.com/sanni/cartreader/
これ一台でNINTENDO64、スーパーファミコン、ゲームボーイ(カラー、アドバンス)、メガドライブのROMイメージ吸出し、セーブデータ書き換えができるすぐれもの。
フラッシュロムの書き換えにも対応(SFメモリカートリッジの書き換えのみ確認)。

最近(2018/6/21)、新しい基板データがアップされたため、これを機に製作。
必要なパーツは上記サイトのwiki参照。
基板制作はFusionPCBに依頼。送料込みで$7.9と安く制作できる。発注から19日で到着した。
Arduino MEGA・カートリッジのコネクタ・SDモジュールキット・クロックジェネレーターはAliExpress、ほかのパーツはaitendo、秋月電子、千石電商等の秋葉原のお店で調達。
表面実装のタクトスイッチ・タンタルコンデンサは自分が普段寄る秋葉原の店にはちょうど良いものを扱っていなかったため、AliExpressで買うのがいいかも。


製作手順も上記wikiに動画付きで説明があり、わかりやすい。
表面実装のパーツのはんだ付けは初めてであったが、ランドが広くとられはんだ付けしやすく、製作は案外容易であった。

SFC SA1カートリッジ吸出しのためのPICへの書き込みは、hosam_eldin氏考案のSimple-JDM-PIC-Programmerを使用した(cartreaderの当該ページも参照)。

いろいろ適当だけど、書き込むことができたのでまあよしとした。
SOIC 8 adapterをeBayで購入したのだが、YANWEN Expressでの発送となり、到着までとても時間がかかった…
AliExpressで買えばよかったかも。

3Dプリンタで制作するパーツはなくても動作には支障がないため、発注しなかった。
出力サービスがもうちょっと安くなってから導入を検討したい。
SDのモジュールキットは市販ものそのままでも動作する。
いずれは74LVC125Aを挟んだものを作成したい。

Arduino MEGAへinoファイルをフラッシュする。
コンパイルにあたりいくつかのライブラリを追加しなければならない(SdFat、Adafruit_SSD1306、Si5351Arduino、Arduino-RGB-Tools)
コンパイル前にArduinoのライブラリマネージャから追加しておく。
Arduino-RGB-Toolsはライブラリマネージャから追加できなかったため、githubから手動でダウンロードし、librariesフォルダに追加した。

初期のままの設定だとOLEDの表示が途中で途切れてしまうため、Adafruit_SSD1306.hを編集。
バージョン1.1.2の場合、73行目(// #define SSD1306_128_64)のコメントアウトを外し、74行目(#define SSD1306_128_32)をコメントアウトする。


動作確認。PICを取り付け、SA1も吸い出せることを確認。
その他の特殊チップは、DSP-1/1B、SPC7110、Super FX GSU-2を吸い出せることを確認した(確認ソフトはスーパーマリオカート、天外魔境ZERO、スーパーマリオ ヨッシーアイランド)。
ST011(早指し二段森田将棋)は吸い出せず。ST011チップのカートリッジも吸い出せました。しかしST011チップのデータの吸出し方がわからないのでエミュレータ上で対局できず。

以上が全ての作業工程。
なかなかの速度で吸出しを行える快適な環境を構築できた。
回路図データおよびプログラムを開発・公開してくださっているsanni氏に感謝。

FusionPCBで制作してもらった基板に余りがあるので、もし必要な方いましたらTwitterのDMででも連絡ください(@ymt74898381)

(参考)パーツリスト
基本的に自分が購入したところを記しています。
今回は5800円程度でSFC(殆どの特殊チップ含)、N64、GB(GBC,GBA)の吸出しができる装置をつくることができた。
下記パーツはAliExpressでも揃うので全て通販で済ませるのも手かと感じた。

名称個数購入箇所費用備考
Cart Reader PCB1個Fusion PCB$7.90
SFCスロット1個AliExpress$5.92
N64スロット1個AliExpress$2.22
GBAスロット1個AliExpress$1.88
MDスロット1個AliExpress$8.80購入・テストしていない
N64プラグ1個AliExpress$1.99購入・テストしていない
1×40 ピンヘッダ(2.54mm)3個秋月電子100円程度
2×8 ピンソケット(メス)1個秋月電子50円程度
1×6 ピンソケット(メス)1個秋月電子20円程度microSD用?必要ない?
1×7 ピンソケット(メス)1個秋月電子20円程度クロックジェネレータ用
2012(0805)チップ抵抗 220Ω3個千石電商50円程度(10個入)RGB LED用?
2012(0805)チップ抵抗 1KΩ1個千石電商50円程度(10個入)N64用?
2012(0805)チップ抵抗 10KΩ2個千石電商50円程度(10個入)
SMDプッシュボタン2個AliExpress$1.50程度(50個入)
AMS1117 電圧レギュレータ(3.3V)1個aitendo100円(3個入)
スライドスイッチ(SK12D07)5個aitendo100円(3個入)
RGB LED アノードコモン1個aitendo120円(10個入)無くても特に問題ない
2012(0805)チップコンデンサ 100nF1個aitendo100円(10個入)
2012(0805)タンタルコンデンサ 22uF1個AliExpress等
Arduino Mega(互換品で可)1個AliExpress等$7.45程度
OLEDモジュール1個aitendo500円
SDソケットモジュール1個AliExpress$0.58程度
クロックジェネレータ(オプション)1個AliExpress$11.30程度公式サイトからの購入だと送料どれくらいかかるかわからなかったためAliExpressで購入した
PIC12F629(SOIC)(オプション)1個秋月電子90円実装前にsnesCICの書き込みが必要

(参考)ちょっと前まで使用していたSFC用吸出し機(こーどねーむ「ホンコン」 with Arduino MEGA)

akkera102氏のサイトを参考に製作
http://akkera102.hatenablog.com/entry/2017/01/19/145234
これはこれで手軽に制作できるので便利。
転送に時間が少しかかるがどうせ吸出しは頻繁に行わないし、特殊rom吸出しの予定がないならこれだけでも良いかも。


広告
×
記事を参考にして制作し、無事吸い出すことができました!素晴らしい記事をありがとうございます。
どうやら日本語版SFCソフトのCRC値の対応がいまいちらしく、たまに正常なROMデータにも関わらず「ハッシュ不一致」の表示が出るようです。
最初これに気づかずシムアースの端子を掃除しては吸い出すを繰り返していて、結局PC側のROM Checkerに放り込んだら正常ROM表示でえらい拍子抜けでした。ただその時のsnes.txtは古いバージョンだったので最新バージョンでは改善されているかもしれません。
16ヶ月前
コメントを書く
コメントをするには、
ログインして下さい。