As many of you will know, I have had to abandon (or at least mothball) BBC BASIC for Linux, which is very annoying. Although I have only been working on it for about three weeks it will be a great shame if it all goes to waste. Why does 'politics' (in this case the old Open Source versus Closed Source issue) have to intervene in what should ideally be a purely technical pursuit?
I can at least give you a taste of what might have been. At this link you will find a gallery of screen-shots from some of the example programs (as supplied with BB4W) running 'natively' (via SDL) on Ubuntu 14.04:
http://www.rtrussell.co.uk/bbclinux/gallery.html
Many of these programs required minor modifications to run under BBC BASIC for Linux, often for trivial reasons such as having to replace a SYS "Sleep" with a WAIT or because the syntax of *FONT is slightly different. In a few cases more involved changes were required, e.g. to replace a native Windows menu with a plain BASIC equivalent. But it's noteworthy that SKATERS.BBC runs perfectly with no changes required (BBC BASIC for Linux implements the 'CD quality' sound available in BB4W only via the HQSOUND library).
Richard.
The observant amongst you might have noticed that CLOCK.BBC wasn't one of the example programs included in the gallery. That's not because it was difficult to adapt (the main change was to use BMP rather than JPG images) but because it makes heavy use of the TINT() function, which is very slow in BBC BASIC for Linux (this is because getting data back from an OpenGL surface is inefficient). I have now restructured the program so that it doesn't use TINT() at all, and it runs much faster; I've also added a screen grab to the gallery.
Richard.
Given that SDL uses OpenGL under the hood (on most platforms) it was somewhat ironic that one example program I had not succeeded in adapting to 'BBC BASIC for Linux' was OPENGL.BBC itself. I have now resolved that difficulty and added a screenshot to the gallery.
Richard.