[Return to top]

Enhanced BASIC, update by Lee Davison
[Back]


Download version 1.10 source [Download].

25th April 2003.

The LIST command has changed internally to use the same tables that are used for tokenising by EhBASIC. This removes the need to keep two tables of keywords maintained. The downside is that the size has increased but the speed of the LIST command is better.

There have also been changes to the table orders, all byte sized data tables are now at the end so I no longer have to worry about word and longword tables being correctly aligned. Other small changes have been made to progress the code to becomming pure, i.e. both relocatable and reentrant, for possible use in multitasking systems.

The version number is now 1.10. Enjoy.

16th April 2003.
A fix to the math routines reduces errors in some cases. This was due to a potential carry being ignored and some results being truncated instead of rounded. The result of this is that ..
PI * PI / PI / PI - 1
.. now = 0 instead of -4.65661E-10 and ..
COS( 3 * PI / 2 )
.. now = 0 instead of -1.05849E-5

The version number is now 1.09. Enjoy.

14th April 2003.
Small changes to the way strings are compared which prevents A$="" from failing sometimes even when A$ is null. Also a change to the LOOP command which could sometimes terminate program execution if it was conditional on a string compare.

The version number is now 1.08. Enjoy.

11th April 2003.
Some changes to the way INPUT and READ parse the data stream. This also corrects some inconsistencies in the way different types of data (string, hex integer or floating) were handled.

The version number is now 1.07. Enjoy.

9th April 2003.
Some small changes to the way long integers are handled.

The version number is now 1.06. Enjoy.

28th March 2003.
An undocumented feature of the SQR() function was that it returned zero for roots in the 0.5 to 0.999999 range. This has been fixed.

The version number is now 1.05. Enjoy.

13th March 2003.
More internal changes and a fix to DEEK() and LEEK() which I'd managed to break. There has also been an update to the language reference.

The version number is now 1.04. Enjoy.

7th March 2003.

Minor changes to speed critical code and some internal functions modified. Simulator specific code changed to take advantage of updated features.

The behaviour of LEFT$(), RIGHT$() and MID$() have been changed. Now if the length of the required string is zero then a null string will be returned. MID$() has been changed so that a starting point beyond the end of the referenced string will return a null string. Also all string function values can now go up to 65535 which is the maximum string length.

Weeded out two instances where the result of a calculation could be minus zero. While there may not be much difference numerically, between plus and minus zero, when a function is expecting a positive value it will often choke on minus zero.

The version number is now 1.03. Enjoy.

5th March 2003.

Some small patches to code and a change in the way the power function works. Now if you raise a negative value to an integer power the sign is calculated correctly, also raising a negative number to a fractional power will now give a 'Function call' error.

The version number is now 1.02. Enjoy.

4th March 2003.

Due to a connection problem I never did get the source, mentioned below, uploaded. So to make up for it there are a few less undocumented features in this version. As a result the version is now 1.01. Enjoy.

3rd March 2003.

Just a small update and, as it was only yesterday I released the source there's no version increment for this one.

Fixed a small undocumented feature with the LIST command and added ASCII SAVE and LOAD capabilities. To SAVE a program as ASCII just append the SAVE command with ,a. For more details see the language reference.


e-mail me [e-mail]
Last page update: 25th April, 2003.