v.1.50 Release candidate 2
The source for this version was found on the origianal CVS repo, re-built and presented here.
1.50 10 Jul 2005 [Jon] (Release candidate 2)
- Fixed bug in CASE handling which prevented compiling
on some implementations
1.50 09 Jul 2005 [Jon] (Release candidate 1)
- Added -t prints $var=cell line for bfdebug
- Added FOR...STEP (for -ve STEP use 0-#)
- Added SELECT CASE flow control, can be nested
SELECT CASE expr, CASE expr, END SELECT, EXIT SELECT - Added INCLUDE for inline compilation of external files
- Added LIBRARY to INCLUDE libraries at end of program
- Change: Display filename on compile error
- Line number correct for current file
1.42 30 Jun 2005 [Jeff]
- Added --?, --help, /? (same as -?)
- Added -dd (same as -D)
- Added -ddd, purely debug mode
- -dd and -ddd do not print @ as last char of file
- Changed default extension to .b instead of .bf
- -ddd prints $var=cell line for bfdebug
1.41 29 Jun 2005
- FOR...NEXT code rewritten, speed/size improvements and
"FOR var = 0 TO 255" now works! [Jon] - Instances of "#" changed to "(hash)" in debug output to
prevent accidental breakpoints [Jon]
1.40 21 Mar 2005
- Added -w option [Jon]
- REM comments show up in debug mode [Jon]
- Modified -o option so that the "-o" is optional [Jon]
- STOP statement now prints "Stopped" [Jon]
- Reworked labels for more speed [Jeff]
- The number of labels is now limited only by available memory [Jeff]
- ONGOTO removed, it is not supported by the new labels [Jeff]
- Code cleanup and fixes [Jeff]
- Changed -w to wrap debug output too [Jeff]
- Fixed bug that allowed SYSTEM to be misused (ex: SYSTEM IF) [Jeff]
- Ported over the better BFASM array code [Jeff]
- Added optimization levels. -O2=default
- Added -O2, rearranges variables for smaller and more efficient code [Jeff]
- Replaced high/low add-to loops with straight +/-. Smaller! [Jeff]
- Numerical constants in expressions can now be optimized [Jeff]
- Added "+" and "-" numerical constant optimizations [Jeff]
- Fixed bug that allowed statements such as "A=()" [Jeff]
- Added -O3, assignments skip a temp variable. Code is larger,
but should be slightly faster on optimizing interpreters (BROKEN!) [Jeff] - Implemented new GOSUB and RETURN, very slow :( [Jeff]