/log: 100DTO

back to BASICs

Now I have two 8-bit systems. Both Commodores, one modernized and one original. The former remains boxed up as I start to excavate my studiolab. The latter continues to gather dust, awaiting parts and upgrades, as is tradition. Meanwhile, I've been looking into the wide variety of small computer projects out there, searching for some kind of panacea to soothe my aching disdain for modern computing.

Existing Projects

  • RC2014 and RCBus both scratch an itch for the aesthetics of bare circuitry and the love of modular design. I like these projects quite a bit and will probably end up pulling the trigger on some kits eventually. In my mind, I have visions of a wedge case with dedicated keyboard, spine of cards protruding upward from one side with a small screen propped up on the other, in homage to the TRS-80 Model 4.

  • Cerberus 2100 is a really interesting project with multiple 8-bit processor architectures, intended as an educational board for learning about the Z80 and 65C02 processors. It even has a 40-pin expansion slot, which may be a good target for an RCBus backplane that can integrate devices from that ecosystem.

  • Commannder X16 and its open source cousin, OtterX both take the original C64 hardware philosophy and soup it up a bit, with more RAM and using a mini-ITX form factor with an ATX power supply input. Lovely homage to the Commodore with just the right amount of modern improvements.

Of course, this is my usual gear hunt. More rounds of New Object becoming Object. In reality, I already have a pair of systems that do this kind of stuff that I can tinker with, but I'm currently doing nothing of the sort. The better choice is to hold off on getting more kit for now and eventually pull the trigger when I feel like I've exhausted the novelty of what I already have.

All of these systems run some kind of BASIC under the hood, because most modern languages hadn't been invented quite yet. BASIC is fairly limited in a lot of respects, and most of the very basic programming skills i have are rooted in things like bash scripts, Lua, and python. But there's certainly an elegance to the hardware design of these systems, the spirit of which was rekindled in fantasy consoles like PICO-8 and TIC-80. Those systems use Lua for scripting, which is easy to embed in applications.

Instead, I could...

So I started thinking - what if I made a hardware device that used the same kind of principles as these older systems, but based in a modern language and using off-the-shelf components?

Someone else had the same idea, dubbing the project FicusOS. Using readily available dev boards like the Pi Pico and ESP32, Shane Mason put together an ecosystem in which the original chipsets are emulated by dedicated hardware. There's a similar project in MCUME but that's geared more towards using a single board for an entire system. As previously mentioned, I like modularity, so FicusOS is approaching what I'd like to make.

In the end, I'd want a single board for each of the following:

  • 640x480 (VGA) or 800x600 (SVGA) display controller instead of the VIC-II chip
  • Full unicode character ROM with emoji and Font Awesome glyphs
  • An 8-bit or 16-bit CPU module with bootloader
  • A Lua interpreter instead of the BASIC ROM
  • A dedicated synth engine instead of the SID or OLP3
  • An ESP32 handling wireless communication
  • A dedicated Lora device for connecting to mesh networks

I could probably implement these using the RCBus standard and find a way to integrate them. The tricky part would probably be the Lua interpreter, though there are plenty of projects out there to control a z80 with a higher level language. Another rabbit hole to fall down, I'm sure.

But now that I've braindumped for this here, I'm going to turn back to the many projects left unfinished and try to get some momentum in Actually Finishing A Thing.

5/100 DTO