The Nintendo Gigaleak preserves a small but very interesting other/agb_bootrom folder.
Despite the name, it is not just a pair of boot ROM binaries.
On disk it survives as two complete Subversion repositories: one for agb_bootrom and one for cgb_bootrom.
That makes this material more useful than a normal ROM dump. It preserves repository structure, commit dates, author names, supporting build files, documentation, and extra tools around the boot ROM work itself.
The boot ROM repositories are worth their own page because they preserve:
trunk, branches, and tags layout.com and .dmg artifacts rather than one final file| Repository | Revisions on disk | Earliest date | Latest date | Visible author |
|---|---|---|---|---|
agb_bootrom |
7 revisions (0 to 6) |
24 April 2009 |
9 October 2009 |
nakasima |
cgb_bootrom |
3 revisions (0 to 2) |
24 April 2009 |
24 April 2009 |
nakasima |
At the top level, the folder is very simple:
The outer folder just contains the two repositories.
Each one is preserved as a real Subversion FSFS repo with db, revprops, hooks, and locks.
That is the first important thing to understand.
The leak did not just preserve trunk as a loose export.
It preserved the repositories themselves.
Even without local svnlook installed, the FSFS revprops files preserve the revision dates, author, and commit messages.
For agb_bootrom, the visible sequence looks like this:
| Revision | Date | Author | Log message |
|---|---|---|---|
1 |
2009-04-24 01:45:30 UTC |
nakasima |
empty |
2 |
2009-04-24 02:04:18 UTC |
nakasima |
empty |
3 |
2009-10-08 07:08:52 UTC |
nakasima |
AgbComp追加。 |
4 |
2009-10-09 04:12:15 UTC |
nakasima |
AgbCompバイナリ追加。 |
5 |
2009-10-09 04:16:09 UTC |
nakasima |
Bmp2Agb追加。 |
6 |
2009-10-09 04:19:45 UTC |
nakasima |
HTMLリファレンスをAgbSDKからコピー。 |
So the repository was not static. It was first set up in April 2009, then extended in October 2009 with:
AgbComp sourceAgbComp binaryBmp2Agb toolAgbSDKThe cgb_bootrom repository is much smaller.
Its visible revision metadata only shows the initial April 2009 import window, with no later October expansion.
The AGB side is the richer of the two repositories. Its trunk looks less like a single boot ROM project and more like a compact AGB boot/monitor development tree with build support around it.
The path names stored in the repository show these major areas:
/trunk/AgbMnTs3_000605.bin/trunk/build/trunk/build/AgbInclude/trunk/build/AgbLib/trunk/build/tools/trunk/docThat already tells us this is broader than a lone ROM image.
The AGB repository preserves a full AgbInclude directory with headers and assembly includes such as:
Agb.hAgbDefine.hAgbDefine.sAgbDefineArm.sAgbMacro.hAgbMacro.sAgbMacroArm.sAgbMemoryMap.hAgbMemoryMap.sAgbMemoryMapArm.sAgbMultiBoot.hAgbSound.hAgbSystemCall.hAgbTypes.hIsAgbPrint.hThat is useful because it makes the repo feel SDK-adjacent rather than only ROM-specific.
The build tree also includes a substantial amount of ARM source and support code:
AgbMon.c, AgbMon.h, AgbMonData.c, AgbMonSub16.c, AgbMonSub32.cAgbSound.c, AgbSoundAsmArm.s, AgbMPlay.ccrt0Arm.s, crt0ArmCst.s, crt0IncludeArm.s, crt0KeyAddr.sMPlayDefPrvArm.s, MusicPlayDefArm.sds_startup_arm.s, ds_sine_arm.s, multi18_Arm.sThe strongest inference here is that the repository sits at the boundary between boot code, monitor code, and low-level AGB system support. It does not look like a single isolated source file for the retail boot ROM.
The AgbLib folder preserves several prebuilt libraries and associated .alf outputs:
libagbsyscall.alibagbsyscall154.alibagbsyscall98r2.alibisagbprn.alibagbsyscall_arm.alflibagbsyscall_arm154.alflibagbsyscall_arm99r1p2.alflibisagbprn_arm.alfThat is another clue that this is a development/support repository wrapped around the boot ROM work, not just the ROM source itself.
The October 2009 commits added a tools tree that is visible directly in the stored repository paths:
| Tool | Paths preserved in the repo | Notes |
|---|---|---|
AgbComp |
AgbComp.cpp, AgbComp.h, AgbComp.bpr, AgbComp.exe, agbcomp.htm, read_me.txt |
Added in revisions 3 and 4, then documented in 6 |
Bmp2Agb |
Bmp2Agb.cpp, Bmp2Agb.h, Bmp2Agb.bpr, Bmp2Agb.exe, bmp2agb.htm |
Added in revisions 5 and 6 |
The .bpr files suggest Borland C++ Builder projects.
The .htm files are especially interesting because the commit log explicitly says they were copied from AgbSDK.
The doc tree includes several visible paths too:
doc/000209-agbdoc/AGBdoc/AGB_ROMdoc/AgbStack.txtdoc/GNUPro-98r2doc/joyboot-a.gifdoc/joyboot-b.gifThat is a nice reminder that this repository preserves documentation and workflow context, not only code.
The cgb_bootrom repository is much smaller and more focused than the AGB one.
Its visible trunk paths are:
/trunk/AgbCgbMn2_1.com/trunk/CgbEs2Mn.com/trunk/build/agb_cgb.dmg/trunk/build/asmagbcgb.bat/trunk/build/cgb_es2.dmg/trunk/build/cgbw6def.dmg/trunk/doc/CGBThat gives it a different feel from the AGB repository.
The CGB side looks much more like a compact monitor/build package centered on a handful of binaries and .dmg build files, with far less surrounding support code.
Even so, it is still more than a single boot image. The repository structure and multiple build artifacts suggest a small internal working tree rather than just a dumped ROM.
The main Gigaleak overview page can only spare a short summary for material like this. The boot ROM repositories deserve more room because the interesting part is not just “Nintendo boot ROM files leaked”.
What actually survives is:
trunk/branches/tagsThat makes this folder useful to several different kinds of readers at once:
*_bootrom_trunk.zip files actually came fromThis page is mainly about what survives on disk. There is still more technical work that could be done later:
trunk trees with real Subversion tooling.dmg, .com, and .bin artifacts in detailAgbComp and Bmp2Agb actually do beyond their names and file layoutSo this is a good standalone page already, but it is also a nice launch point for future deeper reverse-engineering posts.