Raspberry BASIC

Recent Posts

Pages: [1] 2 3 ... 10
1
BBC BASIC / BBC BASIC for SDL 2.0 version 1.11a released
« Last post by Richard Russell on March 28, 2020, 09:57:11 AM »
I've released version 1.11a 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

    Enabled render batching (in SDL 2.0.10 and later) which should improve graphics performance.

    Rationalised the VDU variables, e.g. ?444 and @vdu%!248 no longer have their previous functions.

    Added @vdu.w{a&,b&,c&,d&}, @size{x%,y%} and @char{x%,y%} to mirror some system variables.

    32-bit x86 editions now support the 64-bit indirection operator (]) as 64-bit and ARM editions always have.

    VDU 27,n (output symbol for character codes 0-31 and 127) now works in VDU 5 as well as VDU 4 mode.

    Changed the default MODE 7 font to be more similar to RISC OS and Matrix Brandy.

    Fixed a bug causing BBCSDL not to run properly if the installation path contained a 'dot' character.

  • IDEs and Utilities

    Updated BBCEdit to version 0.32.4, which fixes a minor bug in the last release.

    Enhanced SDLIDE so that the Tab key inserts eight spaces in the editor.

    Fixed a bug in the Compiler utility which could cause crunching to fail with code containing both 32-bit and 64-bit versions of a structure (e.g. box2dlib.bbc is in this category).

    Fixed a bug in the Search BASIC Programs utility which could cause it to freeze in rare circumstances.

  • Libraries

    The ogllib and gleslib 3D graphics libraries have been modified to improve support for point-source, spot- and directional lights (compatible, as far as I can reasonably achieve, with BB4W).

    The ellipse library has been updated to be compatible with 'render batching'.

    The dlglib library has minor improvements to the textbox and listbox.

    Svein has updated his treeview library to version 3.08, which has improved performance.

  • Example Programs

    Added spotlight.bbc in examples/graphics to demonstrate the different light types available in OpenGL.

    Added pintograph.bbc in examples/physics, a Box2D simulation of a drawing machine originally by Svein Svensson.  This program is compatible with BB4W if the Box2D libraries are installed.

    Added trebuchet.bbc in examples/physics, a Box2D simulation of a trebuchet by David Marples.  This program is compatible with BB4W if the Box2D libraries are installed.

    Modified getri.bbc to report whether render batching is enabled.

    Updated tower.bbc to ensure compatibility with render batching.
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 BBC2APK 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.
2
Programming Challenges / Open Source Ventilator
« Last post by John Spikowski on March 28, 2020, 02:01:08 AM »
There hasn't been a code challenge in a while so this may interest those sitting at home with nothing to do. I'm in the process of forking the open source ventilator project started by the University of Florida. (Project Site) I have setup a new URL (https://BasicVentilator.org) for the project. My plan is to use the Raspberry Pi as it's brains.

My client BIOPAC makes ventilator developer and validation test equipment that I hope to use in this project for validation.

This is backup plan if COVID-19 gets the best of us and we need to resort to a community driven efforts building ventilators from readily available materials.

Send support@raspberrybasic.org a request to join the forum if this project interests you and you want to do something to keep people from dying from the virus.

3
BBC BASIC / BBC BASIC for SDL 2.0 version 1.10a released
« Last post by Richard Russell on February 15, 2020, 02:35:45 PM »
I've released version 1.10a 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

    Bundled the Box2D physics engine (as famously used by the Angry Birds games) with all editions.

    Fixed a bug causing ON GOTO statements to be incorrectly tokenised (64-bit and ARM editions only).

    Improved plotting accuracy of 'thick' diagonal lines, outline circles and outline ellipses.

    Updated the Android edition to SDL 2.0.10.  This has necessitated moving to a different build process (Android Studio) meaning you will need to uninstall then reinstall; see below.

  •   IDEs and Utilities

    Updated BBCEdit to version 0.32.3, many thanks to Andy Parkes for this new release.

    Fixed a minor problem in SDLIDE with pasting Unicode text containing the (a-grave) character.

    Fixed a bug in the Compiler utility which could cause creation of an app bundle to fail on MacOS if the installation path contains a space character.

    Modified the List Variables utility so that a mouse right-click clears the listbox selection.

  •   Libraries

    Added box2dlib.bbc and box2dgfx.bbc to support the Box2D physics engine.

    Fixed a bug in dlglib.bbc which affected the 'Save As' dialogue in SDLIDE, also improved operability by the Amazon Fire TV remote.

  •   Example Programs

    Added kaleidoscope.bbc in examples\graphics, adapted from David Williams's BB4W demo.

    Added three Box2D demonstration programs in examples\physics; these are also compatible with BBC BASIC for Windows if the Box2D libraries are installed:

     crates.bbc:  Falling boxes; on mobile devices tilting the screen has an interesting effect!
     dangle.bbc:  Touch the screen or use the mouse to grab the chain; also responds to tilting.
     lotto.bbc:   A simulation of a lottery selection machine.  Sorry, there's no prize if you win!

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).

If you are using the iOS edition you should install this latest release to update the certificate, otherwise BBC BASIC will stop working when the current certificate expires on 23rd February.

If you are using the Android edition you will need to uninstall the previous version before installing this one.  Please check whether you have any personal files or folders stored in @usr$ and back them up (e.g. via a USB connection to a PC) so you can restore them after re-installation.

Please remember that if you use the BBC2APK 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.
4
Programming Challenges / Re: GUI Login
« Last post by John Spikowski on February 12, 2020, 04:49:51 PM »
I got things setup here. It's now up to the forum members to make it work.

We all have to eat and pay bills before heading to the sandbox.
5
Programming Challenges / Re: GUI Login
« Last post by jalih on February 12, 2020, 03:53:39 PM »
Hi all,

I have been busy beta testing next version of 8th. JUCE based gui is out and the new gui is Nuklear based. I have to say, I like it more than JUCE based gui.

Sorry to hear John that you don't have much time for fun programming. I just started writing this;D
6
Programming Challenges / Re: GUI Login
« Last post by John Spikowski on February 11, 2020, 08:46:30 PM »
Hi AIR,

Glad you chimed in with an update of what is going on. I have been wrapping up some health issues and seem to be getting back to my old self. I just picked up a project and won't have much time for fun programming for a bit. I'm going to try an use Nim as part of the solution.
7
Programming Challenges / Re: GUI Login
« Last post by AIR on February 11, 2020, 04:02:42 AM »
So how are your NIM adventures going, John?

Sorry I haven't been around lately - 14 hour days at work while moving into a new home doesn't leave a lot of time for anything...

AIR.
8
BBC BASIC / Re: BBC BASIC for SDL 2.0 version 1.09a released
« Last post by John Spikowski 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.
9
BBC BASIC / Re: BBC BASIC for SDL 2.0 version 1.09a released
« Last post by Richard Russell 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.
10
BBC BASIC / Re: BBC BASIC for SDL 2.0 version 1.09a released
« Last post by John Spikowski 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.
Pages: [1] 2 3 ... 10