BBC BASIC for Windows version 6.16a released

New releases of BB4W and BBCSDL, and other updates, will be announced here
Richard Russell
Posts: 338
Joined: Tue 18 Jun 2024, 09:32

BBC BASIC for Windows version 6.16a released

Post by Richard Russell »

I have released version 6.16a of BBC BASIC for Windows; this is a maintenance release to bring the interpreter functionality into line with BBC BASIC for SDL 2.0. The changes are as follows:
  1. BASIC Interpreter / Run Time Engine

    Added array slicing, using the syntax: array(first TO [last]) or array(row, first TO [last]).

    Compound assignment and array arithmetic now also accept the exponentiation operator '^'.

    Improved the plotting accuracy of small circles, arcs, ellipses etc.

  2. Libraries

    (These improve compatibility with BBC BASIC for SDL 2.0).

    Added AAGFXLIB, compatible with the BBCSDL library of the same name.

    Added MYSQLLIB, compatible with the BBCSDL library of the same name.

    Added WEBGLLIB, compatible with the BBCSDL library of the same name.

    Updated ARRAYLIB to support creating alias arrays from slices of 1D and 2D arrays.

  3. Example Programs

    (These are all similar, or identical, to the equivalent examples in BBCSDL).

    Added BUGS and RUBIK in EXAMPLES\GAMES.

    Added CALCULATOR, CEEFAX, FILTERS and MYSQLDEM in EXAMPLES\GENERAL.

    Added SMITHCHART, SOCCERBALL and TRUCHET in EXAMPLES\GRAPHICS.

    Added BBCLOCK, LOTTO and SPINMAZE in EXAMPLES\PHYSICS.

    Added BAUBLE and FIGLEAF in EXAMPLES\SOUNDS.
To upgrade the full (paid-for) version of BBC BASIC for Windows to v6.16a download and install upgrade.exe; remember that you are allowed to install it on multiple computers so long as only one copy is in use at any given time. To upgrade the trial version (or install it from scratch) download and install bbcwdemo.exe. It is possible that these executables may trigger security alerts until they have acquired a reputation for safety.
User avatar
hellomike
Posts: 192
Joined: Sat 09 Jun 2018, 09:47
Location: Amsterdam

Re: BBC BASIC for Windows version 6.16a released

Post by hellomike »

Marvelous.

Can you provide an example what you mean by "Compound assignment and array arithmetic now also accept the exponentiation operator '^'".

Thanks

Mike
Richard Russell
Posts: 338
Joined: Tue 18 Jun 2024, 09:32

Re: BBC BASIC for Windows version 6.16a released

Post by Richard Russell »

hellomike wrote: Tue 01 Apr 2025, 19:31 Can you provide an example what you mean by "Compound assignment and array arithmetic now also accept the exponentiation operator '^'".
Previously, both compound assignment and array arithmetic supported the following operators: + − * / AND OR EOR DIV and MOD. There's no obvious reason (at least, none that I can now think of) why ^ was omitted from that set, so I've added it.

What concerns me somewhat is that its omission, originally, seems to have been so deliberate that perhaps there was indeed a good reason, which I have since forgotten! I have asked the author of Matrix Brandy BASIC if he can think of any reason why that operator shouldn't be supported, and he can't.

In Sophie's ARM BASIC 5 only + and are supported by compound assignment and + − * / by array arithmetic. When I developed BBC BASIC for Windows (more than 23 years ago) it was obviously desirable to extend that to more operators, but why I omitted ^ is a complete mystery. :?
User avatar
hellomike
Posts: 192
Joined: Sat 09 Jun 2018, 09:47
Location: Amsterdam

Re: BBC BASIC for Windows version 6.16a released

Post by hellomike »

No worries. Thanks.

After running UPGRADE.EXE the IDE is now version 6.16a.
I guess I did something wrong because "C:\Program Files (x86)\BBC BASIC for Windows" has a file "BBCWRUN.NEW" and "bbcwrun6.exe" hasn't been upgraded. I figured something was wrong when double clicking "SOCCERBALL.BBC" gave "missing )", yet running it from the IDE worked.....

