- Home
- ROM Patching Software
- IUBPatchLib
IUBPatchLib
What it is
IUBPatchLib is a C++ library for applying binary patches, with ROM hacks among its intended uses. It supports IPS, UPS, and BPS formats and provides an API based on RAII and move semantics. The core library has no external dependencies and works on Windows, Linux, macOS, and other POSIX systems. Optional memory-mapped I/O is available for file processing.
Developers can build shared or static libraries with CMake and connect the project through find_package, pkg-config, or FetchContent. The included iubpatch-cli can apply patches, show patch details, and validate patches. Patch options include checksum verification and backup creation. The build configuration enables tests and command-line tools by default, while examples and benchmarks are disabled by default. IUBPatchLib is released under the MIT License, which provides the software as-is without warranty. The maker invites contributions through issues or pull requests and says changes are reviewed when tests pass.
For and against
For
- Supports IPS, UPS, and BPS formats.
- Core library has no external dependencies.
- Works on Windows, Linux, macOS, and other POSIX systems.
- CLI can apply, inspect, and validate patches.
- Checksum verification and backup creation are available.
Against
- Software is provided as-is without warranty.
- Examples and benchmarks are disabled by default.
The verdict
IUBPatchLib offers a dependency-free core, multiple patch formats, and both a C++ API and CLI. The MIT License provides the software without warranty.
Who it suits
IUBPatchLib suits developers applying binary patches, particularly ROM hacks, in C++ projects. Its CLI also supports applying, inspecting, and validating patches.
Plans and prices
Free
MIT-licensed software; no pricing or usage limits stated
Read 2 Oct 2026 · github.com
On the record
- API
- The library provides a modern API with RAII and move semantics.github.com · read 2 Oct 2026
- API style
- The library provides a clean modern API with RAII and move semantics.github.com · read 1 Oct 2026
- Audience
- The README says the library was created with ROM hacks in mind but can be used for anything.github.com · read 2 Oct 2026
- Build
- It uses CMake and can be built as shared or static libraries.github.com · read 2 Oct 2026
- Build options
- Shared and static libraries default to ON, tests and command-line tools default to ON, and examples and benchmarks default to OFF.github.com · read 1 Oct 2026
- Build system
- It can be built with CMake using a Release configuration.github.com · read 1 Oct 2026
- Command line
- The project includes an iubpatch-cli tool for applying, inspecting, and validating patches.github.com · read 1 Oct 2026
- Command-line tool
- The included iubpatch-cli can apply patches, show patch information, and validate patches.github.com · read 2 Oct 2026
- Dependencies
- The core library has no external dependencies.github.com · read 2 Oct 2026
- File processing
- Optional memory-mapped I/O is available for fast file processing.github.com · read 2 Oct 2026
- Integration
- CMake projects can integrate it with find_package, pkg-config, or FetchContent.github.com · read 2 Oct 2026
- Integrity options
- PatchOptions can enable checksum verification and backup creation.github.com · read 1 Oct 2026
- License
- The repository includes an MIT License permitting use, modification, distribution, sublicensing, and sale subject to its terms.github.com · read 2 Oct 2026
- Patch formats
- It supports IPS, UPS, and BPS patch formats.github.com · read 2 Oct 2026
- Patch options
- The API examples show checksum verification and backup creation options; the CLI example shows backup and disabling memory mapping.github.com · read 2 Oct 2026
- Performance
- Optional memory-mapped I/O is available for fast file processing.github.com · read 1 Oct 2026
- Platform support
- It works on Windows, Linux, macOS, and other POSIX systems.github.com · read 1 Oct 2026
- Purpose
- IUBPatchLib is a cross-platform C++ library for applying binary patches, designed with ROM hacks in mind.github.com · read 2 Oct 2026