5 ms·
Not sure which BBC basic you used, but it certainly DID have line numbers when I used it. (BBC Model B) However there were user defined functions and procedure
by opless 8y ago
Not sure which BBC basic you used, but it certainly DID have line numbers when I used it. (BBC Model B)
However there were user defined functions and procedures as I recall.
- jacquesm 8y agoYes your are 100% right, the line numbers were there in BBC Basic, but mainly for editing rather than control purposes (though you could use the dreaded GOTO statement if you absolutely had to). Keep in mind that this was just before the days of the full screen editor embedded in your favorite programming language. GFA did away with them entirely. The BBC had an odd editor, it was partly line and partly screen based, allowing you to move a secondary cursor across the screen with the arrow keys, and then a ´copy´ key to copy whatever character was under the second cursor to the input cursor as though that key had been pressed. It sounds terrible but it was actually quite quick in actual use.
- laumars 8y agoWhat you’re describing there was pretty standard across all of the 8bit micro computers. A few machines had the copy feature (eg the CPC464) and the control flow in the BBC BASIC wasn’t anything that couldn’t be done in pretty much every other dialect from that era (be it Microsoft BASIC, Locomotive or whatever). Personally I think it’s a bit of a stretch to say line numbers were mainly there for editing. Even if you ignore GOTOs the most common method of running pseudo-functions on the BBC Micro was GOSUB.
- jacquesm 8y ago> Even if you ignore GOTOs the most common method of running pseudo-functions on the BBC Micro was GOSUB. I don't even recall a single time when I used that, the usual control structure for that was DEF PROCprocedurename(parameters) ENDPROC See: http://www.bbcbasic.co.uk/bbcwin/tutorial/chapter16.html http://www.bbcbasic.co.uk/bbcwin/tutorial/chapter16.html Ditto 'proper' functions using DEF FN with parameters and a return value using the '=' sign.
- laumars 8y agoBBC BASIC was pretty advanced but most people’s exposure to it was in schools so if kids wrote anything, it was usually using a common syntax that they’d learned on their Sinclair, Commedore or whatever (BBC Mircos weren’t cheap from what I recall). So I think while the FN / FUNC approach was arguably better, I’d be surprised if it was more commonly used than GOTO or GOSUB. But who knows, maybe your circle of friends did things differently?
- jacquesm 8y agoWell, my 'Circle of friends' was rather limited, basically just three guys that taught each other programming and lots of books to read. This one: https://www.retro-kit.co.uk/page.cfm/content/Advanced-Programming-Techniques-For-The-BBC-Micro/ https://www.retro-kit.co.uk/page.cfm/content/Advanced-Progra... and the BBC manuals were pretty good. So was Newman and Sproull as well as David Levy's computer gamesmanship. And now that we are talking about this I do remember when I used the line numbers. I came to the BBC from the TRS80 Color Computer/Dragon 32, and that one had the good old Microsoft ROM basic, which did not have such luxuries. It really clicked for me when writing a musical score editing program, that I tried to put together using the 'old' way and then tried it again using the 'structured' way. The second time around the program made it to completion and it was lots easier to understand so I never really looked back after that. So to me that became the 'normal' way of doing things but I totally see how it could be that this experience was not typical. You are also right that they were not cheap, my fully decked out 'beeb' (double drives, 256K ram expansion) cost me more than a years worth of savings. But looking back it was most probably the best investment I ever made. It gave me a career.
- laumars 8y agoInteresting stuff. Thank you for sharing. I do think BBC Micros (Or at least 8bit BASIC machines in general) we’re responsible for a great many careers - mine included. I never used a Dragon in the 80s but do have a Dragon 64 packed away, waiting for me to hook up and play. I keep meaning to get it out but between work, family, and the other retro hardware, it sadly never gets a look. I’ve heard Dragons were nice machines though.
- vram22 8y agoThe BBC personal computer (that ran BBC Basic) also had a cool feature that allowed you to drop down into 6502 assembly language right in the middle of your BASIC program, just by enclosing your assembly language statements in [ and ]. I remember trying it out at a British Council library which had one such machine available for members to use. Although I had done a little 6502 assembly language programming earlier (using both the PEEK and POKE approach as well as using an assembler), just for fun, on other home computers, I never got to do a lot of it, since by then, I moved on from BASIC and assembly to languages like Pascal and then C. Good times.
- laumars 8y agoThere were actually a few machines that ran BBC BASIC. I’ve got a BBC Micro model B hooked up in my “man cave” and I still play on that from time to time. I’ve also got a few Amstrads CPCs - another range of British 8bit micros. They ran Locomotive BASIC which was largely inspired by BBC BASIC so there is a hell of a lot in common between those two dialects.