"Jerry J. Haumberger" <[EMAIL PROTECTED]> wrote:

> Odd thing about it is that as long as I'm working along with the
> machine, nothing happens -- it's only when the machine is idle for
> some period of time that it acts this way.

Does this problem sound familiar to anyone?  Any ideas?

Sounds like your "dynamic refresh" of RAM is failing.  (The 8088
- in fact, all Intel CPUs - automatically produce a refresh cycle
for RAM.  (A dummy address-refresh cycle reads all addresses
sequentially, but does nothing with the information read.  It is
transparent to the user, and is there ONLY to refresh dynamic RAM.)

When you are running a program (or even just typing something in),
MANY addresses are "looked at", all the time - so the normal
functioning of the program keeps the data from getting stale, even
if the refresh cycle isn't working.  However, leave it untouched
for a while, and unrefreshed RAM will quickly "forget".

I once added a second 16k RAM pack to an old Sinclair ZX81, modifying
the addressing so that it would sit between 48k and 64k.  However,
I neglected to allow for the dynamic RAM refresh, and the thing would
"forget" data within a minute or two.  (When I finally figured it
out,
I was amazed, because all of the data on dynamic RAM says that the
refresh cycles had to occur every few milliseconds - mine kept data
for 1-3 minutes - hundreds of times longer than that!)

Perhaps the main CPU crystal frequency is drifting (slow or fast
from 4.77 MHz).  Offhand, I don't know how you'd check it without
a freq counter or oscilloscope.

> Also, on this authentic IBM AT (on which I'm writing this
> message to you), I've noticed a few times that the screen will
> go blank, except for the message "Parity Check 1; 60000 (s)".

I have no idea what the "(s)" means, but the "60000" is hex address
where parity went bad.  Bring up debug, then WRITE "00" (not "FF")
at 6:0000 - 6:FFFF.  Wait 30 seconds or so, then DUMP 6:0000.
If they don't show "00" in all locations, that block is losing it.
(Don't use "FF" - that's the response of empty memory blocks, as in
"E000:0"...)

Best bet: yank out all of the RAM chips (use a tiny, tiny screwdriver
to pry them up), then carefully reinsert them.  (Straighten any bent
pins before sticking them back in, then insert ALL the pins in one
side before squeezing the second side for insertion.  Check all the
pins with a magnifying glass before finally pressing straight down
with your thumb...  This check is the MOST IMPORTANT part; never
push them back in without doing so - because you are guaranteed to
bend at least a few pins on the way in... especially the thinner
ones sometimes used at the chip's corners.)
This removal/reinsertion will "wipe" the pins clean.  There is no
need to remove the dark tarnish from the upper parts of the pins.

- John T.  (Doing this stuff since 1968...)



__________________________________________________
Do You Yahoo!?
Yahoo! Messenger - Talk while you surf!  It's FREE.
http://im.yahoo.com/

To unsubscribe from SURVPC send a message to [EMAIL PROTECTED] with 
unsubscribe SURVPC in the body of the message.
Also, trim this footer from any quoted replies.
More info can be found at;
http://www.softcon.com/archives/SURVPC.html

Reply via email to