a little “gameboy for coding” style pocket z80 would be a really fun exciting thing to have along modern retro-machines like the CX16 and C64-Ultimate. It’s definitely possible, every college student for like 20+ years has had a programmable z80 (TI-84 and relatives) calculator on them by default, but having something actually for coding would be a huge difference.
I wonder if you could also target something like Tandy BASIC or CPM compatability… Not that there’s anything a modern user wants to do (see: video games) on CPM
I started thinking about hardware and got a bit stuck trying to decide if a real Z80 was needed, or an emulator was OK. Real hardware is very authentic, but does mean more hardware to support something like the z80. An emulator is easier to build, the KB and display can be easily scanned etc, and you can switch to a 6502 or whatever, within reason. Plus SD cards etc are easy to add. There is a third option where you have a z80, plugged into modern hardware. More bulky, but real processor silicon, and it could conceivably allow different CPUs to be swapped in.
Supporting CP/M or BASIC needs a full ASCII keyboard so size goes up again.
if you’re just in assembler, you could probably get away with a deticated keyboard of functions and some number keys (kind of like how Tandy’s portables were often programmable using a layer on the keyboard for typing whole keywords per key press), and you can just have an “ASCII” function for inputting text characters as their index in the ASCII table.
though, with modern technology, I think we could get away with a full keyboard, Something blackberry style would be a perfect fit for this kind of device (even if it’s a bit less “calculator-ey”) The Beepy is a little raspberry pi board that has one of those attached (though they can’t legally show the keyboard on their website, which is why it’s blurred there).
As for actual hardware, I think that comes down to capabilities you want to target. if you’re shooting to just hyper-miniaturize something like a TRS-80, I’d go with real hardware for reliability, but if you want flexibility, a low power FPGA might be a good shot, since you’d be able to program in just about any computer you can use with the built in keyboard and video out. I do like the idea of having swappable CPUs, though that would have its limitations (z80s and 6502s sadly can’t exactly fit in the same socket)
I would personally swing for real hardware, and focus on having mostly standard capabilities, but with a versatile enough graphics chip that you could port lots of z80/6502 (whichever one the machine had. 6502 would be obvious, but I think there’s a ton of 6502 computers getting made right now, and almost nothing z80) code to the thing. Kind of like how the CX16 is, just mini-sized.
I’d also want a programmer’s calculator (not to be confused with programmable calculators, or weird pocket versions of desktop computers) to include half, single, and double percision floating point (or really every variant of IEEE floating point it supports word lengths for), I’d want fully selectable word length as a must (never know when you’ll touch a 1 bit, 6 bit, 12 bit, or whatever else computer), a built in mode for IP address quick functions (which are constantly being fiddled with in bitwise operations, and shown in various bases and whatnot), and also maybe some features for working with high-level coding too (there would be dozens of these depending on what languages you want testing functions for)
your idea of keeping bit masks as an active function is definitely exactly how I’d want it to work also. that would be sooooooo convenient.
Mine was a Sharp EL-506B. Not specifically a programmer’s calculator but it did do hex and octal. Replaced with a Sharp EL-506H years later after it died. I still have that, somewhere. Not sure whether I still have the B.
Don’t have much to add really. I graduated in 84 Comp Sci degree. I scrimped and saved for a TI Programmer which I used in my IBM Assembler courses. I still have it, tho it didn’t power up last time I tried. For nostalgia reasons I scored a HP-16c with manual and sleeve recently. I haven’t gotten really familiar with it yet, but found several vintage articles and books on its capabilities and use. I’m a much bigger fan of the HP RPM Voyager calculators than the algebraic TIs I learned on.
The original programmable calculators were Elektronika MK-61 - Wikipedia , produced in the USSR/Ukraine. A lot of games and utility programs for these calculators were published in popular magazines. I still have one.
I have an HP-16C (as well as a 15C and 12C modern) and despite it being nearly as old as me, I use it regularly. It sits near me against my keyboard rest and is invaluable for programming. I find it quicker and more satisfying than an onscreen calculator, though PCalc for Mac & iOS is still excellent.
I’m pretty sure there will be non-English articles from the time these calculators were introduced, which would explain the advantages and the techniques - could you help us find them? I’m sure machine translation these days will do wonders.
could you go a little more in-depth with what you mean when you say the MK-85 was PDP-11 compatible? is it just that the basic programs could be run on a PDP-11?
It only concerns the processor compatibility level. The K1801BM2 supports basic PDP-11 commands and EIS. The calculator only has 2 KB of RAM (6 KB for the MK85M extended model). The calculator is typically used as a BASIC interpreter. It is difficult but possible to use the ML code.
I’ve put together a Z80 emulator (ported from github) running on a Pico in a a small form factor that I put together to run a Psion organiser recreation. There’s a small OLED display and a keyboard. Tha Z80 memory can be saved and loaded from SD card.
I would like to add an interesting photo. https://p2.dreamwidth.org/0e854568e4e3/-/www.dorlov.no-ip.com/Old%20Films/1986/Forms/Full/12-24-2010_007.jpg
It features an MK-54 programmable calculator (it a B3-34 variant), a machine for printing digits and several other symbols, and a box that connects the calculator and the printer. This photo was taken in Kharkiv, Ukraine in 1985. A man built this himself to solve the differential equations required for his coursework. This calculator has no ports, so it was necessary to cannibalize a piece of its case and to make some soldering!