Vad är filformatet ROM?
.rom-filer är spelavbildningsfiler som används av emulatorer för att köra konsol- och datorspel. En .rom-fil är en byte-för-byte-dump av en spelkassett eller ett ROM-chip - termen «ROM» står för Read-Only Memory, vilket syftar på den ursprungliga skrivskyddade hårdvaran som datan kopierades från.
Till skillnad från dedikerade format som .n64 eller .smc, är filtillägget .rom en generisk etikett utan fast intern struktur eller magic bytes. Dess interna layout beror helt på vilken konsol eller dator dumpen kom ifrån - ett N64-spel, en MSX-datortitel, en ColecoVision-kassett och ett Game Boy-spel ger alla mycket olika binära layouter även om var och en kan sparas som .rom.
Spel för Nintendo 64 använder flera nära besläktade format vid sidan av .rom:
.n64- little-endian byteordning.v64- byte-swapped (interleaved) byteordning.z64- big-endian byteordning (det infödda N64-formatet)
För att öppna en .rom-fil behöver du en emulator för rätt system. För N64-spel är populära val Project64 och Mupen64Plus. RetroArch och OpenEmu stöder .rom-filer från många olika system genom sina kärn-instickssystem.
Eftersom .rom inte bär någon inbäddad systemidentifierare kan vissa emulatorer vara oförmögna att automatiskt upptäcka vilken konsol filen tillhör och kan kräva manuell konfiguration.
Säkerhet & trygghet
RISK: MEDIUMEn spel-ROM är passiv data som emulatorn tolkar, så filen körs sällan på ditt riktiga operativsystem - men verkliga risker finns. ROM-nedladdningssajter är en känd källa för skadlig kod och falska «roms.exe»-filer, så använd endast välrenommerade källor och skanna nedladdningar. Viktigt är att en .rom som faktiskt är firmware/BIOS är farlig på ett annat sätt: att flasha fel firmware-avbildning till ett moderkort, GPU eller router kan permanent förstöra enheten - verifiera att den matchar din exakta hårdvara före flashning. Juridiskt sett är nedladdning av upphovsrättsskyddade ROM-filer du inte äger generellt ett intrång; att dumpa dina egna kassetter och använda homebrew/public domain-ROM-filer är de säkrare vägarna.
Formatdetaljer
i ett nötskal- Firmware / BIOS-avbildning - Moderkorts-BIOS/UEFI, GPU-video-BIOS (vBIOS), router- och enhetsfirmware distribueras ofta som .rom-filer som flashas på chippet - inte spel.
- Option ROM / expansions-ROM - PC-instickskort (nätverk, RAID, GPU) bär en option ROM-avbildning, ibland kallad .rom, som laddas av systemets firmware vid uppstart.
Program som öppnar ROM-filer
Tekniska detaljer
djup specifikation| Binär kodning | Rå binär - okomprimerad, byte-för-byte-kopia av originalkassettens eller chippets data |
| Intern struktur | Systemberoende; ingen universell header eller fast layout - den binära layouten dikteras helt av källkonsolen eller datorn |
| Magic bytes / filsignatur | Ingen; filtillägget `.rom` bär ingen fast identifierande signatur - identifiering förlitar sig på emulatorn eller användaren |
| N64 byteordnings-varianter | Big-endian `.z64` (infödd MIPS R4300i-format), byte-swapped `.v64`, och little-endian `.n64` - emulatorer konverterar mellan dem vid laddning |
| MIME-typ | `application/octet-stream` |
| Typisk filstorlek | 256 KB - 64 MB beroende på kassett; de flesta N64-titlar sträcker sig från 8 MB till 64 MB |
| Innehållstäckning | Fullständig exekverbar spelkod, grafik, ljud och nivådata exakt som de lagras på det ursprungliga ROM-chippet |
| Komprimering | Ingen inuti filen; användare arkiverar vanligtvis `.rom`-filer externt i ZIP- eller 7z-containrar |
| Relaterat ekosystem för tillägg | `.z64`, `.n64`, `.v64` (N64); `.smc` / `.sfc` (SNES); `.nes` (NES); `.gba` (GBA); `.gb` (Game Boy) |
| Stöd för ROM-hacking | Filen kan modifieras med hex-redigerare eller patchas med IPS/BPS-patchverktyg som Floating IPS eller beat |
| Systemidentifiering | Bestäms av emulatorkonfiguration eller användarval - inte inbäddat i själva `.rom`-filen |
| N64-kassett-header | De första 64 byten kodar PI BSD-register, klockfrekvens, boot-adress, spelnamn (20 byte), kassett-ID (2 byte) och landskod |
| N64 CRC-integritetskontroll | N64-ROM-filer innehåller två 32-bitars CRC-värden vid offset 0x10 (CRC1) and 0x14 (CRC2), verifierade av konsolens boot-ROM vid uppstart |
| Juridiskt sammanhang | Personliga kassettdumpar är generellt tillåtna i många jurisdiktioner; att distribuera eller ladda ner tredjeparts-ROM-filer är vanligtvis ett upphovsrättsbrott |
| Släppt | with console/computer emulation (1990s onward) |
| Specifikation | emulation.gametechwiki.com |
ROM-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om ROM-filer.