Skip to content

マルチブートで GBA BIOS を吸い出す

ラズパイアドバンス拡張ボードを使ってGBA本体のBIOSを吸い出すプログラムを作成しました。

今さらですが吸い出せるツールも無くなってきているので、自前で吸い出したいという方はお使いください。

 

リポジトリ:

https://github.com/cubicstyle/biosdump_rpa

akkera102さんの multiboot プログラムと、DebkitPro の example を利用してます。

 

使い方

 

  1. 拡張ボードの通信ポートと、GBA本体の通信ポートを通信ケーブル(GBポケット用等)でつなげる
  2. カートリッジを何も差していない状態でGBAを起動する
  3. 以下コマンドを実行

$ git clone https://github.com/cubicstyle/biosdump_rpa.git

$ cd biosdump_rpa

$ sudo ./biosdump

Waiting for GBA…
Sending header.
Getting encryption and crc seeds.
Seeds: d4, 95, ffffc5d1
Sending…
Waiting for checksum…
Gba: f157, Cal: f157
Boot Done.
Comm connect start…
Connect success!
Recieve start…
.

(省略)

.

recive finish!

4. recive finish!と表示されたら吸出し終了

5. biosdump_rpa ディレクトリ内に GBA.BIOS というファイル名で保存される。あとはエミュレータで使用するなりお好きにどうぞ。

 

 

raspiadvrw アップデート (v1.11.0)

ラズパイアドバンス拡張ボード用ソフトウェア の raspiadvrw(rpa) を 1.1.0  1.11.0 に更新しました!

※1.11.0 に更新しました。(2018/9/18)

 

  • バックアップメモリの読み書きに正しく対応
    • フラッシュメモリに対応しました 。
    • メモリサイズを正しく認識できるようになりました。
    • ポケモンなどの大容量バックアップメモリに対応しました。
  • 出力メッセージを見やすくしました。
  • バージョン情報が、ソフトと deb パッケージで異なっていたので合わせました。(v1.11.0)
  • フラッシュメモリに書き込む際に、削除コマンドを自動で実行するようにしました。(v.1.110)

 

インストール(アップデート)方法

ラズパイのコンソールから以下のコマンドを実行
$ wget https://cubic-style.jp/rpa/raspiadvrw.deb
$ sudo dpkg -i raspiadvrw.deb

 

バックアップメモリ 操作方法

  • カートリッジのバックアップメモリから保存されたセーブデータを読み込む
    • $ sudo rpa -s -r game1.sav
  • カートリッジのバックアップメモリにセーブデータを書き込む
    • $ sudo rpa -s -w game2.sav

 

第10回 秋コレ 参加情報

2018年 9月9日(日)  秋葉原UDX アキバ・スクエア

第10回 秋コレ 「き16」

 

・頒布物(既刊のみ)

 ラズパイアドバンス  B5/32P   ¥800
 ラズパイアドバンス拡張ボード ¥2000
 マルチブート用通信ケーブル     ¥500
    巫女ぱら CD版                          ¥1000

 

当日はプログラムを書きつつ質疑応答する予定です。

最新情報はTwitterをご覧ください -> @cubic_style

devkitPro for Raspberry Pi

Raspberry Pi で devkitPro を使用するためのDebianパッケージです。

簡単にインストールできます。

GBA, NDS の開発がすぐに始められます!

ラズパイアドバンス拡張ボードがあれば、ビルドしたROMファイルをカートリッジに書き込むことが出来ます。

 

  • インストール方法
  1. 下記から deb ファイルをダウンロードして、任意のディレクトリに保存する
  2. ターミナル(シェル)で、保存したディレクトリに移動(cd)する
  3. ターミナルで以下のコマンドを実行する

$ dpkg -i devkitPro_r47-raspberry_pi-linux.deb

 

  • ダウンロード
devkitPro_r47-raspberry_pi-linux.deb

 

  • GBAサンプルプログラムをビルドしてみる

$ git clone https://github.com/devkitPro/gba-examples.git

$ cd gba-examples/

$ make

 

ビルドが終わると、各ディレクトリにGBA ROMファイル(拡張子が.gba)が作成されるのでエミュレータ等で動かします。

  • バージョン

$ arm-none-eabi-gcc -v
Using built-in specs.
COLLECT_GCC=/usr/local/devkitPro/devkitARM/bin/arm-none-eabi-gcc
COLLECT_LTO_WRAPPER=/usr/local/devkitPro/devkitARM/libexec/gcc/arm-none-eabi/7.1.0/lto-wrapper
Target: arm-none-eabi
Configured with: ../../gcc-7.1.0/configure –enable-languages=c,c++ –with-gnu-as –with-gnu-ld –with-gcc –with-march=armv4t –enable-cxx-flags=-ffunction-sections –disable-libstdcxx-verbose –enable-poison-system-directories –enable-interwork –enable-multilib –enable-threads –disable-win32-registry –disable-nls –disable-debug –disable-libmudflap –disable-libssp –disable-libgomp –disable-libstdcxx-pch –target=arm-none-eabi –with-newlib –with-headers=../../newlib-2.5.0/newlib/libc/include –prefix=/usr/local/devkitPro/devkitARM –enable-lto –with-system-zlib –with-bugurl=http://wiki.devkitpro.org/index.php/Bug_Reports –with-pkgversion=’devkitARM release 47′
Thread model: single
gcc version 7.1.0 (devkitARM release 47)