Wat is het SFC-bestandsformaat?
.sfc-bestanden zijn gekoppeld aan de Super Nintendo spelcomputer (soms aangeduid als SNES). .sfc-bestanden slaan game ROM-images op - ruwe binaire dumps van cassettegegevens. .sfc ROM-bestanden kunnen ook worden geopend met SNES-emulators die beschikbaar zijn voor desktop-pc's en mobiele apparaten. De extensienaam staat voor „Super Famicom”, de Japanse en Aziatische merknaam van de hardware.
Volgens afspraak is .sfc de voorkeursextensie voor *headerloze* („schone”) ROM-dumps, terwijl de nauw verwante .smc extensie vaak een 512-byte copier-header bevat die is overgeërfd van cartridge-copier-apparaten uit de jaren 90. De onderliggende ROM-gegevens zijn in beide gevallen identiek, en moderne emulators detecteren automatisch beide formaten - hernoemen tussen extensies werkt meestal zonder problemen. Het onderscheid is vooral van belang bij het gebruik van oudere tools die een specifieke lay-out verwachten.
Elke ROM bevat een ingebedde interne SNES-header nabij de bovenkant van de adresruimte - op offset 0x7FC0 voor LoROM of 0xFFC0 for HiROM - waarin de speltitel in ASCII, de memory-mapping modus, ROM- en RAM-groottes, een regiocode en een 16-bits checksum zijn opgeslagen. Bestandsgroottes variëren doorgaans van 256 KB tot ongeveer 6 MB. Opgeslagen spelgegevens worden apart bewaard in een bijbehorend .srm-bestand, niet in het .sfc-bestand zelf.
Enkele juridische aspecten
De legaliteit van emulators is een genuanceerde kwestie. Emulator-software zelf wordt in de meeste rechtsgebieden algemeen als legaal beschouwd, omdat het hardwaregedrag repliceert zonder eigen code te kopiëren. ROM-bestanden zijn een andere zaak - dit zijn kopieën van auteursrechtelijk beschermde software. Sommige websites die ROM's aanbieden voor download waarschuwen gebruikers dat ROM's binnen 24 of 48 uur na het downloaden moeten worden verwijderd, maar deze claim heeft geen erkende basis in het auteursrecht in enig groot rechtsgebied. Het bezitten van een originele cassette geeft niet automatisch het recht om de ROM ervan te downloaden van een externe bron.
Beveiliging & veiligheid
RISICO: MEDIUMDe ROM-gegevens zijn inerte spelcode die alleen binnen een emulator draait, maar er zijn twee reële aandachtspunten. Juridisch: het downloaden van ROM's van spellen die je niet bezit is in de meeste landen een inbreuk op het auteursrecht - de rechtmatige weg is het dumpen van je eigen cassettes of het spelen van homebrew. Bronveiligheid: „ROM-sites” zitten vol met advertenties, valse downloadknoppen en gebundelde malware, en oude emulators (met name ZSNES) hebben kwetsbaarheden in het parsen - gebruik een actuele, nauwkeurige emulator (Snes9x, RetroArch, bsnes) en vermijd dubieuze downloadportals.
Formaatdetails
in een notendopProgramma's die SFC-bestanden openen
Technische details
diepe specificaties| Formaat-type | Ruwe binaire cassette ROM-dump (plat bestand, geen container of wrapper) |
| CPU / byte-volgorde | WDC 65C816 (16-bit); little-endian |
| Memory mapping modi | LoROM, HiROM, ExHiROM - bepaalt de interne header-offset en adresdecodering |
| Interne header-offset | 0x7FC0 (LoROM) of 0xFFC0 (HiROM) - bevat speltitel in ASCII, mapper-type, ROM/RAM-grootte, regiocode en checksum |
| Magic signature | Geen - geen vaste magic bytes; geïdentificeerd door het parsen van de interne header op een mapper-afhankelijke offset |
| Copier-header | Afwezig volgens afspraak (schone / headerloze dump); het gerelateerde .smc-formaat voegt vaak een 512-byte copier-header toe |
| Checksum | 16-bits som van alle ROM-bytes plus het bitsgewijze complement, opgeslagen in de interne header (bytes 0x7FDE-0x7FE1 in LoROM-lay-out) |
| Typische bestandsgrootte | 256 KB - 6 MB; moet een macht-van-twee veelvoud van 32 KB zijn voor een schone dump (Star Ocean met 48 Mbit / 6 MB is de grootste officiële cassette) |
| Coprocessor-types | SA-1, SuperFX / SuperFX2, DSP-1/2/3/4, S-DD1, SPC7110 - aangegeven in de interne header; emulators moeten de coprocessor emuleren om de ROM uit te voeren |
| Opgeslagen spelgegevens | Batterij-ondersteunde SRAM opgeslagen in een bijbehorend .srm-bestand naast de ROM; niet ingebed in het .sfc-bestand zelf |
| Regiocode | Enkele byte in de interne header (0x00 = Japan, 0x01 = USA, 0x02 = Europa/PAL, etc.) |
| MIME-type | application/octet-stream |
| Distributieformaat | Meestal gecomprimeerd in een ZIP-archief voor download; het .sfc-bestand zelf is ongecomprimeerde ruwe binaire data |
| Uitwisselbaarheid | Functioneel identiek aan .smc met dezelfde ROM-gegevens; moderne emulators detecteren beide automatisch; hernoemen tussen extensies is over het algemeen veilig |
| Platformondersteuning | Geen native OS-ondersteuning; uitsluitend geopend door SNES-emulators (Snes9x, bsnes/ares, RetroArch, OpenEmu, Delta) op Windows, macOS, Linux, Android en iOS |
| Uitgebracht | early-mid 1990s (cartridge-copier / emulator era) |
| Specificatie | snes.nesdev.org |
SFC conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over SFC-bestanden.