[comp.sys.apple] Extended 80-Col. on //e

joeb@pro-starbase.UUCP (Joe Burke) (06/10/88)

Is there anyway to use the extended memory of the Extended 80-col card with
the regular memory?  Thanks.

Joe (Joeb)

jm7e+@ANDREW.CMU.EDU ("Jeremy G. Mereness") (06/14/88)

>From: Joe Burke <pnet01!pro-starbase!joeb@nosc.mil>

>Is there anyway to use the extended memory of the Extended 80-col card with
>the regular memory?  Thanks.

The 65c02 in the Apple //e can only address 64K of memory at a time. in order
to use any extended memory, you have to perform what is known as bank-switching
where the machine litererally swaps one 64K bank for another. This can be a
problem, as just routines must exist in each bank of 64K to take care of itself
when you make the switch. It's a mess, and cards like RAMWorks, which are
simply extended 80-column cards multiplied over a few times, only make it worse.

However, Prodos has routines that can handle extended memory. Appleworks is a
brilliant example of how a large program can use Prodos routines to fit itself
within the tiny 64K space the 65c02 allows. What is done is the program is
segmented and Prodos handles the memory switching. Check out Appleworks running
under a 512K Ramworks (eight 64K banks) with AE's enhancements that put all of
Appleworks into a RAM, still manages to enlarge the desktop (the Appleworks
desktop is handled by Prodos routines (I think) and kept in extended memory)
and also provides a print buffer; a feature unique to RAMWorks. No other
Ramcard can feature a print buffer. I do not think GSRam or slot 1-7 cards are
capable of it. Obviously, I do not know how this feature can work, and Applied
Engineering isn't telling.

I hope this gives you an idea as to what you can and cannot do with extended
memory. If I had my way, I would have a //e with 512K extended to hold a huge
desktop/print buffer and then have an additional 512K in a slot 1-7 card to act
as a RAM disk. But that takes money and another slot...


Capt. Albatross
jm7e+@andrew.cmu.edu

============
disclaimer: These opinions are mine and will remain so until more intelligent
or insightful or informed people are kind enough to show me the error of my
ways.
Remember: A mind is a terrible thing to baste.

SEWALL@UCONNVM.BITNET (Murph Sewall) (06/14/88)

>Is there anyway to use the extended memory of the Extended 80-col card with
>the regular memory?  Thanks.

How do you mean that?  What's not "regular" about the memory on the
extended 80 column card (it's part of the memory of a 128K Apple).
It's only "irregular" in that it needs to be bank switched (16K at a
time, as the scheme goes) because a 6502 only addresses 64K (16K of
which is ROM, so there's 16K of bank switched memory even in a 64K ][+).

A LOT of software already uses the extended memory (AppleWorks, for
example).  ProDOS will allow the extended memory to be formatted as
a RAM disk when 64K applications are used (Applesoft, for instance).

Beagle Brothers puts out a couple of utilities that use the extended
memory (as RAM in DOS 3.3, and "Extra K" allows you to switch between
two Applesoft programs - one in main memory, one in the extended memory).

If you want to switch the memory banks yourself, Gary Little's INSIDE
THE //e (or INSIDE THE //c) is an understandable reference for a
beginner (and a reasonable reference for the somewhat more advanced
too).

---------------------
Disclaimer: The "look and feel" of this message is exclusively MINE!
            (subject to change without notice; void where prohibited)

ARPA:   sewall%uconnvm.bitnet@mitvma.mit.edu       Murphy A. Sewall
BITNET: SEWALL@UCONNVM                          School of Business Admin.
UUCP:   ...ihnp4!psuvax1!UCONNVM.BITNET!SEWALL  University of Connecticut

kamath@reed.UUCP (Sean Kamath) (06/17/88)

In article <8806111237.AA19491@crash.cts.com> pnet01!pro-sol!pro-starbase!joeb@nosc.mil writes:
>Is there anyway to use the extended memory of the Extended 80-col card with
>the regular memory?  Thanks.
>
>Joe (Joeb)


In what way?  data storage, RAMdisk, program memory, display page?  I assume
by the statement "With the regular memory" to mean as program space.  In
Basic, you might want to check out Extra-K, which lets you put variables and
such into aux memory.  If you are into assembly, then take a good long look
at auxmove and the other one, xfer, the latter moving control to the other
RAM bank.  Please be more specific.

Sean Kamath
-- 
UUCP:  {decvax allegra ucbcad ucbvax hplabs ihnp4}!tektronix!reed!kamath
CSNET: reed!kamath@Tektronix.CSNET  ||  BITNET: reed!kamath@PSUVAX1.BITNET
ARPA:  reed!kamath@PSUVAX1.CS.PSU.EDU
US Snail: 3934 SE Boise, Portland, OR  97202-3126 (I hate 4 line .sigs!)