- 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