So, assuming you can get SE Basic 4.2 running on a ZX-Evo, what does that get you? Well this is what's already implemented:
- 80 x 24 text console with definable foreground and background colors.
- Keyboard buffer (fewer dropped key strokes, easier to edit long lines)
- Improved editor navigation (up and down in an edit line; Del, Home, End, Pg Up, Pg Dn keys)
- 8-bit fonts. All 256 characters are user definable. Native code page is IBM 437. Windows code pages 1250 to 1255 are also provided.
- Up to 134 tokens available for functions and commands.
- Single letter token entry with abbreviations. Any character from code 32 to 255 can also be entered directly using Control or Meta modes.
- Standard 16 color EGA palette.
- Data (keyboard lookup, tokens, error messages) stored in RAM. This enables localization in software without recompiling.
- Error messages are null terminated. This means error messages can contain characters 128 to 255.
- LET is optional and ' is permitted as a substitute for REM.
- New system variable stores date and time in POSIX (unsigned) format.
- Built-in file commands read and write headerless files direct to and from the SD card.
- Application package format.
You can learn more about it here: https://zx.itch.io/sebasic4
And you can see the currently released source here: https://github.com/cheveron/sebasic4
For those interested in the technical side, aside from the OS ROM there are two 16K ROMs. The first is a boot ROM which sets up the framebuffer in bank 7 and copies the second part of BASIC to RAM. THe second is the first part of BASIC. After initialization, BASIC occupies about the first 24K of RAM. The sceen is always paged out except when it's being written to. This leaves more room to add features to BASIC and prevents the need for constantly swapping ROMs.
Happy to answer any questions and provide support, especially if anyone is interested in adding TR-DOS support.