[comp.sys.apple] /RAM accessability

SJDMK@UNO.BITNET (11/29/86)

The following is a summary of the responses I received about
the /RAM drive to use the extra 64k of a 128k //c. Thanks
to everyone who responded, you've been very helpful...

***********************************************************************

From:   edu%"SJDMK%UNO.BITNET@wiscvm.wisc.edu" 18-NOV-1986 02:15

It is my understanding that a BASIC program can only access 64k of the
128k //c. I've also heard something about creating a RAMdrive with
the other 64k. Is that really possible?

I'm trying to write a program that has two very large arrays that I'm
afraid won't fit in only 64k. Any suggestions? Would this extra
memory be available via a different language (Pascal, C, etc...)?

Also, what about a memory expansion "card" available for the //c.
Would I be able to access that via BASIC or another language
(besides assembly)?


From:   edu%"mw22@andrew.cmu.edu" 18-NOV-1986 13:40

   Buy Program Writer from the Software Touch.  On the back of the disk is
ProBasic.  ProBasic replaces Basic.System with a much more powerful Basic
interface, which allows you to allow an array exist as a disk file instead of
in memory.  (The file can be on a disk or on ProDos's /RAM volume.)  ProBasic
also allows you to create your own procedures and functions, each with its
own local variables, just like in Pascal.



From:   BITNET%"UMFORTH@WEIZMANN" 18-NOV-1986 17:02

Yes what you want to do is possible anyway.   The CPU of the Apple II
series (except for the new //gs) addresses only a maximum of 64K at
a time.  This is why programs cannot be bigger than 64K and be
available instantly.  Bigger programs are done by overlays, virtual
disk space, or other tricks but not being greater than that theoretical
limit for the 6502 (or 65C02) processors.

Since greater than 64K has become the defacto standard, what does one
do with the extra memory?   Like I said, programs can trick memory to
act larger through the segmentation into overlay chunks which are
placed into memory and then switched in/out as needed into the less than
64K range.
And as you noted, another scheme is to treat the extra memory as a pseudo
disk drive with files on it loading super fast at RAM speeds.  This has
been done for a long time now.  I have an older II+ with an extra memory
card.... the card came with software to allow overlays, RAMdisks, and
general bank-switching utilities.  I haven't used anything but the
RAMdisk option, but if it's done on an antique like mine, you can bet
that it's standard stuff on a //c.

There should be plenty of utilities around for you to set up RAMdisks and
program overlays without problems.  There might even be stuff around for
accessing enormous arrays and variables in the extra space.  The utilities
I have with my memory card also allow this, so the idea isn't new, or
impossible.   Good luck.



From:   EDU%"sipples%husc4@harvard.HARVARD.EDU" 18-NOV-1986 18:30

You are quite right when you say that the Applesoft BASIC built-in to
the Apple //c cannot access the extra 64K RAM.  In fact, it has much less
than 64K free memory available.

In many cases, this extra RAM is used as a RAM disk.  ProDOS automatically
assigns the extra RAM to the a volume called "/RAM."  However, there are
some application programs which use the auxiliary memory to store programs/
data, most notably AppleWorks.

If you prefer to use Applesoft, try contacting a company like Beagle
Brothers.  They market several utilities which utilize the extra RAM, one
of which will let you store arrays and variables.

Other programming languages may help, but you'd have to consult the
software companies individually.

Additional memory boards can expand the Apple //c's RAM disk storage, and
also make available more memory for the programs which can take advantage
of it.  These RAM boards, like Applied Engineering's versions, come with
the appropriate utilities to operate as RAM disks or with AppleWorks.

If you'd like to learn the intricacies of how to access the auxiliary
RAM on the machine language level, consult some of the excellent techni-
cal reference manuals on the subject.  Apple's manuals can be ordered at
most bookstores.



From:   BITNET%"LMLARS01@ULKYVX" 19-NOV-1986 00:03

If you are in BASIC under ProDOS, the extra 64K bank is called /RAM
and lives in slot 3 drive 2.  It has about 120 blocks of usable space
and can be used like any other drive, except that it goes away when
the machine is turned off.

I believe that the new memory expansion for the //c is the same as the
extended memory card for the //e, which can be expanded to hold up to
a megabyte.  It will automatically configure itself to be a RAMdisk
under ProDOS, Pascal 1.3 and DOS 3.3.  (It is also automatically
recognized by Appleworks to give you an expanded desktop.)  The slot
and drive of the RAMcard are slot 4 drive 1 and the mouse is moved to
slot 7 on the //c with the added memory.

I recommend that you look at the Applied Engineering memory expansion
for the //c also.  It has roughly the same capabilities, except that
you have to run a little program to implement the RAMdisk.  But, it also
has a Z80 chip built-in so that you can run CP/M on your //c.

In either case, buy a card with as little memory as possible because the
discount chip mongors are always cheaper for filling the little holes.