robert.rozee Guru
 Joined: 31/12/2012 Location: New ZealandPosts: 2428 |
Posted: 12:41pm 28 Nov 2021 |
|
|
|
hi peter, geoff, possible bug in: PicoMite MMBasic Version 5.07.01b5
if an xmodem transfer is initiated by pressing F11 (or typing XMODEM RECEIVE) and cancelled by the remote end sending ctrl-X, then the program stored in RAM is erased. no "Saved xxxx bytes" message is displayed.
with MX170 based micromites, this does not occur - any program that was previously loaded remains intact, only being overwritten once the transfer has been fully completed without error.
solution: 1. at the least, any program held in RAM should not be erased until the first XMODEM packet from the remote end has been successfully decoded. this should be a simple fix and in practice be an adequate solution.
2. far better: any transfer should be initially saved to the variable RAM space, and only copied over to the program RAM space once the XMODEM RECEIVE transfer has been fully completed without error.
3. another approach: upon an XMODEM transfer being cancelled, reload the copy of the program (that had been in RAM) from the flash backup copy. (would this work in all cases?)
cheers, rob :-) Edited 2021-11-28 22:59 by robert.rozee |