Forstå det grundlæggende
* LZ-komprimering: GBA ROM'er bruger ofte LZ77-komprimering, som komprimerer data effektivt. "unLZ-gba" er et værktøj designet til at dekomprimere LZ77-komprimerede data i GBA ROM'er.
* Billedindeksering: "Indekset" henviser i denne sammenhæng til en måde at kortlægge de komprimerede data i ROM'en til dens tilsvarende placering i et større billede. Dette hjælper dekompressionsværktøjet med at finde de korrekte data.
Trin til at indeksere et billede til unLZ-gba
1. Bestem komprimering: Sørg for, at billeddataene i din ROM faktisk er LZ-komprimerede. Du bliver nødt til at konsultere dokumentationen, analysere ROM-strukturen eller bruge værktøjer, der registrerer LZ77-komprimering.
2. Find de komprimerede data: Identificer den nøjagtige placering i ROM'en, hvor billedets komprimerede data befinder sig. Dette involverer normalt at se på ROM-headeren eller bruge værktøjer til at analysere strukturen.
3. Opret en indeksfil: Du skal oprette en tekstfil, der fungerer som et indeks. Denne fil fortæller "unLZ-gba" følgende:
* ROM-forskydning: Startplaceringen af de komprimerede billeddata i ROM'en.
* Billeddimensioner: Bredde og højde af det originale billede.
* LZ77 Header: Hvis de komprimerede data indeholder en LZ77-header, skal du muligvis også inkludere disse oplysninger i indeksfilen.
Eksempel på indeksfil:
```
romoffset=0x08000000
bredde=256
højde=192
```
Brug af "unLZ-gba" med indekset
1. Forbered ROM'en: Lav en kopi af din originale ROM-fil, da "unLZ-gba" kan ændre den.
2. Kør "unLZ-gba": Udfør kommandolinjeværktøjet "unLZ-gba" med følgende parametre:
```
unLZ-gba -i index.txt -o output.bmp rom.gba
```
* `-i index.txt` - Stien til din indeksfil.
* `-o output.bmp` - Det navn og format, du ønsker til det dekomprimerede billede.
* `rom.gba` - Stien til din GBA ROM-fil.
Nøglepunkter:
* ROM-struktur: At forstå ROM-strukturen af det GBA-spil, du arbejder med, er afgørende for nøjagtig indeksering.
* Værktøjer: Værktøjer som "GBA Rom Tool" eller "GBAExplorer" kan være nyttige til at inspicere ROM-data og identificere komprimeringstyper.
* Dokumentation: Se dokumentationen til det specifikke spil eller ROM, hvis det er tilgængeligt, for at forstå dets dataorganisation.
Eksempel (GBA ROM, der bruger LZ77-komprimering):
Lad os sige, at du har en GBA ROM, hvor baggrundsbilledet er LZ77-komprimeret, startende ved adressen `0x08000000`, med en opløsning på 256x192 pixels.
Din indeksfil (f.eks. "bg_index.txt") ville indeholde:
```
romoffset=0x08000000
bredde=256
højde=192
```
Du ville så køre:
```
unLZ-gba -i bg_index.txt -o background.bmp rom.gba
```
Dette ville dekomprimere de LZ77-komprimerede billeddata og gemme dem som et BMP-billede med navnet `baggrund.bmp`.
Husk, at dette er en generel vejledning. De nøjagtige trin og detaljer kan variere afhængigt af ROM'en og det anvendte komprimeringsskema.