How to Patch ROMs on iPhone & iPad
ROM patching used to require a PC. Not anymore. PatchVault runs entirely in Mobile Safari, so you can apply IPS, BPS, and UPS patches directly on your iPhone or iPad in under a minute.
What You Need
Base ROM
The unmodified original game backup (.gba, .sfc, .nds, etc.)
Patch File
The ROM hack file (.ips, .bps, or .ups)
An Emulator
Delta, RetroArch, or Folium installed on your iPhone or iPad
Step-by-Step Guide
Get your base ROM
You need an unmodified backup of the original game. This is called the "base ROM" or "source ROM." Most ROM hacks specify exactly which version of the game to use (e.g., "Fire Emblem — The Sacred Stones (USA).gba"). Using the wrong version is the most common cause of patch failures.
Download the patch file
ROM hacks and fan translations are distributed as small patch files, not full ROMs. Popular sources include ROMHacking.net and community Discord servers. Patch files will have an extension like .ips, .bps, or .ups. Never download a file that is the size of a full ROM — that is the pre-patched ROM being distributed illegally.
Open PatchVault in Mobile Safari
Navigate to patchvault.app in Mobile Safari on your iPhone or iPad. The tool works directly in the browser — no app to download, no account required.
Upload your ROM and patch file
Tap "Upload Base ROM" and select your ROM file from the Files app. Then tap "Upload Patch File" and select your .ips, .bps, or .ups file. PatchVault will automatically detect the patch format and show it as a badge.
Apply the patch
Tap "Apply Patch & Download." For BPS and UPS patches, PatchVault verifies the checksum of your ROM and the output — if you see a checksum error, you are using the wrong version of the base ROM. For IPS patches, there is no checksum, so make sure you have the right ROM.
Load the patched ROM in Delta or RetroArch
The patched ROM will download to your Files app. In Delta, tap the + button, choose "Files," and select your patched ROM. In RetroArch, use the File Browser or your chosen method to load the ROM from storage.
Try It Now
Web ROM Patcher
100% private — files never leave your device.
Upload Base ROM
Accepts .gba .nds .sfc .gb .gbc
Upload Patch File
Accepts .ips .bps .ups .xdelta
Supports IPS · BPS (checksum verified) · UPS (checksum verified)
Patch Format Reference
| Format | Full Name | Notes |
|---|---|---|
| IPS | International Patching System | Oldest format. Simple offset+data records. No checksum — verify your ROM version manually. |
| BPS | Beat Patch System | Modern and most popular. CRC32 checksum verification for both source and output. Created by byuu. |
| UPS | Universal Patching System | XOR-based patching with checksum verification. Common for GBA hacks. |
| xDelta | VCDIFF delta patching | Used for large patches (NDS, PSP). Not yet supported in browser — use Delta Patcher on desktop. |
Troubleshooting
⚠ BPS or UPS patch gives a "checksum mismatch" error
You are using the wrong version of the base ROM. The patch was made for a specific revision (e.g., USA v1.0). Check the patch readme for the exact ROM the author used, or look for the CRC32 or MD5 hash of the correct ROM on the hack's download page.
⚠ The game boots but graphics or text are wrong
This usually means the patch applied but to a slightly wrong ROM version. IPS patches have no checksum verification, so an incorrect source ROM will produce a corrupt output without any error message. Verify your ROM matches the version specified by the patch author.
⚠ The file won't download after patching
Safari may block automatic downloads. Look for a download notification at the top of your screen, or check your Downloads folder in the Files app.
⚠ Delta won't recognize the ROM after patching
Make sure the file extension is correct for the system (e.g., .gba for Game Boy Advance, .sfc or .smc for SNES, .nds for Nintendo DS). Some patches produce files without the correct extension — rename the file in the Files app.
Other Guides
How to Transfer Save Files Between Emulators →
Move your progress when switching between Delta, RetroArch, DeSmuME, VBA, and Folium.