ROM dumps of Intel MDS-2 IOC

Dave Mabry dmabry at
Mon May 18 18:55:23 CDT 2015

Eric Smith wrote on 5/17/2015 9:34 PM:
> On Sun, May 17, 2015 at 6:06 PM, Dave Mabry <dmabry at> wrote:
>> As for the firmware, there were many versions.  At one point Intel released
>> an upgrade package called the iMDX-511.  That added cursor-addressbility on
>> the integral CRT, a function key on the keyboard (replaced the RPT (repeat)
>> key), some shortcut key sequences, improved speed, and other things I can't
>> remember.  It was a standard part of the Series-II at some point, about the
>> same time the white one became available.
> I've dumped all the programmable parts from a Series II with an IPB
> (8080 main CPU board) and the IOC iMDX-511 firmware, except the IOC
> 8041A and a few soldered-in bipolar PROMs used for address decode on
> the IPB.  My firmware images are on Bitsavers:
>> I have all that rom code.  I even took a swipe at disassembling it to try to
>> understand it.  That was never finished, but I did make some progress.
> As have I.  I found that the IOC firmware has undocumented 0dh and 0eh
> commands. Command 0x0d allows the main CPU to write to arbitrary IOC
> memory, and is probably for diagnostics, but is not allowed unless IOC
> RAM location 5af4h contains the value 24h, and I haven't figured out
> how that can be made to happen, since you can't use command 0x0d to
> set it if it isn't already set.  I haven't yet figured out what
> command 0eh does.

One of the enhancements in the iMDX-511 was a fast block write to the 
crt.  I'd bet that write to arbitrary IOC memory has something to do 
with that.  It was about the time that Intel released ALTER (later 
renamed AEDIT) which was a very nice screen oriented text editor.  If 
you had the 511 installed it did very fast screen writes.

>> If the 8741/8041 chip on the IOC was called the PIO (Parallel I/O) then I
>> have that rom code too.  I have a document that says the 8041 is indeed the
>> PIO.
> Yes. I'd like a copy. Can you confirm that the one you dumped is P/N 104566-001?

I have two dumps of 8041 code from two different systems.  One was a 
model 220 and the other was a 230.  All I know is that the images are 
different from each other.  I didn't record the part number.  (I created 
those files about 25 years ago...)  If you know that there were only two 
versions released, by some strange chance, then one of these must be it.

But I just checked my parts bin and I have two IOC boards (not 
completely functioning I think) that have that 104566-001 part. When I 
get a chance I can create an image, assuming I can get my eprom burner 
to run.  It worked when I put it away.  Just hoping the gremlins haven't 
taken it.

>> The iMDX-511 also included an enhancement to the keyboard processor.  I have
>> that rom code as well.
> 104675-001, included in the ZIP file on bitsavers.
> Do you have dumps of the firmware for the RPB86 and/or RPC86 8086 CPU
> boards used in the Series III?
> Best regards,
> Eric

I made two or three RPC86 boards from SBC-86/12 boards.  It wasn't very 
easy.  There were lots of wire jumpers and a few cut foils. There was a 
special PAL chip.  And, of course, the firmware.  So I have the firmware 
(or at least I have the EPROMS) for the RPC86.  To create the PAL I was 
able to copy the code from an authentic RPC86 as Intel hadn't burned the 
protection fuse.  I carefully documented all the jumpers and cut foils 
and used that documentation to make my second and third RPC86.  I will 
look for the firmware code for you. But I probably won't get to it right 
away.  Summer is here and I want to scuba dive and shoot at targets 
while the weather cooperates. :)

I sent out your Single Density ISIS-II 4.3 boot diskette today with 
Kermit on it.  It is my customization of Kermit that detects whether it 
is running on an MDS or a PDS and uses the correct I/O ports.  I find it 
most reliable at 2400 bits/second.

More information about the cctech mailing list