Canonical: https://rom-weaver.com/docs/undo-ppf-browser

# Undo a PPF patch in the browser

Use PPF Undo with the patched ROM and the exact PPF3 patch that changed it. The patch must contain undo data.

This tool cannot undo arbitrary patches or reconstruct bytes absent from the patch.

<!-- START doctoc -->
## Table of contents

- [Restore the saved bytes](<#restore-the-saved-bytes>)
- [Check the restored copy](<#check-the-restored-copy>)

<!-- END doctoc -->

## Restore the saved bytes

1. Open [PPF Undo](<https://rom-weaver.com/ppf-undo>).
2. Add the patched ROM and the original `.ppf` patch. You can add archives containing either or both.
3. If an archive contains several candidates, choose the ROM and PPF patch to use. Check the **Patched ROM** and **PPF patch** cards and any warnings about ignored inputs.
4. Enter a separate output filename. Choose its format in **Restore**; open **Options** to adjust compression.
5. Select **Restore original ROM**.

![PPF Undo with a restored 16-byte ROM ready to download](<https://raw.githubusercontent.com/rom-weaver/rom-weaver/main/docs/screenshots/ppf-undo-restored.webp>)

If an input is invalid, replace it before restoring. If the patch lacks undo data, use your clean backup. The tool cannot recover changes from other patches applied afterward.

## Check the restored copy

Compare the restored file's checksum with the known original using [Identify](<https://rom-weaver.com/docs/identify-roms-browser.md#compare-a-checksum>). Test the copy before replacing any file.

For the terminal command, see [CLI tools](<https://rom-weaver.com/docs/cli.md#tools>). [PPF background](<https://rom-weaver.com/docs/patch-formats.md#ppf>) explains the format.
