Raspberry BASIC

Author Topic: BBC BASIC for SDL 2.0 version 1.09a released  (Read 6197 times)

Richard Russell

  • Moderator
  • *****
  • Posts: 66
    • View Profile
BBC BASIC for SDL 2.0 version 1.09a released
« on: January 17, 2020, 11:33:56 PM »
I've released version 1.09a of BBC BASIC for SDL 2.0 - the cross-platform programming language for Windows, MacOS, Linux, Raspbian, Android and iOS.  The changes in this version are as follows:

  •   BASIC Interpreter / Run Time Engine

    Worked around a regression in SDL 2.0.10, which caused the fern demo not to run on some platforms.

    Improved compatibility with GCC 4.9.

  •   IDEs and Utilities

    SDLIDE: Added the Memory Usage Monitor (similar to the BB4W equivalent) to the Utilities menu.  Now you can find out how close your program is to running out of memory (or whether you have allocated much more memory than you need!).  The BASIC program must be run in Debug mode for this to work.

  •   Libraries

    Modified dlglib.bbc to improve the responsiveness of the listbox to slow mouse button clicks.

  •   Example Programs

    Updated Ceefax.bbc (and capitalised its name!) to include Weather, Traffic and Local News pages, and to be navigable using an Amazon Fire TV remote.  With the demise of the BBC's digital ('red button') text service at the end of this month, this is my attempt to provide a substitute!  This program also runs in BBC BASIC for Windows if you copy 'Bedstead-ext.otf' into BB4W's LIB directory.

This new version may be downloaded, for all the supported platforms, from the usual location.  The GitHub repository has been updated (used to build the MacOS, Raspbian, iOS and 64-bit Linux editions, currently).

Please remember that if you use the Android Application Generator you should download a new APK template to ensure that any updates to the run-time engine are incorporated in your own apps.

John Spikowski

  • BASIC Developer
  • ***
  • Posts: 234
    • View Profile
    • ScriptBasic
Re: BBC BASIC for SDL 2.0 version 1.09a released
« Reply #1 on: January 18, 2020, 08:25:06 AM »
Thanks Richard for the update!

Glad you're hanging in there keeping BASIC in the forefront.
ScriptBasic Project Manager/Facilitator

Richard Russell

  • Moderator
  • *****
  • Posts: 66
    • View Profile
Re: BBC BASIC for SDL 2.0 version 1.09a released
« Reply #2 on: January 18, 2020, 05:21:34 PM »
Glad you're hanging in there keeping BASIC in the forefront.

I'm not sure for how much longer I'll be maintaining the current every-six-weeks (or so) release schedule.  BBC BASIC for SDL 2.0 is getting quite mature now and there's not much that its 'senior' cousin BBC BASIC for Windows can do that BBCSDL can't (apart, obviously, from Windows API-specific things).

One major upgrade which I do hope to achieve is support for the Box2D physics engine (famously behind the Angry Birds franchise) which has been available to BB4W programmers for some years but not yet to BBCSDL programmers.

John Spikowski

  • BASIC Developer
  • ***
  • Posts: 234
    • View Profile
    • ScriptBasic
Re: BBC BASIC for SDL 2.0 version 1.09a released
« Reply #3 on: January 18, 2020, 06:16:29 PM »
Great to hear you're approaching production stable status.

ScriptBasic core hasn't changed since 2005.

 If I don't see more members joining the forums I facilitate,  I may put the $130 a month I spend for a AWS server to better use and move everything to GitLab.
« Last Edit: January 18, 2020, 06:18:53 PM by John Spikowski »
ScriptBasic Project Manager/Facilitator

Richard Russell

  • Moderator
  • *****
  • Posts: 66
    • View Profile
Re: BBC BASIC for SDL 2.0 version 1.09a released
« Reply #4 on: January 18, 2020, 08:07:05 PM »
ScriptBasic core hasn't changed since 2005.

For some while my updates have principally been adding to or improving the IDE, libraries, tools and example programs rather than the 'core'.  It's one of the big differences between BBC BASIC for Windows and BBC BASIC for SDL 2.0 of course; in the former the IDE was written in C because at the time (18+ years ago) interpreted BASIC wasn't fast enough for that task.  Now, only the core interpreter needs to be written in assembler code and/or C, everything else (IDE, libraries, tools, utilities) can themselves be written in BASIC, because the performance is acceptable.

One valuable side-effect of all these add-ons being themselves coded in BASIC is that they are automatically CPU and OS-agnostic and will run on all the supported platforms without a build environment (C compiler, linker or whatever) - or the expertise to use it - needing to be available.

John Spikowski

  • BASIC Developer
  • ***
  • Posts: 234
    • View Profile
    • ScriptBasic
Re: BBC BASIC for SDL 2.0 version 1.09a released
« Reply #5 on: January 20, 2020, 02:09:08 AM »
Quote
One valuable side-effect of all these add-ons being themselves coded in BASIC

Couldn't agree more. That is why the C extension modules I write are done in C BASIC.

The reason Nim is attractive is that it's extension are written in Nim.
« Last Edit: January 20, 2020, 03:32:58 AM by John Spikowski »
ScriptBasic Project Manager/Facilitator