すいラボ

電子部品×アクセサリーユニット「すいラボ」つれづれブログ

チップチューンへの道!~第5回 GB Flash Cartridgeの制作~

time 2017/03/19

チップチューンへの道!~第5回 GB Flash Cartridgeの制作~

こんにちは、けんです。
またしてもだいぶ間が空いてしまいました。

前回、ゲームボーイの書込み機を作ったので、今回は書込み用のカートリッジを作っていきます。

フラッシュカートリッジとは?

ゲームボーイのゲームプログラムはカートリッジ内にあるマスクROMという部品に記録されていますが、このマスクROMは読み出し専用で書き換えることはできません。
そこで今回のように別のソフトを書き込んで使用したい場合には、マスクROMを取り外して書き換え可能なフラッシュROMというものに載せ替える必要があります。

マスクROMとフラッシュROMの関係は音楽CDとCD-RWの関係に似ています。

フラッシュROMに載せ替えたカートリッジのことをフラッシュカートリッジと呼ぶわけです。

必要な部品の調達

フラッシュカートリッジを作るのにまず必要になるのはゲームボーイのカートリッジです。
ただし説明は省きますが、どのカートリッジでも良いというわけではありません。
今回はmGBというソフトを書き込むのですが、この場合入手性が良いのは”スーパーマリオランド2 6つの金貨(DMG-L6J)”や”遊戯王 デュエルモンスターズ(DMG-AYUJ-JPN)”あたりでしょうか。

ちなみにチップチューンで有名なLSDJは今回作成するフラッシュカートリッジでは容量が足りないため使用できません。
LSDJカートリッジが作成できたら、別途記事にしたいと思います。

続いて必要になるのがフラッシュROM ICです。
ゲームボーイが5Vで動作するハードウェアなので、フラッシュROMも5Vで動作するものが必要なのですが、世の中はすでに3.3Vやそれ以下の低電圧で動作するフラッシュROMが主流であるため、入手難易度が高くなっています。
私はAM29F040B-70JDという4Mb(512kB)のフラッシュROMをebayで1個100円ちょっとで購入しました。

あと47kΩの抵抗が一つ必要です。

マスクROMの取り外し

フラッシュROMを取り外すにはカートリッジを分解する必要があります。
ゲームボーイのカートリッジはネジ1本で止まっているだけですが、このネジは特殊形状なので専用の工具が必要です。
私はAmazonで大小2本セットのものを購入しました。

使うのは小さいサイズのもので、ゲームボーイのカートリッジ以外にスーパーファミコンのカートリッジのネジを外すのにも使えます。
大きいサイズのものはスーパーファミコン本体に使われているネジを外す際に使用できますので、両方持っていると便利です。

ネジを外してカートリッジを分解すると中はこのようになっています。
今回は”スーパーマリオランド2″のカートリッジを使用しています。
右下に見える大きなICがマスクROMです。

通常のハンダゴテで外す場合は一本ずつハンダを溶かしながら、カッターやデザインナイフの刃を使って足を上げていったり、先に足をニッパーでカットしてから残った足を取り除くなど、やり方は色々あると思います。

コストはかかりますが、低融点はんだを使ったIC取り外しキットを使うのでも良いでしょう。

IC取り外しの際には基板のパターンを傷つけたり、ランドを剥がさないように気をつけましょう。
修復が大変です。

フラッシュROMの実装

マスクROMを取り外したら、フラッシュROMを実装します。
って、前項の最後に「ランドを剥がさないように」と書いておきながら、1箇所ランドが剥がれてしまいました。
左の列の上から6ピン目です。

幸い、すぐそばにスルーホールがあるので、そこから配線します。
同時ににショート防止のためにカプトンテープをIC下部に貼っておきました。

各ピンの配線についてはReiner Zieglerさんのサイトに掲載されている図をご参照ください。
AM29F040で検索すると出てきます。
Gameboy (color)

AM29F040を少し斜めに配置してやると、2辺分は元のランドに上手いことはんだ付けすることができます。
残りの部分は配線材を使用して配線します。

今回はUEW線とスズメッキ線を使って配線していますが、特に意味はありません。
と言うか、なぜスズメッキ線を使ったのか覚えていません^^;

実装が終わったら隣接ピンとのショートがないか確認しましょう。

GB CART FLASHERで書込み

フラッシュカートリッジができたので、いよいよ書込みです。

CartInfoをクリックして、Manufacturer ID、name、chip IDなどが表示されれば実装は問題ないと考えて良いでしょう。

そして実際に書き込んでみます。
Write FLASHをクリックして、書き込むファイルを選択するだけです。
512kBのロムファイルを書き込むのに1分半~2分ほどかかります。

書込み済みのフラッシュカートリッジに書き込む際は、Write FLASHの前にErase FLASHの実行が必要です。

mGBの書込み

フラッシュカートリッジが完成したので、今回の目的であるmGB(Timothy Lambさん作)を書き込んでいきます。
mGBは下記リンク先よりダウンロード可能です。
Clone or downloadよりDownload ZIPを選択してください。

trash80/mGB

mGB – Nintendo Gameboy MIDI control for Arduinoboy

ダウンロードしたzipファイルを解凍すると”mGB.gb”というファイルがありますので、これをフラッシュカートリッジに書込むだけです。

そして書き込んだカートリッジを実機で起動して、mGBの画面が表示されれば完成です!

次回予告!

ゲームボーイを使った実機演奏の環境が着々と整ってきました。
次回はMIDI信号をゲームボーイの通信信号に変換するためのArduinoboyを制作していきます!

この記事を書いた人

けん
けんTwitter:@suilab_ken
熱しやすく冷めやすく、さらに完全に形から入るタイプ。
電気回路を勉強中のへっぽこ会社員。


好きなレトロゲーム

【FC】テニス、バルーンファイト、ドラゴンバスター、ボンバーマン
【SFC】スーパーマリオワールド、エキサイトステージ、ドラゴンクエストV、VI、ファイナルファンタジーVI
【GB】ラクロアンヒーローズ、モトクロスマニアクス、魔界塔士Sa・Ga

down

コメントする




CAPTCHA


書いてる人たち

(夫)けん(妻)もちきん

(夫)けん(妻)もちきん

電子工作・レトロゲーム・DIYが趣味の夫婦。夫の趣味である電子工作の部品をヒントに妻はアクセサリー製作を開始しました。 [詳細]