• Please review our updated Terms and Rules here

System/23 Datamaster I/O Slots

NeXT

Veteran Member
Joined
Oct 22, 2008
Messages
8,211
Location
Kamloops, BC, Canada
One of the things that attracted me to the Datamaster beyond it the most affordable system I could find was that it was said to have an expansion that was a precursor to the ISA slot.
The catch however was that I've had conflicting information about how the slot was arranged, either unintentionally or deliberately to avoid cards form the 5150 making its way back into a 5322. Some sources said the edge connector was mirrored side to side while others said the entire slot was turned 180 degrees so a normal ISA card would stick backwards out the machine.

I can now confirm that the pinout of an ISA slot and a 5322's I/O slot is identical. There are only two things which prevent you from plugging (most) ISA cards in. The first is a 5322 has the slot half an inch closer to the back of the machine.

CGS_12620.JPG

CGS_12619.JPG

CGS_12618.JPG


For most cards this means the rear plate would be on the outside of the tray. For cards however like this IBM Asynchronous communications Adapter, once you remove the plate the card slots in and the port just sticks out the rear. Vertical height however remains an issue.

CGS_12621.JPG

CGS_12622.JPG


The other probably more serious problem is that while 5322's I/O slot is incredibly close to that of an ISA slot, it's slightly different.

-B4 is not used
-B6 is DRQ0 rather than DRQ2
-B8 is Advance Storage Read, rather than "Reserved"
-B10 is I/O Cycle rather than a signal ground
-B20 is DRQ0 rather than CLOCK
-B21 is TP Tx Interrupt rather than IRQ7
-B22 is TP Rcv Interrupt rather than IRQ6
-B24 is the Diskette Interrupt rather than IRQ4
-B26 is Not Used rather than DACK2
-A12 through 15 is Page Bit 3 thru 0 rather than A19 thru A16

Buses.png


This causes problems with many cards, however some are a lot more "backwards compatible" than others. The Async Comm card above conflicts with only two pins. B8 and B24.

B8 is normally reserved on the ISA slot. This is a special pin to which the card can be jumpered to ignore depending on if it's in slot 8 on a 5160, which becomes -CARD SELECTED
B24 is one of the two IRQ select lines the card is hardwired to use. In a PC and later IRQ4 is reserves for the primary communications card. On the 5322 IRQ4 is reserved for the diskette controller, but is available on every slot. The solution here is to jumper the card for IRQ3 (B25) and hope nothing else is using that. On an ISA system IRQ3 is typically reserved for the secondary communications card.

Since a Datamaster is obviously not PC Compatible, any bootroms or routines that are used to either access the card through the IBM BIOS will not work. Likewise anything resident on the card cannot hook into anything in the 5322 because its BIOS and System/34 BASIC are incompatible with the PC standard.
 
Having designed hardware for the Datamaster recently, I am very interested in your findings. Do you think an ISA diagnostics card could be easily adapted to the Datamaster bus? The more the tools we have at our disposal, the better.
 
If you are looking for POST codes that depends on if the BIOS supports that at all. For things like IRQ and DMA sure but some of those pins are shuffled around.
 
-A12 through 15 is Page Bit 3 thru 0 rather than A19 thru A16

I was going to ask if those were just effectively the same thing (ie, if the Datamaster just had an effective 20 bit paged address range and those bits were the top four), but after taking a look at the "theory of operations" part of the service manual it appears it's more complicated than that. (It looks like it has four separate page registers that each covers an 18 bit area, IE, 16 pages of 16K, and each register is the one in effect for different types of operation, like CPU read/write, DMA, etc?)

TL;DR, it looks like it'd be pretty easy to hack an ISA I/O card to work, but anything memory mapped, I dunno, there be dragons.
 
For anything memory-mapped, one shall look at A14 & A15.

A14 should be tested as high and A15 should determine if the target is ROM or RAM.

Banks should be higher than 7 though.
 
Back
Top