The latest additions to the BBC BASIC for Windows online documentation, libraries and example programs are as follows:
The version number of BBC BASIC for Windows consists of a numeric part and a letter. If only the letter is changed, it signifies a trivial or cosmetic change, or a minor bug-fix. In general such changes will not affect any existing programs. If the numeric part is changed it signifies a more significant alteration or a bug-fix which might affect the operation of existing programs (for example if a program has inadvertently taken advantage of the presence of a bug).
The current version of BBC BASIC for Windows is 6.14a. If you have an older version and are unable to use the automatic upgrade facility please send an email giving your name and address and quoting your serial number. The following table details changes which have taken place since the beginning of 2006:
Version | Date | Modification summary (click on the version number for details) |
---|---|---|
6.14a | 07-Apr-2021 | Fixed some bugs, TIME is now signed, new SYS() function, PTR() extended, MODE 7 enhancements, *TEMPO extended, new libraries and example programs. |
6.13a | 16-Mar-2020 | WIDTH() bug fixed, 64-bit indirection added, reorganised VDU variables, VDU 27,n works in VDU 5 mode, many new example programs. |
6.12a | 22-Sep-2018 | New features: PTR(string$), SYS ... TO double#, <<< operator; REM!NoPrinter compiler directive, Goto Line in program editor. |
6.11a | 16-Jul-2017 | Fixed *HARDCOPY bug, *DISPLAY and *MDISPLAY accept top-down BMP files and support horizontal/vertical flipping. |
6.10a | 05-Apr-2017 | String parameter instability reports error 31, *(M)DISPLAY accepts transparent colour, WIDTH(string$) supported, minor IDE changes. |
6.02a | 05-Mar-2016 | Fixed GET$#file bug. Fixed SOUND sync bug. Fixed minor cruncher bugs. Fixed minor IDE bugs. *LIST is affected by *LOWERCASE. Assembler uses more efficient encodings. |
6.00a | 01-Jan-2015 | 40-bit floating-point variables removed, 80-bit variants added, 64-bit integers added, unlimited-length strings, *FLOAT 80 and *HEX commands, overstrike font, REM!Fast directive. |
5.95a | 30-Dec-2013 | Trial memory limit doubled, touch-screen support, improved support for 64-bit Windows, auto encoding detection, Windows 8.1 compatibility manifest, List Variables bug fixed. |
5.94a | 01-Sep-2012 | Added editor support for Unicode and bi-directional text, new -c command-line switch, 4-voice SOUND, *TIMER command, enhanced GET$#file TO terminator%, bugs fixed. |
5.93a | 21-Jun-2011 | Minor bugs in INSTALL, GET$# and DIM fixed; new Compile dialogue layout; RETURN <destination>, GET$#file BY count% and GET$#file TO terminator% added. |
5.92a | 01-Jan-2011 | Compiled executables can be compressed, signed and have resources incorporated; keyboard accelerators are supported; the F-format digit limit can be overridden; add-in utilities are included; bugs fixed. |
5.91b | 01-Jul-2010 | IDE works correctly with taskbar at top, cruncher accepts RESTORE LOCAL, MOUSE is once again compatible with Wine, PAVGW supported in assembler. |
5.91a | 02-Jan-2010 | Added ON ERROR LOCAL OFF, RESTORE LOCAL, TRACE STEP ON|OFF, fewer restrictions on use of continuation lines, improved support for assembler programming. |
5.90b | 11-Apr-2009 | Fixed bug causing VAL"\" to return an error. Fixed bug causing labels to interfere with error reporting. |
5.90a | 01-Jan-2009 | Runs faster; added native Unicode support; new @tmp$, @usr$ & @vdu{} system variables; editor Tab key can be programmed; Utilities menu can be customised. |
5.80a | 07-Jan-2008 | Added features to aid conversion from QBASIC; improved support for console mode programs; support for high-numbered I/O ports (e.g. COM10:); support for right-to-left (etc.) printing. |
5.70a | 02-Sep-2007 | Added @ox% and @oy%. @vdu%!252 controls cursor width. DIM({struct{}) returns size. struct.array&() returns string. *FONT can select symbols font. LOCAL arrays are aligned. Drag-and-drop files into editor. |
5.60b | 07-May-2007 | Fixed 'Run To Cursor' bug. |
5.60a | 05-May-2007 | EXIT statement added. Step Line added. REM!Eject forces new page. REM!Keep can keep procedure/function names. Confirm exit if output window open. A few minor anomalies fixed. |
5.50b | 04-Jan-2007 | Fixed minor bug in crunch utility. |
5.50a | 01-Jan-2007 | EXT#chan= sets file length. QUIT n sets exitcode. New *SYS1 messages. Can make console programs. Compiler directives. Improved Vista compatibility. New print highlighting. Different program icon. A few minor anomalies fixed. |
5.40a | 01-Nov-2006 | Assembler accepts jmp "APIfunction". SPC(-ve value) ignored. Ctrl-Tab no longer a hotkey. *TEMPO accepts values >5. A few minor anomalies fixed. |
5.30a | 01-Sep-2006 | Structures dword-aligned. Small icon used if present. Context menu enhanced. Improved error trapping. Faster RND function. A few minor anomalies fixed. |
5.21a | 01-Jun-2006 | Fixed incompatibility with Input Method Editor (IME), affecting some Windows configurations. Fixed minor bug affecting nested CASE statements. |
5.20a | 27-May-2006 | Variable 'cache' added. List Variables sorted alphabetically. Title bar format changed. ERROR 100,"" bug fixed. Stop button closes dialogue boxes. |
5.10b | 01-Apr-2006 | Restored trailing \ on @lib$ (BBCWRUN.EXE only) |
5.10a | 01-Apr-2006 | Beginners' tutorial incorporated. Embedded files can be in subdirectories. NUL-terminated strings supported. A few minor bugs corrected. |
5.01a | 05-Feb-2006 | Fixed slow emptying of large string arrays. Fixed wrong EXE timestamp (Win9x). 'Go back' restores editor scroll position after run-time error. |
5.00a | 15-Jan-2006 | A major new release incorporating many enhancements. |