ネオジオポケットのBIOSを吸い出す

ネオジオポケット/ネオジオポケットカラーのエミュを動かすのにBIOSが必要で、これを合法的に準備する方法がsteamで販売されているネオジオポケットカラーセレクションを購入しインストール先のフォルダにBIOSやロムがあるのでそれを使うっていうのが一番推奨されているのですが

そもそもユーザー自身でBIOSを吸い出すやり方がネット上にない、又はわかりやすい手順がないと思われるのでClaudeにBIOS吸い出すプログラム作ってと頼んだらパパっと作ってくれました。

NGP / NGPC BIOS DUMPER
https://github.com/Nekokabu/ngp_bios_dumper

BIOSは特殊な領域にあるわけではなく、アドレス 0xFF0000-0xFFFFFF にそのまま見えているので、普通に読めるそうです。

FlashMasta等に書き込んでNGP実機で実行後、FlashMastaからロム吸い出し、Pythonのコード実行すればBIOSファイルが出来上がりとかなり楽ちん仕様です。

ネオジオポケットカラー実機では吸い出せることを確認済みです。

N64サウンドファイルの自動生成「USF Maker」


Imaha486さんがAIを使っていろいろ作ってるのをみて私もClaudeを導入。様子見でClaude Proに課金して使っています。その成果でAleck64 → N64 Cartridge Adapterとかが出来上がりました。指示すればわけわからない勢いで解析をはじめ、あっという間に成果が出てきて世の中すごいことになっとるな、と驚くばかりです。

SFCロムからSCP抽出→RomSpcRip
https://i486.mods.jp/ichild/romspcrip

FCロムからNSF抽出→NesNsfRipper
https://github.com/Imaha486/NesNsfRipper

を公開されているのを見て、N64のサウンドファイル自動生成するソフト作れるんじゃね?とClaudeにお願いしてみました。

数時間後、完成したのがこれです。

USF Maker
https://github.com/Nekokabu/USFMaker

指定したN64ロムやステートセーブファイルからN64サウンドファイルであるUSF(Ultra64 Sound File)を自動で自動生成します。

v1.1.0でサウンドモード中のセーブステート用の設定を追加したのでわりと実用的になったと思います。

私自身はコードを1行も書いていません。すべてAIが書いてくれました。USFを作ってみようとしたことがありますが難しすぎて諦めたことがあるのでこんな簡単に作れるようになるとは驚きです。AIすごい・・・

※更新履歴
2026/10/23
v1.5.0を公開 Aleck64に対応しました

2026/10/13
v1.0.0を公開

Alec64をもっと簡単に吸い出す

N64 Cartridge adapter for Seta Aleck 64を使えばN64刺さるなら、逆のAleck64 to n64アダプタ作ればロム吸い出しできるのでは?と思い流行りのclaudeにお願いして変換アダプタを設計。ガーバーデータ(プリント基板の設計図データ)をパパっとつくてもらってJLCPCBに発注。コネクタ加工、半田付けして試したら一発で動きました。
AIすげぇ…

続きを読む Alec64をもっと簡単に吸い出す

MBC6,7,TAMA5,MMM01対応した「GB Transfer Dumper」リリース

先日紹介したGB Transfer Dumperですが、MBC6,7,TAMA5,MMM01のロム吸出しに対応していないようだったので、ローカルLLMやGeminiにお願いして吸い出しできるようプログラムを修正したものを作成しました。
https://github.com/Nekokabu/gb-transfer-dumper/releases/tag/20260906

変更はほぼlibtrpakの修正になります。
https://github.com/Nekokabu/libtrpak

以下変更点

・MMM01マッパーの完全対応と大容量化
初期化時にマルチプレックスモード(GB 0x6000 への 0x40 書き込み)とベースアドレス設定を正しく構成し、ロックマッピング(GB 0x0000 への 0x40 書き込み)を適用。
タイトーバラエティパック(512KB)に加え、桃太郎コレクション2などの1MB以上のROM(0x80000 以降)も全領域正常にダンプ可能に改善。
mapper_max_rom_bank における MMM01 の上限バンク数を拡張。

