PDA

View Full Version : Jumpers on the XT motherboard



per
January 2nd, 2009, 07:53 AM
As you might have heard, I have done some investigating around the PC/XT architecture. If you got a PC/XT, you might have noticed some solder pads labbeled "E1" to "E5" spread along the motherboard. those pads are for jumpers that IBM didn't bother to solder on (exept one, on the later 256/640Kb MotherBoards).

Lately, I have been trying to identify the use of therse jumpers. This is how far I have gotten:


(I would like to see a better scan of the IBM PC/XT TechRef Manual)
E1 = BIOS ROM
---------------------------------
1-2 = Disable
*Off = Enable


E2 = Page select of adress decoding ROM
---------------------------------
1-2 & 3-4 = Page 1
3-4 = Page 2
*1-2 = Page 3 (256/640Kb MotherBoard)
*Off = Page 4 (64/256Kb MotherBoard)


E3 = Bank select
---------------------------------
*1-2 = Adress Decode ROM (>=64Kb between each bank)
3-4 = XA15 (16Kb between each bank)

5-6 = XA14 (16Kb between each bank)
*7-8 = Adress Decode ROM (>=64Kb between each bank)


E4 = Adress multiplexing
---------------------------------
*1-3 = For 64Kbit per 4164 DRAM
2-4 = For 16Kbit per 4164 DRAM


E5 = Software control of Keyboard data line (bit 2 of I/O port 0x61h)
---------------------------------
1-2 = Enable
*2-3 = Dissable


E1 (2*1-pin header) is just a waste. Nobody would like to disable the BIOS ROM.
E2 (2*2-pin header) is nice, if you want to make use of different memory-bank sizes from time to other
E3 (2 2*2-pin headers) is for adress decoding, either by the adress decode ROM (custom Bank sizes), or by direct adress lines (16Kb per bank, all 4 banks have to be used)
E4 (2*2-pin header) is for multiplexing for either 64Kbit per chip or for 16Kbit per chip.
E5 (3*1-pin header) is for direct CPU control of the keyboard data line (!!!). Make sure to turn the shift register OFF and keep the keyboard safe and disconected. You should see the TechRef about how to wire your device to the keyboard plug.

JohnElliott
January 2nd, 2009, 12:21 PM
E1 (2*1-pin header) is just a waste. Nobody would like to disable the BIOS ROM.


Why not? If you want to use a different BIOS and don't have any chips matching IBM's pinout, disable the BIOS ROM and stick a 27512 / 28C512 on an ISA card. Or a 29F010 with a jumper, and have two BIOS images selectable by jumper and Flash-updatable.

per
January 3rd, 2009, 04:34 AM
Why not? If you want to use a different BIOS and don't have any chips matching IBM's pinout, disable the BIOS ROM and stick a 27512 / 28C512 on an ISA card. Or a 29F010 with a jumper, and have two BIOS images selectable by jumper and Flash-updatable.

Didn't think of that, but I see the point now.

I was more wondering about the output from the actual-adress multiplexers:
Low adresses: XA0 XA1 XA2 XA3 XA4 XA5 XA6 XA7
E4=1-3: High adresses: XA14 XA8 XA9 XA10 XA11 XA12 XA13 XA15
E4=2-4: High adresses: XA7 XA8 XA9 XA10 XA11 XA12 XA13 XA15 (*Note*, XA7 is overlapping)

In the original PC, it is nice and clear, A0 A1 A2 A3 A4 A5 A6 A7 on Low, and A8 A9 A10 A11 A12 A13 A14 A15 on High. Why did they shuffle the high part on the XT? I mean, it is totally transparrent for software, but it's confusing when you start thinking about it!

E3, if you change it (both of them, note there is 2 jumpers there), XA14 and XA15 is run through the adress demultiplexer (bank selector) instead of the output from the adress-decoding ROM. I haven't identified the adressing system enough to really tell what this does. Maybe an option for 16Kb banks instead of 64Kb banks?

per
January 3rd, 2009, 04:48 AM
I just figured E3 and E4!

They're for 16Kb RAM banks!

The reason is that the upper adress line is ignored with 16Kb chips, hence
Low adresses: XA0 XA1 XA2 XA3 XA4 XA5 XA6
E4=1-3: High adresses: XA14 XA8 XA9 XA10 XA11 XA12 XA13
E4=2-4: High adresses: XA7 XA8 XA9 XA10 XA11 XA12 XA13

And then XA7 isn't ovelapping anymore with E4=2-4

And for E3, the bank is selected by XA14 and XA15, not XA16 - AX19 as it would by normal.

It's kinda cool that you can configure the XT as 16Kb/64Kb with only 3 jumpers!

per
January 3rd, 2009, 06:16 AM
Just one note. Make sure to set the switches to 64Kb before doing this. If set to anyhting else, the 64Kb will loop through the RAM amound you have set to. On the other side, I don't know if 4116 IC's will run in 4164 slots, so I guess it is only 64Kb emulating. However, only the first 16Kb is used of each IC.

Chuck(G)
January 3rd, 2009, 10:13 AM
Just one note. Make sure to set the switches to 64Kb before doing this. If set to anyhting else, the 64Kb will loop through the RAM amound you have set to. On the other side, I don't know if 4116 IC's will run in 4164 slots, so I guess it is only 64Kb emulating. However, only the first 16Kb is used of each IC.

Nope--the 4116 is a 3-supply chip; the 4164, single supply.

I modified my original 5150 to have 256KB on the planar by picking up a small board from an outfit called Purple Computing. You cut a couple of traces on the planar, inserted this thing with 4164's into the 48K worth of empty sockets and ran a couple of wires.

If anyone's curious, I still have the Purple docs.

Other people managed to do the conversion by unsoldering the first row of 4116s and doing trace cuts and jumpers on the planar directly. I was lazy.

per
January 4th, 2009, 02:44 AM
Nope--the 4116 is a 3-supply chip; the 4164, single supply.

I modified my original 5150 to have 256KB on the planar by picking up a small board from an outfit called Purple Computing. You cut a couple of traces on the planar, inserted this thing with 4164's into the 48K worth of empty sockets and ran a couple of wires.

If anyone's curious, I still have the Purple docs.

Other people managed to do the conversion by unsoldering the first row of 4116s and doing trace cuts and jumpers on the planar directly. I was lazy.

Ok. I'll make it "1 bank of 64Kb of 32+4 4164 chips where only 16K-bit of each chip is used" then. I don't see why they made it like that, since it is a waste of good RAM space.

mikey99
January 4th, 2009, 07:17 AM
If anyone's curious, I still have the Purple docs.



That sounds very interesting, could you scan those docs and make them available ?

Chuck(G)
January 4th, 2009, 03:00 PM
That sounds very interesting, could you scan those docs and make them available ?

I'll dig 'em up this week and scan them.

mikey99
January 9th, 2009, 08:23 AM
I'll dig 'em up this week and scan them.

Thanks , does anyone know of any other cards made by
Purple Computing ? I recall seeing a 5150 listed awhile back
that had a card made by this company, but I cant recall what
it was.

dongfeng
January 12th, 2009, 12:24 AM
Thanks , does anyone know of any other cards made by
Purple Computing ? I recall seeing a 5150 listed awhile back
that had a card made by this company, but I cant recall what
it was.

There was an original first-BIOS IBM 5150 on eBay USA with that board a while back.