In short
- N64 dumps come in three byte orders: .z64 (big-endian, native), .v64 and .n64 (byte-shuffled variants).
- Most patches expect .z64. Convert other formats with a tool like Tool64 before patching.
- N64 hacks are commonly distributed as BPS (checksum-safe) or XDelta.
- Patch a copy of your dump, and test in a current N64 emulator or on a flashcart.
.z64 vs .n64 vs .v64: byte order explained
The N64’s processor reads data big-endian, but early dumping hardware and copiers stored ROMs byte-shuffled. The result is three common layouts of the identical game:
| Extension | Byte order | Notes |
|---|---|---|
.z64 | Big-endian (native) | The format emulators and nearly all patches expect |
.v64 | Byte-swapped | “Doctor V64” order; needs converting for most patches |
.n64 | Word-swapped / little-endian-ish | Also needs converting in most cases |
The extensions are conventions, not guarantees — a misnamed file is always possible. The practical test: if a patch fails on your dump and the readme names a .z64, convert your file to z64 order and try again.
Converting to .z64 order
-
Get a conversion tool
Tool64 is the long-standing utility for shuffling between N64 byte orders. Open your dump in it.
-
Convert to big-endian (.z64)
Select the z64 / big-endian output format and save a converted copy. Keep the original file untouched.
-
Verify the conversion
Compare the converted file’s checksum against the value the hack’s readme lists. How to calculate checksums. A match means you now hold exactly the file the patch was built for.
Applying the patch
-
Match the tool to the format
BPS → Floating IPS (Apply Patch →
.bps→ ROM → save output). XDelta → Delta Patcher following the standard method. See the BPS guide for details. -
Use the converted .z64 dump
Select the byte-order-corrected file as the original/source file, and the patch as the patch file.
-
Save with the .z64 extension
Name the output clearly, e.g.
HackName.z64. Keep the extension so emulators and flashcarts recognise it. -
Test it
Load the patched ROM in your N64 emulator. N64 hacks are ambitious — if one area misbehaves, check the hack’s own documentation for known issues before re-patching.
N64 patching problems and fixes
| Problem | Likely cause | Fix |
|---|---|---|
| Patch fails immediately | Wrong byte order | Convert to .z64 order |
| Checksum error on BPS apply | Wrong dump or wrong byte order | Convert, then re-verify the checksum |
| Game boots but graphics are corrupt | Patched the wrong-order file with validation off | Start over from a converted, verified dump |
| Emulator won’t load the patched file | Lost the extension or saved in the wrong order | Keep .z64; emulators detect the rest |
N64 patching FAQ
Can I just rename .n64 to .z64?
No — renaming doesn’t change the bytes. The three formats are byte-shuffled versions of each other, so you must actually convert the data with a tool like Tool64, not just rename the file.
Why do N64 hacks use BPS instead of IPS?
N64 ROMs are far larger than the 16MB IPS limit, and BPS carries checksums that catch wrong dumps automatically. See how the formats compare.
Do I need to convert if my emulator plays the dump fine?
Yes, for patching. Emulators auto-detect byte order; patchers need exact bytes. Convert to .z64 order first, every time.
What’s the difference between .z64 and .zip?
Everything. .z64 is a byte-order layout of the ROM; .zip is a compressed archive that may contain a ROM in any byte order. Extract first, then check and convert the byte order.
Flashcarts: EverDrive 64 and friends
A patched .z64 is an ordinary N64 ROM image to a flashcart — copy it to the SD card and play on real hardware. Two practical notes:
- Keep the .z64 extension and byte order. Flashcart firmware expects the native big-endian layout; a byte-swapped file may refuse to boot even though emulators tolerate it.
- Large hacks need current firmware. Big N64 hacks (expanded ROMs) can exceed what old firmware handles — update the cart’s OS/firmware before troubleshooting the patch.
After patching: what to expect
N64 hacks are among the most ambitious in ROM hacking — total conversions, new levels, 60fps patches. That ambition means longer load of quirks:
- Read the hack’s documentation for required emulator settings (some need specific RSP plugins or framebuffer options).
- If one area of the game misbehaves but the rest works, it’s almost always the hack’s known-issues list, not your patching.
- Keep both the clean dump and the patch file archived — N64 hack updates are frequent, and re-patching a fresh copy beats re-downloading a dump.
How to tell which byte order you have
Before converting, it helps to confirm what you’re holding. Two quick tells:
- File size won’t help — all three orders are the same size. Only the byte arrangement differs.
- Checksums will. A dump’s CRC32/MD5 is computed over the bytes as stored, so each byte order has a different checksum for the same game. If the readme lists a checksum and yours doesn’t match, either the dump or its byte order is wrong — convert to
.z64order and compare again before assuming the dump is bad.
Some tools and emulators display the detected byte order when they open a file — if yours does, trust it over the extension.
Get Delta Patcher for XDelta-based N64 hacks
Version 3.1.6 is free and open source, with builds for Windows, macOS and Linux. Downloads come straight from the developer’s official GitHub releases.