・TAMA5マッパーの独自コマンド対応(インターリーブ転送)
偶数/奇数アドレス(0xA000/0xA001)への交互書き込みを要求するハードウェア仕様に対し、32バイトブロック転送内にコマンドとデータを埋め込む「インターリーブ転送」を実装。
ROM初期化時のアンロックと 0xF1 応答のポーリング処理を追加。
TAMA5専用のセーブデータ(32バイトレジスタ)に対応する読み書きインターセプト処理を実装。

・MBC6の8 KiB分割バンキングとデュアルSRAM対応
16 KiB単位のROM読み出しを、Bank A(0x4000)と Bank B(0x6000)の2つの 8 KiB バンク設定へ自動展開するロジックを実装。
セーブデータの有効化・無効化時に、2つの 4 KiB 分割SRAM(GB 0x0000 と GB 0x0200)を同時に制御するように修正。

・各種特殊マッパーのバグ修正(HuC1, HuC3, MBC7, MBC30)
HuC3およびMBC7のROMバンクセレクトで9ビット目を誤って 0x4000(RAM/EEPROM領域)へ書き込んでいた不具合を、正しいMBC5互換のレジスタ(0x3000)へ修正。
HuC1のRAMバンクセレクト先が誤っていた不具合を、正しいレジスタ位置である 0xC000(GB 0x4000)に修正。
MBC3のROMバンク制限およびRAMバンク制限を拡張し、MBC30(4 MiB)のROMサポートおよびRTCレジスタ読み取り(0x08–0x0C)に対応。

・ROMダンプの高速化と自動リトライ(接触不良対策)の融合
ブロックごとに実行していたアクセサリのレディ状態ポーリングを「16 KiBバンク単位」に変更し、Joybus通信の往復オーバーヘッドを大幅に削減。
ブロック読み込み中の瞬間的なリセットや接触不良を検知した場合は、自動でバンクを再選択して該当ブロックを再試行する堅牢な構造(was_reset 監視)を維持。

20260906更新
HuC-3の吸出しを修正
現在実行しているフラッシュカート名を取得してフッターに表示するように変更

プログラム修正やこの変更点の内容についてもほぼGeminiがやってくれました。AIすごい・・・

MBC6の対応について@yuki65535さんが確認してくださいました。ありがとうございます。

N64でGBを吸い出しできる「GB Transfer Dumper v1.0.1」リリース

N64実機でゲームボーイを吸い出しできるという「GB Transfer Dumper v1.0.1」がリリースされました。

GB Transfer Dumper
https://github.com/alexishida/gb-transfer-dumper

N64実機でSummerCart64+Transfer Pak(64GBパック)の組み合わせで挿入したゲームボーイのソフトをSummerCart64に吸い出し、保存することができます。

ポケモン赤を吸い出してみました。

転送速度は約5KB/秒で512KBのポケモン赤でも1分半ほどかかります。

また一部のメモリバンクコントローラー搭載ソフトの吸い出しにはまだ対応していないようです。

2026/9/1
MBC6,7,TAMA5,MMM01の吸出しに対応していないようだったので、ローカルLLMやGeminiにお願いして吸い出しできるようプログラムを修正したものを作成しました。※MBC6の吸い出しできないようです。あとで直します。
※MBC6の対応確認しました
https://github.com/Nekokabu/gb-transfer-dumper
https://github.com/Nekokabu/libtrpak

MBCなし、MBC1、2、3、5、7、MMM01、HuC1、HuC3、TAMA5のロム吸出しができることを確認しています。MBC6は未確認。MBC6の対応確認
また、libtrpakの修正は本家へ投げています。

修正するにあたり動作確認のため特殊なMBCや容量の大きなゲームなどいくかゲームを購入しました。下記ゲームについてロムの吸出しが正常に行えることを確認していますが、ロム以内のセーブデータの読み書きやMBC6については確認していません。唯一MBC6搭載の「ネットでゲット ミニゲーム@100」は高すぎて買えません…

