The BASIC Engine
basicengine.org
basicengine.org
There's "pack as much power as you possibly can into a minimal computer" - that's raspberry pi.
There also "drive tiny, minimal CPUs to do amazing things at the edge of their specifications cause it's cool and fun" type minimal computing - that is this device.
People who don't understand the distinction will always say "Huh? Why is this interesting? I don't get it.... a raspberry pi is the same size and more powerful."
If you really want to be knocked out, see how the ESP8266 CPU in this device is able to generate a wireless NTSC video signal with zero extra components https://www.youtube.com/watch?v=SSiRkpgwVKY and then the next level Charles Lohr takes it to color https://www.youtube.com/watch?v=bcez5pcp55w
Put another way, the ESP8266, with nothing more than a wire connected to it, is able to generate a broadcast TV signals and display 3D graphics on that broadcast TV signal.
The ESP8266 was also tested by Charles Lohr to have a wireless CPU to CPU range of 1 kilometer https://www.youtube.com/watch?v=ekSsi83-x8M
I'm not sure I'd want one of these, but I am happy it exists.
> is able to generate a wireless NTSC video signal
But then I read
> is able to generate a broadcast TV signals
and I read it again.
Are you telling me this will actually produce a RF signal that could be picked up by a 80s era portable television?
That is indeed amazing and I actually wouldn't have thought it possible with a digital device.
EDIT - Having just watched that video I can say that is truly amazing. That has made me so happy.
Using the DAC he bit bangs a signal at just the right frequency to match NTSC channel 3 which gets picked up as a TV/radio signal by the TV and displays it. Charles ensures the bits that generate the radio signal match the requirements of the NTSC spec.
Then he displays 3d graphics over that NTSC broadcast signal. Then he adds NTSC color.
That is software defined broadcast television. Mind. Blown.
I started collecting old TV's being dumped out the front of houses for hard waste collection after I saw that video, so I could give it a try.
And the esp8266 CPU costs about $4
AM Radio Transmitter on ESP32 https://www.youtube.com/watch?v=lRXHd3HNzEo
And then a series of videos in which he turns a $5 ESP32 into a games console with composite video and audio
part 1: esp32 composite video
https://www.youtube.com/watch?v=5t1_XNc3vNw&t=4s
part 2: esp32 composite video PLUS audio
https://www.youtube.com/watch?v=MOoKQnWF4OY&t=2s
part 3: esp32 composite video PLUS audio PLUS color
https://www.youtube.com/watch?v=-JXuwwXQh8c
part 4: writing a console game for it all
See earlier work by Fabrice Bellard: https://bellard.org/dvbt/ (arguably more impressive signal processing, but requires a graphics card's high-speed DAC)
Can you elaborate? Seems to me it's working without any additional analogue circuitry ...
(I've probably spent too much time around modern radio systems and just casually assumed that 61MHz was too low to be useful, oops)
Short answer: the internal I2S peripheral will let you output at 80MHz (!), which can be used to generate by PWM the NTSC 315.0/88.0 MHz chroma frequency.
"This is basically a 1-bit dithering DAC, operating at a frequency below the nyquist, trying to encode luma and color at the same time. Don't be surprised that the quality's terrible."
They got bought out a few years ago, and everyone responsible for the adware crap was terminated.
I suspect the author is only partially joking here. Having worked with kids on robotics projects, and seeing the near-total apathy/ignorance to the countless atrocities being committed by the US government on behalf of its citizens, I can only wonder how much harm is being done by well-meaning people.
"An STM32F411 might be capable of handling all the I/O and computing on a single buttcheek..."
The 8-bit micro era, for me, was where personal computing really began. Suddenly the market gave people access to computers at an affordable price that empowered them to create their own tools[0] with BASIC, which they often booted directly into. They were simple systems that didn't try to manage your life for you, or act like you didn't really own them, or give you the safety scissors version of computing. That sort of experience is sadly quite lacking today.
And this thing is significantly more powerful than most of those systems, but still acts like one of them. I think it's great.
[0] And play games. Don't discount the value of that, many a child convinced their parent to buy them a computer so they could play games and ended up teaching themselves to program because it was empowering and they could create their own games.
Alternatively the later 80s when IBM PC clones flooded the market and DOS and Macintosh ownership started to really take off.
Hams have continued this experimentation to the present day. The community was in danger of aging out, but recently there’s been a connection with the maker community via WiFi technology, digital tech and sdr.
Happily, hams are finally getting away from Windows and are embracing FOSS.
For example, it’s not too difficult to homebrew a tripod mounted uhf system and antenna which, when set down outside, will orient itself and track a given satellite (itself built by hams) and initiate communications through it. You can’t buy something like that commercially.
Disclaimer, co-founder of aisler here but not affiliate with the BASIC engine project
High end hobbyists are already building their own single board computers based on their own designs.
In any case, an entire generation of game developers back in the day cut their teeth on BASIC. And many of the fundamentals of arcade era game design can still be gleaned from those ancient manuals ;)
Vintage BASIC
http://www.vintage-basic.net/games.html
More BASIC Computer Games
https://archive.org/details/More_BASIC_Computer_Games_1980_C...
https://archive.org/details/ataribooks-dr-c-wacko-presents-a...
I also still have a copy of the Liverpool Software Gazette which had "Stargate: A 3D Planetarium", (from around 1980).
Massive listings, and you not only had to fix typos, you also had to convert between different versions of BASIC.
Tidying up and I just found it. It's May 1980. I was sure I had lots of them but only found three (Nov. 1979, May 1980, Feb./Apr. 1981). Also found my Leasco Basic manual from 1969.
I'll put the LSGs up on kwhitefoot.neocities.org over the next few weeks. Might even try to see if any of programs can be made to work.
The disadvantage of using VGA is that if you actually want to use it for showing your kids how much fun we had once then, they might not be able to appreciate it when you connect the device to a large screen - it doesn't look too nice and a CIRCLE draws a (jagged) ellipse...
As for the Maximite story, I love the grandmother bit ("This program was originally begun in 1982 by my grandmother, Mrs Verda Spell of Beaumont, TX...") I was so curious I actually found the author of the original interpreter and he explained it to me that, alas, it was only a joke.
I just have to figure out how to use the usb keyboard mentioned in the optionnal component and find screens able to show a PAL or NTSC signal.
It is a great and wonderful job, million thanks
I feel like the answer is obvious but I'm going to ask anyway: if I were to take the programs from one of these books and code it into this machine, is it likely to work?
Anyhow, you're question. Unfortunately no. You'll find that some parts of the program will work fine but Microsoft BASIC (which is what the Commodores ran and what this seems loosely based on) weren't entirely compatible with BBC BASIC.
BASIC in the 80s was a bit like Javascript in the 00s in that every browser did things did things subtly differently.
As an aside, I was playing on my BBC Micro last night. :)
That leads to the obvious question whether there are there more modernized BASICs out there now. Is there a standardized ES6 equivalent, perhaps? ;)
MS Basic kiiinda became as close to a defacto standard as can be described, just because it was the most common and commonly imitated.
In terms of a modern standard, there's quite a few modern BASICs, but the same kind of applies: Microsoft kinda leads the field. Many of the surviving projects are either directly or indirectly based off of QuickBasic and Visual Basic, or at least heavily inspired by them.
In terms of experience though it's nothing like the basic on these machines. Shell scripting with curses is probably the closest modern equivalent.
* FreeBASIC
* QBasic64 (an unofficial continuation of MS QBasic)
There is of course also VBScript / VBA and VB.NET but I think it's a bit a stretch to put them in the same bracket (particularly with VB.NET). It is a little like calling C# a dialect of C.
As mentioned by someone else, QBasic is still around, and there's also Gambas (which is as close to old-school VB as one can get on Linux) if you're looking to play with something.
https://en.wikipedia.org/wiki/Input_(magazine)
They did not do things subtly differently, rather completely different, depending on the model.
Few have managed to make me feel as old with as few words.
While as others have pointed out the specific BASIC programs are likely to diverge in various ways. That said, they're likely to have enough similarities that there are decent chances you can type in quite a few things and mentally translate "as you go".
2. Buy that thing and wait for it to be delivered
3. Decide what Linux distributation you want. Choose carefully because even if this doesn’t matter, you think it matters.
4. Download the Linux distribution. Make sure that you don’t accidentally download one for the wrong architecture...
5. Somehow work out what to do with a .iso
6. Start installing Linux distribution (may need to set up network)
7. Decide on programming language. Choose carefully because even if this doesn’t matter, you think it matters.
8. Decide what you want to do
9. Part of what you want to do is hard/not supported/you don’t know the “right way”. Figure out how to get round this (if possible)
10. ???
11. Congratulations. You have now started.
First, the software could be packaged as an OS image for the pi itself, eliminating a fair chunk of your list, but second, the alternative presented on this page is to assemble the hardware from a list that includes resistors.
Surely if you can manage that, you can wrangle an iso.
The Raspberry Pi is a very useful thing, but Eben Upton will freely admit that it was the wrong solution for the intended audience. It's just too complex and too brittle to work as a "modern BBC micro" for educational use. The lessons learned from RPi led to the BBC micro:bit, a much simpler Cortex M0 development board that has been a roaring success in British schools.
https://en.wikipedia.org/wiki/Micro_Bit
The BASIC Engine isn't a suitable educational tool as-is, but it could become very useful if it's offered as a commercial product with HDMI or VGA output.
Not knocking the BASIC Engine, I think it's cool as heck, just pointing out that getting started on RPi is not really as painful as it once was. You can even purchase an SD card preloaded with Raspbian!
1. https://learn.adafruit.com/raspberry-pi-zero-creation/overvi...
Good luck flashing the firmware on this thing over a serial port. I'd much rather emulate the platform on a pi, so that I can repurpose the device for something more useful when I realize how big of a waste of time it is to use BASIC for new projects. Source: I use BASIC at work and it sucks butt.
I'm a tech guy and could scrounge up a dozen old keyboards in a few minutes, but someone who is just starting out probably won't have a collection of old hardware to pull from.
VGA is getting even worse.
Is their a Goodwill or Salvation Army store around you? Check it out, see what their electronics section looks like. That's the target market.
The only place to get used non-HDMI displays is at garage sales, Goodwill's auction site, or fleaBay.
True, VGA being an analog interface was perfect for CRT-based monitors. Many modern LCD monitors still have it, not sure about the image quality though.
My biggest mistake was letting my wife talk me into tossing my green crt monitor for my Apple ][ Z-80 CP/M card.
PocketCHIP is: https://www.kickstarter.com/projects/1598272670/chip-the-wor...
It's sad that it's not easily available any more. It's open schematics, though, so you can also build it yourself, given enough skill and determination.
(I have both.)
They really mean sample-based:
https://en.wikipedia.org/wiki/Wavetable_synthesis#Confusion_...
Check out something like Korg iWAVESTATION or u-he Zebralette for something like wavetable (soft) synths, vs merely 1 or 2 layers of PCM samples possibly with an envelope generator to fade between layers.
I expect to see a lot of these sorts of systems in the coming months/years.
Has anyone here tried it? I’m thinking of getting one.
In any case very well done!
I hope Lua might be eventually added.