Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
A minor update, with the following additions:
- Adds the
- Adds the
MSETstatement, this fills memory with the given value.
CLSstatement, clears the screen.
- There is better error reporting in the cross-compiler.
Also, there are more optimizations, the parser is about 20% faster in the Atari and some bugs were fixed in the cross-compiler.
After all the additions, the integer IDE is only 30 bytes bigger at 8186 bytes and the floating-point IDE is 12 bytes bigger at 9453 bytes.
Adds more strings capabilities to the language:
- Strings indexing (sub-strings), via the bracket operator:
A$[Position, Count]. The indexing can be applied to any string expression, including constant strings, so you can write expressions like
X = Asc("123456"[i]).
- String concatenation, with the
A$ =+ " appended".
- String arrays. Note that string arrays don't use memory for the cells that are not assigned, so you can DIM a big arrays and fill only some positions.
Some enhancements to the cross-compiler:
- Better error messages on some errors.
- Optimizations to more constant expressions.
The new integer IDE is 8156 bytes and the floating-point IDE is 9441 bytes.
Some bugfixes and optimizations:
- Fixes floating-point STR$ function.
- Makes the IDE process much larger source lines without "long line" errors.
- Allows joining lines in the editor by pressing DELETE at the end of one line.
- Many simplifications to the editor, making the IDE smaller.
A few bugfixes and enhancements to the language:
- Fixes abbreviation of SOUND to "S.", and adds a "SOUND" with only one parameter to silence one sound voice.
- Adds STR$ function, with integer and floating-point arguments.
Fixes to the IDE:
- Detect bytecode parsing overflows on very big and complex lines, the parser shows the las correctly parsed position in the line on error.
- Turn off al sounds before returning to the editor.
- More simple optimizations to keep the integer-IDE size under 8k.
Fixes to the cross-compiler:
- Allows end-of-line characters inside strings, this fixes compilation of sources in ATASCII that have the $0A (CONTROL-J) character inside strings.
Fixes minor bugs in the cross-compiler:
- include linker script into release ZIPs,
- fixes windows cross-compiler BAT files.
This is a minor release with mostly bugfixes and optimizations:
Fixes in the IDE compiler:
- Fixes parsing of long lines with many ":".
Changes in the cross-compiler:
- Accept ATASCII end of lines in the cross-compiler.
- Adds a new optimization pass to remove redundant I/O channel settings, producing shorter code for PRINT.
Fixes in the IDE:
- Prompt to save file only if there are unsaved changes.
- Allow to cancel New / Quit / Load commands with "ESC", to cancel only the saving of current file, use CONTROL-C.
New release with many enhancements, mayor ones:
- Added string comparison operators,
- Interpreter is about 3% faster in FOR loops and other simple operations. SIEVE benchmark now takes 17 seconds.
- The integer-only IDE is now less than 8KB, the floating point IDE is 9.2kB.
- Cross compiler produces smaller executables by only including used parts of the runtime.
Minor improvements to the IDE and language:
- The IDE now can edit files with lines of up to 255 bytes.
- The IDE is a little faster to parse large files.
- More abbreviations to the statements, The list of abbreviations is in the manual.
Mayor improvements to the cross-compiler and optimizer:
- New scripts for the cross-compilers allows passing options to the compiler and linker, also writes label files for debugging.
- Cross compiler gives better errors in many cases.
- Optimizer for NEG/MUL/DIV/MOD and all bitwise operations.
- Optimizer ignores comments and can span multiple lines.
- Adds tail-call optimizations (replaces CALL/RET with JUMP and JUMP to RET with RET)
And many fixes:
- Optimizer no longer ignores negative numbers,
- Correct corner cases with MOVE / -MOVE, updates docs.
- Cleanup all variables and arrays on run, fixes on memory-clearing function.
- Fixes some cases of integer to floating point comparisons.
- Fixes parsing of NOT with parenthesis and NOT/NOT.
- Fixes errors on line numbers > 255 in the IDE.
- Fixes some corner cases in the IDE editor with lines at top/bottom of screen.
- Parsing of statements after a ':' ignored errors.
A minor bugfix release:
- Fixes a bug with floating-point comparisons
- Adds more usage information to the cross-compiler.
- Adds missing BW-DOS binary.
- Fixes display corruption in the editor.
- Allows comments after any statement.
- Full integer and floating point support,
- Integrated editor (IDE), in standard and integer only versions,
- Cross compiler 100% compatible with native compiler (needs cc65).