形式 MBC ファイル名 ROMサイズ CRCOK?
0x00 NONE テトリス 32KB OK
0x01 MBC1 太陽の勇者ファイバードGB 128KB OK
0x01 MBC1 ボンバーマンコレクション 1MB OK
0x03 MBC1 桃太郎コレクション 1MB OK
0x03 MBC3 牧場物語GB 512KB OK
0x06 MBC2 大戦略 128KB OK
0x06 MBC2 カービィのピンボール 256KB OK
0x0B MMM01 タイトーバラエティパック 512KB OK
0x0D MMM01 桃太郎コレクション2 1MB OK
0x10 MBC3 ポケモンクリスタル 2MB OK
0x1B MBC5 牧場物語2GB 2MB OK
0x1B MBC5 電車でGO!2 8MB OK
0x1B MBC5 スターオーシャンGB 4MB OK
0x22 MBC7 コロコロカービィ 1MB OK
0xFC POCKETCAMERA ポケットカメラ 1MB OK
0xFD TAMA5 ゲームで発見!!たまごっち おすっちとめすっち 512KB OK
0xFE HuC-3 ポケットファミリーGB2 2MB OK
0xFF HuC-1 スーパービーダマン ファイティングフェニックス 512KB OK

N64 SwapDumper リリース


少し前のことになりますが、N64本体とSummerCart64などのフラッシュカートだけでN64のロムをダンプすることができるツールがリリースされました。

N64 SwapDumper
https://github.com/mntorankusu/N64-SwapDumper

このツールはフラッシュカートとゲームカートリッジを数回、差し替え続けることでフラッシュカートのSDカードににロムデータを吸い出すことができます。

対応するフラッシュカートに相性があり、64drive、SummerCart64で動作することを確認、

ED64シリーズでは動作しないことを確認済み。
EverDrive64 v1 (交換後SD初期化エラー)
EverDrive64 v2.5 (落ちる)
EverDrive64 X7 (落ちる)

通電した状態でゲームカートリッジを抜き差しするためセーブデータが飛ぶ可能性がありますがN64実機があれば単独で吸い出しができるので面白いツールだと思います。

64DD Dump Tool v1.0-beta5 リリース

64DDの吸出しツール「64DD Dump Tool v1.0-beta5」が更新、公開されました。

64DD Dump Tool
https://github.com/LuigiBlood/64dddump

使用するライブラリが更新された関係でexFATに対応、SummerCart64と呼ばれるオープンソースのフラッシュカートに対応しました。また従来から64DDの使用時はメモリー拡張パックが必須とされてきましたがこのソフトに限っては必要ではないことが確認されました。

ワンダースワンのIPLを吸い出す

「BootFriend」の登場によりワンダースワンカラー/スワンクリスタルのIPL(ブートロム、BIOS)を簡単に吸い出すことができるようになりました。しかし残念(?)ながらモノクロのワンダースワンのIPLには対応していません。ワンダースワンのIPLを吸い出すには少し手間がかかりますがup-n-atom氏が公開する「IPL Dumper」を使用します。

IPL Dumper
https://github.com/up-n-atom/wwsoft
https://github.com/up-n-atom/wwsoft/wiki/IPL-Dumper

こちらの方法はワンダースワンの互換機であるポケットチャレンジV2が起動画面をすっ飛ばして(IPLへのアクセスをロックする前に)カートリッジのプログラムを実行してしまうのを利用し、基板上をワイヤーでショートさせることで同じ状況を再現しIPLを吸い出すことを可能にしています。

続きを読む ワンダースワンのIPLを吸い出す

ワンダースワンのカスタムファームウェア?「BootFriend」リリース

※起動画面が特殊な限定版本体へのインストールは推奨しません

これがどういうものがまだ把握していない上、一週間ほど出張で家を離れてしまうため簡単にですが、ワンダースワンカラー/クリスタル向けに「BootFriend」というカスタムファームウェアがリリースされました。

BootFriend for WS
https://wonderful.asie.pl/ws/bootfriend/

続きを読む ワンダースワンのカスタムファームウェア?「BootFriend」リリース