💾 Archived View for nytpu.com › gemlog › 2023-08-12.gmi captured on 2023-09-08 at 16:06:54. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
In which I discuss miscellaneous thoughts on making a cyberdeck.
Written on an NEC PC-8201A while watching random youtube videos.
⁂
So this is a pie-in-the-sky project I'm not going to pursue for a long time (if I ever do), but I'm sure you could make a really neat cyberdeck in the style of '80s microcomputers using an AVR. “But they're microcontrollers not microprocessros, and Harvard architecture to boot!” you might say, but they *can* easily self-program though their “bootloader” mechanism. So the bootloader could be like a “system ROM” running BASIC or Forth or an assembler or whatever, and then the rest of flash could be dedicated to the user's programs (which nicely get persisted through power cycles, unlike most microcomputers!). If you want to get really elaborate maybe have separate ATTiny's abstracting the display and keyboard handling so the main AVR can deal exclusively with user code, but even the ATMega328 can probably handle all that just fine. And of course there'd have some way of storing programs and data outside of the internal flash, probably an SD card or CompactFlash.
And preemptively no, I'm not going to use an ARM or RISC-V CPU. If I was building a cyberdeck I'd never want it to run Linux or do typical modern computing tasks. If I want to do normal computing tasks I'd just use my laptop which is smaller and more capable than anything someone 4x my skill could make themselves. I'd want a cyberdeck to do what my NEC PC-8201A currently does for me: act as a minimalist text editor and maybe some other utilities, and let me dick around with programming a computer whose design you can actually hold in your head (although 8085s sucking and the OS being largely undocumented hampers my enjoyment of that on the 8201A).
Even if I use a lower-powered ARM CPU, I don't find embedded ARM very fun to work with either, and I assume probably not RISC-V either. Any cyberdeck I'd build would be either using some retro CPU like a Z80 or an AVR which is about the optimal 8-bit architecture IMO.
On the other necessariy hardware, It'd be lovely to get a display like the PC-8201A's, a nice monochrome, reflective bitmap LCD which I'm sure are still out there somewhere. The biggest problem would probably be a good keyboard, because if it isn't at least somewhat pleasant to use I'd never use the cyberdeck. The options seem to be: USB HID (holy god no, that's the last thing I want to do), PS/2 keyboards (who even has one of those that isn't crap?), some obscure one like my Palm Ultra-Thin Keyboard or the Beepy's BlackBerry keyboard (maybe doable), or build my own (ha, like that could considered “good”). Picking out a keyboard or interface method and getting it working would probably be my first step before I end up wasting effort on some other aspect before being blocked by the lack of a keyboard. Ideally I wouldn't have to buy a massively overpriced kit aimed at audiophile-esque keyboard enthisiasts, that I'd end up having to hack on to make it not use USB anyways.
I dunno, these are just random thoughts I wanted to get down. As I mentioned at the beginning, this isn't a project that's is even on the horizon of me persuing, it's just fun to think about what I'd want out of my own custom computer.
P.S. I do remember reading about someone gutting a working Tandy 100 slabtop and shoving a rasbperry pi and color LCD in it, which is the worst idea possible. I despise that person for destroying a perfectly working computer and turning it into a shitty modern computer that does literally nothing of note other than “look cool and retro”.
⁂