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 というファイル名で保存される。あとはエミュレータで使用するなりお好きにどうぞ。

 

 

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)

 

 

GBAの開発環境をクラウド上に構築してみる

Game Boy Advent Calendar 2017 ということで、クリスマスだし昔のGBA開発ネタを公開してみることにしました。

自分のPCに開発環境を作らなくても、クラウド上に、ビルドから実行環境までを構築できます。
GBAのソフトを作ってみたいけど、開発環境を構築するのが難しくて分からないって人とか、面倒くさいなーって人に向いています。
経験者も未経験者の方も役に立ててもらえるのではないかと思います。
またGBA以外のソフトウェア開発などで応用して使える技術だと思うので参考にしてください。

Read More →