3 ms·
If you're interested in BASIC, there's an open source BBC Basic V interpreter: https://sourceforge.net/projects/brandy/ https://sourceforge.net/projects/brandy
by david-given 10y ago
If you're interested in BASIC, there's an open source BBC Basic V interpreter:
https://sourceforge.net/projects/brandy/ https://sourceforge.net/projects/brandy/
(Also in Debian.)
BBC Basic is one of the best BASICs ever, featuring things like named procedures with local variables, structured programming, etc. Basic V, which Brandy simulates, is effectively Comal.
But you don't have to use any of that stuff if you don't want to, and all the old favourites like GOTO, GOSUB, ON GOSUB etc still exist. (Along with a handy RENUMBER command for when you run out of space between lines 140 and 150.)
I recently found an ancient program I wrote as a teenager in BBC Basic II --- I'd submitted it to a computer magazine to be printed in an issue (and then they rejected it). If you want to know what BBC Basic II looks like, here's an example.
http://cowlark.com/2015-02-03-bbc-micro http://cowlark.com/2015-02-03-bbc-micro
Edit: cut-n-paste tyop.
- zokier 10y agoWikipedia mentions that "One of the unique features of BBC BASIC was the presence of an inline assembler"; how does Brandy deal with that? Does it offer inline x86 asm, or does it emulate classic 6502?
- david-given 10y agoGood question --- I just looked it up. Alas, no, it's not implemented at all. It doesn't even support CALL (but it does support BBC Basic's equivalent of PEEK and POKE).
- bootload 10y ago"I agree BBC BASIC is excellent, particularly in having structured programming support." Found this in the article comments. What happened to the BBC BASIC language? Is it still available, in source?
- bootload 10y agoNow I see why BBC BASIC is liked. It was created by Sophie Wilson FRS FREng, while at Cambridge as a student over a summer break on a 6502 micro processor. Wilson also designed the Acorn System 1. [0],[1] Also a portable C version of BBC BASIC is available. [2] [0] https://en.wikipedia.org/wiki/Sophie_Wilson https://en.wikipedia.org/wiki/Sophie_Wilson [1] https://en.wikipedia.org/wiki/Acorn_System_1 https://en.wikipedia.org/wiki/Acorn_System_1 [2] https://en.wikipedia.org/wiki/BBC_BASIC#cite_note-11 https://en.wikipedia.org/wiki/BBC_BASIC#cite_note-11 and http://mdfs.net/Software/BBCBasic/ http://mdfs.net/Software/BBCBasic/
- deleted 10y ago[deleted]
- Fr0styMatt88 10y agoThe port of RISC OS for Raspberry Pi contains a BBC BASIC interpreter: https://www.raspberrypi.org/blog/risc-os-for-raspberry-pi/ https://www.raspberrypi.org/blog/risc-os-for-raspberry-pi/ I think you hit F12 and then type 'basic' (no quotes) at the prompt to get to it.
- bootload 10y agothx @Fr0sty I'm mighty impressed with the RISCOS effort. You can even purchase dev manuals in print. Must fire this one up on a Pi at home. This would be a good start.
- david-given 10y agoWell... the original BBC Basic was originally hand-written in 6502 assembly for the BBC Micro; it's a 16kB application ROM. Later versions were rewritten for the 65C102. The extra opcodes available freed up some space and they added a few more features, and made it even faster (and BBC Basic was already one of the fastest 8-bit Basics around). I don't believe that any of the 6502-era Acorn sources were ever released, which is a shame, as Acorn's MOS was one of the best 8-bit operating systems around. Basic V was a complete rewrite for the ARM. In hand-tooled ARM machine code, also by Sophie Wilson. The source for this is available from the CVS archive here: https://www.riscosopen.org/content/downloads/cvs-access https://www.riscosopen.org/content/downloads/cvs-access But trust me, it won't help. I've debugged my way through it. It's very... hand written. Oh, yes: there are also ports of BBC Basic IVish to the 8086 and the Z80 by R.T. Russell: http://www.bbcbasic.co.uk/bbcbasic/bbcbasic.html http://www.bbcbasic.co.uk/bbcbasic/bbcbasic.html He wasn't associated with Acorn, as far as I know. The 8086 version (for Windows and DOS) is commercial, but the Z80 version (for a variety of CP/M machines) is a free download. Not open source, unfortunately. His version even includes 80186 or Z80 inline assemblers, depending on the version. His Z80 port was licensed for a variety of machines --- Amstrad made a range of Z80 notebooks with his Basic in ROM. I've used all his versions, and they're superb.
- bootload 10y ago"The source for this is available from the CVS archive here: ... But trust me, it won't help. I've debugged my way through it. It's very... hand written." First computer ZX80, so I missed the BBCM. Thx @David, the reason I asked was I was interested to see ^how^ it was written, but probably more to the point, what made it good? Sounds like speed was a loved feature. Was there ever a API or documentation made public? Reason: want to hack a language together a BASIC-like language (are of use) for graphics.
- pjmlp 10y ago> want to hack a language together a BASIC-like language (are of use) for graphics. One of the coolest ones was AMOS for the Amiga.
- 10y ago
- qwertyuiop924 10y agoIt's part of RISCOS, so yes.
- Zardoz84 10y agoTry TurboBasic / QuickBasic