| Posted: 10:14pm 18 Oct 2026 |
Copy link to clipboard |
 Print this post |
|
RC2: LOAD without ,C bricks the board ("Program damaged: symbol table")
Loading a large program (about 256K with comments) without ,C gives an endless loop:
Error : Program damaged: symbol table [1034] Sub ? RESET does not help, only nuke + reflash + restoring the options (A: survived). With ,C it loads fine (136K).
Cause, I think (tag RC2, unchanged in main): - SaveProgramToFlash() writes the text with symbols first. If the text or SymTableSize() does not fit, exiterror only ends the image with zeros, so the program has symbols but no table. - PrepareProgram(false) at every prompt -> NameView() -> SymDamaged() -> error() regardless of ErrAbort. That sends it back to the prompt, which errors again, endlessly. The same happens at boot.
Fix idea: erase the slot (or save as text) in exiterror, and treat a symbol image without a table as invalid at boot, like LibraryImageValid().
PicoMitePC3 MMBasic USB RP2350B Edition V7.00.00RC2 OPTION SERIAL CONSOLE COM2,GP8,GP9 OPTION SYSTEM I2C GP20,GP21 OPTION FLASH SIZE 16777216 OPTION COLOURCODE ON OPTION KEYBOARD GR, 0, 1, 200, 75 OPTION HEARTBEAT OFF OPTION PICO OFF OPTION RESOLUTION 640x480 @ 315000KHz OPTION HDMI PINS 1, 3, 5, 7 OPTION WIFI behofam, *****************, Pico3, DE OPTION TELNET CONSOLE ON OPTION SDCARD GP33, GP30, GP31, GP28 OPTION KEYBOARD REPEAT 200,75 OPTION AUDIO I2S GP10,GP22', ON PWM CHANNEL 11 OPTION RTC AUTO ENABLE OPTION COUNT GP34,GP35,GP36,GP37 OPTION COMPILE ON OPTION PLATFORM PICO COMPUTER 3 OPTION PSRAM PIN GP47
Matthias |