Live data from Hacker News

BBC Basic returns on multiple platforms, open sourced

bbcbasic.co.uk

81–90 of 120 posts

Re: BBC Basic returns on multiple platforms, open sourced

#81

Why did a broadcasting corporation have a version of BASIC?

As part of an ambitious public-service project to help increase computer literacy in Britain, supported by the Department for Trade & Industry and the Department for Education. They decided that they needed standardised hardware to support the project, and a standardised language with which to programme it. Acorn already had a somewhat more primitive but flexible BASIC, and were quite readily able to adjust it to fulfil the BBC's specification (drawn up by John Coll, an independent educator, who later wrote the BBC Micro manual).

Re: BBC Basic returns on multiple platforms, open sourced

#82

Why did a broadcasting corporation have a version of BASIC?

Well, they needed /something/ to run on the BBC micro.

Part of the BBC's mandate (public funding requires public benefit, the mandate is essentially the contractual definition of the BBC's "deliverables") requires the production of educational content. As part of this, they had a programs for computer literacy in the early 80s - and commissioned a computer to go with them. So we had the BBC Micro running BBC Basic. We still had some left in school well into the 90s.

It's an interesting bit of history, because it gave a huge boost to the company that won the contract. Acorn soon after went on to develop the Acorn RISC Machine, featuring the ARM1 processor.

Re: BBC Basic returns on multiple platforms, open sourced

#83
post #65
post #48

Earlier quoted context omitted.

SDL is simply not optimised for this use-case, but that doesn't mean it can't be done. If you're writing single-threaded code (which I assume BBC Basic is!), you can cut out the locking and directly poke a 640x480x3 array in memory. This part is extremely fast, as fast as your memory subsystem can go. Then, convert that into a texture and send it to the GPU once per frame. This is the only added overhead relative to…

I made a quick moving xor texture demo, it can hit 4K240fps on my machine. https://gist.github.com/DavidBuchanan314/2f68ff42df047a448be...

Thank you for following up on this. This code we should be sending to the BBC SDL author and asking them to look at improving their own GetPixel code.

Every bit (pun intended) helps.

Re: BBC Basic returns on multiple platforms, open sourced

#85

Why did a broadcasting corporation have a version of BASIC?

The history of BBC Basic is on the wiki.

Sophie Wilson wrote the language, first in 6502 assembler, later in ARM assembler.

https://en.wikipedia.org/wiki/BBC_BASIC

This linked article of interviews has much greater depth.

http://news.bbc.co.uk/2/hi/technology/7307636.stm

Re: BBC Basic returns on multiple platforms, open sourced

#88
post #15

Looking at the difference page, it's not BBC BASIC as one might remember it. But that's not possible outwith actual BBC Micro hardware, complete with Kenneth Kendall's voice in ROM. And I suspect that Kenneth Kendall cannot be open sourced. (-: It looks like it has preserved the spirit of BBC Micro development on modern platforms, though. The use of INKEY$(-256) to determine underlying platform is amusing.

For those curious what Kenneth’s sampled / synthesized voice sounded like:https://youtu.be/_goT9PPpn7I?si=WKdkH4VMlKCLEZ78

Re: BBC Basic returns on multiple platforms, open sourced

#89
post #85

Why did a broadcasting corporation have a version of BASIC?

The history of BBC Basic is on the wiki. Sophie Wilson wrote the language, first in 6502 assembler, later in ARM assembler. https://en.wikipedia.org/wiki/BBC_BASIC This linked article of interviews has much greater depth. http://news.bbc.co.uk/2/hi/technology/7307636.stm

Yeah I first looked that up and kept getting confused. Like why make BBC Micro? Other comments kinda helped but I am still confused lol.

Re: BBC Basic returns on multiple platforms, open sourced

#90
post #4

The killer features of BBC Basic for me were: - instant-on - you turned on the power switch at the back of the BBC Micro, got the double beep, and in less than a second were dropped into a REPL / shell with the language - integrated assembler - you could inline assembly language really easily - great documentation - before the web, documentation meant books - of which there were many - but also crucially in the BBC M…

>- integrated assembler - you could inline assembly language really easily

Yes, as easily as this:

some BASIC statements here

[ some assembly statements here ]

some BASIC statements here

IOW, you just had to enclose your assembly language statements in square brackets. That's it.

Of course, you would need to know what memory addresses to operate on, in a real-life program, as opposed to a demo, so that you could share data in some way between the BASIC code and the assembly code, otherwise the program might not be able to do anything useful.

I don’t know about the multi-pass assembler feature that others have mentioned in this thread.

Post reply on HN