[comp.sys.atari.8bit] More than 16K on a 600XL?

hans@umd5.umd.edu (Hans Breitenlohner) (08/20/87)

In article <1830@bcsaic.UUCP> ray@bcsaic.UUCP (Ray Allis) writes:
>What is the most reasonable way to increase my 600XL's memory
>to a size useable with Atariwriter or other word processors?
>
>-- 
>CSNET: ray@boeing.com
>UUCP:  uw-june!bcsaic!ray

Following are instructions for upgrading a 600XL to 64k.  I promised to write
this up and post it some time ago.  Thanks for giving me another incentive,
and apologies to all who have waited for this.


-------------------------------------------------------------------------------
                 Upgrading an ATARI 600 XL to 64k memory

                         Hans Breitenlohner
                      Computer Science Center
                      University of Maryland



It is fairly simple to upgrade a 600XL computer to 64k memory.  Parts required
are two 64k by 4 RAM chips (TMS 4464 or equivalent), a 14 pin dip header
(optional) and three pieces of hookup wire.  Tools required are screwdrivers,
pliers, soldering iron, etc.  No special tools of any kind are required.

Having said this much, I feel that I should include the following DISCLAIMER:
This project requires that you open your computer, and solder and maybe cut
traces on the circuit board.  If the thought of this makes you uncomfortable,
if you have no experience with this kind of work, or don't have access to
suitable soldering equipment, then this job is NOT for you!  You will
definitely void your warranty, and if your computer does not work you will be
on your own.  You may have problems getting it fixed if the need should arise
in the future.  (Of course, if you are willing to pay someone 50-60 dollars
to fix a 600XL, talk to me, and I would love to help you out!)

No warranty, expressed or implied, including but not limited to .......
If you try this, however, and have problems, send me mail and I will try to
help, within the constraints of available resources.

Commercial alternatives:  American TV advertises a 64k expansion for the
600XL.  I do not know if it is similar to this, or if it is the plug in unit
which Atari advertised at one time.  Closer to home (for me, anyway) Computer
Service Land (14506-B Lee Road, Chantilly, Va., 22021, 703-631-4949)
offers an upgrade kit for around 30-40 dollars.  I have not seen it, but have
been told that it is very similar to what I have.  The extra money may buy
you better documentation or after-the-fact support.

A.  A brief description of the 600XL

The 600XL is a stripped down version of the 800XL.  With a few exceptions
the circuitry is the same as in the 800XL.  The case and circuit board
are smaller, as a result the layout had to be changed, and things are squeezed
together more tightly.  Memory consists of two 16k by 4 chips, and there is
an extra IC in the memory logic (more on that later).  There is no video out.
However, all the traces for it seem to be on the circuit board, and if you
remove the channel 2/3 switch, put in a 5-pin DIN socket, and plug in
all the resistors, caps, and transistors, it should be possible to get 
the video output just as in the 800XL.
Along with the layout, the numbering of the ICs was changed, and different
sections of multi-section ICs may be used than in the 800XL.

B.  Schematics

I used the Sams Computerfacts for the 800XL when I worked this out.  They are
not inspired (especially in their use of logic symbols for some of the standard
74LS circuits) but do appear to be complete and correct.  I am not aware of
any specific 600XL schematics.  I will explain this project so that you
do not need schematics to complete it.

C.  The Upgrade

Take apart your computer and remove the shielding from the circuit board.  If
you need step by step instructions on which screws to loosen, and when, read
the second paragraph of this again, now, before it is too late.
Two small warnings, though:  You can't fold the top of the case to one side
without disconnecting the keyboard cable, as you can on an 800XL.  Pull the 
small circuit board out of the socket on the main board.  I do not think
the cable is meant to be removed from its socket.  Secondly, there is one 
screw holding the circuit board to the case inside the shield (near the
modulator).  It is fairly easy to remove, but requires lots of care when
reassembling.

I have done this project once, and the circuit board had the following
identification (on the bottom):
  ATARI INC.
  MADE IN HONG KONG
  CO61677  7/1983
  REV. X9A
If yours is significantly different, your mileage on this project may vary!
The ANTIC chip (u9) should be a CO21697, and not a CO12296.  I think all 600XLs
have the correct one.

Replace the two memory chips (u11, u12) with TMS4464 or equivalent.  I ordered
mine from Microprocessors Unlimited.  I paid less than $12.50 then (about
a year and a half ago), and received them within 2-3 days of ordering.

