Kappa logo Kappa> Software
I have mostly programmed in BASIC, from the days of the Spectrum, via the 480Z and BBC B. I have owned a RISC OS machine since 1988. From time to time I have used Assembler on all these machines, but nothing very ambitious. I have also taught Logo, and had experience of several other high-level languages.

When I retired I took up a project for a system of Object Oriented BASIC programming, called Basilisk, centered on my Basil module for sharing BASIC libraries. This reached quite an advanced stage, but I then realised that the Toolbox was a better option for much of it, which is reflected in the later Basalt. As part of the work on Basilisk I wrote the RFSFiles module for managing ResourceFS files. This also spawned the RFSApps module when the question of how to remove some of the Resources apps arose.

Since 2002 I have been developing the Basalt module, which provides a very convenient way to include new keywords into BASIC, using machine code routines in a module. The original was been available from 2003. The latest version is not completely backwards compatible, but has considerably more facilities and better coding.

Of interest may be some BASIC libraries. I wrote the DrawIt library so that I could understand Drawfiles, but it might offer a more compact alternative to other options, such as DrawGen, DrawScript or MakeDraw, and it has some interesting features.

I wrote the Strings library to explore a new way to include long strings in Basalt. This has now been implemented.

The Call module was written, as with many things, after a newsgroup discussion about timed events. It lets Wimp and Toolbox tasks set up timed messages to be sent to them after an interval or at regular intervals.

Another request was about handling long integers in BASIC. I had some ideas about how to implement these in Basalt, so I worked these up into the Longs library.

Structures have be high on the list of requirements for BASIC. I have been playing around with ideas for a long time. I have now put them into the Structs library.

After getting my Raspberry Pi in the summer, I have written a module, MCPIO to control IIC bus expander chips. A Basalt keyword is also implemented. MCPIOTest shows how these can be used in a program.

I always welcome (crave) any sort of comment on this software.

Most of the text files with these programs have been written with StrongED, using my mode !Document, but are quite readable without. There may also be StrongHelp manuals.