Monday, May 1, 2017

Well, lack of testing clearly reared it's ugly head.

The LIST command barfs on ELSE because it does a range check on valid tokens and it goes into an endless loop.  I have already added a special case to deal with this and LIST now works, but it does expose a problem with the list command.  It should not go into an endless loop when an invalid token is encountered.  This is a bug in the original code that will eventually need to be fixed.

The other problem is that ELSE needs a : in front of it in order to prevent the interpreter from crashing hard.  This one might take more than a couple minutes to figure out, but it's likely to be in the routine that scans for characters.

The ROM image with a fixed LIST command has replaced the original version.
I don't have time to track down the other problem at the moment, but if I have time, it will be fixed today. ELSE will need a colon in front of it until then.


No comments:

Post a Comment