Apple II Adaptive Firmware Card

This post will be something of a departure from the usual topics on this site but it’s an area on which there is precious little information available so I’m sharing this in case it will be useful for anyone else. To give the background first, I was contacted by Barrie Ellis from One Switch who is writing a book about the history of one switch gaming which he intends to sell in order to raise money for the charity Special Effect. One of the earliest gadgets aiding accessible gaming was the Adaptive Firmware card for the Apple II/IIGS but there is next to no information available about it these days. From somewhere or other Barrie had managed to get hold of one of these cards but the snag was he didn’t have the IIGS to try it out or any details about how it worked which is where I came in. I’m not going to go into any great depth in this post but we aren’t aware of there being any footage of one of these being used available anywhere else so I’d like to put this out there for anyone interested. If you want more details, no doubt Barrie’s book will be the place to look.

I can’t say I knew any more than your average person about one switch gaming going into this. I certainly knew about Special Effect largely through the GamerDads podcast and was keen enough to help. Besides which, it’s an excuse to play around with some old hardware which isn’t something I’d ever turn down as a rule. The principle of a disabled person being able to control a game with a single switch sounds simple enough but achieving it in real life another matter. The AFC wasn’t the absolute first device to do this but it was certainly one of the forerunners. As such it’s arguably not the most user-friendly of devices for an Apple II novice trying to figure it out without a manual.
AFC Card AFC Adaptor

The card goes into slot 5 on the IIGS with the adaptor box plugging into the pin connectors at one end of it. For some reason these are at the wrong end of the card to route the rather short cables out of the back of the machine. The upshot of this is that I can’t put the top on my case when using this. Not sure how this was handled back in the day but I can only imagine it would involve making some extra holes in the case.


The AFC could connect to quite some list of gadgets. For my purposes here, I’m just going to be using a single switch but it could also connect with various specialist keyboards and speech synthesis devices to make the IIGS usable for the blind/partially sighted.

Menu MsPacman Array

The card comes with a setup disc allowing the user to program the card with control templates. This is a complex tool especially without a manual but I managed to get far enough to create some basic templates. One switch gaming with the AFC is largely based on scanning arrays whereby the user can create a menu of options which will cycle on the screen. The player can select one of these by clicking at the appropriate time and then that option will be linked to a macro, a keypress or another menu. Thankfully, there are some predefined templates on the disk to guide me through some of this so the first thing I tried was a pre-built keyboard template with Infocom classic Hitchhiker’s Guide To The Galaxy.

Ideally, I’d have the button in screen at the same time but it was all I could do to record a half decent picture off my TV. The clicks are audible enough anyway and it shows how it’s possible to enter text commands with just a button. It’s clearly a whole lot slower than typing but the scanning speed can be adjusted as appropriate for the person using it and it certainly makes the game playable. An alterative to scanning is the use of morse code which I briefly show at the end. If I actually knew more than SOS in morse code, this would a whole lot quicker for this sort of game. The morse code can also be done using two switches (one each for dots/dashes) which would be faster still.

The card will also slow games down which is potentially a useful feature for all gamers. I have to include something to do with Origin in here so I tried this out on Ultima 3 where the introduction seemed to run full speed but then the title screen was clearly being reduced to a crawl. The AFC is definitely not 100% compatible with everything I tried it with, this being a case in point as the game would subsequently run at full speed after the title.

My next effort involved creating my own template from scratch to control Ms Pacman. This was a very simple menu with just the four options each mapping to a key on the keyboard. This showed up a feature of the AFC in that the whole game pauses while selecting an option from the menu making this highly playable even at full speed. It’s quite a different experience becoming more tactical but still quite good fun.

The AFC also supports mouse/joystick commands and I had serious difficulty getting these to work. I eventually figured out that sending an command from a menu would switch the device into mouse mode. From here any menu option outputting a @ character would start up an inbuilt menu with a rotating arrow + C and X buttons to move, click or close the menu. Unlike the other menus this one doesn’t pause whatever program is running and the user clicks when the appropriate arrow is on the screen and either holds down the button or clicks again to stop it moving depending on the set up. This was all well and good except it still didn’t work in many games. For instance, I thought Battle Chess would be a good candidate for this control method but it hung the moment the mouse was clicked. I did manage to run Dungeon Master above but I can’t imagine it would be all that suitable in the long run without a much more complex template.

I also tried mouse control in Arkanoid with a reduced speed, also adjusting the rotating arrows to just have two directions. This was sort of playable thanks to the slowdown but I can’t say I’m entirely convinced. The mouse pointer accelerates through 3 speed levels all of which are adjustable so it can be tailored to each game/user in this way.

That’s about as much success as I’ve managed to get out of this and the above represents a good number of hours of trial and error. I’ve skipped over no end of games which didn’t work in this post. The AFC is quite an unusual gadget effectively turning the IIGS into a multi-tasking machine with the second switch input process being able to run on the card simultaneously to the regular program on the motherboard. I can’t say I’ve found this process always to work flawlessly with numerous titles crashing or input getting stuck. I have a strong suspicion that the AFC does not particularly like working in conjunction with a CFFA3000 card and that it would have been a much smoother process at the time. I wasn’t even able to run a lot of the software that had predefined templates which more or less confirms this. Either way, it’s still quite capable and I’m surprised to see something like this was available back in the mid 80’s. The software isn’t all that easy to use but appears to be extremely flexible – I expect most games could be made playable using the AFC but it would require a deal of programming skill and knowledge for much more than the basic examples here.

Paintworks Macros

I never did get joystick control working despite my best efforts, only being able to get the fire button to respond. I had a look through some of the predefined templates for some guidance but these are relatively complex to figure out from scratch with menu options having little BASIC like macros behind them as above. If anyone reading this happens to have any knowledge (or better still a manual) for one of these cards I’d very much appreciate it if you could get in touch with either myself or Barrie.