Make the repo self-contained (no dependency on the parent firmware-tools/ checkout): copy in the patch/disasm/syx tools and the c2probe RP2040 C2 flash-reader/patcher firmware. - patch_usb1_to_cv.py : byte-level USB-1->CV patch (imported by roundtrip.py) - d8051.py : standalone 8051 disassembler - syx_extract.py : SysEx extractor - c2probe/ : RP2040 C2 flash reader + host scripts (c2probe.c, cdc/dump_flash/patch_c2/reflash_page/verify.py, CMake build) - RECOVERY.md : C2 flash recovery procedure - EFM8UB20_PINOUT.md : reverse-engineered QFP48 pinout + firmware pin usage - roundtrip.py : import local patch_usb1_to_cv (parent as fallback) - .gitignore : exclude c2probe/.venv, c2probe/build Verified: stock + patched round-trips still re-assemble byte-identical.
18 lines
440 B
CMake
18 lines
440 B
CMake
cmake_minimum_required(VERSION 3.13)
|
|
|
|
include(pico_sdk_import.cmake)
|
|
|
|
project(c2probe C CXX)
|
|
set(CMAKE_C_STANDARD 11)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
pico_sdk_init()
|
|
|
|
add_executable(c2probe c2probe.c lock_stubs.c)
|
|
target_link_libraries(c2probe pico_stdlib hardware_gpio)
|
|
|
|
pico_enable_stdio_usb(c2probe 1)
|
|
pico_enable_stdio_uart(c2probe 0)
|
|
|
|
# Generate c2probe.uf2 (and .bin/.hex/.dis/.map) next to the executable.
|
|
pico_add_extra_outputs(c2probe) |