Hi Alan,
Do you have the "Options > More Options > Program > Serial Number" enabled in meProg?
If so, uncheck it.
It could be overwriting locations in Flash at the beginning of the code space.
Hi Alan,
Do you have the "Options > More Options > Program > Serial Number" enabled in meProg?
If so, uncheck it.
It could be overwriting locations in Flash at the beginning of the code space.
DT
Hi Darrell--
Thank you for taking a look at this! That was, in fact, the problem. I turned off the serial number programming feature and it worked, and I verified that by turning the serial number feature back on, and adding a DEFINE RESET_ORG xx instruction at the top of the code, and it worked as well.
So what is it about the LCD command's presence that makes the code work? Does LCDOUT force a different start for the code?
Thanks--
--Alan
Well, the only difference between the two examples was the additional Library code added by the LCDOUT command.
LCDOUT comes before PAUSE in the .lib file, so when included ... it pushes PAUSE up to a higher address. And since the LCDOUT command was never executed, a memory overwrite wouldn't be noticed, but PAUSE would work now.
If the first example had tried to execute the LCDOUT statement, it probably wouldn't have worked (right) either.
DT
Bookmarks