118 lines
6.2 KiB
Plaintext
118 lines
6.2 KiB
Plaintext
|
File: EXT. 30 COL. TUTOR I
|
||
|
Read 101 times
|
||
|
|
||
|
----------------------------------------
|
||
|
! !
|
||
|
! Memory Moves With An Apple ][e !
|
||
|
! and Extended 80 Column Card !
|
||
|
! !
|
||
|
! Part I !
|
||
|
! !
|
||
|
! a tutorial by: !
|
||
|
! !
|
||
|
! >>>>-------> Hawkeye !
|
||
|
! !
|
||
|
----------------------------------------
|
||
|
|
||
|
|
||
|
Welcome, one and all, to the first in what should be an informative series of
|
||
|
tutorials on some of the more exotic uses of an extended 80 column card on an
|
||
|
Apple ][e. We'll be discussing, among other things:
|
||
|
|
||
|
-The hardware implementation of the card
|
||
|
-The firmware routines provided by Apple
|
||
|
-Possible applications of these routines
|
||
|
-Software to interface these routines to a high level language.
|
||
|
|
||
|
In the future, we'll look at source code (6502 assembly language) that will
|
||
|
enable you to move blocks of memory up and down between the motherboard and
|
||
|
extended 80 column card under control Applesoft BASIC's "&" command, and an
|
||
|
Applesoft example program that will make use of the assembly driver.
|
||
|
|
||
|
*** Hardware Implementation ***
|
||
|
|
||
|
First, some history...
|
||
|
|
||
|
When Apple redesigned our old, faithful friend, the II/II+, a bright new star
|
||
|
was born - the Apple ][e. Many of the "flaws" in the old design were fixed;
|
||
|
the new computer had many of the more advanced features that diehard Apple
|
||
|
freaks had been crying for for years. We'd look at garbage computers like the
|
||
|
TRaSh 80, with their 80 column displays, and have to endure the sneers of their
|
||
|
snobbish (and subhuman) owners as they chortled over our inferior 40 column
|
||
|
screens. Then, along came Big Brother, aka IBM, with their very own overrated
|
||
|
machine, the PC. Those who poured their savings accounts into the new PC
|
||
|
systems were rewarded with tons of memory and a license to look down upon the
|
||
|
foolish, outdated Apple users with their paltry 64K of memory.
|
||
|
|
||
|
And these were just some of the things we had to put up with. Many other new
|
||
|
features were appearing in various machines that were poised to bludgeon Apple
|
||
|
II's to death in the market- place. The situation was beginning to become
|
||
|
embarrassing, to the point where many hard-core (heh heh) Apple freaks were
|
||
|
preparing to leap from tail buildings with their beloved computers cradled in
|
||
|
their arms.
|
||
|
|
||
|
Luckily, Apple Computer woke up from their Apple III induced slumber and did
|
||
|
a marvelous redesign of the ][. The resulting Apple ][e had such new features
|
||
|
as a complete upper/lower case keyboard, 64K standard (no more language card),
|
||
|
self-diagnostics, and a greatly reduced chip count, to name a few. But the
|
||
|
most important feature was the inclusion of built-in 80 col- umn circuitry that
|
||
|
enabled ecstatic ][e owners to plug an inexpensive 80 column card into a brand
|
||
|
new slot on the motherboard, which we'll call the "superslot". The superslot,
|
||
|
which has access to even more signals than the standard peripheral expansion
|
||
|
slots, takes over the functions of slot 3 if a special I/O card is plugged into
|
||
|
it.
|
||
|
|
||
|
So, the new Apple could display 80 columns on a standard monochrome mon-
|
||
|
itor. This standardization of such a display was good news (as opposed to the
|
||
|
multitude of 80 column cards, all with their own command sets, that many
|
||
|
manufacturers had been more than happy to sell to starving ][/][+ owners, at an
|
||
|
exorbitant price). But what set the display card apart from anything seen
|
||
|
before was the inclusion of the ability to place an additional 64K of memory on
|
||
|
the card. This would bring the total memory of an appropriately equipped ][e
|
||
|
up to 128K, which was more than most of the other pretenders to the Apple
|
||
|
throne could muster.
|
||
|
|
||
|
Only one problem here, though. How does one go about using the extra memory?
|
||
|
Apple provides a manual detailing the operation of the card, as well as the
|
||
|
firmware routines on the card that can be used by an enterprising 6502 prog-
|
||
|
rammer. Unfortunately, it contains no programming examples. The extended 80
|
||
|
column card reference manual is fine for those who have experience with both
|
||
|
Apples and 6502 programming, but little for the average Apple user.
|
||
|
|
||
|
The purpose of this series will be to discuss some of the firmware routines,
|
||
|
how they can be used from either BASIC or Pascal, and some possible ways that
|
||
|
they can be usefully applied in areas like graphics programming. Enough 6502
|
||
|
source code will be provided to illus- trate these ideas. If enough interest
|
||
|
is shown by the members of Sherwood Forest, I will consider extending the
|
||
|
topics of this series to other areas of my experience, which could include:
|
||
|
|
||
|
-Advanced Pascal graphics programming (in general, and also making use of the
|
||
|
X80 card in various applications).
|
||
|
|
||
|
-Vector graphics from Pascal, including:
|
||
|
|
||
|
...World and device coordinates
|
||
|
...Drawing vector shapes
|
||
|
...Zooming, scaling, rotation, and translation of shapes in 2-D.
|
||
|
...Demo program listings in Pascal to illustrate these topics and more.
|
||
|
|
||
|
These are the techniques used by large scale CAD/CAM and vector graphics sys-
|
||
|
tems, and are a fascinating area of study.
|
||
|
|
||
|
-Using an Apple Graphics Tablet from BASIC and Pascal. For the latter, an
|
||
|
assembly driver for the Pascal system will be included in commented source
|
||
|
form.
|
||
|
|
||
|
-General questions on the Apple family of computers, in terms of both hard-
|
||
|
ware and software.
|
||
|
|
||
|
If you'd like to know more about any of these topics, feel free to send mail
|
||
|
to me here at Sherwood Forest. The same goes for any feedback/opinions about
|
||
|
what you've read, in this column as well as in future columns. Try to keep the
|
||
|
verbal abuse to a minimum, though...
|
||
|
|
||
|
Coming next... a discussion of the 80 column firmware routine AUXMOVE and
|
||
|
how to use it to perform some magic on your Apple ][e.
|
||
|
|
||
|
like graphics programming. Enough 6502.
|