https://github.com/redthing1/binja_gameroms_plugin
Binary Ninja loader for some game ROMs.
https://github.com/redthing1/binja_gameroms_plugin
Last synced: 4 months ago
JSON representation
Binary Ninja loader for some game ROMs.
- Host: GitHub
- URL: https://github.com/redthing1/binja_gameroms_plugin
- Owner: redthing1
- License: mit
- Created: 2024-09-02T06:39:21.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2026-01-27T19:08:37.000Z (5 months ago)
- Last Synced: 2026-01-27T19:22:18.856Z (5 months ago)
- Language: Python
- Homepage:
- Size: 451 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Game ROM Loader
Binary Ninja loader for some game ROMs.
Supports a lot of major consoles now.
## features
+ [x] GBA (GameBoy Advance) ROMs (`armv4`)
+ [x] NDS (Nintendo DS) ROMs (`armv4`/`armv5`)
+ [x] PSP (PlayStation Portable) ELF ([guide](doc/guide_psp.md)) (`mipsel32`)
+ [x] PS2 (PlayStation 2) ELF (`r5900l`)
+ [x] 3DS (Nintendo 3DS) CXI ([guide](doc/guide_3ds.md)) (`armv5`/`armv6`)
+ [x] Switch (Nintendo Switch) NSO0 ([guide](doc/guide_switch.md)) (`aarch64`)
+ [x] Wii (Nintendo Wii) Executable ([guide](doc/guide_wii.md)) (`ppc_ps`)
## usage
see [guides](./doc) for platform-specific instructions.
for some consoles, the raw cartridge data can be quite huge.
to avoid importing the full cartridge, which can be many GBs, we instead use scripts to pack custom containers (see guides), then write loaders for those containers.
at the cost of having a slightly nonstandard format, we now are very space efficient, as we load only the executable data and still map it neatly into virtual address space.