Hva er SRM-filformatet?
En .srm-fil er en rå binær dump av det batteridrevne SRAM fra en Super Nintendo Entertainment System (SNES) spillkassett. Når et spill støtter lagring i kassetten, skriver SNES spillerens fremgang til en liten SRAM-brikke som drives av et knappcellebatteri. SNES-emulatorer replikerer denne oppførselen ved å skrive det samme rå minneinnholdet til en .srm-fil på disk.
Formatet har ingen header, ingen metadata og ingen «magic bytes» - det er en flat, sammenhengende dump av kassettens SRAM-region som starter ved den laveste adressen. Filstørrelsen bestemmes av SRAM-størrelsen deklarert i SNES ROM-headeren ved offset 0x28: de vanligste størrelsene er 2 KB, 8 KB og 32 KB. Det interne oppsettet er helt spillspesifikt; hver tittel strukturerer sine egne lagringsplasser, sjekksummer og variabler innenfor det rå minneområdet.
.srm-utvidelsen ble standardisert av tidlige SNES-emulatorer, hovedsakelig Snes9x (ca. 1996), og er nå universell: ZSNES, bsnes, ares og RetroArch med Snes9x- eller bsnes-kjerne bruker alle det identiske råformatet. Fysiske enheter for sikkerhetskopiering av kassetter, som Retrode og INLretro, leser og skriver den samme rå SRAM-en, noe som muliggjør direkte overføring mellom original maskinvare og emulatorer uten konvertering.
Noen spill bruker .sav i stedet for .srm, men råformatet er identisk - bare utvidelsen varierer etter emulatorkonvensjon. Tilhørende .sfc eller .smc ROM-bilder deler samme filnavn som deres .srm-lagringsfil.
Sikkerhet og trygghet
RISIKO: LOWSRM-filer er passive datafiler uten kjørbar kode. Den eneste risikoen er å laste ned falske «SRM-konvertere» som er reklameprogramvare - selve filen er ufarlig.
Formatdetaljer
i et nøtteskall- Spiceworks Help Desk Backup - Spiceworks IT-administrasjonsprogramvare bruker .srm for database-sikkerhetskopier, urelatert til spill.
- SecureRM Secure Delete Report - SecureRM-verktøyet for filsletting lagrer slettingslogger med .srm-utvidelse.
Programmer som åpner SRM-filer
Tekniske detaljer
dyp spesifikasjon| Koding | Binær (rå SRAM-minnedump) |
| Byterekkefølge | Little-endian (speiler SNES 65C816 CPU-ens naturlige byterekkefølge) |
| Beholder | Ingen - flat rå binær uten header, mappe eller metadata |
| Magic bytes | Ingen - ingen signatur; filen identifiseres ved utvidelse og forventet størrelse |
| Komprimering | Ingen - rå minnedump uten ytterligere koding |
| Kryptering | Ingen - lagringsdata lagres som de er fra SRAM |
| Typisk størrelse | 2 KB, 8 KB eller 32 KB (størrelser i potenser av to bestemt av kassettens SRAM-brikke) |
| Størrelseskilde | SRAM-størrelsesfelt ved offset 0x28 i SNES ROM-headeren; emulatorer kan fylle ut med nuller til nærmeste potens av 2 |
| Internt oppsett | Helt spillspesifikt - ingen universelle felt eller struktur; hver tittel definerer sine egne lagringsplasser og sjekksummer i den rå SRAM-en |
| Lagringssjekksummer | Spilldefinert og lagret i selve SRAM-dataene; ingen integritetsmekanisme på filnivå |
| Kompatibilitet mellom emulatorer | Snes9x, ZSNES, bsnes, ares og RetroArch (Snes9x/bsnes-kjerne) bruker alle det identiske råformatet |
| Fysisk maskinvareoverføring | Retrode og INLretro-enheter for sikkerhetskopiering av kassetter leser/skriver samme rå SRAM - ingen konvertering nødvendig mellom maskinvare og emulator |
| Utvidelse standardisert av | Snes9x (ca. 1996); universelt adoptert på tvers av SNES-emulatorer siden |
| Utgitt | 1996 (Snes9x, early emulator implementations) |
| Siste versjon | N/A - format is a static raw dump; no versioning |
| Spesifikasjon | snes.nesdev.org |
SRM-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om SRM-filer.