Single Board Computer thoughts

I didn't have as much fun with my Raspberry Pi as I did with the Arduino. Like most people who bought them I just wanted something to fool around with, so in that regard I think a comparison is warranted. A lot of single board computers feel like they are just slow regular computers with some OS port (no unique character), struggling to be a full modern computer capable of OpenGL whatever full 1080p whatever. The Arduino on the other hand was very clean and easy to get started with and I found the language (some kind of C) quite legible. It didn't take me long to get an Amiga mouse connected and the sudden understanding of how things work is very empowering. Video.

When it comes to understanding computers I don't think it's done well via Linux-something running on top of many layers of... stuff. OpenGL is confusing and wasteful when it comes to 2D graphics. I think the correct approach to learning programming is to start with a compiled BASIC-like language which scales into low level access of the computer's functionality. An OS with very few components also make things easier.

So, perhaps the Arduino UNO board (or clone) is the closest thing I've seen to a knowable entry/learning machine like the venerable Sinclair ZX-81? The RPi and linux are very much a black-boxes in comparison.

My overclocked-for-no-particular-reason Raspberry Pi running Raspbian. I didn't like Scratch, Python or C+OpenGL. RiscOS was snappy but unfortunately doing graphics is rather difficult using the included BASIC languages (the indexed screen modes are faked, I discovered). The two USB ports and lack of hot-swapping caused me some trouble (I don't have a hub). The SD card would get bent in the holder and developed contact issues. T they use the smaller cards now.

Winner of the ORAC lookalike contest is.... RPi3!

SBC

I made this concept for a bitmap-graphics (blitting) oriented single board computer. Maybe around 200MIPS, enough for immediate mode graphics. It would boot from a ROM, similar to the Amiga Kickstart, into a Workbench-like OS. Mid '90s specs overall.

HitBit Amiga

A design inspired by the HitBit F1XD MSX by Sony, the Amiga 500, Acorn Archimedes and other computers with colored keys. This would be just a USB keyboard + case. At the top is space for the SBC, PSU and peripherals (internal Loopy sticky printer???). This solution is scalable (economically) because people can get individual components and do their own thing inside. I'm thinking the vertical space next to arrow keys could be a GPIO hatch where e.g. a throttle gauge, trip pot, toggle switches, status/debug LEDs could be plugged in (or anti-piracy devices had this thing existed back then). Over the function key row there are two sliders, maybe for SysFan, Overclock... or Pong.

Logo mockup

Bananodore Fruitfly logo design. Obviously a play on the Apple and Commodore logo. Fruitfly translates to Bananfluga in Swedish. They are a simple yet complex little thing which can be experimented on in a quest for knowledge.

OS mockup screen

Another OS mockup, inspired by System 7. 512x384 in 16 colors, though the OS would probably run in 256 color mode as I'm not keen on 4-bit packed pixel. Certain programs could reserve a chunk of the palette (e.g. a block of 32 colors). Desktop BG can be an image, a tile map or flat color. Editing the look of the OS could be fun for many, if given easy to use built-in editors. Bitmap font editors are fun too.

Something old, something new, something borrowed, something blue...

There are many SBCs without character. When they all come with Linux or even Windows, the only difference is power, which makes some boards slower than others, and all slower than a full computer. It sort of kills the whole thing for me. Of course, making a custom OS from scratch is madness from a usability/product PoV, but to a tinkerer and scratch builder it could be the main appeal. I guess what's really missing is a fun, general purpose bitmap oriented graphics chip? I've seen a few... which were not particularly fun to be honest.

I may have mentioned this elsewhere, but there are a few pillars which make a (retro) computer/console design work for me: 1> Good case design. It's expensive and difficult so no one really does this. 2> Hardware identity. Graphics and sound make the most impact, but the general system architecture can have an appeal too (clean, knowable). 3> Software identity. Custom OS, useful programs and a good game or two. 4> Brand momentum. Though, perhaps it is more likely that, if a famous name is used, someone's hitchin' a ride >_<.

In the 1980s, home computers were computers at home, a fantastic notion. Some were marketed towards people who wanted to "learn about the computers", and this influenced their design on every level. They were made to be understood and came with carefully crafted manuals. Likely, much of this was down to necessity - the developers certainly had no network or extra clockcycles to leverage against the user (*cough Windows 10 cough*). Now the demands of the user are so high, and the manufacturers so many that it's impossible to make a knowable machine regardless. But, I wonder what we could do if we tried to make a knowable machine with modern-ish hardware.

