MAME Apple2gs P Key Fixed | 2021-02-21

For a while, the Everyday Retrocomputing Project was severely stalled out for the want of an ANSI terminal. While Telnet65 was able to provide something basic and suitable, it also came with some small shortcomings. The first was that it’s a ProDOS utility targeting all Apple ii machines, so it can’t leverage Apple iigs features. The second is that, as it relies on Apple text modes, it cannot display even basic colors. While the latter isn’t strictly necessary from a usability standpoint, it certainly does help. Additionally, vt100 and ansi modes also support underline and bold, which the Apple text modes just can’t do.

All of this was, ultimately, because I couldn’t use Spectrum for my terminal because it inexplicably lacked a P key. Well, as of last week, that was fixed. I’m incredibly grateful for Kelvin Sherlock discovering that MAME was marking the P key (and others) with the numeric keypad flag, causing Spectrum to treat it as a function key. I don’t know the full story of his pouncing on the issue, but I suspect it may have had something to do with my complaining about it while trying to get ORCA/C working on on my MAME Apple iigs environment.

Sooo…it means that I have that terminal I wanted, can use a Raspberry Pi as a BBS of sorts, and use shell access. This comes with its own frustrations, which I’ll detail in a future post, but it’s a great step forward.

What’s really interesting, though, is that the specs of my machine are starting to expand, and I really think this is an interesting indication of what it’s going to take to make this project “work”. A standard out-of-the-box Apple iigs is going to offer a 2.8 MHz CPU speed and 1MB RAM. Spectrum will run on these specs, but slowly enough that, on a graphical terminal like the color ANSI terminal, key echo is delayed palpably. On MAME, you can just dial on a ZipGS CPU and crank up the clock speed; on physical hardware, you have to buy an accelerator. The market rate for a lot of GS accelerators is nearly as much as buying the base model itself. Additionally, ORCA/C really needs 4MB or 8MB of RAM. GS RAM cards are a little easier to get, but this is interesting because it paints a picture of what kind of hardware specs “everyday retrocomputing”, at least for me, takes.

We started with a MOS 65C816 at 2.8 MHz and 1MB of RAM. We’re now looking at a MOS65C816 running at 8-16 MHz and 8MB RAM, and while this will get web browsing, forget about SSL, so most Internet interactions will still have to be mediated by a Raspberry Pi. What I guess I find so interesting here is that, while we could make some really sharp trade-offs, such as sacrificing basic text color display and using Telnet65 for everything, at least going down this particular rabbit hole quickly reproduces a set of hardware specs that start looking a lot like my first x86 PC from 1992. Just putting the SSL issue aside for a moment, there’s an odd feeling coming to me that maybe everyday networked computing just calls for the horsepower of that kind of machine, at least if you want certain basics.

Anyway, those specs will get you a color text terminal as well as some basic web browsing and email, and ORCA/C might help me get some other utilities going.