• No results found

Att dekryptera och läsa rom-filens innehåll

In document En hyllning till spelet (Page 41-45)

8.2 Romhackningsfasen

8.2.1 Att dekryptera och läsa rom-filens innehåll

Att översätta ett spels textmässiga innehåll kompliceras av att detta innehåll i en rom-fil är skrivet med hexadecimala tal; ett numeriskt system med 16 som bas där symbolerna 0-9

representerar värden från noll till nio och A-F värden från tio till femton. Detta leder till att varje rom-fil består av en lång serie hexadecimaler, vilka utgör allt innehåll i spelet (Cyndeline Translations: Räkna i hex, 2010). För att läsa en rom-fil används därför ett särskilt program, av romhackare kallat hex-editeringsprogram eller hexredigerare, som kan läsa hexadecimala filer. Spelets textmässiga innehåll, som exempelvis spelfigurernas repliker eller dialoger samt namn på objekt och platser eller liknande, befinner sig således någonstans i en mycket lång rad av hexadecimala tal. I den nedanstående illustrationen har rom-filen som utgör spelet Dragon

Bild 1. Rom-filen Dragon Warrior har öppnats i hexredigeraren WindHex

Den ovanstående bilden visar en del av det textmässiga innehållet i rom-filen, närmare bestämt en del av spelets dialog. Sifforna och bokstäverna i den centrala kolumnen (kallade

”hexadecimaler”) utgör hänvisningar till bokstäver i vårt normala alfabet inuti spelet, och är således vad som måste ändras för att kunna översätta spelinnehållet till svenska. I fallet med det ovanstående spelet Dragon Warrior hänvisar exempelvis hexadecimalen ”2C” till bokstaven ”i”, ”27” till ”d” och ”2A” till ”g”, och så vidare. Trots att det därför teoretiskt vore möjligt för romhackaren att översätta spelet enbart genom att ändra en hexadecimal i taget – vilket under romhackandets tidigaste period faktiskt var det enda sätt på vilket översättningsprocessen kunde ske – så skulle denna typ av översättning vara mycket komplicerad och tidskrävande (Cyndeline Translations: Om hex och text, 2010).

För att göra översättningsprocessen enklare används idag därför i stället så kallade ”table-filer”, vilka av Mattias Thorelli definieras som en slags ”kodnyckel” som dechiffrerar vilken bokstav varje hexadecimal står för (Thorelli 2010a). En table-fil beskrivs av romhackaren C_Cliff som bestående av ”hexvärden som representerar varje bokstav eller ord [i rom-filen]” (C_Cliff 2010e). Nedanstående bild visar ett avsnitt ur table-filen tillhörande det ovannämnda spelet Dragon Warrior, och ger en klarare bild av vad som menas med detta:

Bild 2. En del av table-filen till spelet Dragon Warrior.

En table-fil utgör alltså en slags lista eller, mer ordagrant, tabell över varje i rom-filen

förekommande hexadecimal och dess alfabetiska motsvarighet. Denna lista kan skapas manuellt av romhackaren, vilket ofta sker genom att denne söker efter vissa ord som förekommer i spelet genom att använda exempelvis hexredigerarens inbyggda sökfunktioner och anteckna

resultaten:

Bild 3. En sökning efter ordet ”descendant” i rom-filen Dragon Warrior. Hexredigeraren ger förslag på vilka bokstäver som utgörs av vissa hexadecimaler.

Genom denna metod kan romhackaren gradvis räkna ut och anteckna vilken hexadecimal som utgör varje bokstav i ett visst ord, och därigenom kartlägga spelets fullständiga alfabet. Dessa uppgifter skrivs sedan in i en textfil liknande den från spelet Dragon Warrior ovan, som skapas med en vanlig ordbehandlare och sparas under filformatet ”.TBL”. Det är denna fil som utgör

table-filen till spelet i fråga ovan. Vissa tecken, som exempelvis de hexadecimaler som

representerar siffror i spelet (”1”, ”2”, ”3”, osv.) går dock inte att hitta genom att på ovanstående sätt söka i rom-filen, utan måste infogas manuellt i table-filen av romhackaren.

Table-filer kan enligt Muñoz Sánchez (2009: 171)också genereras automatiskt, i vilket fall speciella program för att läsa filen kan användas, som ”SearchR X or Search Relative”. När väl texten går att läsa, så kan ”the creation of a table file […] be automated with software such as TaBuLar or TAG” (ibid: 172). Uppgifter från svenska romhackare gör gällande att liknande program även används inom den svenska romhackningsscenen. C_Cliff anger att han själv ”är mest van med [sic] [programmet] GoldFinger och en universal skriptextraherare som

Cartographer, Pointer Tables eller Visual Rom Suite”, samt att han också ”[a]nvänder […] en [sic] textsöknings-verktyg som heter SearchX som hittar (såvida inte spelet använder DTE, MTE eller en dictionary-kompromering [sic]) text i spelet.” (C_Cliff 2010c). Han hävdar vidare att ”TAG använde jag en del men var för länge sedan. Det är lite olika från projekt till projekt. SearhX [sic] använder jag nu. Även om det huvudsakligen är ett söknings-program så har den funktionen att automatiskt generera table-filer.” (C_Cliff 2010f).

Oavsett genom vilken metod table-filen har genererats så öppnar romhackaren, då filen väl är färdigställd, denna tillsammans med rom-filen i hexredigeraren. Om table-filen sammanställts på ett korrekt sätt, utan att några fel gjorts å romhackarens sida, bör resultatet ungefär se ut som som i den nedanstående bilden:

Bild 4. Rom-filen Dragon Warrior i en hexredigerare efter att dess table-fil har laddats.

Bilden visar fortfarande exakt samma avsnitt i rom-filen Dragon Warrior som visas i bild 1, men skillnaden är att rom-filens hexadecimala textinnehåll nu i klartext blivit läsligt för romhackaren – något som skett i den högra kolumnen. Skillnaden är också att hexdecimaler nu tilldelats specifika tangenter på tangentbordet vilket innebär att romhackaren, i stället för att som omnämns ovan tvingas manipulera varje hexadecimal i den centrala kolumnen för sig, nu kan översätta rom-filens textmässiga innehåll genom att skriva som vanligt på tangentbordet och på detta sätt byta ut en bokstav i texten mot en annan (Cyndeline Translations: Om hex och

text, 2010). Mattias Thorelli anger att det var på detta sätt han själv översatte spelet Terranigma (Thorelli 2010b), men betydligt vanligare tycks vara att romhackaren extraherar textinnehållet ur rom-filen och sänder detta till en eller flera dedikerade översättare som i sin tur sedan översätter det (se avsnitt 8.4).

In document En hyllning till spelet (Page 41-45)