> Remember when turning a computer on meant instantly jumping into code?
In this context the 10ish second boot time seen in the video is unfortunate. I guess lot of that can be blamed on RPi, although I suppose netbsd might not be super optimized for boot times either.
Admittedly this is just a pet peeve of mine. And 10s is not the worst boot time out there.
abraxas · 16h ago
Is it similar to the Maximite series of hardware and their Basic clones? I think a fast Basic on its dedicated hardware is quite a phenomenal way to teach kids and novices programming. I wish one of these setups would penetrate into the school systems and become a standard teaching platform in a way that the BBC Micro turned out in the UK.
lproven · 2h ago
> Is it similar to the Maximite series of hardware and their Basic clones?
The Maximite series had cousins, but it also evolved into the Picomite:
Huh, I didn't know about Maximite, and reading their intro to the Colour Maximite 2 at https://geoffg.net/maximite.html... well, I feel like I read their minds years later and I'm trying to recreate the same thing.
One difference I can sense is in the interpreter. In the case of the EndBOX, I'm creating a computer to run EndBASIC on, but EndBASIC has already existed for 5 years and is multiplatform: you can write a program and have it run in your browser via WASM, in the desktop version of the interpreter, or now in this new small form factor format. In the case of Micromite, it sounds like MMBasic is specifically designed for this machine.
Which brings me to something I have been thinking about recently: I think BASIC is the least interesting aspect to the EndBOX and the thing that might hurt the concept the most (because BASIC is old, limited, legacy, who cares about it, blah blah blah). I'm starting to think that the more interesting parts of this project are what I have built to take a Rust app that uses some APIs to talk to a "generic graphical console" or to "the hardware", and have that exact same app run on the web, on the desktop, and now natively on a small computer. And for the later case, I think the pipeline I developed to take the app and generate a full SD card disk image with a trivial command to run it in a standalone manner is interesting too. Stay tuned for a follow up blog post as I elaborate on these ideas...
abraxas · 5h ago
One difference that may be very important to a lot of people is that unfortunately the MMBasic is not open source. Is yours closed or open source?
jmmv · 3h ago
EndBASIC (the desktop version) is open source and I plan to keep it that way. I wouldn't want you to be "locked out" of any code you write in EndBASIC.
However, I'm not planning on open-sourcing what goes into packaging it for the EndBOX (the bindings for NetBSD and the release building scripts) because that's very specific to this project and I see no benefit in publishing them.
nopakos · 8h ago
Nice! Everything, the colors, the font, the Ready prompt remind me of the Amstrad CPC I grew up with!
elpocko · 7h ago
That's because it looks exactly like the CPC. Just a happy accident.
jmmv · 7h ago
There is no accident here.
elpocko · 1h ago
Obviously. It was meant to be tongue-in-cheek. ;)
dshacker · 13h ago
How did you program the WIFI driver? How do you even start creating a WIFI driver from BASIC? (Is it in basic?)
jmmv · 6h ago
It’s all NetBSD underneath. The WiFi was only difficult because of missing DTBs for the Pi Zero 2.
There is a config file that you can edit within BASIC to set the WiFi up though.
Far simpler, cheaper, and closer to the "understandable by one mind" machine.
Add Bywater BASIC, if desired.
90s_dev · 13h ago
Cool. But why not a GUI dev environment like pick 9?
joshu · 12h ago
what is pick 9?
PS what happened to your project? i liked where you were going with it.
90s_dev · 3h ago
I meant pico 8 and was on my phone which autocorrected wrong twice.
Re PS: nobody really knew what was interesting or useful about it, and by the end of that day, neither did I, and my dream was lost, and I still can't find it.
In this context the 10ish second boot time seen in the video is unfortunate. I guess lot of that can be blamed on RPi, although I suppose netbsd might not be super optimized for boot times either.
Admittedly this is just a pet peeve of mine. And 10s is not the worst boot time out there.
The Maximite series had cousins, but it also evolved into the Picomite:
https://geoffg.net/picomite.html
Some of the cousins:
The BASIC*Engine:
https://basicengine.org/esp8266.html
As discussed here:
https://news.ycombinator.com/item?id=17674944
Followed later by the BASIC Engine Next Gen:
https://basicengine.org/nextgen.html
And more recently BASIC Engine RX:
https://basicengine.org/#_what_is_the_basic_engine_rx
Unrelated...
The Agon Light:
https://www.thebyteattic.com/p/agon.html
(Which I just noticed quotes me! :-) )
And Agon Light 2:
https://www.olimex.com/Products/Retro-Computers/AgonLight2/o...
And its 6502 equivalent, the Neo6502:
https://www.olimex.com/Products/Retro-Computers/Neo6502/open...
One difference I can sense is in the interpreter. In the case of the EndBOX, I'm creating a computer to run EndBASIC on, but EndBASIC has already existed for 5 years and is multiplatform: you can write a program and have it run in your browser via WASM, in the desktop version of the interpreter, or now in this new small form factor format. In the case of Micromite, it sounds like MMBasic is specifically designed for this machine.
Which brings me to something I have been thinking about recently: I think BASIC is the least interesting aspect to the EndBOX and the thing that might hurt the concept the most (because BASIC is old, limited, legacy, who cares about it, blah blah blah). I'm starting to think that the more interesting parts of this project are what I have built to take a Rust app that uses some APIs to talk to a "generic graphical console" or to "the hardware", and have that exact same app run on the web, on the desktop, and now natively on a small computer. And for the later case, I think the pipeline I developed to take the app and generate a full SD card disk image with a trivial command to run it in a standalone manner is interesting too. Stay tuned for a follow up blog post as I elaborate on these ideas...
However, I'm not planning on open-sourcing what goes into packaging it for the EndBOX (the bindings for NetBSD and the release building scripts) because that's very specific to this project and I see no benefit in publishing them.
There is a config file that you can edit within BASIC to set the WiFi up though.
PS what happened to your project? i liked where you were going with it.
Re PS: nobody really knew what was interesting or useful about it, and by the end of that day, neither did I, and my dream was lost, and I still can't find it.
I guess you mean Pico-8.
https://www.lexaloffle.com/pico-8.php