A DIY Guide to Computer Repair and Modification (PC and Amiga 500)

      == == == From - [email protected] (Lewin EDWARDS) == == ==
    -= A DIY Guide to Computer Repair & Modification (PC and Amiga 500) =-
   [Note : To people who saved my earlier post re: installation of the 1Mb
       Agnus, discard it and get a copy of this instead; the 1Mb Agnus
                   installation procedure is included here]

                  -=<* About This Document - Disclaimer *>=-

This document is intended to provide electronics hobbyists with some useful
notes the author has gathered whilst working on various systems. It is not
intended to train or encourage novices to attempt service or modifications
to expensive appliances. It is especially not intended to encourage
unqualified personnel to tamper with dangerous appliances such as monitors,
power supplies and other devices which contain vacuum tubes, live mains or
high-tension rails, or other hazardous areas. Any such work carried out is
done at the reader's own risk and the author accepts no reponsibility for
damage to property or person which occurs as a result of attempting any of
the procedures described herein.
        Having said that, I can vouch for the workability of the
modifications listed here. I have personally performed them all myself on my
own machines (this is, after all, a chronicle of my own experiences, chopped
up under suitable headings for your convenience). With regards to the service
information, whilst I have described problems and the solution(s) I found,
keep in mind that this is rather like a doctor prescribing medication over
the telephone or from an encyclopaedia. What I mean by this statement is that
different problems may well cause the same symptoms; to take a trivial
example, if you turn your monitor on and nothing happens, perhaps the fuse is
blown, but on the other hand, perhaps it is not plugged in, or perhaps there
is a more sinister fault in the power supply section. For this reason, I
suggest you use the service information as a very vague guide ONLY. Remember;
it is very rare to find two machines which are exactly the same inside, and
so what I have found to be a suitable solution to a given fault may be
totally inappropriate to your situation.

                      -=<* The Commodore Amiga 500 *>=-

