GP-150 Firmware Patcher - Portable single EXE - PARA RC1
======================================================

Windows 10/11 x64. Run GP150FirmwarePatcher.exe and keep this README.txt
next to it. No Python, pip, .NET or other separate installation is needed.
The EXE is unsigned. It runs offline without administrator privileges.
APK is separate; this application produces firmware only and never flashes.

Use
---
1. Open the EXE and optionally click Check components.
2. Choose your untouched GP-150 Firmware V1.1.1.bin.
3. Choose a NEW output filename and click Create & verify.
4. Wait for SUCCESS. Existing files and the original are never overwritten.

Input SHA-256:
6f1d4357086aa869c4856afa0279feb892ff72124a094d7d40a417fe641236d3
Output SHA-256 (unchanged two-slot PARA RC1):
cb9b92a2dfc7d4841c5a1b62e5e12e43613a98c3fa4c6b156a357819b29ce26b

Checks: exact input and output hashes, seven region CRCs, container CRC,
decompression, bounds, read-back and unchanged original. Other firmware
versions, R2/R3 and already modified input are rejected.

Block controls
--------------
Only the physical WAH and AMP slots can change type.
Select None in that slot, then briefly press PARA to cycle:
PRE -> WAH -> DST -> AMP -> NR -> EQ -> MOD -> PRE.
Choose an effect after choosing its type. With an active effect selected,
PARA retains its normal parameter-page function. Long press is unchanged.
Both slots are independent and may use matching types/effects. Footswitch
assignments remain tied to physical slots. CAB, N-S, DLY, RVB and VOL are
not made universal. R2/UNI preset migration is not included.
Use the separate matching ValetonSuite BlockType APK for Android editing.

Device testing and recovery
---------------------------
This tool verifies files; it does not flash, connect to, or test a GP-150.
RC1 has offline tests, but physical boot/audio and DSP timing qualification
remain unconfirmed. An earlier, different seven-slot R3 build caused a
black screen; the device was recovered with R2. Do not confuse a PASS here
with proof of hardware safety. Keep your working recovery firmware and
back up presets before a controlled test using official Valeton Suite.


Sharing
-------
Share this EXE and README together. No complete original/custom firmware,
APK, signing key or project source is included. Recipients provide their own
original firmware. Patch data contains changed bytes and copy instructions;
this packaging does not establish rights to redistribute vendor material.
This unofficial experimental tool is not affiliated with Valeton.

Command line (optional, windowless)
----------------------------------
GP150FirmwarePatcher.exe --check --report check.json
GP150FirmwarePatcher.exe --create original.bin new.bin --report result.json
GP150FirmwarePatcher.exe --verify new.bin --report verify.json
Quote paths containing spaces. Report filenames must also be new.
Exit code 0 means success, nonzero means failure.

Python and bundled dependencies
============================================================

Release verification
====================
EXE SHA-256: a4dcfa55bf565e7b65b6b6cdcbf23eeca5b65052ac73f9721dae2cf215d64293
EXE bytes: 11777056
16 checks passed on the build host, including real EXE execution without Python on PATH, exact firmware reproduction, corrupted input/component rejection, and GUI callback execution.
No clean Windows VM or physical GP-150 test was performed.
