Text content (OCR)
contact 3/the user group newsletter for sept. 1978
{ catalog of user contributed
(ware, and express our thanks to
_ all those both inside and outside of
Apple Computer whose efforts
made it possible.
The purpose of the contributed
section of the software bank is to
allow APPLE users to share pro-
grams among themselves easily and
at very low cost. By setting up a
system to make this possible, we at
APPLE hope to bring about a cross-
fertilization of the user community,
with better programs and applica-
tions ideas as the result.
Here is a brief description of
the program. More details will be
found in the enclosed catalog.
As APPLE receives contributed
programs, they are screened. The
necessary documentation is assem-
bled, and written catalog descrip-
tions are produced for each program
accepted. The author is then sent a
$25 APPLE merchandise certificate.
Periodically, the available pro-
grams will be assembled onto
diskettes, bulk duplicated, and
supplied to APPLE dealers at a
modest cost. The dealers will have
unlimited reproduction rights to
the programs on each diskette. As
each diskette is released, APPLE
will distribute a catalog of its con-
tents to you along with CONTACT,
When you see something you like,
just call or visit your local dealer
for a copy.
The library is a resource. In it
you will find some programs you
can use as is, some you can improve
upon, and some that may not
interest you at all. That’s as it should
be. Use what you can, send in your
improvements, and let’s work
together to build a super library!
Oh, about the Bard on the
cover. His image is one of many
graphics demonstrations available
on the first set of Software Bank
diskettes. It was produced with a
modified facsimile machine that
digitized the original artwork, and a
graphic processing program ona
PDP-11/03 that reduced the image
to an 8K byte database. It can now
be displayed by the Apple in the
Hi-Res Graphics mode.
@oppie computer inc.
...and the beat
goes on
With this issue of CONTACT,
we’re pleased to add five more
groups to the rapidly growing list of
APPLE user groups:
CALIFORNIA —
APPLE CORE
Scott Kamins
Box 4816
San Francisco, CA 94101
OREGON —
STEMS FROM APPLE
Ken Hoggatt
9195 S.W. El Rose Court
Tigard, OR 97223
(503) 639-5505 (home)
(503) 644-0161, x6136 (work)
TEXAS —
APPLE SEED
The Computer Shop
6812 San Pedro
San Antonio, TX 78216
Bill Hyde
(512) 828-0553
(No name given for this group)
c/o Computer Solutions
Suite 124A, 9200 Broadway
San Antonio, TX 78217
Philip W. Jackson
(512) 828-1455
(800) 292-7652 (toll free)
ARKANSAS —
Interested in joining or forming
an APPLE user group? Contact
C. Johnson, c/o dataCope, 5706A.
W. 12th St-, Little Rock, AR 72204.
(501) 666-8588.
If you’re interested in forming
or joining an APPLE user group in
your area, call or visit your local
APPLE dealer; he’ll be glad to help.
And if you know of an APPLE
group that’s not yet been listed in
this newsletter (see CONTACT No.
1 and No. 2 for the listings of the
groups that we know about), write
us here at APPLE. Direct your
note to Phil Roybal, marketing
manager,
|
LOOKING
AHEAD
--- Catalogs, Catalogs
With this issue of CONTACT
we've included an APPLE catalog
and a price list. If they’ve been
swiped by the time you read this,
or if you'd like another set “for a
friend,” just drop us a line — we'll
be glad to send you the literature
that you request.
Note, too, that this mailing
includes the first catalog of User
Contributed Software, with instruc-
tions on how to get it!
EDITORIAL
ooo OM USEF QrOUPs.
by Jim Hoyt (Silicon Apple
Programming Society)
The name says it quite explic-
itly. USER GROUP: individuals
drawn together by a common
interest in getting maximum benefit
from their computer investment.
Member benefits are manyfold.
For the newcomer, programming
techniques are explained, the inner
workings of the computer made
more clear. The answers to many
beginner’s questions are found
right here.
More experienced members can
get help or help others with soft-
ware and hardware design. (Some
of the things being done would
amaze you: APPLE controlled
cassette I/O and lower-case displays
to name only two!)
All members benefit from the
group’s library. There is probably
no better place to get low cost soft-
ware or that back issue of the mag-
azine you need. And many members
enjoy newsletters published by
their group which supplement our
own with hints, local news, and
application ideas.
The growth of the personal
computer industry depends on you,
the USER. Join a group. If there is
no local group, consider starting,
one. A group ties it all together!
APPLESOFT II
and DOS
.. squashing a bug
Tf (in the DOS) you try to load
a program that had been saved
under RAM APPLESOFT II, but
you are now using the ROM card
version, your program will not run
correctly. To get around this
problem, load your program and
then type
CALL 54514
and your program will be correct.
Similarly, a program that was
saved onto diskette from the ROM
card version and later loaded under
RAM APPLESOFT II will also
cause problems. Simply type
CALL 3314
and your program will be correct.
You can now save it onto tape.
The earliest production DOS
had a problem: when in APPLE-
SOFT II, any Read or Write state-
ments with line numbers of 256 or
higher would be ignored. To solve
this problem on any disks you may
INIT in the future, bring up the
DOS, remove the Write Protect
sticker from your system’s master
diskette, and then type:
>PR#n (boot your system)
>BLOAD RAWDOS
>(hit Reset)
D6:4C DS 3F
25DC:2E
3FDS5:E8 FO 1 60 4C DD 25
*3D0G
>BSAVE RAWDOS, A$1B00,
L$2500
Any new masters created from
this original master diskette will
now work properly.
Two corrections to CONTACT 2,
June 778
There is one correction to be
made in each of two program list-
ings in the HOW TO section of the
last issue of CONTACT.
— The CONVERT program on
Page 6: statement 251 should read
251 IF T<>0 THEN NEXT
B:B=B+l: IF B<E THEN 40
— The HOW TO SET LOMEM
WITHOUT HARDLY TRYING
program on page 7: we should have
tried harder. We now hasten to
point out that, in statement 40, B
cannot be a variable, since setting
the new LOMEM will destroy the
variables (as we ourselves said, in
the paragraph just preceding the
listing). The concept works, but
make sure that you POKE in
numbers in that line, not variables.
contact 3/the user group newsletter for sept. 1978
@opple computer inc.
Cockpit errors and DOS
A high percentage — 75 per
cent, to be precise — of disk errors
found so far are due to users trying
to run APPLESOFT II by typing
“RUN APPLESOFT.” This seems
reasonable, but APPLE II doesn’t
see it quite that way. As a result
(among other things) you cannot
reload programs saved on disk.
To get things to come out right
—all pointers where they should
be, etc. —, from Integer BASIC
simply type
FP (Carriage Return)
and you'll bring in APPLESOFT IT,
pointers and all.
To get back to Integer BASIC
simply type INT.
About that Communications Card
manual...
We’ve put together some addi-
tional information that will be
needed by many of you using our
Communications Card. Included are
a routine for use with low-speed
printers, information on setting the
card’s status register, information
on setting up a 1200-baud data
rate, and a number of other inter-
esting tidbits, as well.
We will be including this adden-
dum to the card manual with all
future card shipments, and we’ll
also be distributing it to all our
dealers. So if you already have an
APPLE Communications Card, just
call your APPLE dealer to get your
copy of the additional card info —
itll be available about the time that
you read this.
BITS AND
PIECES
APPLE software bank
contributors
.» please take note
Document, document, docu-
ment. It would be difficult for you
to give us too much information
about a program that you send us —
we need to know as much (and
sometimes more) about your pro-
gram contribution as you can tell us.
And never assume that potential
users of your program are as clever
as you; instead, assume that they
know nothing — not even when to
hit RETURN! Remember: The care
you take in explaining your program
is the only guarantee that it will be
usable by anyone else.
SAVE, then SAVE again. SAVE
your program twice, one recording
after the other, on the same cassette.
By doing this you give yourself, and
us, a safety factor in that if our
computer cannot read the first
SAVE, perhaps it will be able to
read the second. (As you know, not
all recorders are created equal.)
By the way, please add your
name and address to the program
listing with REM statements before
you save it, so that there will be no
question as to whose program we’re
running when we try it out.
LOAD, check, then give yourself
credit. After you SAVE your pro-
gram, turn OFF the Apple to clear
the memory space you’ve been
using, then power it up and LOAD
the program to be sure that it does
in fact load and run.
Finally, protect. After saving
your program, make sure that it
cannot be erased. Every cassette
includes a write/protect feature in
the form of two small plastic tabs
on the edge of the cassette oppo-
site its business end. When these
tabs are pushed in, pulled out, or
otherwise gotten out of the way,
the cassette can no longer be
written into.
Clearing the air. We make no
profit from your contributions to
the user portion of the APPLE
software bank. We set up this por-
tion of the bank simply to encourage
and to ease the exchange of pro-
grams among APPLE users. The
honorarium that we pay for contri-
butions to this portion of the bank
is merely our way of encouraging
such contributions.
From time to time, of course,
APPLE does purchase software, and
does so at the fair market value.
Such purchases are negotiated indi-
vidually, based upon market condi-
tions, applicability of the product,
etc,
OUT OF
THE MIST...
.. ASCH character
equivalents
The following table presents
decimal-number equivalents and
APPLE keyboard equivalents to
ASCH (American Standard Code
for Information Interchange) char-
acters. That is, if you were to scan
the keyboard directly in BASIC,
these are the characters that you
would read; or, if you were to go
into memory, these characters would
appear as string-variable values.
contact 3/the user group newsletter for sept. 1978
In the APPLE keyboard column,
Such information can make as to what goes and what does not,
read SMC asa SHIFT/CONTROL-M your programming life much easier, and in a way that tells you exactly
BC as CONTROL-B, etc. The deci- because it lets you get keyboard what's wrong as you go wrong.
mal numbers listed are those before data directly into a BASIC program ‘You can see one way in which
clearing of the keyboard strobe; without the use of an INPUT state- this idea is applied in ‘Being Precise
after clearing of the strobe, the ment. As you know, INPUT state- in INTEGER,” in this issue’s HOW
number is the listed value minus ments can be limiting as, for TO section. In this Multiple Preci-
128 (e.g., after clearing of the example, when you type in a line sion Arithmetic listing, statements
strobe, 145 becomes 17). If an and the screen yells SYNTAX 2500-2610 input data directly
APPLE keyboard equivalent ERROR at you. Well, what is the from the keyboard; they tell you
doesn’t exist, or if there is no deci- error? It may take a long time to find. exactly what’s happening, the
mal equivalent, then the table Tf, on the other hand, the key- nature of any error you may have
shows a double dash (--); if the key- strokes are picked directly off the committed, etc. — and all by
board equivalent is identical to the keyboard then you — the program- making use of the equivalence in
ASCTI character itself, then the mer — are in command every step the table presented here.
table shows “‘sa.”’. of the way; you make the decisions
TABLE OF ASCH CHARACTER VALUES
ASCIE APPLE DEC ASCIL APPLE DEC ASCH APPLE DEC ASCIL APPLE DEC
CHAR KYBD EQUIV CHAR KYBD EQUIV CHAR KYBD EQUIV CHAR KYBD EQUIV
NUL SP© 128 sp BRB 160 @ sa. 192 ~ 24
SOH ac 129 ! sa. 161 A 193 a sa. 225
STX Be 130 " 162 B 194 b 226
ETx cC 131 it 163 é 195 c 227
EOT DC 132 $ 164 D 196 d 228
ENQ EC 133 % 165 E 197 e 229
AcK FO 134 & 166 F 198 f 230
BEL Go 135 : 167 G 199 g 231
BS 136 ( 168 a 200 h 232
ur 1 137 ) 169 I 201 i 233
LFS 138 * 170 J 202 i 234
VT Ke 139 + 171 K 203 k 235
FF LS 140 ; 172 L 204 1 236
cr Mo 141 = 173 M 205 m 237
so. NC 142 . 174 N 206 n 238
sl of 143 / 175 ) 201 ° 239
DLE PC 144 0 176 P 208 p 240
per Qf 145 1 177 Q 209 q 241
DC2 RC 146 2 178 R 210 r 242
DC3 sC 147 3 179 Ss 211 Ss 243
DC4 qe 148 4 180 T 212 t 244
NAK uc 149 5 181 U 213: u 245
syn vG 150 6 182 v 214 v 246
ETB. We 151 7 183 w 215 w 247
CAN XC 152 8 184 X 216 x 248
EM x 153 9 185 Y 217 y 249
SUB yf 154 : 186 Z 2 218 Zz 250
ESC sa. 155 i 187 [ S5 219 251
FS a 156 < 188 \ = 220 Vv 252
cs SMC 1s7 = 189 ] Sm 221 ALT - 253
rs SNC 158 > 190 t - 222 ae 254
US ee 159 ? 191 a 223 RUBOUT 255
LF = Line Feed; CR = Carriage Return; SP = SPace; ESC = ESCape; sa. = Keyboard character same as ASCII character.
contact 3/the user group newsletter for sept. 1978
fl moving
experience
(Adapted from the Apple Core
Newsletter, San Francisco, CA).
Ordinarily, APPLE displays only
Page | of its memory (locations
1024 to 2047). But it is possible to
display Page 2 (locations 2048 to
3071) as well; and if you know how
to do it, use of Page 2 will give you
black screens in a hurry, and snap
your graphics and/or text material
cleanly on and off.
Before you can use Page 2, how-
ever, you must tell APPLE not to
put any variables at locations lower
than 3072; in other words set
LOMEM:3072. After you’ve done
this, you’re free to move the con-
tents of Page | to Page 2, reload
Page 1 with new data, and switch
back and forth between the two
pages. Here’s how to do it, using
the general-purpose block move-
If both pages contain similar
graphics figures, then switching
between the pages will yield simple
animation; further effects may be
gleaned from an inspection of the
list of POKEs on page 30 of the
APPLE II Reference Manual.
(NOTE: Don’t try this with APPLE-
SOFT in RAM. It starts at hex 800
— the second page of graphic. space.
A block move into that area will
send your APPLESOFT BASIC into
the bit bucket!)
The name of the game
is the saving of the name
if you’re an APPLESOFT I
user working with, say, an inventory
Goppie computer inc.
list with names, then you’re in a bit
of trouble if you want to SAVE the
complete list to cassette tape,
names and all: APPLESOFT II will
save the numbers but not the names
(strings). (Of course, the nicest way
to SAVE such a list is to disk.)
If you need to save strings to
tape however, the following pro-
gram will do the job very nicely.
Note that statement 10 creates
space for the strings; 1010 gives
you information about free memory
space and how far up the variables
are; 1050 writes out the length of
the tape’s string area; and 1070
writes all the desired information
to tape.
PRUO
i
“SYNTAX ERROR
qWrst
i REM
2 REM PROGRAM TO SAVE STRINGS
3 REM TO CASSETTE TAPE.
4 REM BY R.WIGGINTON (6/78)
5S REM
40 DIM AS(10)
20 PRINT "TYPE IN NINE STRINGS, SEPARATED BY"
30 FOR K = 1 TO 9: INPUT AS(K): NEXT K
ment routines built into Apple’s PRINT "CARRIAGE RETURNS, "
POKE -16299,0 (displays Page 2)
POKE -16300,0 (displays Page 1)
monitor. 40 REM NOW GAVE AS TO TAPE.
n 50 GOSUB 1000
POKE 60, (old starting address 55 PRINT "STRINGS ARE NOW ON TAPE. TO RECALL, TYPE ‘COTO 100%, REWIND
mod 256) AND START TAPE, AND PRESS ‘RTN‘ *
oe . 57 PRINT "LET TAPE RUN UNTIL CURSOR RETURNS. "
POKE 61, (old starting address 60° END
/ 256 100 REM THIS PART RECALLS THE
256) : 101 REM STRINGS FROM TAPE.
POKE 62, (old ending address 102 REM
1256 110 DIM BS(10)
mod 256) 120 GO0SUB 2000
POKE 63, (old ending address 180 FOR K = 1 TO 9: PRINT BSCK): NEXT K
| 256) 1000 REM STORE A$ TO TAPE
POKE 66, (new starti 1003 PRINT “INSERT CLEAN TAPE, START RECORDING. "
~ (new ting 1005 PRINT “HIT ANY KEY WHEN READY": GET 73
address mod 256) 1010 X = FRE (0): STORE AS: REM STORE AS REALLY STORES POINTERS
POKE 67, (new starting 1020 REM IN ORDER FOR THIS PROGRAM TO WORK, HIMEM MUST BE AT THE SAME
OKE 67, (new starting 1021 REM VALUE WHEN THE STRINOS ARE LLED AS WHEN THEY ARE STORED.
address / 256) 1030 X = PEEK (115) + PEEK (116) # 256 ~~ PEEK (111) - PEEK (112) ® 256
CALL -468 (the actual move w0408 se0eUE: 2100
command) 1050 POKE 30,X ~ INT (X / 256) ® 256: POKE 91,X / 256: CALL ~ 907; REM
PUT GO INTO LOGS 30%31, AND WROTE IT TO TAPE.
Now, to use Page 2 (remember 1060 REM (X) 19 THE LENGTH OF THE STRING AREA.
e hi er): 1070 POKE 60, PEEK (i11): POKE 61, PEEK (112): POKE 42, PEEK (115); POKE
to set LOMEM to 3072 or higher): 63, PEEK (114): CALL. - 307
D4 “py ¢ *} 1080 REM HAVE NOW WRITTEN EVERYTHING.
10 POKE 60,0:POKE 61,4:POKE 1090 PRINT "0. A": RETURN
62,255 :POKE 63,7:POKE 2000 RECALL BS: REM GOT POINTERS Back
“Py a “tt . at 2010 GOSUB 2100: CALL ~ 259; REM GOT LENGTH OF STRING AREA
66,0:P OKE 67,8: CALL -468: 2020 X = PEEK (30) + PEEK (31) # 256: REM XISLENGTH OF AREA TO READ IN
POKE -16299,0 2030 X = PEEK (115) + PEEK (i146) # 256 - x
; 2040 POKE 40, X - INT (X / 256) % 256: POKE 61,X / 256
To switch back and forth 2050 POKE 62, PEEK (115): POKE 63, PEEK (116): CALL - 259
, A 2060 RETURN
between Pages | and 2: 2100 RETURN : REM GET cass
POKE 60,30: POKE 61,0: POKE 62,31: POKE 63,0:
ETTE ROUTINE POINTERS “
contact 3/the user group newsletter for sept. 1978
@opple computer inc.
Lining things up, point by point
Since most BASICs justify (i.e.,
line up) to the left-most column, a
display of multi-digit, decimal-
pointed numbers can be awkward
to read and somewhat unattractive.
A solution to this problem
would be to use a tabulation rou-
tine that ‘Sustifies (or lines up) on
the decimal point.” Such a routine
would position the numbers in a
column so that the decimal points
are vertically aligned. The short pro-
gram listed below does exactly that.
Statements 10 through 50 are
merely a demonstration routine
that yields the sample run shown at
the end of the listing. Statements
2000 through 2140 contain the
routine that actually does the work.
In effect, the routine aligns the
numbers by right-justifying to the
digit left of the decimal point, then
tacks on the decimal point and
the remaining digits to the right of
the decimal point.
10: B&9: D=9
20 COSUB 2000: PRINT ". "5D
30 IF A>3000 THEN 1000
40 F=108F: D=D+A,
2000 REM RICHT-JUSTIFICATION ROUTINE
FOR APPLE BASIC
2010 REM — INPUT IS ASSUMED TO BE IN
VARTADLE "A"
2020 REM THE RIGHTMOST CHARACTER WILL,
APPEAR IN COLUMN CONTAINED IN
VARIABLE "DB
2100 ASS" "> TF ACO THEN Ags" ="
GET SIGN OF NUMBER
ABS (A): REM CONVERT A TO Pos.
4310-4 (A100) +(421000)+(A>10000)
REM DETERMINE HOW FAR TO
LEFT-SHIFT PRINTOUT
2130 TAB (B~C~1): PRINT AS: Ay:
REM RIGHT-JUSTIFY PRINTOUT
2140 RETURN
>RUN
REN
2110
2120
10.9
100. 19
1000. 119
10000. 1119
Being precise in INTEGER
The use of INTEGER BASIC
limits you to the range of numbers
between -32767 and +32767. Such
a limitation is, at its best, frustrat-
ing, and, at its worst, infuriating.
Consider, for example, the business-
man who daily deals with foreign
currencies, for which the basic
monetary unit may be very, very
small. What’s a fella’ to do?
Well, what he has to do is to go
to multiple-precision arithmetic by
means of a routine such as we
present here. While this example is
for addition only, it is readily adapt-
able to subtraction, multiplication,
and division by changes in state-
ments 3000 through 3080. The pro-
gram does its job on large numbers
in the same way as we do it by long-
hand arithmetic; that is, it operates
on one digit at a time, then carries
to the next, and so on.
‘This particular listing is long
and slow, because we wanted to
make it clear and easy to read so
that you could see what’s happening.
You may modify it to run much.
faster.
Incidentally, you can get a
better understanding of the pro-
gram’s operation by relating certain
of its statements to the ASCII con-
version table that is in this issue’s
OUT OF THE MIST section. State-
ments 2500 through 2520, for
example, result in the keyboard
being read directly. 2540 refers to
CHAR = 141; reference to the table
tells you that decimal 141 is
actually the Carriage Return.
Similarly, 2545 excludes all charac-
ters except for the digits 0 through
9 (176 through 185). Again, state-
ment 2550 converts the ASCII
characters to the numbers them-
selves (i.e., if CHAR = 181, then
181 -176= 5).
ne seutax ene
REN MULTIPLE PRECISION ARITHHIETIC
REN AW INTEGER DASIC EXAHPLE
REN THAT PROVIDES 20-DIOLT
Gosue CETH: REN GET SECOND RUHDER
20SuB ADDITION. REH ADD HaTRICES ~
Gosve Pure: REN PRINT RESULT
AUETIAL IZATION ROUTINES
END
1000 Rent
EH
NeXT T
Nextt
2545 IF (CHARCI76 OR CHARDIOS) THEN 2520: REN
2550 DUDPIRI=CHAR=176: REH
2553 PRINT DCOPTRO. -DPrnaDPIRs
3560 TF peTReal THEN 2070. PRINT
2970 cHARSO; GOTO 2590 AEH
2610 RETURN: REN LEAVE INPUT ROUTINES
ny
$020 Fon Ina9 To 1 step
2990 caRvour
3080 IF TENPC10 THEN 2060.
3030 CARYOUTHCARYOUT#1: TEP=TEHP10: GOTO 3040
REM FINISNED ADJUSTING CARRY FIGURES
3060 CCL) =TEH>. CARVINHCARYOUT
3080 RETURN
8000 REN OUrPUT ROUTINE
4010 Print. PRINT - PRINT
1
£020 IF (1200 THEN 4080, tats1: GOTO 4000, RE
$080 Tan" 140" FOR var TO 90" PRINT AC:
060 IF 0¢19<90 THEN 4070. 1e1e1
4070 PRINT: “TAD
1070 IF C6 1)€20" THEN 4400: tetsL
4100 PRINT | “TAN T+7: FOR Jet TO 91
4110 TAB 198. FOR Vet "TO 90, PRINT C(v>s
4115 Print
4120 PRINT
RETURN
ur a va7aveza10
ya76sa2210
9999999999
19876942209
tho
GOSue GETA: REN GET FIRST NUNHER INTO NATRIX A,
‘UY ANTO MATRIX E
REM HOVE NUNDER INTO A
‘ur INTO MATRIX E
REN HOVE NUMBER INTO B
{TO GO:E(1)=0. NEXT T:chaRaO. DPTRst
CONVERT ABCLT TO HABER AND SAVE
INPUT Too LoNe--sTanT OVER": POP: Par
Mintr ron NEXT KeysTROKE
coro 2595) AEH GHD. RIGHT-WUSTIFIED
TENPSACL)OCL “CARVIN, REM ADD COLUEKE PLUS CARVIN
207 4040: net
TO: FOR Jol TO 90: PRINT Beds: NEXT
a0ro 4090: REN
PRINT
Vavaaveanentanaganenonnneeusueutauesnauses: PRINT
To MATRIX B
eae
Mor A MUNUER, SO IeNORE tT
TONGRE LEADING ZEROS
ouone Lrapino zenos
lowone enpino zenas
wees NEXT Je PRIN
NEXT J
pple computer inc:
10260 Bandley Drive
Cupertino, California 95014
(408) 9964010
contact 3/the user group newsletter for sept. 1978
@oppie computer inc.
OUTSIDE THE
ORCHARD
... Personal software
The G-2 line of personal-
computer software is a series of
program packages, with each pack-
age consisting of a cassette and full
documentation. The first programs
offered are “Beat the House’’, a Las
Vegas-like game set that includes
Blackjack, Craps, Slot Machines,
and Roulette; “Dollars and Sense”,
a personal finance program; and
“Clinic”, a medical program that
offers information on longevity,
biorhythms, and dieting. Standard
and Extended BASIC packages are
also available. GRT Corporation,
1286 Lawrence Station Rd.,
Sunnyvale, CA 94086,
(408) 734-2910.
Clock interface
Designed specifically for
APPLE I, this real-time clock inter-
face features on/off control via
software; a time display anywhere
on the screen as desired; time-set-
ting and testing from BASIC or
machine language; relocatable soft-
ware;andaslot-independent plug-in
PC board. $32.95. System Design
Engineering, Suite 40, 2460 W.
239th St., Torrance, CA 90505
(213) 539-2194.
6502 software
An organization for the
exchange of tested software for
6502-based systems has been set
up. The company does not buy
copyrights, but pays royalties for
and sells the software. Because
APPLE is a 6502-based system, the
programs may be of interest to
APPLE users. For information,
write to The 6502 Program
Exchange, 2920 Moana, Reno,
NV 89509.
Business programs
Here is a group of programs
oriented to the small businessman
and independent professional. The
programs offer mailing list and
secretarial services, time and data
management, tax planning, daily
scheduling, and even an exercise
program, Each program runs in 16K
or less of memory, and includes
documentation and a security
function that allows identification
of unauthorized copies of the soft-
ware tape. Retail prices range from
$19.95 (the exercise program) to
$89.95 (the tax planning and pro-
fessional secretary packages).
Charles Mann & Associates, 1926
South Veteran Ave., Los Angeles,
CA 90025. (213) 473-0244.