The address multiplexers, u5 and u6 (74LS158) are not connected to the address
bits A14 and A15.  u6 pin 10 and u5-3 are grounded.  They need to be connected
to the two address signals.  It does not matter which pin is connected to which
of the signals.  This may be done by cutting the traces on the
bottom of the board feeding those two pins, or by removing the pins from the
sockets (assuming the board is socketed, mine is).  There are four feed-through
holes on the board about halfway between u9-21 and u14-1.  The rightmost two
are connected to A14 and A15, and I ran wires from there to the two legs of
U5 and U6 which I pulled out of their sockets.  If you decide to cut traces
and do the wiring on the bottom of the board, there may be better ways.  A14 is
available at the CPU u10-24, the ANTIC chip u9-19, at the second feed through
from the right, and at u15-9.  A15 is available at u10-25, u9-20, rightmost
feed through, and u15-15.  

After either of the previous steps you may want to run memory tests.  To do 
this you need to plug in the keyboard and power supply, being careful not to
short anything, etc.  In either case you should see 16k of good RAM.

There is circuitry in the 600XL to prevent references to RAM above 16k.
Half of the 74LS375 (unused in the 800XL) is used to latch A14 and A15.  The
extra circuit, a 74S32 at u18, combines these (latched A14 at pin 5, latched
A15 at pin 4, OR of the two at pin 6), and ORs the original CAS signal (pin 10)
with the result (pin 9) to produce the actual CAS signal to the memories.
To complete the upgrade, remove the 74S32 from location u18, and either 
insert a DIP header with a jumper from pin 8 to pin 10, or solder a jumper
to the board between the two pins.  If you perform this step before the
previous two, you will not be able to run memory tests, or use it in any
other way.

Reassemble the computer.  If you run memory tests now, you should see 40 or
48k of good RAM, depending on whether Basic is enabled.  The computer should
act exactly like an 800XL in all respects.

P.S.:  I have noticed that the picture quality from my 600XL is somewhat worse
than from 800XLs.  In particular there are six or seven vertical bars near the
left edge of the screen, probably related to memory refresh signals.  I do not
know if that is a problem with 600XLs in general, perhaps caused by the
different layout, or if the problem is unique to my system.  I also do not
recall if the problem was there before I did this upgrade.  If anybody does
this and can answer either of these questions, please let me know.

P.P.S.:  Now that 256k by 4 memories are available at somewhat reasonable
prices, the way is open to take one of the 256k upgrades for the 800XL and
adapt it to the 600XL.

-------------------------------------------------------------------------------

hans@umd5.umd.edu (Hans Breitenlohner) (08/21/87)

Here are two brief followups to my recent posting:

1. Feel free to pass the article to any bulletin board, network, newsletter,
   etc.  

2. If you install any 600XL upgrade which uses 64k by 4 RAMs, you should be
   aware that these are 256k RAM technology.  256k RAMs are much more for-
   giving about refresh than 64k RAMs.  While this is generally a good thing,
   it causes problems with the way the XL distinguishes between cold start
   and warm start.  Especially when the machine is cold, you may have to
   power it down for 10-15 seconds to convince it to do a cold start.
   There was a posting of a ROM patch to force cold starts from the keyboard,
   and I have developed something similar (better, of course, IMHO :-).
   Let me know if you want either.

For more info, I can be reached in the following ways:
   UUCP  !umd5!hans
   ARPA  hans@umd2.umd.edu (preferred) or hans@umd5.umd.edu
   Bitnet hans@umd2
   AT&T-net  301-454-2946
   usnail-net  Computer Science Center, Univ. of Maryland, College Park, Md,
                  20742

vaughan@canisius.UUCP (Tom Vaughan) (08/23/87)

 would like to get some objective opinions of the pro's and con' of
the P:R: connector. Is it worth it?  Or should I hunnt down an 850 and
be done with it.

Thanks in advance



--------------                                                 --------------
DEC VAX 11/750; 4.3 BSD UNIX          &                 DEC VAX 8650; VMS 4.5

UUCP   : {cmc12,hao,harpo}!seismo!rochester!rocksvax!sunybcs!canisius!vaughan
           or
         ...{allegra,decvax,watmath}!sunybcs!canisius!vaughan
CSNET  :  vaughan%canisius@CSNET-relay
US MAIL:  Thomas Vaughan/ Dept. of Comp. Sci./ Canisius College/
          2001 Main St./ Buffalo N.Y. 14208
--------------                                                 --------------