I renamed "bbcwrun6.exe" to "bbcwrun6OLD.exe" and renamed "BBCWRUN.NEW" to "bbcwrun6.exe". Now runtime engine is also on 6.16a.

Mike
Richard Russell
Posts: 338
Joined: Tue 18 Jun 2024, 09:32

Re: BBC BASIC for Windows version 6.16a released

Post by Richard Russell »

hellomike wrote: Wed 02 Apr 2025, 09:30 I guess I did something wrong
It's more likely that your Virus Scanner / Security Suite was to blame. bbcwrun6.exe has always been prone to trigger virus alerts until a reputation for safety has been established; I assume this is because it exhibits what is considered to be 'suspicious' behaviour that is picked up by the heuristic detection process.

Also, unlike the other executables in the package, it's not signed (signing happens, if you've set it up, when a 'compiled' executable is built from bbcwrun6.exe, your program, libraries and other resources). So unfortunately it can end up being quarantined, with the result being what you observed. There's nothing I can do about that.

Signing executables yourself has become more of a pain too. I recently had to renew my Code Signing Certificate, and whilst all the previous ones were supplied as a file that I could copy onto different machines, the new one is a secure USB dongle that has to be plugged in at the time. There's also no way to enter the password automatically.

One slightly unfortunate consequence is that if you do set up code signing in the BB4W IDE the password prompt is opened 'minimised' (in the task bar) and if you don't notice it the 'compile' operation can appear to have hung.
User avatar
hellomike
Posts: 192
Joined: Sat 09 Jun 2018, 09:47
Location: Amsterdam

Re: BBC BASIC for Windows version 6.16a released

Post by hellomike »

Well, most probably it was something like that. Although I have no special suite rather than build-in Windows (10) Defender. Scanning the Upgrade.exe, which is still in the Download folder, does take some time but doesn't result in warnings.

Ah well, never mind.

All in order now.
Richard Russell
Posts: 338
Joined: Tue 18 Jun 2024, 09:32

Re: BBC BASIC for Windows version 6.16a released

Post by Richard Russell »

hellomike wrote: Wed 02 Apr 2025, 19:29 Well, most probably it was something like that. Although I have no special suite rather than build-in Windows (10) Defender.
If it wasn't your virus scanner, another possibility is that bbcwrun6.exe was in use at the time, and therefore locked.
User avatar
hellomike
Posts: 192
Joined: Sat 09 Jun 2018, 09:47
Location: Amsterdam

Re: BBC BASIC for Windows version 6.16a released

Post by hellomike »

Actually..... I think it indeed was! It's a program that starts together with Windows in the morning which therefor has become so common I didn't realize.
Funny stuff.
nvingo
Posts: 42
Joined: Sat 28 May 2022, 22:40

Re: BBC BASIC for Windows version 6.16a released

Post by nvingo »

hellomike wrote: Wed 02 Apr 2025, 09:30After running UPGRADE.EXE the IDE is now version 6.16a.
.....
I figured something was wrong when double clicking "SOCCERBALL.BBC" gave "missing )", yet running it from the IDE worked.
I received the same error when I copied Richard's Spinning Tetrahedron listing from the facebook post, to BBCSDL in Windows.
I then downloaded the fresh installer and once installed I pasted the same clipboard text into the IDE and this time it ran perfectly.
That was old version 1.30a and current 1.41a.
Started using BASIC circa 1981 with CP/M, Video Genie, Sinclair ZX81, Acorn Atom, and progressed with ZX Spectrum, BBC Micro and Sinclair QL, Cambridge Z88, DOS, Windows. Wrote A-level project using school's BBC Micro with dual 800K floppy drive.
User avatar
hellomike
Posts: 192
Joined: Sat 09 Jun 2018, 09:47
Location: Amsterdam

Re: BBC BASIC for Windows version 6.16a released

Post by hellomike »

Not really the same because for me it happened after upgrading to the latest BB4W version.