i. Serial Killer
----------------
Problems with Amiga serial ports generally fall into three categories; problems
with the flow control lines, problems with the actual data transmission lines,
and problems with the line level (caused by faulty line driver chips). The
first two can be relatively costly to repair, due to Commodore's monopoly on
the CIA and Paula chips, so I advise exploring the line driver section of the
circuit before rushing out to buy new Paulas or CIAs.
        Faults in the line driver chips (MC1488 and MC1489, U38 and U39
respectively in the schematic on page F-7 of the book 'Introduction to the
Commodore Amiga 500') are typified by either total loss of transmission, total
loss of reception, or both. If you look at the flow control lines, (CTS and
RTS), you usually see that these lines are behaving normally (exactly why
these lines are rarely affected is a mystery to me); if not, then you probably
have a faulty CIA. Since the 1488 and 1489 only cost around A$1.00 each,
depending on your source, it is well worth replacing these chips before you
investigate Paula. Unfortunately, they are not socketed so you will have to
desolder them (see "Desoldering Small IC's" below). When you have the chips
out, put in a couple of sockets to facilitate later repairs.
        If, after replacing the 148x's, you still experience problems, it is
time to look further. If you have suitable software, you can check whether the
problem lies in the flow control lines (in which case you have a damaged even
CIA, U8) or in the data lines (in which case you have a damaged Paula). If you
do not have, or are unable to interpret the results of, this software, you can
make use of an old Amiga-tech wrinkle; exchange the CIA chips and see if your
fault clears up. If it does, then ten to one the problem is in the CIA which
started out as U8; if the problem persists, then it is most likely a Paula
fault.

ii. Floppy Hassles
------------------
In my life I have opened at least 40 Amiga 500's and have NEVER seen two which
have the same make and model of internal floppy. It seems that Commodore
change their suppliers (and also the colors of the LEDs on the keyboard) on a
weekly basis. Let's see.. three possible LED colors (red, green, yellow),
three LEDs on the keyboard, four floppy manufacturers (Sankyo, Chinon,
Panasonic, Sony), two different styles of head connector (one film connector
per head or one wide film connector servicing both heads), helical screw or
belt-drive head carriage mechanisms.. that makes 144 possible configurations
already. For this reason it is not possible to give specific "look-to-the-left-
of-the-large-chip" directions, and I can only state a couple of possible faults
and their possible causes :

* Floppy refuses to acknowledge disk insert
Probably caused by a defective odd CIA (U7). Try switching the CIAs over. Also
check that the switches at the front of the drive travel freely up and down.
Verify that the pads to which the switch assembly is connected have not flaked
off the board (this can be caused by rough disk insertion).

* Floppy will not read disks formatted in other drives
The head alignment is faulty. There is a method of adjusting it without
special tools and measurement devices, but it requires considerable patience
and one of the X-Copy series of programs. The method is as follows :
- Format a disk in a working drive.
- Open your machine (or external drive). Remove the cover from the drive unit
(it is usually held on by one screw on either side and another on top at the
back). Locate the track zero sensor and loosen the screw which holds it in
position. Load X-Copy and select the Toolkit option CHECKDISK.
- You must now align the lower head. This can be accomplished by moving the
track zero sensor a little, then checking the disk, and repeating this until
you find a position in which the drive will read the lower side of the disk.
When this is done, tighten the screw which holds the track zero sensor, to
stop it shifting. If you have any Lok-Tite, a drop of that on the screw is
advisable.
- You must now align the upper head. Loosen the two screws which hold it to
the head carriage assembly (Do NOT remove these screws, unless you relish the
idea of going over the floor with a metal detector looking for small springs).
Adjust the upper head by eye until it appears to be exactly over the lower
head. Now repeat the above trial-and-error process, tweaking the upper head
around until you find a workable position. Tighten the screws, replace the
cover and reassemble.
        If the above procedure sounds rigmarolish and uncertain, it is ! But
I have successfully performed it on a number of Amiga and PC 3.5" drives. And
I have never had a failure with it.

iii. Caps Lock Chaos
--------------------
Many Amiga owners will know, to their detriment, that occasionally the Caps
Lock light will start blinking and the keyboard will lock up. This is caused
by the microprocessor in the keyboard detecting a keyboard fault. I first
noticed this fault when our school Amiga room (two rev. 5a A500's) acquired an
autofire joystick, a Quickshot IIb I think. When switched to autofire mode,
this joystick would periodically jam the keyboard. If you have recently
acquired an autofire joystick, you should investigate whether turning it off
during boot fixes the problem. Otherwise, you can try the old "Atari Twist",
ie pick up your machine in both hands and twist it. This is basically
equivalent to reseating the chips on the motherboard; if you have a spare
moment, I suggest you actually open the machine up and manually reseat them.

iv. Bulimia of the Agnus
------------------------
iv-1. What is the 1Mb Agnus ?
-----------------------------
The 1Mb Agnus (variously known as the Obese Agnus or Fatter Agnus), Commodore
part 8372a or 318069-02, is the relatively new Agnus which is capable of
addressing 1Mb of chip-RAM. This allows you to have twice the amount of
sampled music, screens, and other custom-chip data in memory simultaneously.
It also has the desirable effect of letting you run things like Deluxe Paint
in 16-color 640x512 (or 640x400, NTSC users) mode, without having to
disconnect external drives, close down WorkBench screens and the like. For
A-Max users, installing the new Agnus and configuring it to 1Mb chip-RAM mode
will also increase A-Max compatibility. If you have more than 1Mb of RAM, then
it will make A-Max virtually 100% identical to a Mac Plus, memory-map-wise.
NOTE WELL : This modification requires 1Mb of RAM to be visible !

Commodore, not wishing to make two chips where one will do, is now shipping
the 8372a in most (nearly all Rev. 6a) A500's, without telling anybody. In
these machines, the extra chip-RAM capability has been disabled so that if you
connect an A501, it will still think it is "slow" [see below] RAM.

iv-2. An Aside on Memory Speeds
-------------------------------
The Amiga has *three* types of RAM. Chip-RAM, Fast-RAM and "Slow"-RAM.
Contrary to what many people assert, RAM at $C00000 (the default location of
the A501 expander, and the second 512K of RAM in A2000's) is NOT fast-RAM,
even though the system reports it as such. Because this RAM is refreshed and
accessed via Agnus, it is affected by buss contention in just the same way as
chip-RAM. It is simply a dead area in RAM which is not accessed by the custom
chips and which is not faster than chip-RAM. Moving this RAM to $80000 (which
is what you do to enable 1Mb chip-RAM) will have no effect on machine speed at
all.

iv-3. Compatibility
-------------------
To date (20-Oct-91, 18:11EST) I have personally tested at least 400 pieces of
software with the new Agnus. I have found three programs which do not work :
* Double Dragon II (Completely screwed up)
* VideoFX 3D (Again, completely useless)
* Impossible Mission II (This game requires memory at $C00000. It does not
mind the Agnus, but if you want to run it you must drop back to
512K chip/512K slow mode. Lousy AllocAbs() programmer !)
In addition, Dragon Ninja thinks you are running on a 512K machine and will
not play in-game music. Again, this can be rectified by switching into 512K
chip/512K slow mode. Some other games also think they are running on a 512K
machine, notably TechnoCop and R-Type, but this is of no real consequence.

iv-4. Identifying the Version of your A500
------------------------------------------
There are several versions of the A500 out there. I have only tried fitting
the new Agnus to the following :
 a. The Revision 5 board shipped until early 1989
 b. The new Revision 6a board supplied from May (?) 1989 onwards
The way to identify your machine type is to check the expansion port which
lurks under a plastic cover on the left-hand side of the computer. The Rev. 5
machine has a very fat strip (double width) at the back of the connector; the
Rev. 6a board has two normal-width strips instead.

iv-5. Installing the 8372a to Revision 5 A500's
-----------------------------------------------
1. Remove the 8371 from its socket. If you are an NTSC user who does not wish
to use the PAL mode, go to step 3.
2. Pin 41 of the new Agnus controls whether the machine starts up in PAL or
NTSC modes. When it is tied low (to ground), the machine boots in NTSC mode.
When the line is tied high or left floating (ie unconnected), it boots into
PAL mode. On the Rev. 5 board, pin 41 is connected to ground by tracks on BOTH
sides of the board, making it virtually impossible to cut the track without
desoldering the socket. This means if you just plug in the new Agnus, you will
be locked in NTSC mode !! There are a couple of ways to go about circumventing
this problem; I will detail here the one I undertook on my own Rev. 5 board. I
will assume you want to install some sort of switch to toggle PAL/NTSC mode.
If you only want to run in PAL mode, you can simply bend out pin 41 of the
Agnus socket (don't bend the pin on the chip) to prevent it from making
contact with Agnus. If you do this, proceed to step 3. Otherwise, get yourself
an SPDT or SPST toggle switch and two lengths of telephone (or other thin,
stiff single-core wire). Solder wires to the switch :

                            +---+
    To a convenient ground--+-o |  BACK VIEW OF SWITCH
                   +--------+-o |  When held as shown, UP=PAL, DOWN=NTSC.
                   |        | o |
                   |        +---+
 Uninsulated --> | | <-- This side is insulated
                 \-/ <-- Fold the wire thru 180 degrees

3. Insert the new Agnus. If installing the switch, you should now poke the
loose end of wire (see above) from the switch into pin 41 of the socket so
that the bare copper side touches the pin on the chip and the insulated side
touches the pin on the socket. In order to fit the wire down the hole you may
find it necessary to bend out or remove entirely [Not recommended !] the pin
on the socket. Secure the wire with a tiny drop of cyanoacrylate adhesive.

4. If you wish to install a memory mode switch, go to step 5. Otherwise,
locate JP2 (between 68000 and ROM). This consists of three pads. The center
and lower pads are joined by a thin track. Cut this track and place a drop of
solder between the center and upper pads. Now locate the _EXRAM line coming
from the A501 port (it comes from pin #32 and runs on the upper side of the
motherboard parallel to the A501 connector). Cut this line. You have now
completed the installation procedure.

5. Complicated. Locate JP2 and cut the track which joins the center and lower
pads. Locate the _EXRAM line from the A501 port (see step 4) and cut the
track. Solder wires to all three pads of JP2 and one wire to either side of
the gap you cut in the _EXRAM track. Wire a DPDT switch as follows :

                   +-----+  BACK VIEW OF SWITCH
Upper pad of JP2 --+-o o |  When held as shown, UP=512K CHIP, DOWN=1M CHIP
Center pad of JP2 -+-o o-+- To one side of the gap in the _EXRAM track
Lower pad of JP2 --+-o o-+- To the other side of the gap
                   +-----+
You have now completed the installation procedure.

iv-6. Installing the 8372a to Revision 6a A500's
------------------------------------------------
1. Remove the 8371 from its socket. Insert the new 8372a. NTSC users who do
not wish to use the PAL mode should go to step 3. When installing the new
Agnus, note that on the 6a board, the Agnus socket has been rotated 90 degrees
anti-clockwise from the orientation on the revision 5 board. For this reason,
plugging in the Agnus correctly is no longer an intuitive operation !
2. JP4 controls PAL/NTSC video mode. If you are in North America or Hong Kong
or anywhere else the National Television Standards Committee TV format is
used, this should be bridged by a track or a blob of solder. If you are in
Australia, Europe or anywhere else the Phase-Alternated Linescan TV format is
used, this jumper should be cut open. If you wish to install a switch, then
simply connect it across the two pads of the jumper.
3. Cut the track joining the center and upper pads of JP2, and the track
joining the center and upper pads of JP7a. (JP2 is between the CPU and the ROM
and JP7a is just to the left of the A501 connector). If you wish to install a
memory switch, proceed to step 4 otherwise solder the center and lower pads of
JP2 together. You have now completed the installation procedure.
4. Connect a DPDT switch as follows :

                   +-----+  BACK VIEW OF SWITCH
Upper pad of JP2 --+-o o |  When held as shown, UP=512K CHIP, DOWN=1M CHIP
Center pad of JP2 -+-o o-+-- Center pad of JP7a
Lower pad of JP2 --+-o o-+-- Upper pad of JP7a
                   +-----+
You have now completed the installation procedure.

v.  Is My Jumper On The Line ?
------------------------------
Number  Rev5 ?  Rev6a ? Function
-------------------------------------------------------------------------------
JP1     yes     yes     Connects reset timer (NE555) to main reset
JP2     yes     yes     Maps A501 at $C00000 or $80000
JP3     yes     yes     Swaps _CAS of RAM banks (of use for test purposes)
JP4     no      yes     8371  Agnus : TEST line [solder closed !!]
                        8372a Agnus : PAL/NTSC video mode select
JP5     no      yes     28MHz base clock to Agnus
JP6     no      yes     7MHz clock on pin 7 of expansion connector
JP7a    no      yes     Controls _EXRAM to Gary
JP7b    no      yes     CIA tick from VSYNC or pin 32 of A501 (default VSYNC)
JP8     no      yes     LPEN from FIRE0 or FIRE1
JP9     no      no      ??? A non-existent jumper. Future Rev. 7 ???
JP10a   no      yes     Connects AUDIN to pin 18 of serial port
JP10b   no      yes     Connects AUDOUT to pin 11 of RS232 port
JP11    no      yes     Connects CSYNC to BCSYNC or video hybrid
-------------------------------------------------------------------------------
NB: These are A500 jumpers only. A2000, 2500, 3000 have different jumper
assignments. The 1000 *may* have similar settings but I cannot guarantee this.

vi. Hol(e)y, Hol(e)y, Hol(e)y
-----------------------------
Owners of Rev. 6a A500's will notice that they only have 4 RAM chips as
opposed to the 16 in the Rev. 5 and earlier machines. They will also note that
in between the RAM chips are empty sets of holes which look like something
ought to go into them.
        Firstly, fear not - the reason you have a quarter the number of RAM
chips as older machines is that the 6a uses 44256 4-bit x 256K chips which are
four times as large as the 41256 1-bit x 256K chips used in the 5 and earlier
revisions. All the modern Amiga memory hardware (except possibly the A501)
uses these larger chips because they are slightly cheaper on a dollar-per-
megabyte basis. For example, the older Series I A590 hard drives use the
41256, and they will accept up to 2Mb. The new Series II A590's use the 44256
(and consequently have enough space to fit 8Mb of RAM).
        But, back to those extra holes. They are indeed designed to accept
something; viz, another set of four 44256's to take your machine up to 1Mb
without having to buy an A501 or other expander (this is particularly useful
if you have a memory expansion which uses the A501 slot, and you want to have
1Mb chip-RAM). If you want to install your own RAM there, you should do as
follows : Purchase four 20-pin IC sockets (preferably machined-pin). Make sure
you have a solder-sniffer. Now look at those holes and you will see that they
are clogged by solder (this is due to the way the boards are soldered; the
process covers all exposed copper areas with solder). You must clean this
solder out by heating the board from one side and sniffing the solder out on
the other (or blowing the solder through; if you choose this method, make sure
to remove all the little splashes of solder from the board and your lap). When
you have cleaned out all the holes, solder in the sockets. Now plug in four
44256 chips and you have 1Mb of memory for slightly less than the cost of an
A501 (in Australia, the difference is roughly A$20).
        With respect to the speed of RAM chips required, I use 150ns chips
with no problems at all; however, I suspect that Commodore would recommend
100ns devices. The price difference is minimal so you may as well buy 100ns
chips so that if you ever buy a series II A590, you can shift the chips over
and have 100%-guaranteed-not-to-overheat fast-RAM.

vii. 1Mb of Motherboard Memory on the Rev. 5
--------------------------------------------
It is possible to install 1Mb of RAM onto the revision 5 motherboard. However,
this modification is flaky at best and I cannot recommend it (having tried it
in a moment of sheer boredom). Also note that I could *not* get this extra
memory to be mapped at $C00000 (the computer would only recognise it if I had
JP2 set to map the A501 at $80000); which means that it is only of potential
interest to owners of the 1MB Agnus. (This failure to work as $C0 RAM may well
have been due to some stupid omission on my part).
        I will deliberately be vague because this is not a trivial
modification. If you are unable to work out what to do with confidence, you do
not have enough knowledge to perform the mod.
        The procedure can be summarised as follows: Take sixteen 41256 RAM
chips (for speed information, see the end of subsection vi. above). Bend the
refresh address strobe pins (_RAS, pin 4) on all the chips up and over so that
it is well clear of the other pins and easily accessible from the top of the
chip. Bend in all the other pins a little. Now, piggyback the new chips on top
of the existing RAM, making sure to install them in the same orientation as
the original chips. It is not possible to reach all the pins to solder them,
so you will have to content yourself with only soldering the corner pins.
Solder wires from the bent-up _RAS pins to pin #38 of the A501 port (or any
convenient take-off point of this signal). You should now have 1Mb of RAM. (If
you want to try using it as $C00000 RAM, you should ground the _EXRAM pin, pin
#32, of the A501 port. I had no success with this). This mod sounds all very
well, but in the current climate it may be slightly cheaper to buy a
secondhand A501 than to buy 41256 chips. In addition, due to the precarious
hold the piggybacked chips have on the originals (because there isn't enough
room to solder all of the pins down), the mod is sensitive to shock; if you
tap the table, you can sometimes guru the machine. For this reason, this is a
"possible but ill-advised" modification.

viii. Double Trouble
--------------------
The hack to accelerate your Amiga to 14MHz has been published in countless
articles, but I may as well include a brief description of it here. The hack
involves removing the original 68000 from your Amiga and substituting a
version rated at 16MHz (confusingly called the 68000P-12; the Motorola chips
have "16MHz" stamped on them, but the SGS-Thompson clones do not). The clock
pin is bent out and soldered to the output of a divide-by-2 counter whose
input is connected to the base 28MHz clock. THIS MODIFICATION SHOULD BE
INSTALLED WITH A SWITCH !! If not, you WILL (not may) find that some games
will refuse to load because they use timing-dependent loaders.
        Aside from the problem mentioned above, the only compatibility
down-side to this modification is that some floppy drives will not handle the
increased step rate. If you find that your drives give read/write errors at
the high speed, you can either replace them or run a program called "DFDelay"
to slow down the step rate. (If df0: will not work, you have a problem. Try
swapping df1: for df0: - to do which you will need a Commodore df1:. The
mechanisms used in the old A1010 drives are EXTREMELY reliable and much
quieter than the new rubbishy things; if you have an A1010, you can be fairly
certain that it will support the new speed).
        To perform the mod, remove your old 68000 and embed it in a perspex
block for future reference. Now rig half of a 74S74 dual D bistable as a
divide-by-2 counter. Connect the input of this to a convenient take-off point
of the 28MHz clock line on the motherboard (I use pin #34 of Agnus, but
anywhere will do). Now bend out pin 15 of the new CPU and solder a wire to
this pin. Take a piece of stiff telephone wire, strip approx. 5mm of
insulation from one end, and stick this end down pin 15 of the 68000 socket.
Insert the new CPU in the socket and verify that pin 15 is well clear of the
wire in the socket. Now wire a SPDT switch as follows :

                                            BACK VIEW
                                     +---+  When held as shown UP=7.14MHz,
   To output of divide-by-2 counter -+-o |  DOWN=14.28MHz
                 To pin 15 of 68000 -+-o |
  To wire in pin 15 of 68000 socket -+-o |
                                     +---+

The 74S74 should be mounted somewhere convenient; I break off all the unused
pins, bend the remaining pins out, and stick the chip on top of one of the
data path IC's; this has the advantage of allowing me to take power directly
off the existing components rather than stringing yet another pair of wires
through the machine.
        If you only have chip and/or slow memory (see subsubsection iv-2.)
then your machine will run at approximately 150% normal speed (on
CPU-intensive operations; DMA rates will be unchanged). If you have true
fast-RAM then code running from fast-RAM will execute at close to 200% of
normal speed. Try placing a large perpective brush with anti-aliasing HIGH
in DeluxePaint III (or IV !) and you will see the speed increase.

ix. The Numbers Game
--------------------
This is how PLCC chips are numbered (using Agnus as an example) :

                1 1                   8 8 8 8 8 7 7 7 7 7
                1 0 9 8 7 6 5 4 3 2 1 4 3 2 1 0 9 8 7 6 5
 BEVELED CORNER | | | | | | | | | | | | | | | | | | | | |
              /-------------------------------------------|
         12 -|                      o                     |- 74
         13 -|                                            |- 73
         14 -|                                            |- 72
         15 -|                                            |- 71
         16 -|                                            |- 70
         17 -|                                            |- 69
         18 -|                                            |- 68
         19 -|                                            |- 67
         20 -|                   8372A                    |- 66
         21 -|                                            |- 65
         22 -|                                            |- 64
         23 -|                 TOP  VIEW                  |- 63
         24 -|                                            |- 62
         25 -|                                            |- 61
         26 -|                                            |- 60
         27 -|                                            |- 59
         28 -|                                            |- 58
         29 -|                                            |- 57
         30 -|                                            |- 56
         31 -|                                            |- 55
         32 -|                                            |- 54
             |____________________________________________|
                | | | | | | | | | | | | | | | | | | | | |
                3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 5 5 5 5
                3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3

x. A Change Of Face
-------------------
Installing the ECS Denise is simplicity itself. Simply remove the old Denise
and plug the new one straight in. Note that to use the new video modes, you
require the 1Mb Agnus (not necessarily in 1Mb chip-RAM mode, though). By
installing the new Denise, you also eliminate the annoying video glitches
which occur in NTSC mode when using the new Agnus with the old Denise.

xi. Snap, Crackle and Pop
-------------------------
[For non-Australians, the above is the slogan a local cereal company uses to
advertise a tasteless soggy mess called Rice Bubbles].
        Symptom : Your monitor produces snapping or popping noises, and
sometimes goes unaccountably blank after being switched on for a while.
        I have no idea why this problem seems to affect Commodore monitors so
badly. It is caused by arcing of the EHT rail (around 14kV, from memory) to
lower-voltage areas of the set. Initial treatment is to turn off the monitor,
leave it for a couple of days (to allow capacitors to discharge), and then to
remove every last speck of dust from the inside. This usually works.
        If it does not, however, sterner measures are called for. Open your
monitor and (here comes the dangerous part) leave it running, open, for a few
hours. If you actively work against Murphy's Law by watching it from behind
something or inside something, where the monitor can't see you, you MAY
eventually be lucky enough to actually catch it in the act of arcing. Mark the
place with a spirit pen and spray on some anti-gaussing compound. (This stuff
has a very high dielectric constant and hence helps to prevent arcs).

xii. Yo Ho Ho And A Packet Of Disks
-----------------------------------
I sometimes describe A-Max as the only useful productivity tool for the Amiga;
Mac owners will agree with me when I say that Macintosh applications are
incomparably better than their Amiga counterparts. However, due to suppression
of the source of 128K ROMs by a certain computer mega-corporation named after
a piece of dead plant, the future of this marvellous product looks slightly
less certain than Melbourne hosting the 1996 Olympic Games (grin).
        There exists a software patch which will allow you to [illegally] run
the emulator using a ROM image file on disk; however, if you wish to use a Mac
drive with the A-Max cartridge, you must have ROMs or EPROMs in the ROM
sockets. Problem ? No. Simply insert two blank 27512 64K x 8 EPROMs in the ROM
sockets.

NB: The above procedure is wholly illegal and the author is not explicitly
condoning nor advocating the practise. I personally own original Apple 128K
ROMs (purchased before the great ROM drought). The above information is
supplied for interest's sake only.

                 -=<* The 80x86-Based PC/XT/AT-Compatible *>=-

i. Tools of the Trade
---------------------
Since I come across many cards and peripherals of doubtful functionality, I
have invested in a 10MHz 286 motherboard with just enough RAM to get started,
plus a $20 Hercules card to run diagnostic programs. This is mounted in an
ancient XT casing, with an equally ancient 150W power supply. The total cost
of this system was about $150, and it allows me to test all XT and AT cards
(not EISA cards, but then I have no EISA-buss machines anyway !), drives and
so on. If you expect to be buying/selling many secondhand cards, drives, SIPPs
and so on, I heartily recommend buying such a system, unless you are game
enough to risk your "real" system by putting possibly defective cards in it.

ii. The Heat Is On
------------------
In many clone machines, particularly 16MHz or faster 286's which use the AMD
80286 rather than the Intel original, the CPU becomes extremely warm, too hot
to touch with the hand. For example, I have a 16MHz Acer motherboard which
uses an AMD 80286-16 processor, and after 25 minutes of operation at turbo
speed, the processor is far too hot to be touched for more than half a second.
This kind of heating is undesirable in that it shortens the chip life and,
more importantly, may lead to sudden crashes if the chip undergoes thermal
shutdown. (The so-called XT-286's, XT-class machines with 80286 processors,
are very susceptible to this problem). If your machine has this undesirable
property, you should consider attaching some sort of heatsink to the CPU. An
extra fan in the casing is also an option, though I find them to be relatively
ineffective for this task.
        You can also try replacing the CPU with an original Intel chip. For
some reason, the Intel line stays a lot cooler than the AMD line in general.

iii. Sudden Death
-----------------
Scenario : You are working on an important document under an operating system
known to be bug-free (aren't fairy-tales wonderful ?). You leave the keyboard
to take your ten-minutes-per-hour anti-RSI coffee break. You return (having
neglected to save your work), you press a few keys... and nothing happens.
Your document is there on the screen, but the program has halted.
        The above is quite often caused by overheating problems (see
subsection ii). It is also sometimes caused by dirty or otherwise imperfect
connections between cards or chips and their sockets. If your machine is more
than 2 years old, it may well be that your sockets are becoming dirty. (An
interesting anecdote springs to mind about a small LAN of XT-class machines,
all of which seemed to fail simultaneously. It turned out that the network
cards used single-wipe sockets which degraded much faster than the dual-wipe
sockets used on the motherboards, and occasionally the fileserver would start
to send out a packet, but would only manage to send part of the header before
the faulty network card corrupted the transfer. Because of a "feature" in the
network software, all the machines on the LAN stopped operations while waiting
for an ID sequence to indicate the machine the corrupted packet was destined
for. This looked exactly like a simultaneous crash on twenty machines and had
the serviceperson (erm, me) puzzled for quite a few days).
        The immediate cure for this sort of problem is to pull out all your
cards, clean the connectors with an ink eraser (pencil erasers are not
abrasive enough), remove the fragments of eraser and reinsert the cards. You
can also push down on all the socketed chips to reseat them.
        Oh yes. The above problem can also be caused by viruses. Use McAfee
Associates' SCAN (and if necessary CLEAN) programs to detect and kill these.

iv. Overworked FPU's
--------------------
Due to the large price discrepancy between the different speed ratings of
floating-point coprocessors, there is a strong temptation to buy (say) a 25MHz
387 for your 33MHz 386. The chances are good that such an arrangement will in
fact work, however note that the power dissipation of the FPU will be
increased. In simple terms, it will get hot. For this reason, you should
always look for ceramic-bodied chips, since they can dissipate MUCH more heat
than plastic-bodied devices. And whenever possible, run in non-turbo mode.

v. Hot-Rodding, Across the Universe
-----------------------------------
It is relatively common knowledge nowadays that it is quite possible to
hot-rod a 16MHz machine to 20MHz or a 33MHz machine to 40-50MHz. This
naturally carries with it the same overheating problems mentioned in
subsection iv above. However, if you are determined to undertake such a
modification, there are a couple of pieces of information you may find useful:
- For 80286 and 80386 machines, you will need a crystal or oscillator can
(make sure you know which you need) which is TWICE the frequency you want your
machine to run at.
- The crystal to replace is the one rated at TWICE the listed speed of your
motherboard (ie on a 16MHz board, there will be a 32MHz crystal). Do not be
led astray by the I/O clock crystal(s) !
- It is good practice to place a socket on the motherboard where you removed
the old crystal, so that if you ever have to sell your machine you can pop in
the original speed of crystal and cover up your tracks.
        Note that I have never performed this type of enhancement to 80386
machines; however, this document is being typed on an 80286 which I hot-rodded
from 12MHz to 16MHz.

vi. Hacked Reset Switches
-------------------------
Most 286/386/486 motherboards (all I have ever seen) come with a reset switch
connection built-in; many XT motherboards do not. Consequently there have been
a number of postings to USENET describing how to add a pushbutton to the
_RESET line of the CPU. I find it rather amusing that several such founts of
wisdom advise the installation of a pullup resistor "to make sure the line
goes high again after the button is released". Interesting. Does this mean
that when you turn on your machine, you only have a 50/50 chance that the
_RESET line will be high enough to let the CPU start ? Of course not. The
designers already put in a pullup resistor, so there is absolutely no need to
put in another one. Just connect a normally open pushbutton between the _RESET
pin of the CPU and any convenient signal ground.

vii. Tearing Your Hair
----------------------
Scenario : Your favorite machine, with SoundBlaster, LAN, VGA, Hercules, Voice
Master, two serial and one multi I/O cards goes down. You don't know where to
start.
        The first thing to do in such cases is to remove every card except the
display adaptor and the floppy controller (if this is integrated with the hard
disk controller then both will have to stay). You should now simply keep
adding cards until the machine no longer starts up (assuming it starts up in
its minimal configuration). Whilst this may sound obvious, you would be amazed
by the number of people who leave all their cards in and just poke about with
the jumper settings.

viii. Mix And Match
-------------------
It is often very convenient to have two monitors connected to the one machine.
(I have both VGA and Hercules cards in my "useful" machines). However, not all
display adapters can be mixed together in the one machine (due to memory
conflicts). Below is a table of the allowable configurations; a star indicates
"allowable" and a period (full stop) indicates an illegal combination.

                        with MDA  CGA  EGA MCGA  VGA
                         MDA  .    *    *    *    *
                         CGA  *    .    *    .    .
                         EGA  *    *    .    .    .
                        MCGA  *    .    .    .    .
                         VGA  *    .    .    .    .

For the purposes of display mixing, an MDA (mono 80x25 text only) is identical
to a Hercules Graphics Card (720x348 mono graphics). Note that if you have a
VGA card as one of your displays (the most common configuration is VGA + MDA
or Hercules), your VGA card will no longer be able to emulate Hercules modes.
(If you load up the extended-mode-handler program supplied with most SVGA
cards, you will be told that the card cannot be switched into mono mode). Note
the possible pitfall with Hercules cards; most of them contain a parallel
port, usually switchable from address 3BC to address 378. If you already have
a parallel port mapped at this address, strange errors will crop up. (Also
note that if you have parallel ports at 378 and/or 278, and the Herc parallel
port is at 3BC, the Herc card will become LPT1: - this may necessitate some
switching of cables). If possible, disable the onboard parallel port, or map
it to an unused port address.
        One final note on the subject of video conflicts; a number of clone
companies have released so-called "color Hercules" cards, which support both
the Hercules and CGA standards. These cards will not co-reside with any other
video card.

ix. Expanding SVGA Cards
------------------------
Many people ask, "Can I expand my SVGA card ?". In most cases, the answer is
no. However, occasionally one runs across cards which have sockets for extra
RAM. The two examples of this which I have seen are Tseng Laboratories SVGA
cards (mine came with 512K and space for an extra 512K), and Trident cards
(again, mine came with 512K, but had sockets for the extra RAM). In such
cases, installing the extra memory is simply a matter of purchasing the
requisite RAM chips (usually 44256; however, some older cards will use 4464
or 41256 chips), and installing them in the empty sockets on the card. Before
you spend the money on this, however, consider - do you really need the extra
memory ? In the vast majority of SVGA cards, adding the extra RAM only allows
you to use ONE extra mode, viz. 1024x768x256. This mode is not really useful
unless it is un-interlaced (stare at an interlaced screen for a few hours and
you will understand why !). Also, on monitors coarser than 0.28" dot pitch,
this mode looks EXTREMELY fuzzy, and on some monitors it is not even
displayed properly (the edges of the screen are compressed). Although my
cards support this mode, I always use 640x480x256 as my maximum screen
resolution (except when viewing very large GIFs, eg the 1152x900 pictures
designed for and/or digitized on Suns).
        A final note : I have yet to see a card which was supplied with 256K
which is expandable. Most of these cards were very early models which used
older (true VGA) chipsets incompatible with the newer de facto video
standards.

x. To BIOS or not to BIOS ?
---------------------------
THe question is often asked, "Which BIOS is best ?". One would imagine that
the best BIOS should be an original IBM chip; however, since most software is
developed on clones (I wonder how many people have seen a real IBM recently -
I haven't seen anything more recent than an original 5-slot PC, although I do
know of the PS/2, a 286 machine. Does IBM in fact make a 386 ?), a machine
with a "real" BIOS is not necessarily more compatible than a clone. So the
choice of BIOS boils down to personal preference. I personally own AMI 286 and
386 BIOSs, and Award 386 BIOS, and I have used Phoenix 286 and Award 286 BIOS.
Out of these, I strongly recommend the AMI (American Megatrends) BIOS because
it seems a lot more sensibly designed than the Award or Phoenix programs. For
example, the AMI 386 BIOS allows you to set up a whole lot of low-level
chipset parameters related to memory speed and setup, whilst the Award only
allows you to set drive and display types. Also, if you have been toying with
the XCMOS settings and have managed to make your computer non-functional, if
you have the AMI BIOS, you simply hold down Insert while pressing the reset
button, and the XCMOS settings will be set to default values, unlocking your
machine. With the Award BIOS, I had a machine with Hercules and VGA cards, but
no mono monitor, and I accidentally set the display type to "MONO", meaning
that the machine booted on the Herc card where I couldn't see anything.. in
order to get the machine usable again I had to open it and unplug the Hercules
card to force the BIOS to return to the VGA/EGA display setting. Annoying,
especially since the machine in question was the bottom (Murphy again !) in a
stack of three PCs with a monitor on top, all on a very crowded desk.
        NB: Since the BIOS is resident on a standard EPROM, it is quite
possible to copy it using an EPROM reader/burner and a blank EPROM of the same
type. However, the astute will notice that there are *two* chips in the
machine with little holographic stickers; the BIOS and the keyboard
controller. I have never had occasion to try pirating BIOSs, but I doubt that
BIOS A will work with keyboard controller B. They definitely "know" about one
another, because when you boot a slow AMI machine, you see a serial number of
the format <something>-<something>-K (a pause while the keyboard is accessed),
then another digit indicating the keyboard controller version.

                         -=<* General Information *>=-

i. Desoldering Small IC's (Less than 40 pins)
---------------------------------------------
Small chips can be fairly easily desoldered by inserting a suitable lever
under one end, applying pressure and running a hot soldering iron up and down
the rows of pins. When one end is substantially further out than the other,
shift your lever to the other end and rock the chip out.

ii. Desoldering Large IC's (40 pins or more)
--------------------------------------------
This is not a task I relish, though I have had to do it a few times. I
strongly recommend the use of an IC desoldering tool. If this is unavailable,
then to help you rock the chip out (by the method described above), you should
"wet" the joints with a plentiful amount of fresh solder.

iii. Desoldering Surface-Mounting Resistors and Capacitors
----------------------------------------------------------
Unfortunately, one really needs to apply heat to both ends of these components
simultaneously to extract them easily. However, you can try using a
solder-sniffer to remove most of the solder, then heat up the entire component
and flick it off the board while the solder is still liquid. Make absolutely
sure you have the correct value of replacement component; SM resistors and
capacitors are often unmarked.

iv. Desoldering 160-pin Surface Mount IC's
------------------------------------------
Don't. It's impossible without a 160-arm soldering robot. If your motherboard
has a chip like this which is damaged, replace the motherboard; it will
probably be cheaper than trying to import a proprietary ULA from Taiwan or
Japan. Not to mention the hours you will waste soldering all those .025" pitch
pins, and the YEARS you will waste getting rid of the solder bridges.
        (Note : For those who do not believe 160-pin IC's exist, please refer
to the Acer 16MHz 80286 motherboard, component U16. This is an M1207-16, a
160-pin surface-mounting ULA).

v. Old PCB's
------------
Printed circuit boards which have been in service for a while are MUCH more
susceptible to heat damage (when soldering and desoldering components) than
more recent boards. In the case of plated-thru-hole double-sided boards
particularly, it is extremely easy to pull the pad off the top side of the
board when desoldering components. This necessitates much laborious flying
lead installation and is generally a hassle ! I recently had cause to repair a
device made in late 1979 (an old glass tty, in fact), and I would strongly
advise staying well clear of these older devices if at all possible.

** EOF **
There has not been an error in d4wnloading and the fqle is 1^00% uncorrupt?d.