- board_detection: Added early exit for newer boards and tightened the sampling loop to reduce CPU overhead.
- captureSubQ: Simplified clock-edge synchronization and localized buffers to improve register allocation.
- performInjectionSequence: Replaced bit-calculation math with a streamlined byte-shift approach. Refined WFCK modulation to ensure zero-jitter phase locking.
- logic_Standard/5903: Refactored pattern matching into a decision tree. Factorized redundant buffer checks (scbuf[1]/[6]) and replaced multiple equality tests with range comparisons.
Optimization results:
- Reduced Flash memory footprint (smaller binary size).
- Improved execution speed by removing redundant logical operations.
- Increased signal stability during the critical injection phase.
Removal of ISR and reduction of code in the BIOS patch, for improved portability and robustness.
For now it is only available for the SCPH-100 and 102.
performInjectionSequence(): Deep refactor with a cleaner.
captureSubQ(): Faster bit-banging and improved timing accuracy.
board_detection(): Optimized logic .
General Cleanup: Fixed all warnings and minimized memory footprint.
Modular breakdown: Separated main logic into
- captureSubQ,
- logic_SCPH_5903,
- logic_Standard,
- performInjectionSequence.
Added support for SCPH-5903 by RepairBox
Co-Authored-By: RepairBox <33960601+danielfergisz@users.noreply.github.com>
removal of the ISR(CTC_TIMER_VECTOR) function, and all its dependencies.
- Timer_Start
- Timer_Stop
modification
- Board detection
- inject_SCEX
- BIOS_PATCH
- MCU
- Setting
Refactoring of the setting file, to be able to have settings specifying the HYSTERESIS_MAX variable.
Renamed precompilation variable in BIOS_patching file.
Changing console selection in .ino file
Fixed the MUC-MCU file name.
Fixed a bug that prevented additional MCUs from being compiled.
Modified the clock registers for ATtiny 48-88s; the TCCROB register is missing in these MUCs.