The 80's are so now, as hot on the heels of the RISC OS' Raspberry Pi debut comes the equally retro-tastic news that the BASIC version used in the Sinclair ZX Spectrum can also run on the Pi. The BASIC in question is SpecBAS, is a project run by a chap called Paul Dunn. Full Pi support came to the project with the recently- …
This is excellent news. I can add Sinclair BASIC back onto my CV.
"Man ports old code to new variant architecture"
FFS - I'm gonna drive my kids around in a clapped out Austin Maxi without seat belts and ban them from shopping on Sundays because everything was better in the eighties.
Yet another ground breaking story of utter banality which could have been written as - "Man ports old code to new variant architecture"
Just this weekend I spent two hours teaching a friend's 15 year old son how to write Python. He'd never written a line of code in his life, not even an Excel macro, but by the end of it he was writing his own scripts with an understanding of types, conditions and loops. He'd already pulled in the Random module and was desperate to get his code to work with world. This was all done on his cheapo netbook using IDLE. No Pi, no BASIC required.
Re: "Man ports old code to new variant architecture"
Well that was two hours of your life you'll never get back...
Pushing the proprietary button
you'll first need to run a linux distribution with hard floating point support
Did they deliberately go out of their way to write their code so it only runs on one particular variant of Linux?
For a computer whose purpose is to educate in the fine art of computer science this is simply ridiculous.
Re: Pushing the proprietary button
Nah, someone wrote a program for Windows for a CPU (presumably x86) with a hardware floating point unit (>386DX) which was then ported to x86 Linux which was then ported to ARM11 Linux.
Re: Pushing the proprietary button
The binary linked to on the specbas website is for hard-float ARM linux, since that is what virtually every Raspberry Pi user runs (because it is quicker than soft-float, natch). You can of course build the source to run using software floating point emulation, as has been done (by myself, and quite possibly by others too).
Well, I did have some comments but it seems the comment system went awry and my first post got repeated rather than my second post that included info on procedures and suchlike. Shame :)
@Lloyd Not sinclair? Rubbish...
It's quite obviously not pure ZX BASIC true...
But sinclair did go on to produce machines that used procedures, repeat, defined function, etc.
First with the QL Superbasic and then with the Z88 (which used a variant of BBC basic iirc)
If the author wasn't passing this off as a nextgen Sinclair BASIC and removed all Sinclair-related terms when talking about it, would anyone give a damn about yet another flavour of BASIC?
Re: Big deal?
I don't know, but the reason I use the Sinclair-related terms is quite plainly that it is heavily based upon Sinclair BASIC. You'd see that if you tried it, both in the way that the BASIC is entered and the way the language is constructed. Sure, I could call it "A Dartmouth BASIC Remake" but although DMB is at the very roots of my implementation, it was the feel of coding on a Spectrum that I wanted to replicate.
Judging by the response in the Speccy community, I got that part right at least.
Programing made fun and practical
Purebasic: Just like it was in the late 80-90, it is by no means perfect, it is power of C meets Basic-like syntax, even pointers are there if you need them.
Give it a go there is a demo available on the official website, it is real good.
It has a compiler 32/64Bit that can produce small and fast standalone exe files.
Kind of C meets VisualBasic 6 without activex/.net shit.
Trust me it is fun and practical, it has a lot of functionality under the hood.
Dunny - would a solid Spectrum Basic game... like PiMania... work directly on this if converted across?
There are some caveats - bear in mind that the screen resolution is a lot bigger, and that attributes have gone as each pixel is individually coloured...
But yes, it shouldn't be too hard to do - and if you have problems or find an incompatibility that shouldn't be there, feel free to drop me a line, I'm always ready to fix things that go wrong!
Now having the PiMan appear on the RasPi via this would be something :)