The detector is designed to answer a narrow question: which known container or save convention does the selected file resemble, and how strong is that evidence? It distinguishes validated structures from filename/size hints and reports writable support only for formats with an implemented verified conversion path. This prevents a generic binary file from being mislabeled merely because it has a familiar extension.
Emulator & Retro Tools
Game Save Format Detector
Inspect a local file for conservative emulator/save-format signatures and size conventions, separating high-confidence containers from extension-only candidates.
01 / Tool workbench
Use the runtime only when it is actually ready.
The application shell fails closed. An input interface is not enabled merely because a WordPress Tool record exists; the declared engine must be registered in the current build.
No output has been built in this session.
02 / Compatibility
Know the supported input before opening a file.
Compatibility fields are intentionally explicit. Missing values stay unclaimed rather than being filled with generic assumptions.
Accepted extensions
Platforms
No platform assignment is recorded.
Supported versions / editions
Verified detection for supported PS1 card containers and MCS saves, standard PS2 8 MiB card filesystems, EMS PSU saves, DeSmuME DSV footer structures, and PARAM.SFO metadata; strict detection for GameCube GCI/GCS/Datel SAV and the exact Mupen64Plus-Next RetroArch composite; conservative candidate detection for GBA/SNES/N64 raw saves and structurally validated Wii data.bin backup headers.
Input constraints
Selected files are capped at 16 MiB. High-confidence readable/writable detection is limited to formats whose container structure the current emulator-v1 runtime actually validates. Extension/size-only matches remain explicit candidates.
Known limitations
Detection does not prove game ownership, semantic correctness, encryption status, or compatibility with every emulator. GBA/SNES raw files remain size/extension candidates, N64 raw candidates still require explicit type/order choices, and Wii data.bin is never promoted to readable/writable because its encrypted header/payload and signatures remain outside the implemented boundary. A .ps2 extension alone is still only a low-confidence candidate when filesystem validation fails.
Output / result
A local detection report with confidence, readable/writable support state, and the evidence used for each candidate. No file is modified.
03 / Instructions
Use a reversible workflow.
File-oriented workflows start with an untouched original. Tool-specific instructions add only details documented for this utility.
- 01Keep the original
Preserve an untouched copy before creating or transforming binary output.
- 02Confirm scope
Match the file size, format, platform, and version to the support information on this page.
- 03Process locally
Use the runtime only when the page reports that its declared engine is loaded.
- 04Validate output
Compare or test the result before replacing any working source file.
Tool-specific steps
Choose the suspected save file and review all reported candidates. Use a dedicated converter only when the detector reports a format that the corresponding parser structurally validates.
04 / Privacy and processing
The processing mode is part of the product contract.
SaveEditor.com should state local processing only when the implementation truly keeps file contents in the browser. Server or hybrid processing must be disclosed just as clearly.
Declared mode
Browser local
Runtime state
Operational
Tool-specific privacy notes
Phase 36 reads a selected file only after explicit local file selection. Parsing, inspection, normalization, extraction, and supported conversions run in the browser. The emulator-retro runtime contains no fetch, XMLHttpRequest, WebSocket, or sendBeacon calls. The shared file ceiling is 16 MiB, with stricter format-specific limits where appropriate.
05 / Troubleshooting
When a file is rejected, do not force it.
A rejection can indicate an unsupported size, format, version, platform, or byte sequence. Preserve the original and correct the input instead of bypassing validation.
Re-check the documented input type and browser size limit before retrying.
A generic converter does not imply support for every game-specific container, signing scheme, or serialization format.
Return to the untouched source instead of repeatedly processing a damaged or partially transformed file.
Known Tool issues
Generic .sav and .srm extensions are shared across many systems, so size alone is deliberately low confidence. Unknown files remain unknown rather than being forced into the nearest known format.
06 / Verification
Support claims should be traceable.
The verification date, method notes, and public references are kept separate from marketing language so compatibility can be reviewed over time.
Method notes
Verified with positive/negative fixtures for PS1 cards/wrappers/MCS, PS2 standard cards/EMS PSU, DeSmuME DSV, PARAM.SFO, ambiguous GBA/SNES raw saves, exact N64 geometry candidates, structurally valid/invalid Wii backup headers, GameCube single-save wrappers, the exact Mupen64Plus-Next composite, and unsupported extensions. Candidate-only detections never enable a write path.
Public references
- https://psx-spx.consoledev.net/controllersandmemorycards/
- https://raw.githubusercontent.com/stenzek/duckstation/master/src/core/memory_card_image.cpp
- https://github.com/PCSX2/pcsx2/blob/master/pcsx2/Reference/PS2-MemoryCardFileSystem.htm
- https://github.com/ps2dev/mymc/blob/master/ps2mc.py
- https://github.com/ps2dev/mymc/blob/master/ps2save.py
- https://www.psdevwiki.com/psp/Param.sfo
- https://github.com/j-tai/dsv2sav/blob/master/dsv2sav.py
- https://github.com/mgba-emu/mgba/blob/master/include/mgba/internal/gba/memory.h
- https://github.com/mgba-emu/mgba/blob/master/src/gba/savedata.c
- https://github.com/snes9xgit/snes9x/blob/master/memmap.cpp
- https://github.com/mupen64plus/mupen64plus-core/blob/master/src/device/cart/flashram.h
- https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/Core/HW/WiiSaveStructs.h
- https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/Core/HW/WiiSave.cpp
- https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/Core/HW/GCMemcard/GCMemcardUtils.cpp
- https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/DolphinQt/GCMemcardManager.cpp
- https://github.com/libretro/mupen64plus-libretro-nx/blob/master/custom/mupen64plus-core/src/api/libretro_memory.h
- https://github.com/libretro/mupen64plus-libretro-nx/blob/master/custom/mupen64plus-core/src/device/controllers/paks/mempak.h
- https://github.com/libretro/mupen64plus-libretro-nx/blob/master/custom/mupen64plus-core/src/device/cart/sram.h
- https://github.com/libretro/mupen64plus-libretro-nx/blob/master/custom/mupen64plus-core/src/device/cart/flashram.h
07 / FAQ
Questions to answer before editing.
These answers are generated from the Tool record and current runtime state rather than generic compatibility promises.
Is Game Save Format Detector ready to use?
Does processing stay in the browser?
Should I keep the original file?
What if my input is rejected?
Related tools
Continue with the same tool family.
Only index-ready verified records from the same Tool Family are shown here.