Memory boards this time; HwNote06

John B. Milton jbm at uncle.UUCP
Fri Oct 21 17:01:08 AEST 1988


Hey folks,

The 2nd HD upgrade is proceeding. I am going to get the board layed out soon.

This time the subject is what to do with that old clunky 512k memory board
you have laying around that you can't use now that you have a 1.5M Combo Card.
I know, I know everyone says you can't put it in because the Combo card
"covers up" all three slots. Well, warm up your soldering iron, because that's
just not true if you change a few things...

Expansion memory in the UNIXpc starts at address $200000. Expansion I/O starts
at $C00000. Memory gets 512k per slot, I/O gets 256k per slot. See table below
for a list of slot number vs address. There is a good explanation of all this
on page 3 of the floppy tape section of the Reference Manual. Slot detection is
done by the board in a relatively neet way. There are three pins provided to
each card that do NOT come from the 100 pin connector on the mother board. They
are ID0, ID1 and ID2, pins 30, 29, and 28 respectively.

Slot	I/O	Memory
----	-------	-------
   0	$C00000	$200000
   1	$C40000	$280000
   2	$C80000	$300000
   3	$CC0000	$380000
   4	$D00000
   5	$D40000
   6	$D80000
   7	$DC0000

Each slot has a different bit pattern encoded on these pins. The Combo card
uses the ID pins by feeding them into a 74F85 4 bit magnitude comparator. With
this chip you put two four bit numbers in, and get a < = > output on three pins.
For the serial chip on the Combo card, it compares address 18, 19, 20 and GND
to the slot ID 0, 1, 2 and the XIOEN* pin. The XIOEN* pin is asserted whenever
address pins A23=1, A22=1, A21=0 and FC2=1 (supervisor sccess). This means that
the "=" pin on the comparator will be driven any time I/O to the 256k chunk for
the slot the board is plugged into is accessed.

Each board has an ID "register" in the last four even bytes at the end of it's
I/O space, so that the kind of board in each slot can be determined. The ID
code for a floppy tape board is 01 10 FF F0. If this address is read and there
is not card in that slot, the CPU will  get a bus error. With all this info,
the machine can be acurately dynamically configured at start up time without
the need for dip switches or having to run a configuration program. It was
a real big hype situation when the Amiga came out with this brand new old idea.

A memory only card does not need an ID code because when memory is found, you
know what it is. The Combo card is nasty because it does not pay attension to
the slot ID for it's memory. Each of three banks of 512k on the Cmobo card
takes up memory slots 0, 1 and 2 no matter which slot the card is plugged into.
This means that if you have a 1.5M Combo card, there is no slot ID 3 for you
to plug your 512k memory card into. The 512k card IS well behaved and uses the
slot ID to affect the base address of the memory on it.

By now you have probably figured out where all this leads. If the 512k board
is lied to about the slot its in, it could appear at a memory slot other than
the physical one its plugged into. There is only one slot where memory can go
that there is no physical slot, number 3. If the 512k card sees ID0 (pin 30)=1
and ID1 (pin 29)=1, It will be in slot 3. I see your hand is already reaching
for the solding iron...

*** PROCEDURE TO FORCE A 512K MEMORY CARD INTO SLOT #3 ***

 1. Get a working 512k board.
 2. Shutdown you machine, take the Combo card out.
 3. Put the 512k card in.
 4. Boot diagnostics. It should say that you have 524227 bytes Expansion memory.
    It is not telling the truth! you really have 524228 bytes!
 5. Enter s4test at the prompt.
 6. Type 15 at the expert> prompt to test memory.
 7. It will test the main board memory first, and then the expansion. Notice
    what address the memory is at. Should be ${20,28,30}0000, for slot {0,1,2}
 8. Power down and take out the 512k card.
 9. Examine the area around the connector. Pins 1 and 33 are marked.
10. Solder suck pins 30 and 29, break them loose and pull them up a little. This
    can be tricky since the pin is the spring stuff the connector contacts are
    made out of.
11. Insulate the two connector pins. If they bend back down to the solder pads
    after you're done, IT WILL SHORT +5 TO GND AND BURN OUT YOUR POWER SUPPLY!
12. With a piece of wire, connect the two board holes where the pins were to +5
    There are two pullup resistors right there. Where they come together at the
    far corner of the board is +5.
14. Put some kind of sticker on the board down at the other end so some other
    fool will know. Something like "HARD ADDRESSED TO MEMORY SLOT 3 ($380000)"
13. Put the board back in, power up, boot diagnostics, test memory. You should
    see the address of the expansion memory at $380000.

Now for some advice. The power supply in this machine is wimpy. If you have a
3b1, then you have a "3b1 power supply", which means you have a cable for the
hard drive power coming directly from the power supply. AND THAT IS ALL IT
MEANS!! The amount of power available is the same for both the 7300 and the 3b1
power supply. I can't seem to find any guide as to which boards draw how much
power. Put the board in sometime when you're going to be around so you can
keep an eye on the machine.

If you have a 1.5M Combo board, you're already in the 2M to 3.5M range. Adding
another 512k isn't going to make a whole lot of difference unless you have a
lot of users or you're running some program (KCL?) that is a big memory hog.

As always, e-mail me if you have any trouble or my instructions differ from
what you see.

John
-- 
John Bly Milton IV, jbm at uncle.UUCP, n8emr!uncle!jbm at osu-cis.cis.ohio-state.edu
home (614) 294-4823, work (614) 764-4272;  Send vi tricks, I'm making a manual



More information about the Comp.sys.att mailing list