Wat is het GBA-bestandsformaat?
De extensie .gba wordt gebruikt door de Nintendo Game Boy Advance spelcomputer. Het is een videospel-imagebestand opgeslagen in ROM-formaat - een ruwe binaire dump van een fysieke spelcartridge. Een .gba-bestand bevat een exacte kopie van de ROM van de cartridge, beginnend met een 192-byte header die een ARM-branch entry point bevat, een verplicht 156-byte Nintendo-logoblok, de spelcode en een 8-bits complement-checksum die bij elke opstart door de GBA BIOS wordt geverifieerd.
GBA-bestand emulatie
Spellen die zijn opgeslagen als .gba-bestanden kunnen worden uitgevoerd op speciale emulators die beschikbaar zijn voor verschillende besturingssystemen, zoals Windows, macOS of Linux. Oorspronkelijk waren de spellen alleen bedoeld voor de Game Boy Advance-console, dus om een .gba-bestand op een ander computersysteem uit te voeren, moet men geschikte emulatiesoftware gebruiken zoals mGBA of VisualBoyAdvance-M. Batterij-opslaggegevens (save data) worden niet opgeslagen in de .gba-image - deze worden weggeschreven naar afzonderlijke .sav of .srm bijbehorende bestanden.
Andere bestandsextensies
De alternatieve extensie .agb is in principe identiek aan het .gba-formaat - beide vertegenwoordigen dezelfde cartridge-dumpstructuur. De extensies .gb en .gbc behoren daarentegen tot de originele Game Boy en Game Boy Color; dit zijn afzonderlijke, incompatibele formaten. Het Nintendo DS-opvolgerplatform gebruikt in plaats daarvan .nds.
Beveiliging & veiligheid
RISICO: MEDIUMHet juridische risico is groter dan het technische: het downloaden van commerciële GBA ROM's die je niet bezit is een inbreuk op het auteursrecht, en ROM-sites staan bekend om adware en valse „download”-knoppen. Het legale pad is het dumpen van cartridges die je zelf bezit. Wat het bestand betreft: een legitieme ROM is inerte data, maar ROM's van dubieuze sites kunnen verkeerd gelabelde installatieprogramma's zijn - gebruik gerenommeerde emulators (mGBA, RetroArch) en scan onbekende downloads.
Formaatdetails
in een notendopProgramma's die GBA-bestanden openen
Technische details
diepe specificaties| Bestandstype | Ruwe binaire cartridge ROM-dump (met header) |
| Byte-volgorde | Little-endian (ARM7TDMI-architectuur) |
| Header-grootte | 192 bytes (offsets 0x00-0xBF) |
| Opstart-handtekening | 32-bits ARM branch opcode op offset 0x00; 156-byte Nintendo-logobitmap beginnend bij 0x04 (hex: 24 FF AE 51 …) |
| Header-checksum | 8-bits complement-checksum op offset 0xBD, geverifieerd door GBA BIOS bij elke opstart |
| Maximale ROM-grootte | 32 MB (256 Mbit) - het fysieke plafond van de cartridge |
| Typische ROM-groottes | 4 MB, 8 MB, 16 MB, of 32 MB (altijd een macht van twee) |
| CPU-instructiesets | 32-bits ARM en 16-bits THUMB (ARM7TDMI-core) |
| Interne compressie | Geen op bestandsniveau; spelonderdelen kunnen LZ77- of Huffman-compressie gebruiken, gedecodeerd via BIOS SWI-aanroepen |
| Opslag van save-data | Afzonderlijk opgeslagen in bijbehorende .sav / .srm bestanden (SRAM, EEPROM, of Flash-chip op de cartridge) |
| MIME-type | application/x-gba-rom |
| Spelcode-veld | 4-tekens ASCII-identificatie op header-offset 0xAC (bijv. AXVE voor Pokémon Ruby) |
| Maker-codeveld | 2-tekens ASCII-licentiehoudercode op header-offset 0xB0 |
| Hardware-weergave | 15-bits BGR555 kleur (32.768 kleuren) bij 240×160 pixels op native hardware |
| Opvolgend formaat | .nds (Nintendo DS), dat het GBA-platform verving |
| Uitgebracht | 2001 (Game Boy Advance launch - AGB platform) |
| Laatste versie | N/A (fixed cartridge format; no versioning) |
| Specificatie | problemkaputt.de |
GBA conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over GBA-bestanden.