Co to jest format pliku ROM?
Pliki .rom to pliki obrazów gier używane przez emulatory do uruchamiania gier konsolowych i komputerowych. Plik .rom jest zrzutem bajt po bajcie kartridża z grą lub układu ROM - termin „ROM” oznacza Read-Only Memory (pamięć tylko do odczytu), odnosząc się do oryginalnego sprzętu, z którego skopiowano dane.
W przeciwieństwie do dedykowanych formatów, takich jak .n64 lub .smc, rozszerzenie .rom jest ogólną etykietą bez stałej struktury wewnętrznej czy sygnatury magic bytes. Jego wewnętrzny układ zależy całkowicie od tego, z jakiej konsoli lub komputera pochodzi zrzut - gra na N64, tytuł na komputer MSX, kartridż ColecoVision i gra na Game Boy generują bardzo różne układy binarne, mimo że każdy z nich może być zapisany jako .rom.
Gry na Nintendo 64 używają kilku ściśle powiązanych formatów obok .rom:
.n64- kolejność bajtów little-endian.v64- kolejność bajtów byte-swapped (przeplatana).z64- kolejność bajtów big-endian (natywny format N64)
Aby otworzyć plik .rom, potrzebujesz emulatora dla odpowiedniego systemu. W przypadku gier N64 popularnymi wyborami są Project64 i Mupen64Plus. RetroArch i OpenEmu obsługują pliki .rom z wielu różnych systemów dzięki swoim systemom wtyczek (rdzeni).
Ponieważ .rom nie zawiera wbudowanego identyfikatora systemu, niektóre emulatory mogą nie być w stanie automatycznie wykryć, do której konsoli należy plik i mogą wymagać ręcznej konfiguracji.
Bezpieczeństwo
RYZYKO: MEDIUMROM gry to pasywne dane interpretowane przez emulator, więc plik rzadko uruchamia się bezpośrednio w Twoim systemie operacyjnym - jednak istnieją realne zagrożenia. Strony z ROM-ami są znanym źródłem złośliwego oprogramowania i fałszywych instalatorów „roms.exe”, dlatego należy korzystać tylko z renomowanych źródeł i skanować pobrane pliki. Co istotne, plik .rom będący w rzeczywistości oprogramowaniem układowym (firmware/BIOS) jest niebezpieczny w inny sposób: wgranie niewłaściwego obrazu firmware do płyty głównej, karty graficznej lub routera może trwale uszkodzić urządzenie (tzw. brick) - przed wgraniem sprawdź, czy pasuje do Twojego sprzętu. Prawnie, pobieranie chronionych prawem autorskim ROM-ów, których nie posiadasz, jest zazwyczaj naruszeniem; bezpieczniejszą drogą są własne zrzuty kartridży oraz ROM-y homebrew/public-domain.
Szczegóły formatu
w pigułce- Obraz Firmware / BIOS - BIOS/UEFI płyty głównej, BIOS wideo karty graficznej (vBIOS), oprogramowanie układowe routerów i urządzeń są często dystrybuowane jako pliki .rom wgrywane na układ - nie są to gry.
- Option ROM / expansion ROM - Karty rozszerzeń PC (sieciowe, RAID, GPU) zawierają obraz option ROM, czasem nazywany .rom, ładowany przez oprogramowanie układowe systemu podczas rozruchu.
Programy otwierające pliki ROM
Szczegóły techniczne
specyfikacja| Kodowanie binarne | Surowe dane binarne - nieskompresowana kopia bajt po bajcie oryginalnych danych z kartridża lub układu |
| Struktura wewnętrzna | Zależna od systemu; brak uniwersalnego nagłówka lub stałego układu - układ binarny jest podyktowany całkowicie przez konsolę źródłową lub komputer |
| Magic bytes / sygnatura pliku | Brak; rozszerzenie `.rom` nie posiada stałej sygnatury identyfikującej - identyfikacja opiera się na emulatorze lub użytkowniku |
| Warianty kolejności bajtów N64 | Big-endian `.z64` (natywny format MIPS R4300i), byte-swapped `.v64` oraz little-endian `.n64` - emulatory konwertują je podczas ładowania |
| Typ MIME | `application/octet-stream` |
| Typowy rozmiar pliku | 256 KB - 64 MB w zależności od kartridża; większość tytułów N64 mieści się w przedziale od 8 MB do 64 MB |
| Zakres zawartości | Pełny kod wykonywalny gry, grafika, dźwięk i dane poziomów dokładnie tak, jak zostały zapisane w oryginalnym układzie ROM |
| Kompresja | Brak wewnątrz pliku; użytkownicy powszechnie archiwizują pliki `.rom` zewnętrznie w kontenerach ZIP lub 7z |
| Ekosystem powiązanych rozszerzeń | `.z64`, `.n64`, `.v64` (N64); `.smc` / `.sfc` (SNES); `.nes` (NES); `.gba` (GBA); `.gb` (Game Boy) |
| Wsparcie dla ROM hackingu | Plik może być modyfikowany za pomocą edytorów szesnastkowych lub patchowany przy użyciu narzędzi IPS/BPS, takich jak Floating IPS lub beat |
| Identyfikacja systemu | Określana przez konfigurację emulatora lub wybór użytkownika - nie jest osadzona w samym pliku `.rom` |
| Nagłówek kartridża N64 | Pierwsze 64 bajty kodują rejestry PI BSD, częstotliwość taktowania, adres rozruchowy, nazwę gry (20 bajtów), ID kartridża (2 bajty) i kod kraju |
| Kontrola integralności N64 CRC | ROM-y N64 zawierają dwie 32-bitowe wartości CRC pod offsetami 0x10 (CRC1) i 0x14 (CRC2), weryfikowane przez BIOS konsoli podczas uruchamiania |
| Kontekst prawny | Osobiste zrzuty z kartridży są zazwyczaj dozwolone w wielu jurysdykcjach; dystrybucja lub pobieranie ROM-ów osób trzecich jest zazwyczaj naruszeniem praw autorskich |
| Wydano | with console/computer emulation (1990s onward) |
| Specyfikacja | emulation.gametechwiki.com |
Konwersje ROM
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki ROM.