A 256 color mode is very clean to deal with I think. Dipping below does increase complexity a bit, but it adds graphical identity, an area where this hypothetical system needs to immidiately stand out. In doing a fully custom system, there's also an opportunity to turn a back on much of the legacy crap which modern systems have to deal with. A fresh start, even if I'm perhaps derivative/traditionalist in terms of desktop appearance in my mockups around here...

The OS and architecture should be relatively easy to understand. The memory is bytes and bytes can be pixels which can be easily shuffled around. The system is powerful enough for the user/programmer to be a bit sloppy (because s/he might be a beginner). Optimizations due to constraints tend to complicate things. A compiled form of C-BASIC hybrid would be the most accessible. It can be pretty close to the hardware, yet simple, as long as the hardware is simple. I'm thinking about how you could POKE around in the memory in the C64.

The OS only needs to do the basic things, so no distractions like trying to get video formats, flash player, cloud stuff or an "app store" to work. The command line interface can be improved by the inclusion of clearly named commands, helpful manual pages and error messages (which is really trivial to do, but not done because the people who write those things do it for people who already understand the systems). When you start up CLI, it shouldn't be a bloody for-experts black-box. How about showing the most common, useful commands, how to get help, etc? Graaar!

MSX3

Sony HitBit MSX3 concept by Arne

Mirror, mirror on the wall, who's the fairest of them all? Oh, I'm sorry Amiga, it's not you, it's the Sony HitBit F1XD and 101/202. Now COMBINE and reveal your ultimate form!

ZX Spectrum

Viva la resistance!

Compact single board implementation of the original ZX Spectrum... I don't think I missed anything.

Notice: The ZX Spectrum project is = NOW ON = a separate page due to sudden GROWTH.

CPC bonus

Quick redesign of this brick/plank.

Picopico

Pi..Pi...pico!

G66

My iMac broke after 6 years. Shopping for a new one, I found that there's no good mid range box (pizza/tower), so I drew something. It's the size of a few Mac Minis standing on the side.

Atom-1 LPC

Oh, man, what a blast from the past, the ATOM-1! I used to have to shuttle to the moonbase to fix these in the 2270's .

Stuff

I forgot why I doodled these things.

IDROS

A What-If. Discovered long after making this that IDR actually did make TOS for the Atari. *chuckle*

GUI mockup.

A modern motherboard form factor for vintage keyboard computer cases.

Reddo~!

Small, hard-shelled shutterless floppies in paper pockets.

I was thinking a monochrome environment for this one. Featured is the MSX font in 6-wide mode on a widescreen display. OS is a branch of CP/M, now open source? Thinking about it, it should be possible to tell passive and active commands tell apart so you know whether you're doing something or viewing something safely. Also, I think I prefer full names, like "Info Memory", "List FD1: filter *.txt*.doc", "Make Folder SuperProjects", or "Open TextEd".

This way you can't accidentally poop things up by typing something cryptic like "fddel". Perhaps adding "Just" before a dangerous command does it without asking ("Just Delete Stuff.txt"). Normally, you get a verification of what will be done (i.e. you can tell whether your parameters made sense). Could be shorthand versions too, where e.g. Open = O, etc. Could also be keyboard shortcuts (printed on keys) for quick-typing common things.

Packets back in time

Travelling back in time with ADSL technology.

RPi case

With internal port extension hub (with IO shield, maybe video signal adapters?), speakers, power brick. Inspired by the 2600 and Intellivision.

RPi troubles

By the way, here's one way to solve the red power light trouble on a Raspberry Pi. Some people have went out and bought new SD cards, thinking the old ones went sour, but I think the problem is that they bend/bow in the holder after a while. Adjusting the springy contacts didn't work for me.

PocketChip

Yeah I have one of these. Bought some 6mm silicon/rubber feet to put on the keys to make it usable (still in mail). Playing linux console here (apt-gets and screen calibration).

Feet arrived & being tested. Works great for typing, but in games there's a fair bit of sideways stress on the "D-pad". Case design for this is a bit peculiar. Wish they had used screws instead of tabs. Price / assembly considerations probably.

Of course.

Some other hardware pages

Amiga HDD - Amiga cleanup - Amiga pixels - SBC - Assorted - MSX - Acorn project - Amstrad project, etc. - ZX project - Assorted - Electronics Endeavour


Art by Arne Niklas Jansson

AndroidArts.com