ee64fb85a9e43519de84a4b2387c646dc416354d
- Fix state_esp init bug: crt0.s never runs GSINIT and hex2bin fills unbacked memory with 0xFF (not 0), so a plain zero-init global always read 0xFF on load; give it a real 0xFF sentinel initializer instead. - Vendor demyanenko-d/VGMPLAY.WMF's wc_api library (SDCC 4.6.0 + --sdcccall 1) instead of hand-rolled PRSRW/PRIAT wrappers, which corrupted esp32 file loading in three different shapes; colored "File:" caption now works. - Trim shared-file footprint: vendor only the esp32.c functions actually used, drop unused sdklib.h/sdk.lib linkage. - Re-enable periodic live stats (Pattern/Row/BPM/Time/progress bar). - Limit playback to one loop via TRACK_SET_PARAMS/MAX_LOOP_COUNT, and auto-advance to the next file when a track finishes on its own (detected via a PLAYING->STOPPED ESP_REG_TRACK_STATUS transition). - Pin the Z80 clock to 14MHz for the whole plugin lifetime so esp32 SPI wait-loop timeouts (raw iteration counts, not real time) don't depend on whatever turbo setting was active before the plugin started. - Pad TRACK_INIT's timeout well past the firmware's 5s song-length measurement cap (XM_MEASURE_MAX_US). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Description
Плагин для Wild Commander воспроизводящий xm, xmz и s3m файлы через ESP32 (ZiFi32)
369 KiB
Languages
C
49.1%
Assembly
48.9%
Batchfile
2%