3187Altair Floppy Disk Card
- Jun 3, 2013I want to design and build an S-100 card for the Altair that duplicates the Altair 88-DCDD floppy disk controller and drives on a single card. Drive content will be byte-for-byte images of the original Altair floppy format (70 tracks, 32 sectors per track, 137 bytes per sector) stored on an SD card. Hundreds of disk images will easily fit on a single SD card (if you could even come up with that much Altair software!). The controller interface will duplicate the original disk controller registers and timing so that all Altair software will run without modification. Compatible drive content, for example, are all of the .dsk files in the Files section of this group.
One of the first design problems encountered is how to allow the user to select one of the disk images from the SD card to "insert" into a drive. Martin E had an idea I like: Have an external box that houses a few vintage, 2-digit BCD thumbwheel selector switches to identify a disk image number (00-99) that is loaded in a drive. For two drives, you'd have two sets of selector switches, for three drives, three sets of selector switches, etc. Of course a printed sheet that catalogs your disk content/image number pairs would be very helpful when using the drives.
With the floppy controller and drive functions in place, I realized it might be handy for the card to optionally provide the boot PROM if the user didn't have a PROM card in their system (like me). For that matter, if the card could provide the boot PROM, it might as well allow the loading of any PROM content desired.
With floppy and optional PROM support on the board, I then realized that providing additional optional RAM might be handy for those without a full 64K of RAM (or with unreliable RAM) in their system. This would allow operation of applications that require more RAM (e.g., CP/M).
Finally, I'm wondering if a working 2SIO port is a given in most Altairs, or if I should add the ability to provide one or both of the 2SIO ports on this board as well? CP/M, for example, requires the first port of a 2SIO board.
Ideas, comments and thoughts welcome!
- Next post in topic >>