View
239
Download
0
Category
Preview:
Citation preview
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 1/52
The Magazine of the APPLE. KIM. PET
and Other (]l~(!)~ Systems
$1.50
~ ([) 11~[3 [j·(3@a~~al([)@
W~@ l 11~3 [ !a~~<u
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 2/52
• BUSIINESS
EDUCATIONAL
PERSONAL
SANTA IF E SPRINGS, CALI FORNIA 90670
'uter I_I"FI~=';;:::";:= IIIIII
- r_ i lm , II ;I ""
( 21! 3) 9 ,21- 21111 !714) 739,·0711
1 1 6 1
K AP'PLE n . . . . . " . " . . " $1195.00" We are App le H eadqua rte rs . B uy from us and le t us he lp you ge t th em ost fro m yo ur A pp le .
• F ree so ftw are w ith pu rchase o f A pp le . C hoose up to $100 .00 w orth o fs o f t w a r e f rom o v e r 100 se lec t ions i n ou r A p p le s o f tw a r e cata log.
• O ur un ique App le II s oftw a re c ata lo g g iv es a s h or t c rit iq u e o n eachp ro gra m s o th at you k no w w ha t yeua re b uy in g b efo re yo u b uy.We a lso h ave n um ero us se le ctio ns o f s oftw are fre e w ith a ny p urc ha se .W e o ffe r s erv ic e c on tra cts fo r a ll e qu ip m en t w e s e l l .W e p ro vid e d em o ns tra tio ns a nd o rie nta tio n s erv ic es fo r s ch oo ls a lJ db u s i n e s s e s a ny wh ere in lo s Angeles o r O r an g e' C o u nt ie s , C a lifo rn ia .C a H fo r in fo rm a tio n re ga rd in g th is f r e e serv ice .
,K COMMODO'RE PET """ $ ,795 .00
. FR EE •..... $ 50 .00 w orth o f so ftw are o f you r cho ice w ith each PElt
. S o ftw are .... O ve r 50 p r o g r a m s n ow a va ila ble a nd s til'l g ro w in g. S e n dfo r o u r so ftw a re c ata lo g .
In Stock O ff the s h e l f del iver ies' S e r v ic e W e h a v e an on s ite s e rv ic e d e p a rtm e n t .U sers g roup now fo rm ing
,LANK C.ASSE,TTES
C AS SE TT ES (WID B OX ) F OR M I C R O C O M P U T I N G .
1.00 Ea . O the r leng ths w ill be ava ilab le in the fu tu re .7 .5 0 t o r 1 0 C a l l o r w rite fo r Q u ote s o n la rg er q ua ntit ie s.. .50 T o r 50 Add 10% (m in im um $ 2 , 0 0 ) fo r s hip pin g a nd h an dlin g.
R.AM FO'R APPLIE II4 116 C hip s. 8 p er s et m ake s 16 K R AM . Ju st a ny 4 116 ch ip s w i.ll n ot w orkin th e A p p l e II . 3 5 0 N S o r s lo we r w ill n ot w ork p r o p e r l y , 2 50 N S c hip s a rea de q ua te . 2 00 N S c hip s a re p re fe ra ble ..2 Q O N S ch ips . Tes ted and gua ran teed . ' $ 9 5.0 0 p er s et.Add $ 2 .0 0 fo r s hip pin g a nd h an dlin g.
I l U A N T . ITEM P R I C EA B O V E I T E M S A R E N O R M A L S T O C K ITEM S . DUE 10 C I R C I l M S f A N C I E S
B E Y O N D O IlR C O N T i l O L , W E A R E S O :M E T IM E S T E M P O R A R I L Y O U T O F S T O C K .
PLEASE C H E C K A P P R O P R IA T E BOX B E L O W .
C E R . T I F I E D C H E C K , M O N E Y O R O E R , V I S A O R M A S T E F I C H A R G E O R I J E R S
S H I P P E D S A M E D A Y . N O C O D . A L L O W .2 WEEKS F O R PER .SONAL C H E C K 10
C L E A R .
P L E A S E B A C K O R I l E R DI F O U T O F nOCK
D O N O T B AC K O R D . E R DI F O U T . o F S T O C K
A L I F O R N IA I R E S II J E N I T S , A nD 6% S A L E S TAX
S H IP P I N G . & H A N 'D U N ll l
A D D : $ 1 0 . 0 0 I F O R , C O M P U T E R S Y ST EM .I F I I S I N G I C R E D IT C A R D , C H E C K B 'Q X A N D E N TE R I C A R D N U M B E R B e lO W .
M A S T E R C HA R G E
DV I S A
DO T A L
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 3/52
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 4/52
PERFECT AIM
ATTRACTIVE FUNCTIONAL PACKAGINGFOR YOUR AIM·65 MICROCOMPUTER
• Professional Appearance• Striking Grey and BlackColor Combination
• Protects Vital Components
ENGINEERED SPECIFICALLY FORTHE ROCKWELL AIM·65
• All Switches Accessible• !ntegral Reset ButtonActuator
• Easy Paper Tape Replacement
MADE OF HIGH IMPACT STRENGTHTHERMOFORMED PLASTIC
• Kydex 100'• Durable• Molded-In Color• Non-Conductive
EASILY ASSEMBLED• Absolutely No Alterationof AIM-65 Required
• All Fasteners Provided• Goes Together in Minutes
AVAILABLE FROM STOCK• Allow Three to Four Weeksfor Processing and Delivery
• No COD's Please• Dealer Inquiries Invited
TO ORDER: 1_Fill in this Coupon (Print or Type Please)2. Attach Check or Money Order and Mail to:
NAME
STREET
CITY
STATE
enclosuresgroup
ZIP 753 bush street
san francisco, cali fornia 94108
Please Ship Prepaid SAE 1-1(s)@ $43.50 each
California Residents Please Pay$46.33 (Includes Sales Tax)
*TM Rohm & Haas Patent Applied For
-
-~~-- -----
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 5/52
IN T HIS ISS UE .••
And rew V. W. Se nsicle increa ses t he powe r o f the
b asic KIM-l w ith "EKIM OR MAXI- KIM", a s mall,page 1 7 mon itor exte nsion . T his suppor ts a P C" de cr em en t" t o c om pl im en t t he n or ma l " in cr em en t"funct ion, "open up" and "cl ose up" mo des t o m oveb locks of data to make ro om fo r a dding co de, anda " br an ch " c al cu la to r w hi ch s im pl if ie s d et er mi n-i ng t he r el at iv e b ra nc h a dd re ss es .
Rob ert A. Ste in, Jr. pro vides "A CA SSETT E OP ER-ATI NG SYS TEM FOR T HE APP LE II" which m akes i tpos sible to maint ain a li brary of pr ogram s wh ichcan be loa ded by n ame fro m casse tte. Th e ar ti-cle incl udes a c asset te c ontro l cir cuit as we lla s t he pro grams in a ssembl er a nd BA SIC t o runt he s ys te m.
A lan G . Hil l pres ents "AN A PPLE I I P ROGRA M E DITA ID" which helps t he us er locat e all occur enceso f a ny var iable na me, ch aract er stri ng, o r BASI C
st atemen t. The a rticl e inclu des a short assem -b ler leve l pro gram a nd a BA SIC d emo pr ogram .
J. Stel ly m akes i t a lot easi er to use the gameof LIFE o n you r PET wit h his "LI FESAV ER". T hispr ogram supp orts c reatin g a LIFE patt ern, r un-ni ng LIFE at v ariou s rat es, and savin g a nd load-ing LIFE pa ttern s on ca ssett e.
Nicho las J. Vr tis helps ov ercom e th e SYM-l' s KIMtape "2F" pro blem wit h a "COR RECTE D KIMtape "2 F" pr oblem with a "CORR ECTED KI M FORMA TL OADER FOR SY M-l". Thi s progr am is car efull ywritt en with a n i ntere sting "tr ick" so th at itdoes not itse lf c ontain a "2 F" e ven th ough itm us t t es t f or t hi s t ro ub le so me c ha ra ct er .
B ruce Hoy t co mes thr ough w ith a lot of good i nfoo n the 051 with "A CLO SE LOOK A T THE SUPE RBOAR DII". In addit ion to an overv iew, he presen ts ac asset te s ave/h ex me mory dump progr am and a veryus eful tabl e of m emory usag e.
Rober t M . Tr ipp cont inues "A SK T HE DO CTOR", aserie s on the A IM/SY M/KIM fam ily of m icroc om-puter s, with a "Corr ected A IM S ync Pro gram", a"Paten for the AIM D isasse mbler", a "SYM TapeE valua tion", an d "Com ments o n Syner tek B ASIC".M ost of th e i nfo i n th is mo nth's se ction hasbeen pro vided by othe r ASK us ers.
"T HE M ICRO SO FTWAR E CAT ALOG" c ontin ues wit h tenn ew e nt ri es .
Jo hn Gi eryic ha s a tut orial a rticle on a "SYM652 2-BASE D TIMER" t hat gives insi ght int o t hewo rkings of t he 6522 VIA as well as the SYM .
Edw ard Chalf in has "TH E T VT-6: A USER 'S REPO RT"wh ich give his exper ienc es a nd im press ions ofDon Lanca ster' s inex pensi ve me thod of getti ng avideo s ignal ou t of a KIM-I.
Wi lliam R. Dial conti nues to c over th e ex pandi ng6 50 2 l it er at ur e i n h is "6 50 2 B IB LI OG RA PH Y".
Don Ri ndsbe rg p resen ts a major p rogra m in "THEUL TIMA TE PET R ENUMB ER". This compl ete progr amc an be u sed to rapid ly renum ber BASIC pro grams .T he artic le also incl udes other us eful info .
MICRO IBTERRUPTS
T h e B E S T o f t h e P E T G A ZET T E h a s r e c e n t l y b e e np u b l i s h e d a n d s h o u l d b e o f i n t e r e s t t o a l l P E To w n e r s . I t i s a v a i l a b l e f o r $ 9 . 9 5 f r o m :
M ic ro co mp ut er R es ou rc e C en te r, I nc .1 9 2 9 N o r t h p o r t D r i v e , R o o m 6
M a d i s o n , W I 5 3 7 0 4
6 50 2 C OM PU TE R G RO UP S
T h e N e w E n g l a n d A p p l e T r e e i s n o w m e e t i n g o n t h et h i r d W e d n e s d a y o f e a c h m o n t h , 7 - 1 0 : 0 0 P M , a tt h e c a f e t e r i a o f t h e M I T R E C o r p . i n B e d f o r d , M A .Y o u c a n c o n t a c t , f o r f u r t h e r i n f o r m a t i o n :
R i c h a r d F . S u i t o r1 66 T re mo nt S tr ee tN e w t o n , M A 0 2 1 5 8
T h e C a r o l i n a A p p l e C o r e h a s b e e n f o r m e d i n t h eR e s e a r c h T r i a n g l e A r e a o f N o r t h C a r o l i n a . T h em o n t h l y m e e t i n g s a r e o n t h e t h i r d T u e s d a y o f t h em o n t h a t d i f f e r e n t l o c a t i o n s . A n n u a l d u e s a r e$ 5 . 0 0 a n d i n c l u d e a m o n t h l y n e w s l e t t e r . C o n t a c t
F . " B ut ch " C la yt on , P re si de nt5 21 2 I ng le wo od L an eR a l e i g h , N C 2 7 6 0 9
9 19 /6 82 -3 75 6 o r 5 96 -8 97 0
N e w Y o r k C i t y n o w h a s a n A p p l e u s e r s g r o u p : T h eB i g A p p l e U s e r s G r o u p . M e e t i n g s a r e t h e s e c o n dT u e s d a y o f e v e r y m o n t h a t t h e C o m p u t e r M a r t o f1 1 a n h a t t a n a t 6 : 3 0 P M . F o r f u r t h e r i n f o c o n t a c t :
N ei l S ha pi ro3 4 S p e n c e r D r i v e
B e t h p a g e , N Y 1 1 7 1 45 16 /5 79 -4 29 5 (h or ne )
2 12 /2 62 -4 80 8 (o ff ic e)
T h e A p p l e C o r p s o f S a n D i e g o i s p u b l i s h i n g a n
e i g h t p a g e n e w s l e t t e r . U n f o r t u n a t e l y , b y t h et i m e i t r e a c h e s u s , t h e i n f o r m a t i o n o n t h e n e x tm e e t i n g i s t o o d a t e d f o r u s t o p r i n t . T h ep e r s o n t o c o n t a c t f o r i n f o r m a t i o n i s :
P h i l l i p A . L e m o n5 4 8 5 R e p e c h o D r i v e , L =1 0 8
S a n D i e g o , C A 9 2 1 2 47 1 4 / 5 6 0 - 7 9 6 2
A T T E N T I O N A L L 6 5 0 2 C L U B S *********
N o w t h a t M I C R O i s p u b l i s h e d m o n t h l y , w e c a n g e tt h e w o r d o u t o n w h e n a n d w h e r e y o u a r e m e e t i n g -i f y o u g e t t h e w o r d i n t o u s . W e n e e d t i m e s a n dd a t e s a n d p l a c e s b y t h e f i r s t o f t h e p r e c e e d i n gm o n t h - A p r i l 1 f o r t h e M a y i s s u e a n d s o f o r t h .A l s o , p l e a s e p u t u s o n y o u r m a i l i n g l i s t f o r a n yn e w s l e t t e r o r o t h e r m a t e r i a l y o u s e n d o u t . W e
w a n t t o h e l p y o u r c l u b p r o s p e r b y g i v i n g i t a sm u c h e x p o s u r e a s p o s s i b l e , b u t w e n e e d y o u r i n -p u t t o m a k e i t h a p p e n .
*** O n T h e C o v e r ***W i t h a l l o f t h e n e w 6 5 0 2 b a s e d m i c r o c o m p u t e r s ,i t i s e a s y t o f o r g e t a b o u t t h e K I M - l w h i c h w a st h e f i r s t 6 5 0 2 s y s t e m . M a n y t h o u s a n d s h a v e b e e ns o l d , a n d a f t e r a p e r i o d o f p r o d u c t i o n p r o b l e m s ,t h e qu a l i t y o f t h e K I M - l h a s b e e n r e m a r k a b l y i m -p r o v e d r e c e n t l y . C o n s i d e r i n g a l l o f t h e a r t i -c l e s w e c o n t i n u e t o r e c e i v e a b o u t t h e K I M - I , i tl o o k s a s t h o u g h t h i s s y s t e m i s h e r e t o s t a y f o ra l o n g t i m e .
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 6/52
I. .. p p k ! II PETTMSYSTEMS·
Apple II 16K RAM $119500 • Commodore PET 8K RAM 579500• Commodore KIM I $159°0
• Microproducts Super KIM $395°°-Delivery on most systems is usually stock to 2 weeks. Call or write for specific information.
16K RAM CHIP SET FOR APPLE II Reference Books Fc"r APPLE and PET OwnersONLY (Tested & Burned In) $9500 Programming the 6502 . . . . . . 9.95
PETuser Manual (New from Commodore) 9.95WORKSHOPS: Call for details. First Book of KIM . 8.95
• PET-3rd Saturday of the Month MOSTech Programming Manual (6502) 12.00
• APPLE-4th Saturday of the Month MOSTech Hardware Manual 12.00
CLASSES: Apple Topics
We offer a series of classeson Apple II to aoualnt owners with some Of the unique features and capabilitiesof their system. Topics covered are Apple Sounds, Low Res.Graphics, Hi Res.Graphics, Disk Basics,and How to Use
Your Reference Material. Sessionsare held every Thursday Night at 7:00 o.rn.
See if you qualify for a CCIof OCP I FCardand get great discounts on selectedpurchases for your Apple and PET.
WHY SHOULD YOU BUY FROM US?Because we can help you solve your problems and answer your questions. We don't claim to knoweverything, but we try to help our customers to the full extent of our resources.
-Prices subject to cna e.-
SOFTWAREwe now have a complete software catalog.APPLE:
APPLE 21
Bat tlest ar I
I ncome Tax
Supe r Star Wars
Appletalker'
Bomber'Apple·lis·ner·
Talking Calculator
wan o r c sEscape
Tank war
Phasor zap
Depth Charge
3·D DOcking MiSSion
Microches5
Ron Graf f' s Educa tloni ll P rograms
995
15.95
19.95
1595
515.95
9.95
19_95
12.95
129517.95
1295
15.00
15.0014.95
19.95
rcau for detallSI
HARDWAREAPPLEII HARDWARE:
• Modem for Apple II, ready to goPlugmto telephone wall plug .5379.00
O N O IS K:
EOitor IAssembler3-D Animation
Talking Disk
GeneralleOger
Check Book
Inventory System
Text Editor
Mai ling L is tS ingle Disc COpy
Memo calendar
Electronic moex Card File'
'Programs by Bob Bishop
19.95
24.95
19.95
60.00
. 35.00
12500
50.0030.00
19.9524.95
1995
• Upper & Lower CaseBoardNow you candisplay both upper and lower caseCharactersonyour video with the Apple II. InclUdesassembled circuit boardand samplesoftware 549.95
• programmer Aide. . . . . . . . . . . . . .. . 550.00
PETHARDWARE
• Beeper 524.95
.. 529.95
COMPUTER COMPONENTS OF ORANGE COUNTY6791Westminster Ave.,westminster, CA92683 714·898·8330
Hours: Tues·Fri 11:00 AM to 8:00 PM-sat 10:00 AM to 6:00 PM (CIOSl=dSun, MOn)
Master Charge, Visa, B of A are accepted. No COD.Allow 2 weeks for personal check to clear.Add 51.50 for handling and postage. For computer systems please add $10.00 for shipping, handling and
insurance. California residents add 6% sales Tax.
PET:pet Show
Galaxy Games
space Talk & Space Fight
Space Trek
Finance
Microchess
Cas ino Pac (3Games)
Of f The Wall /Target pong
Mortgage
Diet Planner / s .orv tnm
Basic BASIC
9.95
9.95
9.95
9.95
S9.9519.95
9.95
9.95
149514.95
14.95
• petunia-for computer generated sounds
• Video Buffer-to put your pet'Spictures on atelevision set ormonitor .529.95
PRINTERSPECIALSFORAPPLEANDPET
• TRENDCOM00 with interface for Apple or PET .5405.00g ' ~ 40 Characters per second Bidirectional look ahead printing
'u Microprocessor controlled low cost thermal paper
:s 96 cn a r a c r e r set 4 x 80 Ir roll 52.50
" High Reliability Clear 5 x 7 characters
e outer operation 8 bit paral le l mour.. Sturdy metal! piastre case No ex t e r na r powe r SUPply
.5 40 charact er s per Ime
• Anadex DP-BOOOwith tracter8" paper width andApple interface .51050
• centronics 779-2 for Apple IIWith parallel interface .51245.00
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 7/52
AN APPLE II PROGRAM EDIT AID
Alan G. Hill
12092 Deerhorn Dr.
Cincinnati , OH 45240
When editing an Apple Integer Basic program, you often want to
locate all occurrences of a variable name, character string, or
BASIC statements. This is usually the case when you are changing
a variable name, moving a subroutine, etc., and you want to be
sure you have located all references. The BASIC Edit programpresented here should aid your editing.
The BASIC program should be loaded into high memory and the
program to be edited appended to it. The Edit program uses a
machine language routine at hex 300 to 39F to search BASIC
statements for the requested string and return the BASIC line
number in memory locations 17 and 18. The routine is re-entered
at 846 to find the line number of the next occurrence. This process
is continued until no further occurrences can be found. The high
order byte of the line number (location 18) is set to hex FF to
indicate that the search is finished.
BASIC Edit Program
Note in line 32680 of the BASIC program that LIST LINE is aninvalid BASIC statement. You will have to resort to a little
chicanery to get the statement in. First code line 32680 as PRINT
LINE. Then, enter the monitor and change the PRINT token ($62)
to a LIST token ($74). This is easiest done if you code line 32680
first and then search for the token in high memory ($3FFA when
HIMEN is 16384)
After coding the BASIC program and the machine language
routine, you will then need to append the program to be edited.
Note that the program must have line numbers less than 32600. To
append a program, you must first "hide" the Edit program. This is
done by moving the HIMEN pointer (202) and (203) down below
the Edit program. Then load the edited program and reset HIMEM:
i.e..LOAD (EDIT PROGRAM)
POKE 76, PEEK (202)
POKE 77, PEEK (203)
LOAD (PROGRAM TO BE EDITED)
POKE 76,0 HIMEM MOD 256
POKE 77,64 HIMEM/256
You can then RUN 32600 the Edit program. Enter the character
string or variable name to be searched when prompted by
"FIND?". To search for a hex string (e.g. all occurrences of
COLOR =). enter an @ character followed by the desired hex
character pair (@66 for the COLOR = example)
EXAMPLES
Tofind all occurrences of:
SCORE
XYZ
RETURN
DIMA
All references to 1000
Input
SCORE
XYZ
@ S B
@4EC1
@E803
The Edit program will end if the screen is full ( ) 18 lines). To
continue the search for more occurrences, a RUN 32720 will return
another page. Happy Editing!
$3-4
Find Routine
Page Zero Memory Map
Address of search limit. Set to HIMEM by routine, but
could be set lower to avoid searching Edit program.
$6..7 Address of BASIC Token compared. I ncremented until it
exceeds Limit Address
$8-9 Ending address - 1 of current statement being scanned
$A-B Address of string being searched. Set up by Edit program
$ C Length - 1 of string being searched. Set up by Editprogram
$11-12 Line number of statement containing the requested
string. $12 is set to $FF if no more occurrences
F I N D R O U T I N E
A . G . H I L L
M A R C H 1 9 7 9
H I L O * $ 0 0 0 3 H I M E M L O B Y T EH I H I * $ 0 0 0 4 H I M E M H I B Y T E
B S L * $ 0 0 0 6 B A S I C S T A T E M E N T L OB S H * $ 0 0 0 7 B A S I C S T A T E M E N T H IS E A L * $ 0 0 0 8 S T A T E M E N T E N D I N G A D D R E S S L OS E A H * $ 0 0 0 9 S T A T E M E N T E N D I N G A D D R E S S H IS T R L * $ O O O A S T R I N G L O
L N L * $ 0 0 1 1 L I N E N U M B E R L OL N H * $ 0 0 1 2 L I N E N U M B E R H I
APRIL 1979 MICRO 11:5
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 8/52
0300 ORG $0300
0300 A5 CA START LDA $OOCA SET UP ADDRESS OF FIRST
0302 85 06 STA BSL BASIC STATEMENT IN
0304 A5 CB LDA $OOCB LOCS 6 AND 7
0306 85 07 STA BSH0308 A5 4C LDA $004C SET UP TO STOP SEARCH
030A 85 03 STA HILO AT HIMEM. COULD BE
030C A5 4D LDA $004D CHANGED TO LIMIT SEARCH030E 85 04 SIA HIHI AT END OF PROGRAM BEING EDITED
0310 AO 00 LENGTH LDYIM $00 GET STATEMENT LENGTH
0312 Bl 06 LDAIY BSL0314 38 SEC0315 E9 02 SBCIM $02 MINUS 2 TO POINT TO
0317 18 CLC LAST TOKEN IN STATEMENT
0318 65 06 ADC BSL031A 85 08 STA SEAL SET UP STATEMENT ENDING
031C A5 07 LDA BSH ADDRESS IN 8 AND 9
031E 69 00 ADCIM $00 ADD IN CARRY IF ANY
0320 85 09 STA SEAH0322 AO 01 LDYIM $01 SAVE LINE NUMBER IN
0324 Bl 06 LDAIY BSL IN 11 AND 120326 85 11 STA LNL0328· C8 INY0329 Bl 06 LDAIY BSL032B 85 12 STA LNH032D A2 00 LDXIM $00 ADJUST BSL TO POINT
032F A9 03 LDAIM $03 TO FIRST TOKEN e331 20 64 03 JSR INCPNT0334 AD 00 LDYIM $00 COMPARE TOKEN TO
0336 Bl 06 TTOKEN LDAIY BSL FIRST CHARACTER IN
0338 Dl OA CMPIY STRL STRING
033A DO 03 BNE NXTOKN IF NOT EQUAL POINT TO NEXT
033C 20 7F 03 JSR COMPAR IF EQUAL COMPARE REMAINING CHARS
033F 20 70 03 NXTOKN JSR INCTOK POINT TO NEXT ~OKEN0342 90 F2 BCC TTOKEN CARRY CLEAR THEN LOOK AT NEXT
0344 A5 DB LDA SEAL AT END OF STATEMENT.
0346 C5 03 CMP HILO CHECK TO SEE IF AT END OF
0348 A5 09 LDA SEAH SEARCH LIMIT
034A E5 04 SBC HIHI034C BO 11 BCS LIMIT CARRY SET = LIMIT OF SEARCH
034E A5 08 LDA SEAL SET UP BSL AND BSH TO POINT0350 85 06 STA BSL TO NEXT STATEMENT0352 A5 09 LDA SEAH0354 85 07 STA BSH0356 A2 00 LDXIM $00 POINT TO LENGTH OF0358 A9 02 LDAIM $02 STATEMENT BYTE035A 20 64 03 JSR INCPNT035D DO Bl BNE LENGTH ALWAYS BRA.NCH
035F A9 FF LIMIT LDAIM $FF SET UP LARGE LINE NUMBER0361 85 12 STA LNH TO INDICATE AT END OF SEARCH0363 60 RTS RETURN TO BASIC
t )
MICRO 11:6 A P R I L 1979
- .--
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 9/52
0364 180365 75 060367 95 060369 B5 07036B 69 00036D 95 07036F 60
0370
0372037403760378037A037C037E
037F0381038303850387
0389038A038B038D038E038F
INCPNT CLCADCX BSLSTAX BSLLDAX BSHADCIM $00STAX BSHRTS
A5 06
C5 08A5 07E5 09E6 06DO 02E6 0760
INCTOK
REXIT
LDA
CMPLDASBCINCBNEINCRTS
BSL
SEALBSHSEAHBSLREXITBSH
A4 DCBl OADl 06FO 03AD 00
608810 F4686860
$OOOCSTRLBSLCOMPX$00
COMPARCOMPY
LDYLDAIYCMPIYBEQLDYIM
RTSDEYBPLPLAPLARTS
COMPYCOMPX
BASIC EDIT PROGRAM
32600 DIM A$(30)32610 INPUT "FIND?",A$; CALL -936:
I F A $(l ,l )=. ,@ ,T HE N 3 26 30 :KK=LEN(A$): FOR 1=1 TO KK:POKE 911+I,ASC(A$(I,I)): NEXT I
32620 POKE 12,KK-l: GOTO 326503 26 30 A $=A $(2 ,L EN (A $)): K K=L EN (A $):
FOR 1=1 TO KK STEP 2:I=ASC(A$(I,I))-176:JJ=ASC(A$(I+l,I+1))-176
32640 IF J>9 THEN J=J-7:IF JJ>9 THEN JJ=JJ-7:POKE 912+I/2,J*16+JJ: NEXT I:P OK E 1 2, KK /2 -1
32650 POKE 10,912MOD256: POKE 11,912/256
32660 CALL 76832670 IF PEEK(18»127 THEN 32730:LINE=PEEK(17)+PEEK(18)*256
32680 LIST LINE32690 IF PEEK(37»18 THEN 3273032700 CALL 84632710 GOTO 3267032720 CALL -936: GOTO 3270032730 END
APRIL 1979
ROUTINE TO INCREMENTPOINTERS. ENTER WITHXREG = DISPLACEMENTFROMBSL, BSHACC = INCREMENT AMOUNT
ROUTINE TO INCREMENT
THE TOKEN ADDRESS BY 1SET CARRY IF AT ENDOF STATEMENT
ROUTINE TO COMPAREREMAINING CHARACTERS(C) LENGTH OF CHARACTERSTRING -1RESET YREG
FOUND A MATCH! POP STACK ADDRESSAND RETURN TO BASIC. LINE NUMBERIS ALREADY IN LNL AND LNH.
W e s t S id e E le c t r o n i c s i n tr o du c e s t h eA P P L E T I M E T M , a R e a l nllle C lo el l f o r t h e A p p l e I I
The Appletime (Model APT·1) is a s'ingle peripheral
board which plugs directly into any 1/0 slot on the
Apple II. Timing is done completely in hardware (ie.
NOT on interrupt driven clock). Thus. the Appletime
continues to operate even when the computer is turned
off. Our exclusive Three Way Power System keeps the
clock running via its own AC supply, the computer's.
or battery backup in case of power failure. Other
features include 12124 Hour selection, AC or crystal
timebase, 50/60 Hz. and BCD or ASCII data format.
Fully assembled and tested, with instructions and
S P E C I A L I N T R O D U C T O R Y P R I C E
APT·1Real Time Clock $59.95
Proto·bocwd for App l e II. Over 1300 holes on 0.1 inch
centets for designing your own circuits.
API·' Prototyping Board $16.95
* * .UP_ ... CIAL* *TII is _ntII only, order the APT·1 and the APB·I at a special
combination price of ...............•......... $69.95
W E S T S ID E E L E C T R O N I C SP .O. B o x 63 6
C H AT SWORT H , C A . 9 131 1
i~I~.----
Wepay 0 /1 shipping in Continental U.S.A.
Others odd 10%; Colifornia residents add 6% tax.
MICRO 11:7
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 10/52
ENCLOSUREW IT H B UlL T IN
POWER SUPPLY
SPECIFICATIONS:
INPUT: 1101220 VAC 50/60 Hz
OUTPUT: + SV @ " 5A
+24V 0: ' 1AGROUNDED THREE·WIRE LINE CORD
ON/OfF SWITCHWITHPILOTliGHT
Enclosure ha. room tor the AIM and Gn9
a ddi tio nal b oar d: MEMORY PL.US or VIDEO PLUS
AIM PLUS: $10000 AIM and AIM PLUS: $47500
AIM/SYM/KIM
UPPER/l ower ease ASCI!
128Additional Us.r Programmable
Charaelers- GRAPHICS-
SYMBOLS·FOREIGN CHARACTERS
Programmable Scr •• n Format up '0
80 CHARACTERS · 24 L INES
KEVBOARD and DGttT PEN Int.rraces
Up to 4M;D ISPLAV RAM
Prowisl tjon lor 2K EPROM
P rowi si on t o a dd 650 2 t or
STANO·ALONE SYSTEM
ASSEMBLED AND T~STED
WITH 2t ( DISPLAY RAM
VIDEO PLUS: $24500
FOR
AOD UP TO F IVE ADDITIONAL BOARDS
AUDlOrrTY CONNECTIONS
P OWE c R T E R r wI 'l N A lS
APPLICATION CONNECTORS
AIM/SYM/KIM
L E A D E R I N
m iC R O C O m p U T E R E D U C A T I O N
AN IN TRODUCT1ONTO PERS0N-
A L AND BU S IN ESS c om pU T ING
by Rodney laks250 pp, ref C200 56.95The basic introductory text
on microcomputers, with a
detailed evaluation of the fea-turesand peripherals required
for specific applications. No
prior computer knowledge
required.
m ICROPROCESSORS : f Iom Chip 'to SYlt.ml
by Rodney laks420 pp, ref C201 59.95An educational text, usedworldwideat universities and
in industry designed to teachall the fundamentals of rnl-
croprocessors, the assembly
of a system, and its use.
P ROGRAmm iNG TH E 6502
by Rodney Zaks320pp,refC202 510.95An introductory program-ming text for the 6502. Does
not require any prior pro-
gramming knowledge. From
arithmetic to interrupt·driven
input-output techniques.
6502 AP P L ICA T IO NS BO OK
by Rodnay laksrefD302 512.95
Actual application programsto interface the 6502 to
the real world, from LED tomotor, and analog-digital
conversion.Available Shortly
TOORDERBy phone: 415848 -8233, Visa, MC,
Amer Express
By mail: cir cle books on ad. Include
payment.
Shipping: add 65¢ pe r bOOk (4th class)
or $1 .50 taster shipping (UPS).
Doub le for casse ttes and ove rseas.
Tax: in Calif orni a add l ax.
FREEDETAILEDCATALOGUE
m I C ROP ROCESSOR
I N TER FAC ING TECHN IQ U ES
Aust in Lesea and Rodney Zaks
416 pp, ref C207 511.95
All the basic interfacing
techniques, from keyboardtofloppy disk, including the
standard buses (S100 to
1EEE488).
m IC RO PR OC ES SO R L EX IC ON
120 pp, reI Xl S2.95
Dictionary and tables. All thedefinitions of the mlcropro-
cessor world in a pocket
book format.
m IC RO PR OG RA m mE D A PL
ImP LEmENTAT ION
330 PP.ref l10 S25.00How to design an APL
interpreter.
SE L FS TU DY COUR SESONCASSETTES
Ten courses to study at homeor in the car. The most time-efficient wayto learn.Includesworkbook andcassettes.
INTRODUCTORY $29.95eaS1-INTRODUCTION TO MI-CROPROCESSORS (2.5hrs)S2·PROGRAMMINGMICRO-PROCESSORS (2.5hrs)
COMPREHENSIVE $59.95eaSB1· MICROPROCESSORS
(12hrs)
SB2· MICROPROCESSORPROGRAMMING (10hrs)
SPECIALIZED $49.95
SB7· MICROPROCESSORINTERFACING (6 hrs)
8020 Milvia Street
Berkeley, CA 94704Tel415 848-8233Telex 336311
--~----------~ •
FULL Y BUFFERED l S 5 5 1ULLY DECODED
KIM-4 Bus Structure
MOTHER PLUS: $8000 FULLY ASSEMBLED AND TESTED
tm
;J1!J~AIM/SYM/KIM
FOR
8K STATIC RAM P~~~R
Sockets for8K Eprom
6522110 PortON BOARD REGULATORS
EPROM
PROGRAMMER
MEMORY PLUS: $24500 FULLY ASSEMBLED AND TESTED
P.O.Box 3,So.Chelmsford, MA 01824
617/256·3649
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 11/52
LIFESAVER
by J . Stelly
10918 Dunvegan Wav
Houston, TX 77013
Is LIFE passing you by; does it progress so quickly than there is
little time to enjoy itl Well, fear not--the LIFESAVER is here.
Though time marches on, now you are in control. If you got "LIFE
For Your PET" from Dr. Frank H. Covitz (The Best of Micro, p.65),
LIFE moves along at a pretty good clip. LIFESAVER is a BASIC
program that complements and provides some enhancements to
Dr. Covitz machine language routines.
LIFESAVER provides a convenient grid for setting up cellular
patterns, permits saving and loading of patterns on the built in
cassette unit, and gives complete control of the time interval
between generations. You may even single step through the LIFE
sequences.
Commodore is supposedly mailing all owners of early model PET
units the TIM monitor on cassette, so I will assume its availability
in this discussion. It ain't the best monitor in the world, but it does
allow you to load machine language programs directly from the
cassette without any special loader routines. This does not excludeother methods the reader may have at his (or her) disposal if TIM is
not available.
A single modification to Dr. Covitz program is required before it
can be used with LIFESAVER. Location 1910 (16) should be
changed to read:
1910 60 RTS
When this change is made the program may be entered at
190A(16) e.g. SYS(6410). If the TIM monitor is used, simply do a
hex dump of the machine language listing and save the program
on tape using the instructions given in the manual.
Before loading LIFE (Dr. Covitz program) or LIFESAVER (by yourstruly) from cassette, I recommend the following command be
executed:
POKE 134,O:POKE 135,24
This lowers the BASIC boundary and prevents conflicts between
the two programs. The regular BASIC limit can later be reinstated
by POKE 135,32. It is also a good idea to load LIFE before
LIFESAVER is loaded. This prevents the data pointer from getting
initialized to the wrong location.
It may be possible to eliminate lines 3015 and 3035 from the BASIC
listing, if you have a relatively late model PET. These lines are
necessary for the older units that have a problem with writing file
headers and cassette motor start/stop control. My unit was
delivered in Sept. 78 and I was able to eliminate these lines.
Assuming that both LIFE and LIFESAVER have successfully been
loaded, you may begin entering your favorite cell patterns. Please
refer to Dialog 1 (human inputs are underlined) to see how this is
done. After the grid is printed simply press the 'RETURN' key and
enter your pattern anywhere in the grid area using the cursor keys
and the dot (.) symbol above the Q key. After you've created the
desired pattern press the 'HOME' key and the 'RETURN' key in
APRIL 1979
succession. This neat little trick returns control to the LIFESAVER
routine without having to explicitly key in the command 'GOTO
1000'. After the PET has saved the pattern internally the user then
has the options to save it on tape, have the computer generate
LIFE patterns as described in Dr. Covitz article, or scrap it and
input a new pattern.
The options are relisted after the execution of any LIFESAVER
command. Examples on exercising the different options are given
in the remaining dialogs.
LIFESAVER should relieve the user from the tedium of having to
manually reenter a LIFE pattern every time it is desired to run it. It
should also-encourage the user to experiment with various LIFE
forms, some of which are quite dazzling.
D I A L O G 1
R U NL I F E
P LE AS E C HO OS E AN O P T I O N
1. C R E A T E A P A T T E R N2. R U N L I F E G E N E R A T O R3 . L O A D A P A T T E R N F R O M C A S S E T T E4 . S A V E A P A T T E R N O N C A S S E T T E
O PT IO N N UM BE R ? 1 (RET U R N)
(SCR E E N C L E A R S , T H E N ••• )
GO T O 1 0 0 0 ?
I I I I I I(At t h i s p o i n t t h e u s e r h i t s t h eR E T U R N k e y a n d p r o c e e d s t o i n p u t ac e l l p a t te r n ,)
GO T O 0 0 0 ?
R E A D Y • ••• ••••• • ••••
(Wit h t h e d e s i r e d p a t t e r n o n t h e C R Tt h e u s e r p r e s s e s t h e H O M E a n d R E T U R Nk e y s t o r e s u m e p r o g r a m e x e c u t i o n .)
ST O R I N G C E L L P A T T E R N
(Af t e r a s l i g h t d e l a y t h e c o m p u t e r
again responds with the option list.)
MICRO 11:9
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 12/52
D I A L O G 2 D I A L O G 3
LIFE LIFE
(O pt io n L is t) (O pt io n l is t)
O PT IO N N UM BE R ? 2 (RET U R N)
(Sc r e e n c l e a r s ••• )
HO W MANY G E N E R A T I O N S ? 7D EV EL OP ME NT R AT EO : S I N G L E S T E P V I A (G) KE Y1 -9 9: IN TE R ME DI AT E R AT ES1 0 0 : M A X (255 G EN ER AT IO N L IM IT )
RA T E ? 75
O PT IO N N UM BE R ? 4
(Scr e e n c l e a r s ••• )
(The c o m p u t e r p r o c e e d s t o d i s p l a yg e n e r a t i o n s s eque n t i a l l y a t t h es p e c i f i e d r a t e . T h e l a r g e r t h en u m e r i c a l v a l u e o f t h e r a t e t h e
f a s t e r t h e g e n e r a t i o n s a r e p r o d u c e d .A r a t e o f 0 m e a n c t h a t o n l y o n eg e n e r a t i o n i s p r o d u c e d a t a t i m e .T h e G k e y m u s t b e p r e s s e d t o o b t a i ns ub se qu en t g en er at i on s. )
HO W MANYP A T T ER N N A M E ? C HE SI RE CA T (R ET UR N)
(Pat t e r n i s s a v e d a n d t h e o p t i o nl i s t i s p r i n t e d .)
NO T E : I n t h e f o l l o w i n g B A S I C l i s t i n gt h e l o w e r c a s e a b b r e v i a t i o n s s t a n d f o rc u r s o r c o n t r o l k e y s a n d h a v e t h ef o ll ow in g m ea n in g:
c l r = c l e a r s c r e e n
h o m e = h o m e u pc d = c u r so r d o w ns = s p a c e k e y
L I S T I N G
1 R E M L I F E S A V E R
2 R E M B Y J A M E S W . S T E L L Y3 R E M P O K E 1 3 5 , 2 4 B E F O R E U S I N G1 0 0 D I M A $(25)11 0 P R I N T "e I r L I F E ": P R I N T1 2 0 P R I N T "P L E A S E C H O O S E A N O P T I O N :": P R I N T1 3 0 P R I N T "1 . C R E A T E A P A T T E R N"1 4 0 P R I N T "2 . R U N L I F E G E N E R A T O R "1 5 0 P R I N T "3 . L O A D A P A T T E R N F R O M C A S S E T T E"1 6 0 P R I N T "4 . S A V E P A T T E R N O N C A S S E T T E"
1 7 0 I N P U T "O P T I O N N U M B E R" i N1 8 0 O N N G O S U B 2 0 0 , 2 0 0 0 , 4 0 0 0 , 3 0 0 01 9 0 G O T O 1 1 0
C R E A T E G R I D F O R P A T T E R N I N P U T
2 0 0 P R I N T "e I r e d"r
2 1 0 F O R 1=1 T O 52 2 0 P R I N T " r - - - r - - - r - - - r - - - r - - - r - - - r - - - r - - - r - - ,
2 3 0 P R I N T"2 4 0 P R I N T"2 5 0 P R I N T ":2 6 0 N E X T I2 7 0 P R I N T " r - - - r - - T - - - r - - - r - - - r - - - r - - - r - - - r - - ,
2 8 0 P R I N T"2 9 0 P R I N T"3 0 0 P R I N T " L L L L L L L L L _ _ .J
3 1 0 I N P U T "h o m e G O T O I O O O"; A $
MICRO 11:10 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 13/52
S TO RE P AT TE RN
1000 PRINT "homeSTORING CELL PATTERN"1010 FOR 1=1 TO 24:A$(I)="":NEXT I1020 FOR 1=1 TO 24:FOR J=1 TO 391030 IF PEEK(32767+J+(I*40»=81 THEN A$(I)=A$(I)+".":GOTO 1050
1 0 4 0 A $(I)=A $(I)+"-"1050 NEXT J:NEXT I
1 06 0 R ET UR N
APRIL 1979MICRO 11:11
ACC ESS L IFE GE NERAT OR
2000 INPUT "clrHOW MANY GENERATIONS";G
2 01 0 P RI NT "c dD EV EL OP EM EN T R AT E: ": PR IN T
2020 PRINT "OiSINGLE STEP VIA (G) KEY"
2 030 PRI NT "1-9 9:INTE RMEDI ATE RATE S"2040 PRINT "100:MAX (255 GENERATIONS LIMIT)"2050 INP UT "cd RATE"iS2060 PRINT "clrGEN 0"2070 FOR 1=1 TO 23:PRINT A$(I): NEXT I2075 PRINT A$(I);:FOR 1=1 TO 2000:NEXT I
2080 IF S=100 THEN POKE 6483,256-G:SYS(6410):GOTO 2140
I NT ER ME DI AT E R AT ES
2100 POKE 6483,255:IF S=O GOTO 21602110 S=100-S:FOR 1=1 TO G2 12 0 S YS (6 41 0): PR IN T " ho me GE N" ;I
2130 FOR J=1 TO S*30:NEXT J:NEXT I2140 GET A$:IF A$<>"X" GOTO 2140215 0 RE TURN
SINGLE STEP
2160 G=12 17 0 S YS (6 41 0): PR IN T " ho me GE N" iG2180 GET A$: IF A$="X" THEN RETURN2190 IF A$="G" THEN G=G+1: GOTO 2170220 GOTO 2180
SAV E P ATTER N
3000 INPUT "clrPATTERN NAME";A$3010 OPEN 1,1,1,A$3015 POKE 243, 122:POKE 244,23020 FOR 1=1 TO 243 0 30 P RI N T' 1, A $(I )
3035 POKE 59411,533040 NEXT I3050 CLOSE 1:RETURN
LOA D PA TTERN
4000 INPUT "clrPATTERN NAME";A$
4010 OPEN 1,1,0,A$4020 FOR 1=1 TO 24:INPUTI1,A$(I):NEXT I4030 CLOSE 1:RETURN
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 14/52
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 15/52
FIXED SYM-1 KIM FORMAT LOADER
NICHOLAS J. VRTISMARCH 1979
STRIPPED DOWN VERSIONS OF L1 COMMAND.WILL LOAD A 2F WHICH CAUSES SYM-1 TROUBLE.
ONLY FOR KIM FORMAT TAPES.10 SHOULD BE PUT INTO LOCATION 0000.
0080 CHAR * $ooFC CHAR ASSEMBLY & DISASSEMBLY
0080 MODE * $ooFD
0080 BUFADL * $ooFE CURRENT CHAR INDIRECT ADDRESS
0080 BUFADH * $OOFF
SYM-1 REFERENCES
0080 DDRIN * $A002
0080 VIAACR * $AOOB
0080 LATCHL * $A004
0080 ACCESS *$8BA6
0080 SLASH * $8D3C SLASH IN SYM MONITOR
0080 LOADTX * $8D4F
0080 NHERR * $8D69
0080 SYNC * $8D82
0080 START * $80B6
0080 RDBYTX * $8E28
0080 PACKT * $8E3E
0080 RDCHT * $8E61
0080 CHKT * $8E78
0000 ORG $0000
0000 0.0 ID = $00 RESERVED FOR PROGRAM ID
0001 20 A6 8B LoADT JSR ACCESS UN-PROTECT SYSTEM RAM
0004 AD 00 LDYIM $00 SET KIM MODE
0006 20 B6 8D JSR START INITIALIZE
0009 AD 02 AD LDA DDRIN
OOoC 29 BF ANDIM $8F BIT 6 = 0 INPUT IS PB6
OOOE 8D 02 AO STA DDRIN
0011 A9 00 LDAIM $00
0013 80 DB AO STA VIAACR
0016 A9 AE LDAIM $AE SET UP CLOCK FOR GETTR (KIM)
0018 8D 04 AD STA LATCHL STORE GETTR VALUE IN Lo LATCH
oolB 20 82 8D LoADTA JSR SYNC GET IN SYNC
ODIE 20 61 8E LOADTB JSR RDCHT0021 C9 2A CMPIM '* START OF DATA?
0023 FO 06 BEQ LOADTC
0025 C9 16 CMPIM $16 NO - SYNC CHARACTER?
0027 DO F2 BNE LOADTA IF NOT, RESTART SYNC SEARCH
0029 FO F3 BEQ LOADTB IF YES, KEEP LoQKINT FOR THE *
APRIL 1979MICRO 11:13
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 16/52
002B A9 00 LOADTC LDAIM $00 CLEAR "NOT IN SYNC BIT"
0020 85 FD STA MODE
t '!002F 20 28 8E JSR RDBYTX READ ID BYTE
CHANGE THE FOLLOWING IF 10 LOCATION ISNOT HEX 0000
0032 C5 00 CMP 10 COMPARE WITH REQUESTED 100034 FO 02 BEQ LOADTD GO LOAD IF EQUAL
0036 DO E3 BNE LOADTA UNCONDITIONAL - RESTART SEARCH
0038 20 28 8E LOADTD JSR RDBYTX GET SAL FROM TAPE
003B 20 78 8E JSR CHKT003E 85 FE STA BUFADL PUT IN BUF START LOW
0040 20 28 8E JSR RDBYTX SAME FOR SAH
0043 20 78 8E JSR CHKT0046 85 FF STA BUFADH
THE FOLLOWING JSR RDBYT IS THE ONLY
INSTRUCTION THAT WOULD HAVE TO CHANGETO RE-LOCATE THIS PROGRAM
0048 20 67 00 LOADTE JSR RDBYT GET A BYTE INPUT
004B BO OF BCS XNHERR BRANCH IF NON-HEX
0040 20 78 8E JSR CHKT INCLUDE IN CHECKSUM
0050 AD 00 LDYIM $00 STORE BYTE.)052 91 FE STAIY BUFADL
0054 E6 FE INC BUFADL BUMP BUFFER ADDRESS
0056 DO FO BNE LOADTE BRANCH IF NO CARRY
0058 E6 FF INC BUFADH ELSE NEED TO UPDATE HIGH ORDER
005A DO EC BNE LOADTE UNCONDITIONAL
005C CD 3C 80 XNHERR CMP SLASH "/" IN SYM MONITOR005F DO 03 BNE YNHERR WAS IT REALLY AN ERROR
0061 4C 4F 80 JMP LOADTX NOW LET HIM HANDLE CHECKSUM
0064 4C 69 80 YNHERR JMP NHERR LET MONITOR DO THIS ALSO
0067 20 61 8E RDBYT JSR RDCHT READ ONE HALF006A CD 3C 80 CMP SLASH SEE IF A SLASH
0060 DO 02 BNE RDBYTA BRANCH IF NOT
006F 38 SEC SET CARRY AS NON-HEX
0070 60 RTS AND RETURN
0071 20 3E BE RDBYTA JSR PACKT SEE IF GOOD CHARACTER
0074 90 01 BCC RDBYTB BRANCH AROUND RETURN IF HEX
0076 60 RTS
0077 AA RDBYTB TAX SAVE MSD007B 20 61 BE JSR RDCHT GET NEXT HALF CHARACTER
007B B6 FC STX CHAR SAVE IT HERE
0070 4C 3E 8E JMP PACKT CHECK FOR HEX & RETURN
t
MICRO 11:14 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 17/52
A CLOSE LOOK AT THE SUPER BOARD II
Hruro Hoyt, Pastor
Sharon Asvociated Reformed Presbyterian Church
Routt>1
I1righton, TN 18011
Late ill December 1978my dreams came true, Those dreams I had
had in the mid 60'swhen I first learned how to program computers,
I had dreamed of having my own desk-sized computer. That
dream has come true to a degree I would not have thought
possible then. The computer I now have is not desk-sized but is
contained on one printed circuit board. Furthermore it is more
powerful than the big monsters I worked on in the mid 60's,
I don't want to bore you with a description of my continual
amazement at a computer on a chip for such things are now old
hat. Nor do I want to give just a general overview of the
Superboard II manufactured by Ohio Scientific. For a general
description you may check the March 1979 issue of Popular
Electronics, p.76. I want to go somewhat deeper into evaluating
and describing the Superboard II [Note: the Challenger IP also
manufactured by Ohio Scientific is the same computer in a case
with power supply).
HARDWARE
KEYBOARD:The keyboard is mounted directly on the printed circuit board as
can beseen in the advertisements. It is a polled keyboard which is
polled by writing to a latch addressed at memory location I DFOO.
This latch feeds the rows of the keyboard matrix. When a key is
depressed the latch signal is fed through the key switch to a
tri-state buffer and back onto the data buss. A read of address
DFOOwil l pick up the signal from the column in which the key is
depressed. This method of polling the keyboard makes the
hardware very simple [and cheap) but it is effective. In my view a
polled keyboard like the one on the Superboard II is better than a
hardware implemented ASCII keyboard. Several nice features can
be incorporated this way. For example every key has an automatic
repeat feature. You have direct access to every key on the board
for gaming purposes. Another keyboard can be put in parallel withthe existing one. I plan to add a Hex keypad this way. OSI has
provided a jack with several of the keyboard lines on it so that
switch type joysticks may be connected for games.
For ordinary ASCII input from the keyboard the monitor includes a
subroutine which returns the ASCII value of any key depressed. So
for all practical purposes this arrangement works just l ike any
other ASCII keyboard.
OSI has fed the signal from the keyboard through a resistor
network and then out the game jack. This signal may be
connected to a speaker to make sounds or music. The only reason
I cannot give a further description of this feature is that OSI failed
to include the resistors and I haven't yet gotten around to it.
V ID EO D ISP LA Y:
The video display is elegant and simple from a hardware point ofview. The display on the screen is 32 by 32 but has no guard
bands. My monitor displays about 27 by 30 screen size. The
software supplied with the Superboard usesonly 24 character lines
since many who buy the Superboard may want to connect it to an
ordinary TV through a video modulator. The video display is
refreshed from a 1K memory located at DOOO-D3FF, Any byte
written into this memory gets fed through a character generator
and then sent to the screen. The character generator produces not
only the full set of ASCII symbols but also more than 100 graphics
symbols. It is complete enough to do just about anything you
would want to on a 24 by 24 screen: life, Tic-Tac-Toe, Pong,
Racecar, Ship-tank-airplane warfare, etc.
APRIL 1979
You may wonder about the access to the refresh memory since
both the CPU and the video displv circuitry must use it. The video
display memory is accessed through a multiplexer which is
normally connected to the refresh circuitry. This multiplexer
allows the CPU to access the memory whenever the CPU addresses
any memory from DOOOtoD3FF. This causes a slight blink in the
display on the TV monitor but the blink is almost unnoticable.
Even constantly writing to the display memory causes only a slight
decrease in brightness and some flicker of the picture. But
whoever writes constantly to the display memory anyway? There is
no affect at all on the monitor when the CPU is accessing memory
other than the video memory.
CASSETTE 1/0:
The Superboard comes with a KC standard cassette interface built
in. This operates at 300 baud. That is somewhat slow for loading
long programs but the slowness is compensated for by the
accuracy. I have yet to find a read error. The hardware for the
interface uses a Motorola 6850 ACIA to generate serial data. Ithink that a small change in the clock used for this ACIA could
speed up operation but I have not checked this out yet. This 6850
is located at FOOOFOOI in the memory space.
The greatest difficulty with the cassette interface is that no
provision has been made for motor control. It would have been
simple to use the Request-to-Send output from the 6850 for this
purpose. I plan to conner! the Request-to-Send output to a small
reed relav for this purpose.
COMPONENTS:
Thf' board itself is high quality epoxy-glass. It is double sided,
through th...hole plated The CPU is a 6502A and so has plenty of
reserve. The RAM chips and oth...r support are mostly low power
variety. All have recent date codes, The character generator and
the BASIC ROM's are masked programmed type but the monitor isan EPROM. I suppose you could reprogram the Monitor to suit
some particular need you might have. The schematics are
accurate and clear. They are very easy to follow since this
computer is not really very complicated. The only complaint I
would have is that various sections of the schematic are not
labelled as to their funtion. But with a little study you can figure
them out.
F UT UR E E XPAN SIO N:
An empty 40 pin DIP socket is provided for expansion. All the
important control, address, and data lines are connected to this
DIP socket. OSI makes a model 610 expansion board which
connects to this DIP socket. The 610 expansion board comes with
a timer, printer interface, and disk interface along with room for
more memory. I personally plan to go from this DIP socket to aKIM type connector for interfacing but there aremany possibilities
for expansion including the S-100 bus or OSI's 48 pin bus.
SOFTWARE
MONITOR:
The monitor comes in an EPROM at the high end of memory and
contains the interrupt vectors, the keyboard input routine, cassette
I/O routines, and a memory access routine which allows you to
view or change any memory location. With this capability it is
very easy to load mchine language programs by hand and then
execute them or save them and later load them from tape. One
deficiency is the lack of a cassette save routine in the monitor.
MICRO 11:15
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 18/52
The monitor hasa load routine but no save routine. I have written
a save routine which incorporates a Hex memory dump. (See
figure 1) This routine saves data in a format acceptable to the
monitor load routine. I have located it at 0222 since this space is
unused by the BASIC interpreter. The begin address and the end
address of the code to be saved must be entered at OOF7and OOF9
respectively. When YOLi execute the save routine, be sure to turn
on your recorder! The code will be saved on tape as well as
displayed on the monitor screen. If you want to use this program
as a memory dump just run it without turning on your cassette.
Several important monitor routines aswell as some Basic routines
are listed in Table 1.
I BASIC:J The BASIC in ROM isan 8KMicrosoft product. It is called a 6 digit
BASIC since only 6 digits of precision are displayed. Internally,
however, all numbers are carried in floating point form with 23 bits
of precision (actually the precision is 24 bits since a high order 1
bit isassumed) That amounts to 7'/, digits of precision internally.
Though this BASIC is very good and very fast it is still a BASIC
interpreter and allowance must be made for that fact. I have a
puzzle that I have programmed in both BASIC and machine
l.lngu,lg". TIl£'nhl( him' 1.1Ilgu,lgPprogram takes about 1'I, hours torun to roruplr-non Thr- I1!\SICprogram would take over a month!
Superboard is what 051 calls its "immediate mode." That means
that any statement can be entered without a line number and itwill be executed immediately Since 'T' can be used in place of
"PRINT" it is possible to interrogate the computer for any piece of
information you might want. For example? A yields thevalue of
the variable A in the memory. ? 45-20 yields 25. ? PEEK(255) yields
the contents of memory location 255 in decimal. GOTO 40 sends
BASIC to statement number 40 and begins execution at that point.
This last feature isvery useful indebugging One could say that the
immediate mode allows you to use the Superboard as a
super-calculator and provides a built-in debugger. The BASIC
alone is worth the price of the computer.
ASSEMBLER:
There isone available from 051 on tape but I haven't tried it out.
want to write my own and put it in an EPROM.
DOCUMENTATION:
A few words must besaid about documentation. Frankly, it isnot
up to OSI's high quality in the hardware and software areas. The
graphics rnanua] is by far the best. providing pretty clear
descriptions and giving good examples. The users manual leaves
something to be desired in clarity. It is too brief and rather vague
at points. I have had real trouble trying to use machine language
since there isvirtually no description of the machine instructions. I
also had some trouble figuring out what pins to connect my
cassette to since the diagram is not clearly labelled. The BASIC
manual is very brief-admittedly so. 051 expects you to have on
hand a BASIC reference manual if you are not thoroughlv familiar
with the workings of BASIC. One serious problem isan error in the
BASIC manual relating to the USR function. It tells you to poke
the starting address of the USR routine into locations 023E-023F
but this does not work. In the graphics manual there isan example
of the use of the USR function. In that example the starting
address of the USR routine is poked into OOOB-OOOC.This works.
I do wish that manufacturers would supply complete
documentation with their software including source code. 051
provides almost nothing in the way of description for either the
monitor or BASIC. I have disassembled the monitor and figured it
out but have not yet started on BASIC. If anyone has inside
information on the inner workings of Superboard BASIC please let
usknow. Think of all those good routines in BASIC that we could
use to memory saving advantage: conversion routines, arithmetic
routines, text editor, scanner, etc.
Though I have had to give a few negatives about the Superboard "
I am well impressed with the quality of both hardware and
software. If you areundecided as to what computer isthe best buy
for the monr-v. I urg« you to send your $279 check to 051 and ask
for a Superboard. I don't think there is anything as good for the
price on the market.
[ P O O ® @ O O ~ @ @ ~ W ~ @ ® ~ V W f f i [ l l i ~PRESENTS SOFTWARE AND HARDWARE FOR YOUR APPLE
SOFTWARE:
• Hires Games •Missile=Antic-Missile
Star WarsRocket PilorSaucer InvasionSpace Maze
• Other Program •By T. David Moteless Curve Fit
Sales ForecastingMorse CodeCalendar
By Robert J. Bishop Polar Coordinate Plot(Hires)
Programs Require 16K rams and rom board
HARDWARENeil Lipson's Original Light Pen Includes5 Programs $34.95
by Dave Garsonby Neil Lipson
by Ed HandleyByDavid Moteles
All Programs $9.95 EACH
SEND Check or M.O. to P.O. Box 273, Ply. Mtg., PA 19462
Programs Accepted for Publicaton - Highest Royalty Paid
PA Residents Add 6 " 7 0 Sales Taxostage and Handling-Add $1.00 for first item them 50' for each add'i
MICRO 11:16 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 19/52
0222
/0222 A9 000224 20 20 BF0227 20 7A FF022A A9 2E022C 20 75 02022F A5 FB0231 20 63 020234 A5 F70236 20 63 02
0239 A9 2F023B 20 75 02
023E A2 000240 Al F70242 20 63 020245 A9 000247 20 Bl FC024A A9 20024C 20 20 BF024F E6 F70251 DO 020253 E6 F80255 380256 A5 F90258 E5 F7025A A5 FA025C E5 F8025E 10 DE0260 4C 43 FE
0263 85 FC0265 20 AC FE0268 AD CC DO0268 20 75 02
026E AD CD DO0271 20 75 020274 60
0275 20 Bl FC0278 20 20 BF0278 60
APRIL 1979
OSI CASSETTE SAVE/HEX MEMORY DUMP
BRUCE HOYTMARCH 1979
TO USE, PLACE THE START ADDRESS OF CODETO BE SAVED IN 00F7,OOF8 AND THEN THE ENDADDRESS IN 00F9,00FA. TURN ON THE TAPERECORDER AND EXECUTE. NOTE: THIS PROGRAM
WILL SAVE ITSELF ON TAPE.
ORG
START LDAIMJSRJSRLDAIMJSRLDAJSRLDAJSR
LDAIMJSR
LOOP LDXIMLDAIXJSRLDAIMJSRLDAIMJSRINCBNEINCSECLDASBCZLDASBCZBPLJMP
BUMP
AOUT STAJSRLDAJSR
LDAJSRRTS
CC JSRJSRRTS
$0222
$OD$BF2D$FF7A$2ECC$OOFBAOUT$00F7AOUT
$2FCC
$00$00F7AOUT$OD$FCBl$20$BF2D$00F7BUMP$OOF8
$OOF9$OOF7$OOFA$OOF8LOOP$FE43
$OOFC$FEAC$DOCCCC
$DOCDCC
$FCBl$BF2D
Figu re 1
CARRIAGE RETURNCRT10 NULLS TO CASSETTE"." ADDRESS MODE
FROM LOCATION (HIGH)
FROM LOCATION (LOW)
"/" DATA MODE
GET BYTEOUTPUTCARRIAGE RETURNCASSETTE OUTPUTSPACECRTINCREMENT FROM ADDRESS
CHECK IF DONETOF R O ~ 1
TO + 1FROM + 1
YES, RETURN TO MONITOR
USE MONITOR DISPLAYTO UNPACKHI
LO
OUTPUT TO CASSETTEAND CRT
MICRO 11:17
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 20/52
P a g e 0 U s a g e
0 0 0 0O O F BO O F CO O F E - O O F F
P a g e 1
0 1 0 0 - 0 1 4 0
0 1 3 0O I C O
P a g e 2
0 2 0 00 2 0 30 2 0 50 2 0 60 2 1 20 2 1 80 2 l A0 2 l C0 2 l e0 2 2 00 2 2 2 - 0 2 F A
J M P t o w a r m s t a r t i n B A S I Cc as se tt e /k ey b oa rd f la g f or m o ni t ord a t a t e m p o r a r y h o l d f o r m o n i t o ra d d r e s s t e m p o r a r y h o l d f o r m o n i t o r
s t a c k
N M I v e c t o r - N M I i n t e r r u p t c a u s e s a J u m p t o t h i s p o i n tI R Q v ec t or
c ur so r p os it io nl o a d f l a gs a v e f l a gC R T s i m u l a t o r b a u d r a t e - v a r i e s f r o m 0 = f a s t t o F F = s l o wC o nt ro l -C f la gi np ut v ec to r = F F B Ao ut pu t v ec to r = F F 6 9C o n t r o l C c h e c k v e c t o r = F F 9 Bl oa d v ec to r = F F 8 Bs a v e v e c t o r F F 9 6u n u s e d
P a g e 3 a n d u p t o e n d o f R A M i s B A S I C w o r k s p a c e
A O O O - B F F FD O Q O - D 3 F FD F O OF O O O - F O O I
F 8 0 0 - F F F F
F C O OF D O O
F E O OF F O O
B A S I C i n R O MV i d e o r e f r e s h m e m o r yP ol le d k ey bo ar dC a s s e t t e p o r t 6 8 5 0
M on i to r E PR O M
F lo pp y b oo ts tr apK e yb oa r d i n pu t r ou t in e
M o n i t o rB A S I C I / O s u p p o r t
U s e f u l S u b r o u t i n e e n t r y p o i n t s
A 2 7 4B D l lB F 2 DF D O OF C B l
F E O OF E O CF E 4 3F E 8 0
F E 9 3F F 6 9
F F O OF F 8 BF F 9 6F F 9 BF F B A
MICRO 11:18
w a r m s t a r t f o r B A S I Cc o l d s t a r t f o r B A S I CC R T s i m u l a t o r - p r i n t s c h a r i n A r e g i s t e ri n p u t c h a r f r o m k e y b o a r d , r e s u l t i n Ao u t p u t 1 b y t e f r o m A t o c a s s e t t ee n t r y t o m o n i t o r , c l e a r s s c r e e n , r e s e t s A C I Ae n t r y t o m o n i t o r , b y p a s s e s s t a c k i n i t i a l i za t i o ne n t r y t o a d d r e s s m o d e o f m o n i t o ri n p u t A S C I I c h a r f r o m c a s s e t t e , r e s u l t i n A , 7 b i t c l e a r e d
c o n v e r t A S C I I h e x t o b i n a r y , r e s u l t i n A , - 8 0 i f b a dB A S I C o u t p u t t o c a s s e t t e r o u t i n e , o u t p u t s o n e c h a r
t o c a s s e t t e , d i s p l a y s o n s c r e e n , o u t p u t s 10 n u l l si f c a r r i a g e r e t u r n c h a r a c t e r
R e s e t e n t r y p o i n tL o a d f l a g r o u t i n eS a v e f l a g r o u t i n eC on tr ol -C r ou ti neB A S I C i n p u t r o u t i n e
' " " " , ;V
T a b l e 1 .
APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 21/52
EklM OR MAXI-kiM
Extended Keyboard Input Monitor
AndrewV.W. Sensicle
155 Valois Bay Ave.
Pointe Claire, Montreal
Quebec, Canada H9R 488
Although KIM-1's ROM contains useful features like the tape and
TTY input-output routines, when it comes to inputting data or
coding via the key pad, KIM's resident monitor leaves much to be
desired, for example the avoidance of repetitive pushing of the "t"
between earh entry or the ability to look back a few bytes without
going into address mode. I would like to thank Jim Butterfield for
his excellent BROWSE and BRANCH PROGRAMS which I put
together in Page 1 and have used religiously since I got started in
this game in. mid 78.
However, these have their limitations and I have frequently found
the need for a little more sophistication, not to mention the space
thev occupy in Pag!' 1. Anyway the thing which irritated me mostwas the need to re-enter a long listing merely in order to open up a
few spaces for additional instructions. The process of tidying up a
finished program. entailing closing up unwanted spaces and the
associated readdressing was also very time consuming.
thus decided to try to write an extended monitor which would be
compact enough to fit in Page 17 and yet provide the functions I
needed. After much condensing and compressing I ended up with
a program 6 bytes longer than the "legal" Page 17 RAM, but by
stealing a little from KIM it fits nicely. KIM doesn't seem to mind.
As long as you don't use the tape or TTY routines, he leaves you
alone.
1. STAND BY MODE [STJ: This starts the program which then sits
looking at the open cell address and its contents , ie. nothing-seems
to happen. However, any HEXkey is stored at the open cell address
which each second key stroke increments the address.
2. INCREMENT [t): Big deal! This works just like normal.
3. DECREMENT [PC]: This steps the address points backwards
exactly the reverse of "t".
4. OPEN UP MODE [AD]: Each depression of this key causes one
full page of bytes (FF) to be moved one place up starting at the
open cell address.
5. CLOSE UP MODE [DA]: Each depression of this key causes one
full page of bytes to be moved one place back to overwrite the
open cell contents. Having made an "open up" or close up move
of one or more steps you will, of course, have to fix up all affected
addresses. This is not as onerous as it sounds if you use the sixth
mode.
6. BRANCH MODE [GO]: When a branch instruction is en-
countered while entering a new program or fixing up an old one,
all you need do is press "GO" followed by the actual destinction
address (low order only). The monitor will calculate the relative
address, store it in the open cell and step on to the next cell all in
the twinkling of an eye. The user is, as usual, responsible forensuring that the branch does not exceed the normal half page
range.
The NMI vector is loaded with the s~ilrt address (1780) so that theST key can be used to access the monitor at any open cell address.
Before pressing ST or after exitting via RS the resident monitor is
used as a normal in the AD mode. The ST key gives you 6 other
modes of operation or functions. I hope that this little program will be as useful to others as it is and
has been to me.
ORG $1780
MODE * $OOFFTEMPX * $OOFDLAST * $00F3INL * $OOF8
POINTL * $OOFAPOINTH * $OOFB
SCAND * $lF19GETKEY * $lF6AUPDATE * $lFBBINCPT * $lF 63
17801 7 8 117831785
08A 2
8686
START0 1FFFD
APRIL 1979
CLDLDXIMSTXSTX
$ 0 1MODETEMPX
INITIATE MODE ANDCOUNTER
MICRO 11:19
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 22/52
1 7 8 7 2 0 1 9 I F G E T K J S R S C A N D L I G H T D I S P L A Y
1 7 8 A 2 0 6 A I F J S R G E T K E Y C H E C K K E Y S
1 7 8 D C 5 F 3 C M P L A S T
1 7 8 F F O F 6 B E Q G E T K (" ,1 7 9 1 8 5 F 3 S T A L A S T N E W K E Y
1 7 9 3 C 9 1 3 C M P I M $ 1 3 G O ?
1 7 9 5 D O 0 2 B N E S K I P
1 7 9 7 C 6 F F D E C M O D E P U T I N B R A N C H M O D E
1 7 9 9 C 9 1 2 S K I P C M P I M $ 1 2 + ?
1 7 9 B F O 4 A B E Q I N C P N T1 7 9 D C 9 1 4 C M P I M $ 1 4 P C ?
1 7 9 F F O 2 2 B E Q D E C P N T
1 7 A l C 9 1 1 C M P I M $ 1 1 D A ?
1 7 A 3 F O 11 B E Q C L O S U P
1 7 A 5 C 9 1 0 C M P I M $ 1 0 A D ?
1 7 A 7 D O 2 6 B N E I N D A T A
1 7 A 9 A O F F O P E N U P L D Y I M $ F F L O A D 2 5 5 ( 1 0 )
1 7 A B 8 8 O P E N X D E Y
1 7 A C B l F A L D A I Y P O I N T L L O A D A N D S T O R E
1 7 A E C 8 I N Y O N E C E L L H I G H E R
1 7 A F 9 1 F A S T A I Y P O I N T L
1 7 B 1 8 8 D E Y1 7 B 2 D O F 7 B N E O P E N X N E X T
1 7 B 4 F O C A B E Q S T A R T
1 7 B 6 A D 0 1 C L O S U P L D Y I M $ 0 1
1 7 B 8 B l F A C L O S Y L D A I Y P O I N T L L O A D O P E N C E L L
1 7 B A 8 8 D E Y P L U S 1 01 7 B B 9 1 F A S T A I Y P O I N T L S T O R E I N O P E N C E L L
1 7 B D C 8 I N Y T H E N U P
- - 1 7 B E C 8 I N Y U N T I L1 7 B F D O F 7 B N E C L O S Y
1 7 C l F O B D B E Q S T A R T C O N E 2 5 5 ( 1 0 )
1 7 C 3 C 6 F A D E C P N T D E C P O I N T L
1 7 C 5 A 5 F A L D A P O I N T L
1 7 C 7 C 9 F F C M P I M $ F F P A G E C H A N G E ?
1 7 C 9 D O B 5 B N E S T A R T N O
1 7 C B C 6 F B D E C P O I N T H Y E S , T H E N D E C P O I N T H
1 7 C D 1 0 B l B P L S T A R T A S W E L L
1 7 C F C 9 1 0 I N D A T A C M P I M $ 1 0
1 7 D l B O A D B C S S T A R T F A L S E S T A R T A C T U A L L Y N O K E Y
1 7 D 3 2 0 B B I F J S R U P D A T E R O L 4 B I T S F R O M A T O I N L
1 7 D 6 A 5 F 8 L D A I N L
1 7 D 8 9 1 F A S T A I Y P O I N T L
1 7 D A C 6 F . D D E C T E M P X
1 7 D C F O A 9 B E Q G E T K O N E M O R E K E Y1 7 D E A 4 F F L O Y M O D E I N B R A N C H M O D E ?
1 7 E O DO 0 5 B N E I N C P N T N O
1 7 E 2 1 8 C L C
1 7 E 3 E 5 F A S B C P O I N T L C A L C R E L A T I V E A D D R E S S
1 7 E 5 9 1 F A S T A I Y P O I N T L S T O R A I T I N O P E N C E L L
1 7 E 7 2 0 6 3 I F I N C P N T J S R I N C P T N E W C E L LU1 7 E A 4 C 8 0 1 7 J M P S T A R T R E T U R N
MICRO 11:20 APRIL 1979
_____________________________ .......... I
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 23/52
ACASSETTEOPERATING SYSTEMFOR THEAPPLEII
Robert A. Stein, Jr.
2441 Rolling View Dr.
Dayton, OH 45431
Have you ever wished that as great as the Apple II computer
system isthat you were able load programs by name from a library
cassette? Well, with this mini-sized cassette operating system you
can stack many programs on one cassette and load the one youwant by typing in its name. Great for showing off your system
without juggling a dozen or so cassette tapes.
The Cassette Operating System [CASSOS] resides in memory at
locations 02COto 03FF, where it won't get clobbered by BASIC
programs or initalization. Add the optional cassette control
circuit, or purchase one of the commercially available ones.
(Candex Pacific, 693 Veterans BLVD, Redwood City, CA 94(63)
and you never need envy the PETfor its loading technique again.
Operation
Load the 'CASSOS' tape, which you have created from the
assembly listing, just like any other machine language program
(2CO.3FFR), then inital ize the BASIC pointers by depressingCTRL-B, return To load a program depress CTRL-Y and RETURN.
"PROG?" will be displayed, enter a 1-10 character program name.
The cassette tape will be searched and the program loaded if
found. " XXXXXXXXXX LOADED" will be output, where
XXXXXXXXXX is the program now in memory. If the cassette
control circuit (described later) is present the tape wil l also be
stopped. A line of question marks (?????????)re displayed if the
requested program was not found. To write a program to the
library cassette enter Yc (Ctrl -Y, "WRITE", and RETURN. Program
will be saved under the name requested at PROG?. " XXXXXXXXXX
OUT" will be displayed at completion and the recorder stopped.
To end a cassette program file enter: Yc, "EOF", RETURN; a special
record header will be written. Note that to conserve limited
memory space the EOF routine utilizes the program. writesubroutine sothe " XXXXXXXXXX OUT" message should be ignored.
The program is structured such that the last 63 locations of the
input buffer is used for display messages, so if more than 191
character, areentered at one time the program will still function,
but without messages. The listing as presented was for a 16K
system, change location 035B as follows for a different
configu rat ion:
2F-8K 6F-24K
3F-12K BF-32K
4F-16K 9F-36K
SF-20K CF-4BK
Program DesignThe method by which CASSOS functions is to write a program
header block consisting of header ID, program name, and start of
the BASIC load. This is followed by the program data itself,
utilizing the Apple monitor routines.
A CassetteOn/Off Circuit
The following diagram describes a simple circuit for stopping and
starting a cassette recorder which has a "remote" plug from the
Apple" under program control. The theory involves activating or
APRIL 1979
deactivating the AN3 signal on the Apple game connector. A store
to location C05F turns the recorder on and location C05E turns it
off. The strobe triggers atransistor which in turn opens a relay and
closes the connection to the remote plug, starting the recorder. Ifyour recorder requires anopen connection to start tape movement
wire the relay normally closed instead of open. It isalso possible to
add a relay that would interupt power to the recorder for control if
YOLi have no remote capability on your recorder.
to recorder
pin plug
6VDC RELAY
N.O.+5V (pin 1)
2500 .n..
1000 . . n . .
of 3.SV (pin 12)
Chasis Ground (pin B )
CassetteControl Circuit
Parts List
All parts were purchased at a local Radio Shack
6VDC Relay (275-004)
NPN Transistor (2N3568 or equivalent)
1000 Ohm Resistor
2500 Ohm Resistor
Mini-Plug
All connections were made to a DIP Header which was modified
by soldering a 16-pin IC to it sothat the game paddles could still be
used without modification when the cassette ON/Off circuit was
in use. The common 6VDC relay was modified to be triggered by
the game connector signals by wiring a 2500 ohm resistance
(utilizing a seriesof resistors connected in series so that the sum is
2500Ohms) in parallel with the relay coil. If your recorders rewind
controls are disabled by the remote jack wire a switch to bypass
the transistor between chasis ground and the relay, which will
allow the rewind to operate when depressed. If all this is beyond
your scope use the purchased control or simply stop and start the
recorder manually
MICRO 11:21
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 24/52
02C( I -
(12C2-··l1C:C::; -(12C(,-
02CF!-'Oi .~CC- ·J::iC:(::r-.
( 1 E : 1 I 1--
(1;::D,;;'·-O;:~D6-
OE:D9-·J::12DC-(1;::D[-·
(1c'[C-'
~),~E:::::- '~:1;::[ t :,-~7.1c~E::~-
f = i 9 1: 1i~'~:)t.:"(' ()::.:
f!9 FF
en I:C 0;::
1=(:, CI:: :: :D I :D 0;::;:::~j CD FEA4 eRFI~~C1:i .=:::! E o (i (Ce'C CD FEf!9 [P
c'~j "? E ~:I:~:
LIn::, : j ' $ : D : : : : :
~=.nF! ~~(ic:f:OL_lJA :p:$:I; 1
._!~:;F~ :;':(i:~::(,·?
LDA $:C:Fi
. ~:,TF! ~:~?ic:I:C
LDfI ~:CF::~::;TFi :H121 m._l~::p ~~TECI:L..li\1 ~~C:FlLH:i ~::CI
._i::;F $:0:::6(1
. J~: ;F: $:FECIiL . . D F I t.:$:[I:
. _ . i : : : ; F ~:e:::7E
0 2 E 1 - 8 7 A 0 C F D 5 QQ
O;::~FC- FF ::':7' FiO cc CF C 1 C4 C:: ;
OE:F::::- C4 FF I!~~ D;::: CF· C7' IF FF
0::.:00-~):~:eic~-(1:::::04-(1:::::06-
(1::':0';'-
0 : : : : : 0 1 : : -
0:::::0[-( 1 : : ; : :j 1 · -
0::':1::::-·(CiE--
f : i E : o(~
DO (i7: : : : , : : L 60
i:~~' IC~ Fe :F !4 6(1::~E1~5 t i : : : !
::;C : 1 .:t ~~1~:!
f!~1 O~ J
:W 3 FA ~ : : : i c :C ' : " FF
( 1 3 1 f;- n::i ; : . : 1 1031A- 20 ED FD~:::131l!- ' c : = . : :031E- D~~!F:::[1:~:c:l2l-" ' : l , ; : :
( i :;:;::~ 1 . _ . f,'?' (ii.:~
~ ~ 1 : ? : : c . : : ~ : : - f ~ ; r : : : r t:)~.:1
0:::.:, '5-·O:::;;:J-
O: ? : : E : ' : : ! - ·
(c;::c-·O:~::c'II-"
0::::;:::[-·
0 : : : : : : : : 0 - ,~ : : 1 : : : : : _ : ; : : : : -
~:1::::3?-~~1::'::~:1~-
033A-( j : : : : : : : : I : - - -
~ : 1 : : ; : : . : r l - ·
(1:31~·1- · ·~~1:34<:; - '
MICRO 11:22
t : : : : ;
HfiF;fi o r ' !
E'::; O~~I Oc~
F e 0 ::::
':'1 60
e nFO Of!: n o F ' lf(:1 F 1 C i
ci 1 6[;
C:~:
LI:=·:: r : r · · i E ~::«::OI:
:$·6(i
: : ; : . F C f : , e :
~):~;.;;!·~5-··
( 1 : ; : ~ 1 ·7_.,
el~~:':~.::~:-·(i:::.:.~A-
0: : : :4C·-( 1 :: :: 4F - .
( 1 :3 :; 1 . -
(1:::::: i :~!-0:?':~;5--('::':'~)7-
0 : : : : : : ; 9 - - -
~:e~;B-'I~r::~:;r;.(t::::~j[ -.
~~r:35F.
0::::6 c ·-():~:f!f~-'
036:i-·
fi~:~~i(1;?O :i1 0:::F I ( J l:I:l ~ r 3 ! (1;::
DO 04F jO FFFI ' : - 4 : ? : : F
J~ !~ i ::;Ii': '1':: '. 3C
n ::FC:t,(,:
I{) EE
[i:~:E,7-" :::;~; :;,;:,
~ : 1 : ~ : E t ' : ' - i - ~:~c :; 1 c :
03t:.F-· f i C 1 Ff'!03 6D- 20 04 03037'0- 20 48 030 ::::7 '::= ':- H 9 O F !037'~i- F:i6 :::;121
0 3 7 7 - 2 0 2 0 0 : : ' :03 7A- 8 D 5F CO(1::::7II-
0::::7[--(i::::7IF-
(13::::i::-
~3:~::::.:.1-·
~:1:3:::f,-
~ j :~ : : : ;E~- '
0::::'~1-'~21:~!'~::!-0:: ' :9 ' : : , -(1:::: ' ::I '~-~:.n9(:-~ : . n · :w · - .~:'I:?:Al-·O::::Fi::::-
O : : : : I = I E , -
O:::i fr:.i-(CAC-
O : : ' : A F -(1::::1:1-~j::::I!4-
~~1:::!E~7-
o : : : n : : ' ~ - ·O::=':hfi-
O: : : BC -(1::::1::[-
(13C1-
e n :~EcoflE~ 0;:::AO 1.:1
E :O C ~j ~ : ' i : : ' :
4C 0:::: E(1
c . ~ 2 ~ f, '? f!::::~:~i 4 !: : f!:~:
C 'O FD FEFill 1:(1 Of~
C'3 D:::
DO c:9
fie·Ie 02fIle I:II ~~2
;:::0 60 0:3i::(1 FD FEFi i .=~COI;D I:l 02D 1 1 f'!::: (1f~
D~j DII
EO O ADO F:?:an Be t1 2: :: 35 C f i
DD> ;I : r " ! E $:O::::::FPT~:;L.I i ' " ( * ! : $ : I : ~ : 1
L . I ) ; : ': ; ¥.:$~~1~~:1
.j~3F: $(i:~:~;
LD'/ =i:l'$IliLDFi #$0;:::
fliE: $:12i:::~;9LD\ ' :j:i'~TFL D F i f;:~:: = . : F '
::::F! $:: : ' :Ii,::.::~ : : ; - r · · , : t:~;C:,:<
. _ I ~ : : ; F '
:t:HE
:;:'r:i::::~;'3
: , : ; , ' 2 i : ; : : 55
L .D 'y ' f :::Ff i-,Y::;F:: ~~I2C(H·.J~ : ;F: $l:i:~:.~~:::LliA *:·~:(if!L D : : " ; $~;e
. _ I : : : ; P ·~:(i3c.:0: : : ; T F : ~;:C05F
F'T~: : ;
F'Hfi
L.D::·:
LI1\',y:;p
FU:
. _ i t ' i F '
LDFi. J~ : ;F .~. _ _ ! ~ : ; R
L . I!fict,p
}:r··![
L.I!\'
L . . D F i
. _ ! : : : ; p
L I t : : <
LDACt'lPm'iE
CF ' : : ' : :
m·· iE
L DA~:;TR
$(:05['~:$[12
: = ; ' : 1 2 1 : : : 0 0
~::E~:1~::):3
:$:FEFli:::OZ'BO
-: :(c:=' :C:C
: $ : C i i . ~ : : I : C :
~O~-~I : I J
:~:~1:::;(:(i:;FEFD:j:i$~:!~::1
$~::J2F:C$Cfl
APRIL 1919
: : ; : ; " ' ' ( ~ ~ :~-;:i ::;1 . 4
L.D\ ' *:,:~:OO
L.DFi ~: ,:Oc 'FF! , \ .
ct'iF' *:::~FF
I ;EC~ : : : ~ r ! : ~ : : c ; · · ?.Y;:P ~FD[l!Hi"I'
T:: t - i [ : ~ :U~ : :1:~:F'Hfi
LIlA *~$ :OC:: : : : ; 1 ' > < $:':,(1
~ : : ; " T t = {
L.ifl.J~:;F~
:j:\:$AO
$FD6C
P L o o f :
T F : > :
LIlACt'lPf : E : C !
~:;Tf!
I··ill
I J F : : : · : :1:[0I : r ' i E
LDA: : : ;Tf iJ t··l\'
~:O:::::::::(I
f:$flO($:60) ~'r '
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 25/52
o : : : : c : : : - ·~3:;::C:El-
~~ 1 : : : : C: ' : - .
0::: :0=:-·
O::::C(:-
03CF-·
t1: : : :Dl - ·(r:.:ll:::;-
~)3D6-
~Zr:.:D7-
[r:.:n':i-
~]:: ':I)C:-·
O::::l!E-·O :3 E 1- ·
APRIL 1979
I:m E D O e'
: :: ;~ :; CE:
f : ! ' ; : : i ri
1 i(; I : : C ~
: : : : : 1 . ' ~T C O
L..liF!
':TF!
L.UiI : t · · j E
~3::::E::' :-0::::[5-·
0 3 E - ; : ' -(1:;:[9-
~~C[C-·O::::EF-·O::::Fi.:'-
03F~;-·o : : : : n : ; -O::::FI-·
(I::::FC-·
O:::FD-··
(13FT --
o : : : : r r -
: : : ; ;D ~T C(1
4C eFt ( j; : :.::!.( ce 0 . : :4C DE : ((.=:
O(~
00
CO'::0e~:!
:t:EO
Ct'lPm·IE::::Hi. J : : : ; F :
:=.:T8
.Jt,!F'
.Jt'1P
. _ I t ' ! F
F:FkI : m :
I'F'K
$:f1~!F5
¥.·$C5
$~J3'?1$:liE~I:(1
~~~C(l5F
$( ' 12CA~'::O;::C(1
:$ : O : ::W E
18 N=l: C A L L -93(: UTAB (10): D I M X$Jl)?(j I t-iPUT "I n : : ; E F TL I HPFtP\' T A P E m ·m DEPPE:::;:::; , FETI..F .t! ~ " , : : - : $30 POKE - 1 6 2 8 9 , O : C A L L - 9 3 6 : GOSUB 3 0 040 PP I t -n I!F I L E # FROGFF!t'"i t - i A t ' 1 EH\'TE::;"~5C F'F:I t·iT I!--.---.- --.-.--.----.---. ---.--"
6 0 C A L L 8 4 0 : C A L L - 2 5 970 IF FEE V (6::;:::) =: f ! : : : CI!E I!) THFJ·i C ' : ! . 1 2 1
::::0F FED::: (6:::::::)# H ::;C ( " ::::" ) THEn ; : : ~ C i O
1 0 8 R E M L O A D INTO NON-EXIST M E M O R Y ( 8 0 0 - B F Fj1 . 0 P O K E 6[1, FED ::: ( ( , C O ) : F O K E f,1 ~ 1 F 'E T V ( 7 0 1 . -f 1 2 : : :120 P O K E 6 2 , 2 5 5 : FVKE 63~191: C A L L - 2 5 9
J : : : : : C FPItfr tl~: F O h E 7::::9~c ': POKE ·?:::h iT?: ca.t. ('::::!:;1 4 0 L = P E E K 1(0 0)+ P E E K (7 0 1)- 2 5 61 50 l =1 63 84 -L :N =N +l16~~1FR I t·n" ";L: COTO 6~j2 or; ; CI)~:;UI: :::::00: F'P I rn "no E:OF t'iF!PK"
210 ~JVE - 1 6 2 9 0 , O : e O S U E 300~ = : ~ : ~ : CP P I t"{T " ! ( ! : : < ; : ~ E t " m O F F I L E : : : < ~ ! ( ! : * "
; : : ' . : . 1 0f i L L _ . 1 . : : ; 5
3 00 F O R 1= 1 TO 3 03 0 5 L = FEEK (- 1 6 3 3 6)+ PEEK (- 1 6 3 3 6): NEXT I3 10 C A L L -1059: RETURN
Fro! H:i(:9 (:5
r!~~t : = :$CI:
*:~~F
~::C05E
* : ~ : : c ' et'~:.BF$FDED
~::;l-·f!
L . I ! : : · : ~
fl':! IFC '0 ED FTI
L I . ! F !- ,Y : : ; R
J)(j F ' : : : :c 'O DD FI:Fri 1<:HI! f 'il OC'
I:HE..!::::F
r E eL.Dr!
(liF'
$:~:J::ml~ : ; : : r I : I m:~:G3'::ll
~~(ic:~'11t~~::IJ
A Cassette Tape Catalog
Shown in exhibit is a short integer BASIC program which when
loaded will list all the programs on a ·CASSOS format library tape.
The CASSOS sub-routines are used so the software must be core
resident. Just load the program, insert the library cassette into the
cassette handler, and type RUN after starting the cassette player.
> P U t " · 1
H i::;[PT L I BRAP'.,. TF!PE m ·m DEPRESS 'RETUF.: t - · I '
FILE # P R O G P A M NAME BYTES
1 1 : I FECTOP'y '
2 I : T L L . . I O f 1 P D: :: :F . ROULETTE4 C O L O P B\ ' R O D5 H E L L O
5:~:r:i
1: :~5
(, B O X I N G 2 6 3 68 T I C T A C T O E 3 4 6 1~ ~ ~ E N D O F F I L E • • •
MICRO 11:23
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 26/52
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 27/52
ASK THEDOCTOR - PARTIII
BITSAND BYTES
Robert M. Tripp, PhD.
TheCOMPUTER1ST,Inc.
P.O. Box 3
So.Chelmsford, MA 01824
TheDoctor was busythis month and did not get a chance to write
up the EPROM Programmer hardware as promised in the lastissue. Look for it next time. A couple of people did submit some
good info which is printed below. The Doctor encourages such
input Too much is happening with these new computers for
anyone person to "know it al l", so if you find out something
interestng, pleasedrop usa note and let usget the word out
Corrected AIM SYNCProgram
The early AIM User Manuals had a number of mistakes, as is to
beexpected the first batch. One of the more serious errors was
in the listing for the SYNWrite and SYNRead programs on page
9-11. The errors have been corrected in later versions of the
manual. but for those of you who need the programs, here they
are- corrected.
SYNWrite Program:
0 3 0 00 3 0 30 3 0 6
2 0 I D F 22 0 4 A F 24 C 0 3 0 3
J S R F 2 1 DJ S R F 2 4 AJ M P 0 3 0 3
SYNReadProgram:
0 3 1 0 A 2 0 0 L D X 1too
0 3 1 2 A 9 C E L D A l I C E
0 3 1 4 2 0 7 B E F J S R E F 7 B0 3 1 7 2 0 E A E D J S R E D E A
0 3 1 A A 2 0 0 L D X 1 1 0 00 3 1 C A 9 D 9 L D A I I D 9
0 3 1 E 2 0 7 B E F J S R E F 7 B0 3 2 1 2 0 2 9 E E J S R E E 2 90 3 2 4 C 9 1 6 C M P 1 1 1 6
0 3 2 6 F O F9 B E Q 0 3 2 10 3 2 8 D O E 6 B N E 0 3 1 0
Patchfor the AIM-DISASSEMBLER
It soon becomes obvious, that the disassembler is extremely
paper consuming, because no single-stepping is provided. The
following programwill saveyou money and time!
Set F1 (010C) to 'IMP 03D9' and F2 (010F) to 'IMP 03CB'. After
loading the desired program address (*)_ hitting F1 will dissable
just this line on the display To advance, press the space-bar.
If you want to modify, use 'I' and the program jumps to the
Instruction Mnemonic Entry. The current address will not be
changed. 'ESC' brings you back to the AIM-Monitor. With
'F', the next address will be disassembled 'F2', however, will
substract th- last usedop-code length from the current address
and then disassemble the last entry' It is even possible to
disassemble further "backwards", just keep switching from
APRIL 1979
'ESC' to 'F2'. Of course, a change in the op-code length will
bring up some unexpected results. but very soon you'll catch aproper op-code again!
0 3 C B A D 2 5 A 4 L D A A 4 2 5
0 3 C E 1 8 C L C
0 3 C F E 5 E A S B C E A0 3 D l 8 D 2 5 A 4 S T A A 4 2 50 3 D 4 B O 0 3 B C S 0 3 D 9
0 3 D 6 C E 2 6 A 4 D E C A 4 2 6
0 3 D 9 2 0 2 4 E A J S R E A 2 40 3 D C 2 0 6 C F 4 J S R F 4 6 C
0 3 D F2 0 0 7 E 9 J S R E 9 0 7
0 3 E 2 2 0 3 C E 9 J S R E 9 3 C
0 3 E 5 C 9 4 9 C M P 1/49
0 3 E 7 D O 0 3 B N E 0 3 E C
0 3 E 9 4 C 9 E F B J M P F B 9 E
0 3 E C C 9 2 0 C M F #2 0
0 3 E E D O F 2 B N E 0 3 E 2
0 3 F O A D 2 5 A 4 L D A A 4 2 5
0 3 F 3 3 8 S E C
0 3 F 4 6 5 E A A D C E A
0 3 F 6 8 D 2 5 A 4 S T A A 4 2 5
0 3 F 9 9 0 D E B C C 0 3 D 9
0 3 F B E E 2 6 A 4 I N C A 4 2 6
0 3 F E 9 0 D 9 B C C 0 3 D 9
Submitted by
Gebhard Brinkmann
Koblenzer Str. 1
D·5401 Kaltengers
West Germany
SYMTapeEvaluation
As a result of our telephone conversation on Monday, I decided
to look for any possible hardware problems in the SYMCassette
Interface. Some results are shown below. Whether these are
related to your cassette problems is unknown. In checking my
Sony TC-62, I found an unexpected very slow acting AVC
(increases gain very slowly, decreases rapidly) This could cause
problems in a level sensitive system as the gain slowly increases
during the recording processto aquite large degree.
MICRO 11:25
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 28/52
+3.0V
+2.5V
+2.UV
WAVEFORM A
+3.0V
+2.5V
+2.0V
WAVEFORM B
+3.0V
+2.5V
+2.0V
WAVEFORMC
"0 " I · "1"1"
740usec
wide
All waveforms taken at PIN 3 of the LM311 (U26) with a sync
tape generation program running (hi-speed) Audio OUt (HI) is
connected directly to Audio In(A-Pto A~L).
WAVEFORM A is the normal condition as received (VIM
8 06 50 912 E /C O O O3 )
WAVEFORM B iswith C14 (OO47uF)removed
WAVEFORM C iswith C14removed and C1f'('01uF)paralled with
1uF
CONCLUSION: C16 is much too small and could easily cause
the system to become marginal in the presence of noise and
normal level variations. C14 has no apparent real value and
seems to unnecessarily increase transition time uncertainty.
The small value of C16 and the presence of C14 together
simulate the waveform degradation of a very limited band-
width recorder. Their effect augment rather than compensate for
the deficiencies of a recorder. Suprisingly, it appears that it
would bea recorder with poor low, rather than high, frequency
responsewhich would bemost likely to have problems with C16
ismaintained at itsoriginal .01microfarad value.
Submitted by
Don Lloyd
101Western Ave, Apt 76
Cambridge, Ma. 02139
F LAS H
Synertek has finally solved the
sensitivity problem which has
been of concern to users of the
tape cassette, according to a
spokesman from Synertek Systems.
I have sent them a pair of 2716
EPROMs to be programmed with the
new monitor. If these are returned
in time, I will make a full report
in next month's issue.
MICRO 11:26
Comments onSynertek BASIC (8k) V1.1
1) 2 ROM's, U21. uzz . COOO-DFFF,J) (0) (CR to start BASIC
2) Commands· CLEAR.LIST,NULL, RUNN. NEW CONT, LOAD
"A", SAVE"A"
3) Statements· DATA, DEF, DIM, END FOR, GOTO, GOSUM,
IF. GOTO, IF."THEN. INPUT, LET,NEXT,ON ..
GOSOM. POKE, PEEK, PRINT, READ, REM,
RESTORE.RETURN, STOP,WAIT.
4) Functions - ABS(X), INT(X), RND(X), SGN(X), SQR(X), TAB(I),
USR(I), USR(I,J,.Z), EXP(X), FRE(X), LOG(X),
POS(I),SPC(I)SIN(X), COS(X), TAN(X), ATN(X) a" must be
loaded separately - App Note 53-SSCnot quite
available
5) Strings· DIM AS, LETAS,INPUT XS,READXS,PRINTXS
6) String Functions - ASC(XS),CHR$(I), FRE(X$), LEFT$(XS,I)
LEN(X$),MID$(X$,I), MID$(X$,I.1l. RIGHT$
(XS.I).STRS(X).VAL(X$)
7) Operators =,-,+. exponentiation, .,=, (not equal), . ,
(LTE), (GTE),NOT, AND, OR
8) UsesMemory from 0200 HEX up until ROM or no memory,
unless restricted at start up.
9) Weaknesses· Only editing isdelete line, delete last character
(RUB-OUT), noROM TRIG, no program merging
capability
10) Strengths - Good array features (but no MAT functions), 9
digit accuracy floatrng points
4 byte floating point numbers
7 bits + 1 bit sign exponent
1 bit sign + 24bit binary value (NISbit = 1 always)
& "OOOF"= 15 decimal
hex string conversion to decimal
USR(I,J,,,.Z)Machine languagesubroutine multiple
parameters on stack result (A,Y)
Speed is comparable to OSI Kilobaud Oct '77 ratings (1MHz)
Overal l subjective by infrequent BASIC user: 7.5/10 seems
appropriate to overall product.
(
•Submitted by
Don Lloyd
101Western Ave, Apt 76
Cambridge, Ma. 02139
s.ttw.. Iw F"', 6100, 101','OIS, Z , 6502, l1li-1, 1112.
The EP-2A-79 will program the 2704, 2708,TMS 2708,2758,2716, TMS 2516, TMS 2716,
TMS 2532, and 2732. PROM type is selected by
a personality module which plugs into the fronl
of the programmer. Power requirements are 115
VAC, 50/60 HZat 15 watts. "is supplied with a
36-inch ribbon cable (14 pin plus) for connecting
10 microcomputer. Requires 1 17 I/O ports.
Assembled and te.ted $145, Plu. $15.25 for
each personality module. Specify software.
O P T IM A L T E C H IO lO G I , I I C ..... • MII 127, Early .... , r•.22936
,.._ 114-t73-5U2
APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 29/52
D R . D A L E Y 'S
S O F T W A R E F O R T H E P E TDR.DALEY's software continues to expand offerings. Listed below areour most popular programs.
No PETowner should be without these. Dealers, you should stock them as well.
PET TREK 3 Like STARTREK, but has several UNIQUE features. For
example, the unpredictable EXPERIMENTAL RAY, whoknowswhat it will do $ 7.95It's you vs the PETwith an exciting game of BACKGAM·
MON $ 7 .95A·CKGAMMON
MASTER MIN D
RENUMBER
Plays two simultaneous games, one where you guess
PET'ssecret code, and another where PETguesses yours $ 7.95Will renumber your BASIC programs, including all jump
statements. For a 6K source code requires less than 5
seconds , $12 .95A BASIC coded PILOT interpreter. A second high level
language for the PET.Simple to use, even a ten year old
can learn to use PILOTquickly. With sample PILOTpro-grams and documentation $12 .95Will balance your checkbook and save totals in 16
categories on tape. Will produce endof month andyear to
date summaries. Categories can easily be changed to
suit your own purposes.. . . . . . . . . . . . . . . . . . . . . . . . . . ... $12 .95
MAIL LIST Keepsamailing list and will sort the list into sub groups $12 .95using up to three search parameters .
All of our programs areavailable on tape or for the Compu-Think disk. Wecharge $5.00for the disk
and shipping, but you can subtract $1.00for each program which weplace on the disk. Order 5 pro-
grams and you get the disk free!
PILOT
CHECKBOOK
MAIL LIST The above program has been modified for disk files. Will
be placed on a disk by itself which you can then use for
yourmailinglist $19 .95We have just acquired the rights to distribute a linking
loader for BASICprograms! This will allow you to link ex-
clusively numbered BASIC subroutines in memory. No
serious programmer should be without this useful pro-
gramming tool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. $12 .95
FLASH!
An ideal companion to the linking loader will beour library of useful subroutines which
can be linked into your own program. Currently over 25 useful routines are included.
These range from plotting utilities to a beautiful display of rolling dice. Write or call for $49 .95a list or order the set for only .
* * *
Remember that we GUARANTEEthat your order will be shipped within four business days from
receipt or you will receive a coupon for a discount on a future purchase;
Chargeyour:~~~:~~r.=DR. DALEY , 425 G rove Avenue, Berrien Sprin gs, M ich ig an 49103
Phone (616)471-5514Sun. to Thurs. noon to 9 p.m. eastern time
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 30/52
•
Th e best memory boa rd a roun d.Here's w h y• Low power 2114 Static RAM's • Two independent 8Kx8 memory banks• Fully buffered • One supply only, 7-9V unregulated• High quality IC sockets• All switches accessible from top of board• Top grade glass fiber PCB, with goldplated contact area.
• Dual regulators
16K Static RAM $325.00Assembled on ly .
Desig n ed spec ific a lly fo r th e: K IM -1 , SYM -1 , A IM -65 .Specifications: Access time 450 nS max.
Power consumption 1.35 amp. typoAlso available: Buffered Mother Board, EPROM Programmer, CVT Power Supply. Software:Standard Forth Compiler, Sea-65 Editor/Assembler.
Order from local dealer or directly from:SEAWELL MARKETING INC., 315 N.W 85th, Seattle, WA 98117. (206) 782-9480Available in Europe. Write for dealer list.
[j Check or money order encloseci [] Send more intorrnauon ,.
[_I Charge my Master Charge or VISA Name
Address
Ace! l' _ _ Expir. Date Ctl y __ _ _ Stale ___Zip _
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 31/52
TH E M ICR O SOFTW A RE CA TA LOG : V II
Mike Rowe
P.O. Box 3
S.Ch..lmsford, MA 01824
Name: Slow-Scan Television Package
System Apple II
Memory: 16K (min)
Language: Machine Language
Hardware Standard Apple"Description This software system allows the Apple II to send and
receive U.S. amateur standard slow-scan T.V. pictures (120 line-15
Hz) via any ham radio SSBtransceiver. A real-time display of the
received picture in high-resolution graphics isaccomplished with a
sophisticated image processing algorithm. Low-resolution images
for transmission are prepared with a large-character display editor
as well as a drawing editor. All modulation and demodulation of
the audio FM subcarrier is performed by the software - replacing
hundreds of dollars of hardware required by other SSTV systems.
Comes on cassette with 8 mins. of test pictures.
Copies sold: about 100
Price: $20.
Includes: Cassette tape and 5 pages of documentation.
Author Chris H. Calfo - WB41MDAvailable from:
CH. Galfq
602 Orange St
Charlottesville, VA 22901
Name: S-C Assembler II (disk version)
System: Apple II with at least one disk
Memorv: 24K or more
Hardware: Apple II, Disk II, optional printer
Description: Disk version of the popular S-C Assembler for the
Apple II. Combines a text editor and an assembler in one memory
resident package of 3072 bytes (1000-1BFF). Carefully integrated
with the Apple II ROM-resident routines, and with Apple DOS.
Editor includes full screen-editing, BASIC-like line number editing,
tab stops, and renumbering. LOAD and SAVE commands for
storage of source programs on disk files or cassette. JOIN
command for appending two source programs from cassette.
Standard Apple II syntax for opcodes and address modes. Labels
(up to 6 characters), arithmetic expressions, comments in a
liberated line format. English language error messages (not coded
numbers). DOS and Apple Monitor commands directly available
within the assembler. Speed and suspension control over listing
and assembly Includes printer delver for Practical Automation
printer, with instructions for modification to any other printer.
(Cassette version is stil l available: it has fixed line format and
labels up to four characters.)
Copies: Over 200 of cassette version. over 25 of disk version.
Price: $35 for disk version, $25 for cassette version (Texas residents
add 5% sales tax)
Includes 32-page reference manual, disk with assembler, Master.
Create, RAWDOS, and two sample source programs.
Author: Bob Sander-Cederlof
Available from:
S-C SOFTWARE
P.O. Box 5537
Richardson, TX 75080
APRIL 1979
Name: PRO-CAL-I
System: Commodore PET
Memory: 8K
Language: Microsoft BASIC
Hardware: PET •
Description PRO-CAL-I is a reverse polish programmable
scientific calculator program ideally suited to scientific and
educational applications. It combines the best features of the PET
with those of hand-held calculators such as the HP 97 and the TI
"Programmer". It supports single key execution of more than 50
functions and implements calculations in binary, octal, decimal,
and hexidecimal number systems. The program displays 10
memory registers,S stack registers, and a record of the 14 most
current operations.
Copes: 40
Price $26.00 for software on cassette and an operating manual.
Author Robert M. Munoz
Available from:
APPLICATIONS RESEARCHCO.
13460 Robleda Rd
Los Altos Hills. CA 94022
Name FINANCIAL ANALYSIS: A Tutorial
System: APPLE II and PET
Memory: 16K
Language Basic
Hardware: APPLE II with cassette recorder, or a PET (8K)
Description: An interactive learning cassette with chapters on
Risk, Short-term and Intermediate-term Financing, Financial
Statements, and Key Business Ratios. The user is then put into the
position of having to use these concepts by playing the Meany
Manufacturing Business Game.
Copies: Hundreds available
Price: Sugg. Retail: $16.50
Includes: Tape cassette and informative booklet
Author: Brian Beninger
Available from
Local APPLE or PET dealers of:
SPEAKEASY SOFTWARE LTD.
PO. Box 1220
Kemptville, Ont., KOG lJO
Name: STAT III
System: Commodore PET
Memory: 8K
Language: BASIC
Hardware: Standard PET
Description: STAT III accepts a set of numbers and calculates the
following: mean, median, mode, highest number in the data,
lowest number in the data, range, variance, standard deviation,
average deviation, and sample standard deviation. STAT III can
display a bar graph of the users data on the CRT. In addition the
user may correct errors in his inputted data before processing.
Copies: Just released
Price $7.95
Includes: Cassette, source listing (program is self documenting)
Author: Michael J . McCann
Available from:
THE PET PAPER
P.O. Box 43
Audubon, PA 19407MICRO 11:29
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 32/52
Name: Apple Pi 'life'
System: Apple II
Memory: 4K
Language: BASIC and assembly
Hardware: Apple II with 2 operable game paddles with switches.
Description: Apple Pi 'life' allows variable grid sizes from 8X8 up
to 4OX40in increments of 1. Paddle 1 isonly read when the switch
is depressed Speed is controlled by paddle 0 and can be varied
from 550 gpm to 2000 gpm for an 8X8 grid. For a 4OX4Ogrid, speed
can bevaried from 25gpm to 140 gpm. The speaker istoggled each
time a cell isprocessed, except at minimum or maximum speed, togive the sounds of 'Life'. The bottom of the grid wraps around to
top of grid. and vice-versa. The right of the grid wraps around to
left of grid, and vice-versa. There are three tables of pre-defined
objects which can be setup on the grid by number and x,y
location. A description of the object table structure is given in the
documentation. Keyboard controls are: P-pause until next 'P',
Z-zero grid and setup objects, O-setup objects on grid, N-new
colors, and E-exit program. Any two distinct colors may be used for
live and dead cells.
Copies: New. just released.
Price: $12.00. Texas residents add sales tax.
Includes: Programs, object tables on cassette, documentation.
Order Info: Checks only.
Author: Harry L. PruetzAvailable from:
Microspan Software
2213A Lanier Drive
Austin, TX 78758
Name: Amateur Radio Communications Package
System: Apple II
Memory: 8K (min)
Language: Machine Language and Integer BASIC
Hardware: Apple II and user provided interface
Description: This software package allows the Apple II to
communicate in any of three codes: Morse, Baudot, or ASCII, with
a minimum amount of external hardware required. Some features
include: Variable size text buffer and live keyboard allow
reparing text for transmission while receiving or transmitting; 3
~eld screen display - each field scrolling separately; user defined
stored messagesare referenced by a keyboard and can be inserted
anywhere rn the text; automatic 72 character line formatting with
word wrap-around; continuously variable code speeds; adaptive
Morse receive and lots morel All I/O uses the on-board (game) I/O
connector.
Copies sold: over 100
Price: $18.
Includes: Cassette tape and documentation with sample interface.
Author: Chris H. Galfo - WB4JMD
Available from:
C.H. Galfo
602 Orange St.
Charlottesville, VA 22901
T h i s C a t a l o g i s a F R E E f e a t u r e o fM I C R O . Y o u r e n t r y m u s t b e t y p e d ,m u s t c o n f o r m t o t h e s t a n d a r d f o r m a t ,a n d A p p l i c a t i o n s / U t i l i t i e s w i l l b eg i v e n p r e f e r e n c e o v e r G a m e s .
MICRO 11:30
Name: TRANSACTIONAL ANALYSIS: An Introduction
System: APPLE II and PET
Memory: 16K
Language: Basic
Hardware: APPLE II with cassette recorder, or a PET (8K)
Description: An introduction to T.A. - a system for understanding
human behaviour. Chapters include: You As A Person, Stroking,
Transactions, Are You Listening?, the Balancing Game. This
interactive learning cassette will help you gain better
understanding of why you get along with some people and not
with others and may give you a better understanding of yourself!Copies: Hundreds available
Price: Sugg. Retail: $16.50
Includes: Tape cassette and informative booklet
Author: Joy Karp
Available from:
Local APPLE or PET dealers or:
SPEAKEASYSOFTWARE LTD.
P.O. Box 1220
Kemptville, Ont., KOC 1JO,Canada
Name: DOS TEXT EDITOR
System: APPLE II
Memory: Cassetts-16K, Applesoft Rom-24K, DOS-32K
Language: Applesoft "
Description: EDIT is a program designed to facilitate changes to
disk and cassette text files. The program has 24 commands to
manipulate files. Included are: INSERT, DELETE, CHANGE,
SEARCH, ADD, LIST, TEXT, DISPLAY, PACK, MODE, TAB, CLEAR,
APPEND, SAVE, CONCAT, and STRING CHANGE. Commands that
operate on blocks of data such as Range DELETE, LIST, SEARCH,
and STRING replace are also provided. EDIT may also be used to
create Disk files.
Copies: Just released
Price: $16.95 (Add $5 if desired on diskette)
Specify if Applesoft ROM
Includes: Program cassette or diskette, Complete documentation,
and users manual.
Author: Robert Stein
Available From:
Services Unique, Inc.
2441 Rolling View Dr.
Dayton, Ohio 45431
Name: REAL-I
System: Commodore PET
Memory: 8K
Language: Microsoft BASIC
Hardware: PET
Description: REAL-I is a real estate investment analysis program
which models an investment by computing the cash flow, tax
advantage, inflation hedge, internal rate of return, and other
quantities as they change over the years under the effects of
inflation. It specializes the calculations to the tax position of the
investor and helps him to judge the relative merits of various real
estate investments opportunities.
Copies: Just released
Price: $29.00 for software on cassette and an operating manual.
Author: Robert M. Munoz
Available from:
APPLICATIONS RESEARCH CO.
13460 Robleda Rd.
Los Altos Hills, CA 94022
APRil 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 33/52
SYM-l 6522-BASEDTIMER
John Gieryic
2041138 Avenue, NW
Andover, MN 55303
Your SYM-1 comes with a number of timers capable of a wide
range of timing intervals. Unfortunately the SYM REFERENCE
MANUAL does not provide information which can easily be
digested by a novice. I'd like to attempt a more down to earth
description of timer 1 on the Versatile' Interface Adapter 6522 for
those of uswho aren't hardware inclinded. This timer is capable of
very accurate time delays in the range of fractions of a second. It
has an interrupt associated with it plus the ability to generate
evenly spaced interrupts.
Setting Up The Interrupts
The first step in programming this timer is to place an address in
the Interrupt Request Vector [IRQ] located at address A67E and
A67F. A67E contains the low byte of the address and A67F contains
the high byte. This address in the IRQ is the location you will be
"jerked to" when the timer times down and generates an interrupt.
Your code will be as follows:
Location Code .
200 2086 8B jSRACCESS disable memory write protect
203 A900 LOA #0 0 interrupt address
205 80 7E A6 STAA67E Low byte
208 A903 LOA #0 3
20A 80 7F A6 STAA67F High byte
Our next step is to set two locations so the hardware can "see" the
interrupt and tell uswhere it is coming from. These two locations
are the Interrupt Fag Register [IFR) at location AOOO and the
Interrupt Enable Register [IER) at location AOOE.The IER controls
interrupts from 7 different sources on the 6522. We wil l only be
interested in bit 6. This isthe one for our timer Tl.We must set this
hit to i1 logic 1. This tells the 6522 we wil l accept interupts from
timer T1. The code follows:
.Location
200
20F
C o d e
A9 CO LOA #CO
80 OE AO STA AOOE
"Hey, wait aminute! Where did that 'C' come from? I thought you
said we were only going to set bit 6?"
Yes, I did. We must supply the 6522 with a bit more information
(no pun intended). We must tell it we are going to SETone of the
IER bits. This is done by setting bit 7 to a logic 1, hence our CO.
Note bits 0 thru 5 are a zero. This tells the 6522 we don't want to
change the condition of any of the other bits in the IER when we
do our store. From this you should be able to see how we CLEAR
anyone of the IER bits. You guessed it. Bit 7 will be a logic zero
and the IER bit(s) to be cleared will be a logic 1.
APRIL 1979
The Interrupt Fag Register [IFR] tells the user which interrupt has
occurred (when we get one). This information can be used by the
interrupt routine to "see" which element on the 6522 gave us the
interrupt. We want to initialize (clear) our flag bit for timer Tl (bit
6). I don't want to disturb any of the other bits. Note clearing a bit
in the IFR is not the same as in the IER.
location Code
212
215
217
AD 00 AO
2 C J I 1 r
8000 AO
LOA AOOO
AND #BF
STA AOOO
When we do get an interrupt from any of the enabled 6522 devices
(bit= 1 in the IER) then bit 7 in the IFR and the corresponding bit
in the IFR will both be set to a logic 1. We can determine if this
interrupt came from the 6522 by just looking at bit 7 of the IFR
(ASL followed by a test of the C bit) If bit 7 is a logic zero then the
interrupt came from some other place. This will save some time
when we are trying to find out where this interrupt originated. You
should log this bit 7 information in the back of your mind since I
won't use it here.
Setting Up The Timer
One more step before starting our timer. I'm going to set our timer
to the free running mode. This means it will count down, give an
interrupt and then immediately begin counting down again. I
won't need to worry about instruction cycle times within any
timing loops. I know I wil l get repeated interrupts at the exact
interval requested. Setting the Auxiliary Control Register [ACR) bit
7 to ,1 logic 1 pst<lblishp5 till' frep running mode.
location Code
21 A
21C
A9 CO
80 OB AO
LOA #CO
STA AOOB
Now we have the four mechanical steps finished ...setting up the
IRQ, IFR, IERand ACR. Setting the time delay is next. The Tl timer
has two latches (high and low order) and two counters (high and
low order) This results in a 16 bit counter. The low order latch is
loaded first. In this example I will set up for a delay of .05 seconds.
This corresponds to a count of C350 (one count for each
microsecond).
Location Code
21 F
22 1
LOA #50 load low order latch
STA AOO6
A9 50
8006 AO
MICRO 11:31
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 34/52
Now we will load the high order latch with the value C3. This
instruction will do more than load the high order latch. It will also
write the high order latch into the high order counter as well as
write the low order latch into the low order counter. This one
instruction will transfer all 16 bits from the latches to the counter
at the same instant. Without this hardware assist we would be
unable to load the counter accurately since the counter begins to
count down immediately after being loaded.
Location Code
224
226
A9 C3 LOA #(:3 load high order latch
8005 AO STA A005
The timer is now running and will generate an interrupt .05
seconds (C350) later. This corresponds to 50,000 clock cycles. If
you were programming a clock your remaining code at location
229 would now initialize your hours, minutes and seconds
counters, initialize the display buffer and then go into a tight loop
call ing SCANO in order to il luminate the LED's.
Servicing The Interrupt
Our interrupt routine at location 300 is now executed when wereceive the interrupt. The first thing we must do is SAVE the
processor status and registers. This is done sowe can restore these
items when we are finished with our interrupt processing and jump
back into SCANO from where we were "jerked out."
Location Code
300 08 PHP save processor status on stack
301 4 8 PHA save accumulator on stack
302 8A TXA transfer X to A
303 48 PHA save X register on stack
304 98 TYA transfer Y to A
305 4 8 PHA save Y register on stack
If you were programming a clock you would now increment a
counter. If the counter equalled twenty then reset it and increment
the time in the display buffer by one second.
Now the Interrupt is "serviced." In order to clear the way for the
next interrupt, the T1 interrupt flag must be reset otherwise the
next interrupt will be blocked. This clearing can be done in either
of two ways. Method 1 will write into the high order latch. This
write uses a different address for the store instruction than the
write used to initialize the timer counter. In doing this the T1
interrupt flag will be reset but it will not disturb the current value
in the counter. Remember this is a free running counter in our
example and automatically resets itself when the interrupt
occurred. By this point in time it has already counted down from
its original value of C350 toward zero (and the next interrupt).
Method 2 will read the low order counter. Either method will reset
the T1 interrupt flag.
Method 1
Code
A9 (3 LOA #C3
80 07 AO STA AOO7
Method 2
Code
AD 04 AO LOA AOO4
Now the processor status and registers can be restored and a return
executed to the location in SCAND at which the interrupt
occurred. Remember you must restore the registers in the exact
reverseorder used at the entrance to the interrupt routine. This isa
major point.
Code
68 PlA pull accumulator from stack
A8 TAY transfer to Y index
68 PlA pull accumulator from stack
AA TAX transfer to X index
68 PlA pull accumulator from stack
28 PlP pull processor status from stack
40 RTI Return from Interrupt
That's the end of the lesson for today. In a future article I will usethe information presented here to develop an operating system for
your 5YI,.,11.
•IMtII BUS EXPANSION!A IMT . . , V IMT . . , (SYM)TM , K IMTMOWNERS
(and any other KIMTMbus users) buy thebest 8K board available anywhere:
GRAND OPENING SPECIAL!HDEBKRAM-S169! 3 for 5465!
Induslrial/commercial grade qualily: 100hour high lemp burn·in: low power: KIM bus compalible pin for pin: super Qualily &reliabilily al below S·l00 prices (COMMERICALLY raled S·l00boards cost 25-75'10more). When you expand your syslem, expandwilh lhe bus oplimlzed for 8 bil CPU's, Ihe Commodore/MosTechnology 22J~ pin KIM bus, now supporled by Synertek, MTU,RockwelllnlernaliOnal, Problem Sol.er Syslems, HOE,IheCompul·erisl, RNB, and olhers!
KfM·l compuler $179.00:KIM·4 Molherboard $119:pow&r sup-ply for KIM·l alone-$45: enclosure for KIM·l alone $29: HOEpro-lolype board wilh regulalor, heatsink, swilch address & decodinglogic included $49.50:book "The FirSI Book of KIM" $9.95: book"Programming a Microcomputer: 6502" SB.95: SPECIALPACKAGEDEAL: KfM·l, power supply, BOTH books listed abo.e, ALL for1209!
HOE FILE ORIENTED DISK SYSTEM (FOOS) FOR KIM BUSCOMPUTERSMake your KIM (or relati.e) Ihe besl 6502 de.elop·ment syslem aYaiiable al any price. Expand wilh HOE's full sizelIoppy system wilh FOO~Edltor'Assembler. 2 pass assembler,powerful editor compatible wilh ARESCO files KIM bus Inlerfacecard: fast 8502 controller handles data Iransler at ma.imum IBMsingle density speed for excellent reliability: power supply for (drives: patches 10 Johnson Computer'Microaoft BASIC. 45 daydelivery. Single drlye-S1995 dual drive $2750 •
Shipping extra unless order prepaid with cashier's check ALLitems assembled, tested, guaranteed al least 90 days.
PLAINSMAN MICRO SYSTEMS (div. 5C Corporation)
P.O. B ox 1712, Aubum, AI.36830: (205P45-77353803 Pepperell Parte_y, Opelika
(1~3-8724) Continental U.S. tlJlcept AI.
Dealers for OSI, COMMODORE, COMPUCOLOR,
~ ALTOS
MICRO 11:32 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 35/52
-
C 5 ~Ii n c .
BOX 120
ALLAMUCHY, N.J. 07820201-362-6574
-._
H U D S O N D IG IT A L E L E C T R O N IC S IN C .
JUST THINK OF IT!
YOUR KIM·1 - No longer limited to those long cassette saves and loads.
YOU R KIM·1 - Backed up by 8K static ram so conservatively designed,
well manufactured and thoroughly tested, HOE includes ano-nonsense, unconditional, 6 months parts and laborwarranty. (Excluding misuse).
YOUR KIM·1 - Transformed into one of the most powerful 6502 develop-
ment systems available today.
HOE, INC. supports the KIM-1 with 8" and 5" single and dual drive disk systems, proto-
typing cards, card racks, desk top cabinets, motherboards, and the finest memoryboard available, anywhere, at any price.
AND THIS IS JUST FOR STARTERS ...
Consider: A fast, 2 pass assembler; a complete line oriented editor; a comprehensive
text output processing system; an efficient dynamic debugging tool; and, a memorydiagnostic package so thorough it's the basis of our memory warranty.
Plus, after the sale support that you've known you deserve, but just couldn't seem to
get - until now.
And, HOE products are KIM-1, KIM-4 compatible. All boards include an oversized 5
volt regulator and address selection switches, in a state-of-the-art 4.5" X 6.5" format,
designed, manufactured, and tested for commercial/industrial application.
HOE products - built to be used with confidence.
AVAILABLE FROM THESE FINE DEALERS:
ARE~COP.O. Box 43
Audubon, Pa. 19407215-631-9052
JOHNSON COMPUTER PLAINSMAN MICROSYSTEMS
Box 523 Box 1712
Medina, Ohio 44256 Auburn, Ala. 36830
216-725-4560 800-633-8724
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 36/52
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 37/52
APRIL 1979 MICRO 11:35
6502 BIBLIOGRAPHY
PART"William R. Dial
418 Roslyn Avenue
Akron, OH 44320
429. Recreational Computing 7 No 4'55 37Uan./Feb., 1979)
Carpenter, Churck "APPLE II Easy I/O Sensing and Control". I/O control using the Apple II game connector.
Wells, Arthur Jr. "Some New Uses for Apple II". Debugging PONG, use of Modem. etc.
Shanis, Daniel"Breaking Trail in Alaska with Apple II". A project using 32K Apple iI computers with diskettes
in 9 remote village schools.
Swenson, Carl "Building a HI-RES SHAPE TABLE for the APPLE II". Heres a way to create your favor ite shapes.
Saal, Harry "SPOT". Tips for the PET Owners. A machine language tape with two BASIC programs is available
from Commodore. Also a manual on communication with the outside world. A PET SERVICE KIT from
Commodore includes schematic diagrams and parts lists, a diagnostic jumper connector with diagnostic
tapes, etc. Information on the "lost cusor f ix". Head Alignment.
430. MICRO No 9 (Feb., 1979)
Reich, Dr. L.S."Long Distance Interstate Telephone Rates". An Applesoft iIprogram for phone rates which can
be modified for PET or 051 computers.
Bullard, GARY J. "The Sieve of Eratosthenes". A pr ime numbers BASIC program for the PET.
Hertzfeld, Andy "Explor ing the Apple II DOS". Useful information for disk users.
Dejong, Marvin l."6502 Inter facing for Beginners: An ASCII Keyboard Import Port". Shows a system for the
KIM with both polled or interrupt methods of service the device.Tater, Gary L. "Two Short TIM Programs". One program provides a method for communcation with TIM at
1200 BAUD or higher. Another offers a TIM Operating System Menu.
Tripp, Robert M. PhD" Ask the Doctor-Part 1". A comparison of the KIM, SYM and AIM microcomputers.
Watson, Allen "Two APPLE II Assemblers: A comparat ive Software Review". Advantages and disadvantages
of the Microproducts and S-CAssemblers for the Apple II.
Rowe, Mike "THe MICRO Software Catalog: V". Reviews of about one dozer programs for 6502 based systems.
Rittimann, Russell "Expand Your 6502-Based TIM Monitor". A modification of the TIM system to eJq)and the
command set so that ROM resident programs or routines can be executed from within TIM.
Dial, Wm R. "6502 Bibliography- Part VIII". The 6502 literature continues to expand.
Sandberg, Gary P how Does 16 Get You 10?". Hexadecimal/Decimal conversions for the Apple.
Herman, Harvey B. "How Does Your ROM Today". Programs and techniques for testing the KIM and PET ROMs.
Br idge, Theodore E. "Life for the KIM·1 and an XITEX Video Board". Program runs on a 16K Kim.
431. CONTACT Newsletter No 4 (Dec. 1979)
Anon "Apples work PIA's". A note to the effect that the problems reported earlier by END magazine on the
apparent incompatibility of the Apple with PIA's have been resolved and that EDN now believes this long
saga must have had i ts source in human error. (See EDN Magazine, Sept. 20,1976)
Anon, "The Colon as a Listing Formatter for Applesoft". How to indent your listings for neatness and easy
reading.
Annon "Disk Operat ing System Notes". Includes Notes on Data Format. Using Random-Length Records, Using
Fixed-length Records. Appending Files. DOS Error Codes. Getting Commas into Applesoft . etc.
432. Dr. Dobb's 'ournal4 No 32 Issue 2 (Feb., 1979)
Gordon. H.T. "An Unusual Pseudorandom Number Generator Program". Program for the KIM-1.
Carpenter. Chuck "Reset Adapter". How to avoid accidental loss of programs involving the reset button on the
Apple II
Pr igot. Jonathan M. "loading Kim's Cassettes". How to load 051 cassettes into the KIM.
433. Byte 4 No 2 (Feb., 1979)
Ubes, Sol "Byte News", Atari has two new 6502 based computers. According to the latest sales reports, more
6502 microprocessors are being manufactured than any other uP. Most of the volume goes to high volumegame use.
Mathews. Dr. Randall S. "An Apple and the Queens". An Eight Queens program for the Apple.
Raskin. lef "Unlimited Precision Division". A BASIC program for unlimited integer division.
434. Ki lobaud No 26 (Feb., 1979)
Green. Wayne "Publisher'S Remarks". A review of OSI's new units the Ip and IIPChaliengers.
lindsay. len "PET Pourri". Accssories for the PET include a voice input module, a sound output module,
joysticks, a digital plotter. a light pen. and an 5-100 adapter for the PET. How to add sund to your PET and
sound programming instructions. New languages to supplement Basic are PILOT and PETFORTH. New
sources of information on the PET are the PETManual and a manual called PETABLE. as well as a newsletter
called Sphinx. Programming tips cover the GET, ON ... GOSUB. and others. A new wrinkle for recovering
programs from faul ty tapes isgiven.
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 38/52
Fogel, Ekkehard "Apple and the PIA". Contradicting the troubles reported by EDN magazine, a board was
developed with a PIA 6520 on it to put an Apple II and a KIM together. Programs can be sent from one unit
to the other and vice versa.
Price, David "Music, Maestro". The AD8 is a computer-control led synthesizer system using a 6502
microprocessor and a6820110 port.
Bishop, Robert J."The Apple Speaks... Softly". Apple IIVoice digitizer.
435. Calculators/Computers Magazine 3 No 1 (Jan./Feb., 1979)
Day, Jim "High-Resolution Apple Art". Applesoft II program for various shapes.
Albrecht, Bob and Karl "PET BASICfor Parentsand Teachers". PETConventions in a simple snimation program.
436. 73 Magazine No 221 PH21 (Feb., 1979)
Birman, Paul "Petting". How to find the end of a program on tape when you want to load a new program into
your PET.
437. Personal Computing 3 No 2 pg 63-74 (Feb., 1979)
Gerue and McNeil, "Chess Challenger-10 Wins Microchess Tourney" Microchess 2.0. Peter Jennings entry,
took fourth place. This is6502 based.
437. Creative Computing 5 No 1 (Jan., 1979)
Yob, Gregory "Personal Electronic Transactions". New products described are Expandapet memory, PETROM
disassemblies, a useful book on what the PETrom isall about, Some data on the User Port, PETVideo Slave
display, Exploring PETrandom numbers, PETsounds and music, etc.
Wells, Ralph "HOw about a 'Counterfeit Cursor' For your PEn". Enables one to use the cursor in games or
under better control.Heuer, Randy "Ohio Scientific Superboard IIandChallenger 1P". A review of 051's new lost cost micro.
Rugg and Feldman "Speed Reading Made Easy...via Your PET". This program turns your computer into a
tachnistoscope to teach improved reading habits.
Milewski,Richard A. "Apple-Cart". All about Data Files on diskettes. Simple file accessing statements, Sample
serial accessprograms, and some software reviews.
NOW AVAILABLE Basic SoftwareFo r SO L-IIA and PET-8K
•
General Pack I(Checkbook Balancer, Tic Tac Toe, Metric
Conversion)
GamePack2·(children - educational)
$10.95 (Arithmetic God, Addition Dice, Distance =RateXTime)
12.95
12.95
General Pack 2(SpacePatrol, Biorhythm, Battlestar, One-Armed
Bandit) 18.95 Tape Data query(FileManagement System)- For the KIM-1 50.00
Financial Pack I(loans, Depreciation, Investments) 12.95 PCROS· a Real·Time Operating
System in IKKIMRAMAssembly listing 24.95inancial Pack 2
(Mortgage & loan Amortization, Future
Projections, RiskAnalysis) 12.95 Cassette tape with user'smanual
Schematic for relay control board
14.95
9.95
Statistics Pack I(Mean & Deviation, linear Correlations & Regression,
Distribution, Contingency Table Analysis) 18.95
All programs on high-quality cassette tape.
Game Pack I(Baksetball, Object Removal, Bowling, Darts,
Gopher) 22.95
Send self-address, stamped envelope for
complete software catalogue.
Send check or money order to:
H. GELLER COMPUTER SYSTEMS
Dept. M
PO. Box 350
New York, New York 10040
(New York residents add applicable sales tax)
MICRO 11:36 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 39/52
renumber job is standard or custom. It then checks to see ifsufficient memory exists to allow for insertion of spaces for as
many as five digits for COTO line numbers. An error message (see
TABLE 2) is generated if there is less than one page available for
this enlargement of the program. Then, each line of text is moved
into the line buffer, and if a COTO, COSUB, or THEN (followed by
a number) is present, spaces are inserted and the expanded line is
inserted by BASICs own line-insertion routine into the text area,
just as though you retyped the line on the keyboard. Any lines too
long for this expansion produce an error message before any harm
is done to the program. BASICs own error routine is called to print
these messages! The "TOO LONC" message is a shortened version
of "STRINC TOO LONC" used by BASIC
THE ULTIMATE PET RENUMBER
Don Rindsberg
The Bit Stop
Box 973
Mobile, Alabama 36601
This article can be of help to the BASIC programmer in providing afast, fool-proof renumbering system, but it also includes details on
how to use the PET BASIC interpreter's own machine-language
routines to do some useful chores
Renumbering programs written in BASIC, such as Jim Butter field's
(see MICRO Dec 78 - Jan 79) are very slow in renumbering long
programs, and because BASIC is cumbersome in performing such
routine chores, the machine-language approach has some major
advantages. This routine will renumber a 300-line program in
around 20 seconds, as compared to more than 300 seconds for
Jim's BASIC version. Further, Jim is forced to duck the issue of
providing space for extra-digit line numbers, whereas by calling
BASICs line insertion routine, this program provides enough space
for five digits for every COTO, COSUB, etc.
The entire program for renumbering is given in hexadecimal inlisting 1. More later about how to enter it into your machine. With
your BASIC program and the renumber routine in RAM, press
SYS8181 (by coincidence, the name of the program) and you will
either get a message of reassurance that all has gone well, or will
get an error message, such as "line too long". I n no case will the
program bomb, because this is a two-pass program; during the first
pass, nothing is done to the Basic text, other than making sure
there is enough space for five-digit line numbers. If any problem
exists, the BASIC text is unchanged.
DEVELOPING THE PROGRAM
Commodore made it a formidable task to decipher the code of
BASIC sufficiently to be able to make patches for a short renumber
system. The first obstacle is that the PEEK statement is disabled forthe area of memory where BASIC resides. But, by sleight-of-hand, a
little PUNCHing and POKEing and addition of a simple output port
on PET's memory-expansion connector, the PET disgorged the
contents of its ROMs into my homebrew machine and onto a disk;
now, with the capability of having the programs in RAM, where
breaks could be inserted for diagnosis, the job became a little
easier.
Programming a renumber routine is made tedious by the fact that,
in the BASIC text, the line numbers following the COTO tokens are
coded in ASCII, whereas the line numbers at the beginning of a
line of text are coded as two-byte hex numbers. Fortunately, the
BASIC interpreter has rountines built in to do these conversions
back and forth between ASCII and hex. The locations of these and
other routines called by this program are given in TABLE 1.Another problem encountered was locating some page zero
registers, essential to 6502 programming, which are not altered by
the BASIC itself. In some cases, I use space in the line buffer at
OOOA-0059, but this cannot be done in the section of the Program
which uses the line buffer for its original purpose, i.e., inserting a
line in its proper place in the BASIC text.
This program uses very little RAM, since no tables are created.
PROGRAM OPERATION
The program first sets or clears a flag, depending upon entry point
(DCM 8181 or 8184), since entry point determines whether the
APRIL 1979
In the text, all statements are compressed into single-byte tokens,which I have listed for your reference in TABLE 3. For example,
COSUB is hex 80, THEN is A7, etc. This program searches out all
the 89, BD and A7 tokens. Getting the proper ASCII numbers after
these tokens requires conversion of the ASCII to hexadecimal and
searching for a matching line number in the text area. If no match
is found, the guy evidently had a COTO pointing to a non-existent
line number, so we flag this in the text by an opening parenthesis,
such as:
COTO(
COSUB( :X = x+ t
IF A=B THEN(
ON X COTO 1234,( ,567B,9987
When the progra is listed or run, the need for correction is obvious;
While we are searching for a matching line number, we keep track
of the new line number which corresponds to the current position
in the text, so that when the match is found, the new line number
can be converted to ASCII and placed directly into the text.
The actual resequencing process which follows is an anticlimax,
because it requires so little coding (lEl6-1E3E). When the entire
renumbering job is done, we jump back to BASIC's warm start
location.
USING THE PROGRAM
If you would like to renumber your program with the standardstarting line number 100 and increment by 10, simply type
SYS8181, which directs the program to hex address lFF5. If you
would like to choose a different starting line number or increment,
POKE the desired values at the addresses shown in LlSTINC 2, and
type SYS8184 to enter the program at 1FFB. If your BASIC program
is long, it may take 3-4 seconds to complete the renumbering job.
After renumbering, running the program will generally write over
the renumber code, since it occupies the same space as some
BASIC variables. The only precaution to be taken in renumbering
is to avoid line numbers which exceed PETs limit of 63999.
MICRO 11:37
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 40/52
ROUTINE ENTRY POINT (HEX) FUNCTION AND IMPLEMENTATION
C359 Print an error message from the message table. Enter with X
containing the location of the message relative to C190. Message
terminator is ASCII having bit 7 on.
1FOO A duplicate of the original BASIC line insertion routine located at
C3B4, except for the exit jump. Enter with the line assembled in the
line buffer OOOA-0059 with 00 as line terminator. Also, thecharacter count must be in 005C, and the line number (hex) at
0008/9.
CCA4 Evaluate an expression whose beginning address is in OOC9/CA. We
use this sub to convert from ASCII to binary, with the result
appearing in the floating accumulator OOBOt.
0818 Convert fixed number in OOB1/2 to floating number. Enter with
X ==90 and carry set.
06DO Convert binary value, such as line number, in floating accumulator
to two-byte fixed number and place in 0008/9.
DCAF Convert floating number at OOBOt to ASCII and place in a stringstarting at 0101, preceded by a space or minus sign at 0100 and
terminated by 00.
C388 BASIC warm start. Prints READY.
CA27 Print message. Enter with ADH in Y, ADL in A. Message is ASCII
string enough with 00.
•DC9F Print the decimal integer whose hex value is in microprocessor
registers A and X , for example, a line number.
TABLE 1 - BASIC ROUTINES USED
~'ESSAGE INTERPRETATION
CHECK FOR GOTD( ETC Successful renumbering.
1 2 0 .
? TOO LONG ERROR
Line 120 is too long to renumber. Break into two or more lines, and
renumber again.
? OUT OF MEMORY ERROR Program too long to renumber.
? SYNTAX ERROR Attempt to RUN program with GOTO( remaining in program, or
attempt to renumber with one of these in program text.
GOTO(
GOSUB(
ON X GOTD(
IF A==8 THEN(
The opening parenthesis in the text represents attempt to
reference a non-existent line number.
Note: Lines of the following form are likely to cause a TOO LONG error:
100 ON X GOSUB 1,2,3,4,5,6.7,8,9,10,11,12
TABLE 2 - MESSAGES
MICRO 11:38 APRIL 1979
. . . . . . . .
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 41/52
RENUMB ORG $lD00DO N R IND SB ER G(C) 1978 N.A.I.L.
<& SIGN MEANS PLUS)
$lF00 INSERT A LINE INTO TEXT$1 FCA DONE MESSAGE .
E XT ER NA L R OU TI NE S
INSERT •HESSG •
TEMPORARIES
BUFF •POINT •POINTX •LINCNT •PTRSO •PTRS •
FLAG •BUFPTR •COUNT •STARTC •INTC •CUSTOM •
$0008 LINE BUFFER LOCATION$0019 TEMP LINt BUFF POINTER$001 A TEMP POINTER$005C NO. CHAR. IN LINE$001A ORIGINAL POINTERS$006A WORKING POINTERS
$0069 FLAG THE GOTOS$006E LINE BUFF POINTFR PAGE ZERO$006F COUNTER$00DB CUSTOM STARTING LINF. N O.$00DD CUSTOM INTtRVAL$00DE FLAG CUSTOM ,roB
MICRO 11:39
B AS IC P AR AM ET ER S
FAce • $00B0 BASIC F LO AT ING A CCU MBASICP • $00C9 BASIC POINTERBERROR • SC.3 ,59 BASIC ERROR ROUTINEWARM • $C38B BASIC WARM STARTPRINT • $CA27 BASIC PRINT ROUTINEEVAL • $CC,A4 E XP RE SS IO N E VA LU AT ORFIX • $D6D0 CONVERT TO FIXED DPFLOAT • $DB1B CONVERT FIXED NMBR TO FLOATPNUMBR • SDC9F BASIC PRINT NUMBERASCII . . . $DCAF CONVERT NMBR TO ASCII AT $ 0 1 0 0
MAINLINE
1 D 0 0 A5 7D START
1 D 0 2 ' C 9 1 8lD ".4 &90 05lD06 A2 52 BOMBl D e 8 4C Fe 1ElD0B 20 BD IE SPACElD0E 20 3F lE NEXTlDl1 F0 2BlD13 A2 08
APRIL 1979
LDA PTRSO &03 GrT END TEXT ADH
CMPIM $1B ENOUGH ROOM TO EXPAND?B c e SPACELDXIM ' $52 OUT O F MEMORYJt1P ERRORJSR COpy MAKE CC T£XT POINTERSJSR DNTST ARE WE DONE THIS stCTION?BEQ RENUMLDXIM $08 LINE BurrER START
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 42/52
1 D 15 A ' ll0 2 LDYIM $02 POINT TO LINE NMBR IN TEXT1D17 B1 6A GETSYT LDAIY PTRS GET BYTE FROM TEXTlD19 95 00 STAZX $00 STORE IN LINE BUFFERID1B C0 04 CPYIM $04 ZERO HERE NOT TERMINATORID1D 90 04 BCC SKIPA
ID1F C9 00 CMPIM $001D21 F0 04 BEQ TERM G OT T HE 'T ER MI NA TO RlD23 C8 SKIPA INY1D24 E8 INX1D25 D0 F0 BNE GETBYT FORCED BRANCH1D27 20 47 IE TERM JSR EDIT EnIT ONE LINElD2A A5 69 LDAZ FLAGlD2C D0 0A BNt SKIPB SKIP IF NO GOS FLAGGEDlD2E 38 SEClD2F AS 6[ LDA BUFPTRlD31 E9 05 SBCIM $05 CORRE~T BYTE CrUNT1D33 85 SC STA LINeNT NEED CHAR COUNTID35 4C 00 1F JMP INSERT BUT RETURN TO NEXT L I N 1 = :lD38 20 C7 lE SKIPB JSR UPDATE POINT TO NEXT LINE1D38 4e 0E lD JMP NEXT
ID3E 20 BD u: RENUM JSR COpy THE POINTERSID41 20 3F n: NEXTR JSR DNTST ARE WE DONE THIS PORTION?1D44 D0 03 BNE NOTDON1D46 4C 16 u: JMP RESEQlD49 20 AE 1F NOTDON JSR STRTLN GET STARTING LINE NMBRID4C A0 03 SCAN LDYIM $03 POINT TO TEXT-lD4E C8 SCANA INY
•D4F B1 6A SCANX LDAIY PTRS GET A BYTElD51 D0 06 BNE GOTEST BRANCH IF NOT TERMINATORID53 20 C7 u: JSR UPDATE GO TO NEXT LINE1D56 IIC 4 1 ID JHP NEXTR1D59 C9 89 GOTEST CMPIM $89 GOT A GOTO?ID58 F0 15 B E Q . GOTOlD5D C9 8D CMPIM $8D GOT A GOSUB?1D5F F0 11 BEQ GOTO1D61 C9 A7 CMPIM $A7 GOT A THEN?1D63 1)0 E 9 BNE SCANA1D65 C8 THEN INY POINT TO NEXT1D66 81 6A LDAIY PTRS1D68 C9 20 CMPIM $20 IGNORE SPACESlD6A F0 F9 BEQ T H ENlD6C 20 ES IE J S R TSTDGT TEST FOR NUMBERID6F 80 :£8 Bes GOTEST1D71 88 DEY
lD72 C8 GOTO INY1D73 84 19 STY POINT SAVE A MOMENTlD75 98 TYA1D76 18 CtC1D77 65 6A A D C PTRS POINT TO ASCII NMBRSID79 85 C9 STA BASICPID78 20 ED IF JSR PATCH BUG FIX
ID7! EA NOPID7F 20 A4 CC J S R EVAL CALL BASIC EVALUATOR1D82 20 D0 D6 JSR FIX AND BASIC FIX ROUTINE
MICRO 11:40APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 43/52
lD85 A5 7A1D87 85 lA1D89 A5 7BlD8S 8S iBlD8D A0 00lD8F B1 1AlD91 C 81D92 lilAlD94 D0 10
1D96 A9 20lD98 8D 00 01lD9B A9 28
lD9D BD 01 01lDA0 88lDA1 B C 02 01lDA4 F0 20lDA6 A0 021DA8 B1 1AIDAA CS 081DAC D0 55lDAE C 8lDAF 81 lA
lDB1 C5 09lDB3 D0 4E
lDB5 A6 101D87 86 B2lDB9 AS 11lDBB 85 81lDBD A2 90lDBF 38
tDC0 20 1B DBlDC3 20 AF DClDC6 A2 FBlDC8 A4 19
lDCA BD 06 00IDCD F0 081DCF 91 6AlDDl C81DD2 E81DD3 D0 F51DD5 F0 0C1DD7 A9 201DD9 91 6AlDDB C8lDDC [8
lDDD DO F8lDDF 88
1DE0 D0 01lDE2 C8lD£3 B1 6AIDES 20 [5 1ElDE8 B0 06lDEA A9 20lDEC 91 6AlDEE D0 ;2IDr0 C9 20
APRIL 1979
SEARCH LDA PTRSO SETUP SEARCH POINTERSS T, .. PO IN TXLDA PTRSO &01
STA POINTX '01SRCHLP LDYII'!$00
LDAIY POINTX GET NEXT BYTEINYORAIY POINTX TEST FOR TWO ZERO BYTESBNE NOTEND ZEROES MARK EOT
LDA!H $20 GET A SPACESTA $0100 A SC II W OR KS PA CELDAIH $28 GET OPEN PARENSTA $0101DEYSTY $0102 TERMINATE WITH ZEROBEQ MVASC rORCED BRANCH
NOTEND LDYIM $02
LDAIY POINTX GET LINE NO. LOWCMP BurF MATCH?BNE NOMATINYLDAIY POINTX GET LINE NO. HIGHCMP BUFF &01
BNE NOMATMATCH LDX BUFF
STX FACCLDA BUFFSTA FACCLDXIM $90
SECJSR FLOATJSR ASCII TO $0101 PLUS
MVASC LDXIM $FB MINUS SLDY POINT
LOOPA LDAAX $0006BEQ BLANKS TERMINATOR ZF.RCSTAIY PTRSINYINXBNE LOOPABEQ COMMA
BLANKS LDAIM $20 GrT SPACESTAIY PTRS STORE ITINYINXBNE BLANKSDEY
BNE COMMACOMMX INYCOMMA LDAIY PTRS GET NEXT BYTE
JSR TSTDGT TEST FOR NUMBERBCS NOTNUI'!LDAIM $20 SPACESTAIY PTRS STORE ITBNE COMMX FORCED
NOTNUM CMPIM $20 SPACE?
&08 GET CURRENT LINE NMBR&02
&09 SECOND BYTE&01SETUP FOR FLOAT
MICRO 11:41
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 44/52
1DF2 F0 E£ BEQ COMHXlDF4 C9 2C C t1 P IM $ 2C COMMA?lDF6 08 PH P DEFER TESTIDF7 20 A£ iF JSR STRTLN GET STARTING LINE NMBRlDFA 28 PLP NOW TESTlDFB 00 03 BNE JSCANX NOT COMMAIDFO 4C 72 1D JHP GOTO GOT A COMMA1[00 4C 4F 10 JSCANX JMP SCANXlE03 20 EE I E NOMAT JSR INCLIN INCR NEW LINE NMBR1£06 A0 00
LDYIM $001£08 B1 1A LDAIY P01NTX GET NEXT LINE ADDRESSlEeA 48 PHAlE0B C8 INYt£0C 81 lA LDAIY POINTXlE0E 85 I B STA POINTX &0 1lE10 68 PLAlEl1 85 1A STA POINTXlE13 4C g D 10 JMP SRCHLP BACK TO SEARCH AGAIN
1£16 20 AE 1F RESEQ JSR STRTLN SETUP STARTING LINElE19 20 BD 1E JSR COpy COpy THE POINT!RS
1E1C 20 3F I E LOOPR JSR DNTST DONE?lI1F F0 13 B E Q WINDUPl ' E 2 1 A 0 02 LOYIM $02 POINT TO LINE NMBR1£23 A5 10 LDA BUFF &0g GET NEW ONF.1[25 91 6A STAIY PTRS STORE ITlE27 C8 INYlE28 A5 11 LDA BUFF &09
•E2A 91 6A STAIY PTRSlE2C 20 C7 1E JSR UPDATE ADVANCE TO NEXT LINElE2F 20 EE IE JSR INCLIN I NCREMEN T LI NF. NHB R1E32 90 E8 BCC LOOPR FORCED1[34 A0 IF WINDUP LDYIM HESSG 1100lE36 A9 CA l, .D AI MME SS G1[38 20 27 CA JSR PRINT END MESSAGE1£38 58 CLI A LL OW K EY PR ES Sr slE3C 4C 8B C3 JMP WARM BACK TO BASII';
lE3F A0 00 DNTST LDYIM $001E41 B1 6A LDAIY PTRS GET NEXT BYTElE43 C8 INY ADVANCE TO NEXTlE44 11 6A ORAIY PTRS OR WITH LAST TO FIND O0001E46 60 RTS
1E47 A2 O9 EDIT LDXIM BUFF &0 11E49 86 6E STX BUFPTRlE4B 86 69 STX FLAG SET FLAGlE4D E6 6E [DITX INC BUFPTR1E4F A6 6E LDX BUFPTR1[51 B5 00 LDAZX $001E53 Fe 71 BE Q RTS
tE55 C9 89 EDITY e MP I' " $ 8 9 GOTO?1[57 F0 19 BEQ SPACES
MICRO 11:42 APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 45/52
lE59 C9 8D CMPIM $SD GOSUB?lE58 F0 15 BEQ SPACESlE5D C9 A7 CMPIM $A7 THEN?lE5F D0 EC BNE ED;lTX B~.~K FOR MORE1E61 E6 6E THENN INC BUrPTRlE63 A6 6E LDX BUrPTR1E65 B5 00 LDAZX $00 BYTE AFTER THENlE67 C9 20 CMPIM $20 IGNORE SPACESlE69 F0 F6 BEQ THENN1E6B 2(21E5 n: JSR TSTDGT IS IT NUMBER?lE6E B0 E5 BCS EDITY IF NOT, GO BACK1E70 C6 6E DEC BUFPTRlE72 A2 09 SPACES LDXIM BUFF &01 TEXT-llE74 E8 SPACEX INXlE75 B5 00 LDAZX $00 LOOK FOR TERMINATOR1E77 D0 FS BNE SPACEXlE79 E0 54 CPXHf $54 LINE TOO LONG?1E78 90 0C BCC OKAYlE7D A5 09 LDA BUFF &0 1lE7F A6 08 LDX BUFF GET BAD LINE NMBRlE81 20 9F DC JSR PNUMBR PRINT IT
lE84 A2 BB LDXIM $BB TOO LONG HESSG1£86 4C Fe IE JMP ERRORlE89 A2 06 OKAY LDXIM $06 DIGITS PLUS ONElE8B 86 6F STX COUNTlE8D [6 6E LOOP INC BUFPTRlE8r C6 6r DEC COUNTlE91 F0 12 BEQ COMMAS1E93 A6 6E LDX BurPTRlE95 B5 00 LDAZX $00lE97 C9 20 CMPIM $20 TEST FOR SPACr.SlE99 F0 F2 BEQ LOOP1E9B 20 E5 lE JSR TSTDGT TEST FOR NUMBERlE9E 90 ED BCC LOOP
lEA0 20 D5 IE JSR UPONE MAKE ROOM FOR ONE DIGITlEA3 D0 E8 BNE LOOP rORer.D BRANCHlEA5 A0 00 COMMAS LDYIM $00IEA7 84 69 STY FLAG WE WERE HERElEA9 A6 6E FINDT LDX BUFPTRlEAS B5 00 LDAZX S00 F IN D T ER MI NA TO RlEAD F0 17 8EQ RtS.lEAF C9 20 C t tP I M $ 2 0 SPACE?lE81 D0 04 BNE TESTlE83 E6 6E INC BUFPTRlEB5 D0 ra BNE FINDT FORCEDlEB7 C9 2C TEST CHPIM $2C COMMA?
lEB9 F0 B7 BEQ SRACESlEB8 D0 90 BNE EDITX
IEBD A2 04 COpy LDXI" $04 COpy " BYTESU:SF B5 79 LP LDAZX $79lEe1 95 69 STAZI $69 COpy POI NTERSI[C3 CA DEXiEC4 D0 19 SHE L PlEC6 60 RTS RTS
MICRO 11:43APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 46/52
lEe7 A0 00 U PDATE LDYI M $ 00lEC9 Bl 6A LDAI Y P TRS GET LINK ADLlEca J a8 PHA HOLD ON STAC KEce C8 INY
,lECD B1 6A LD AIY P TRS GET L INK ADHlEer 85 6B STA PTRS &01 S TORE L INK ADHIEDl 68 PLA1ED2 85 6A ST A PTRS STORE L INK ADL1 E D I I 6 0 RTS
lED5 A2 59 UPONE LDXI M B UFF &51 EN D BurFERl ED7 CA LOOPU DEXlED8 B5 00 LDAZX $00 GE T A BYTElEDA 95 01 STAZX $0.1 MOVE UP ONE1EDC E 4 6£ CPX BUFPTRlEDE D 0 F7 BNE LOt)PU1EE0 At; 20 LDAH1 $20 INS ERT SP ACE1£E2 95 00 STAZK $001EE4 60 RTS
lEE5 C9 30 TSTDGT CJ1PHt '0
lEE7 90 03 Bee SET1 EE9 C9 3A CMPIM . . " .•l EEB 60 R TS WITH CARRY CLEARlEEC 38 SET S EC C ARRY SET IF NON-NHB RlEED 60 RTS
•lEEE 18 I NCLIN C LClEEr A5 10 LDA BurF &08lE F1 6 5 1 2 ADC BUFF &0A
1E F3 8 5 10 ST! BU FF&08
1E F5 AS 11 LD A BUFF &0 9lEF7 69 00 AD CIM $00 ADD INTERVALlEF9 85 11 STA BurF &0 9 TO CU RRENT LINElEFS 60 RTS
lE rc 58 ERROR CLI ALLOW KrYP RESS1EFD 4C 59 C3 J MP BERROR BASIC rR ROR PROCESSOR
lFAE ORG $lF AE
lFAE A9 64
lF80 85 101FB2 A9 00
lF84 85 111F86 A2 0AlF88 A5 DE
STRTLN LDAIM $64 DEFAULT 100STA BUF F &08LDAIM $00 H IGH ORDERST! BUFF &09LDXIM $0A INTERVAL 10
LDA CU STOM TEST FOR CUSTOM
MICRO 11:44A PR IL 1 97'1
~
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 47/52
liSA 1 0 0Alise A6 DDliSE AS DBIFC0 85 10liC2 A 5 DC1rC4 8S 11
lrC6 86 12l r c s 6 0ires EA
liED
lFED A 5 6Bl F E F 6 9 0 01 F F I 8 5 CA1 r r 3 6 0
1 r F 4 EA
1rrs 18l F F 6 9 0 0 11ii8 38
irr s 78IFFA f6 DEIFFC 4C 00 lD
BPLLDXLDASTALDASTA
SKIPL STIRTSNOP
$ l F E D
ENTRY
ENTRYAALL
PATCH ORC
SKIPLINTC CUSTOM INTERVALSTARTC CUSTOM STARTBurF &0 8STARTC &01
BUFF '0~Burr &0 A
FINAL MESSAGE $lFCA THROUGH $lFEC·CHECK FOR GOTO( ETC·
Who regularly publishes more info 011
APPLEo, Pf:T,. KIM." SYM., AIM s, and
other 6502 based systems, products and
programs tha n
(kilobaud) IJ~TI••_r"~ ...r ,,_P"
.& IUc :n ra L t a "c :GPcattvc Gontpntlnu
COMBINt:m
the full size magazine devoted to 6502
i nformati on. Now publi shed monthly SI2. 00
per year i n USA.
Now you can gel all of MICRO by buying
"The BEST of MICRO Volume I" [or S7.00
(mctudes shipping) and starting ynur
subsc ripuon with issue In.
PO B ox 3, S. Chelmsford. MA. 01824617/256·3649
that'\
who
LDA PTRS &01
ADeIH $00
STA BASICP &01RTS
NOP
CtcBeeSEeSEIRORZJMP
APRIL 1979 MICRO 11:45
CLEAR FOR STANDARDALL
StT FOR CUSTOMDISABLE KEYS
CUSTOM FLAG IN BIT 7START
CLASSIFIED ADSZI PT A P E l o a d s 8 K B A S I C i n 1 5 s e c o n d s !S l o w e r t h a n a s p e e d i n g d i s c ? S u r e , b u ti t o n l y c o s t s $ 2 2 . 5 0 p l u s $ 1 . 0 0 S &H.$ 3 . 0 0 e x t r a f o r s o f t w a r e o n K I M c a s s e t t e .D e s c r i b e d i n M I C R O #6 . S A S E f o r i n f o .L e w E d w a r d s , 1 4 5 1 H a m i l t o n A v e . , T r e n t o n ,N J 0 8 6 2 9 .
A D V E R T I S E i n M I C R O f o r o n l y $ 1 0 . 0 0 I ! !A c l a s s i f i e d a d s u c h a s t h e o n e a b o v e ,m a y b e r u n i n t h i s n e w C l a s s i f i e d A ds e c t i o n f o r $ 1 0 . 0 0 . A d m a y n o t e x c e e d
s i x l i n e s , a n d o n l y o n e a d p e r p e r s o n ,c o m p a n y , e t c . M u s t r e l a t e t o 6 5 0 2t y p e s t u f f , a n d a d m u s t b e p r e p a i d .Y o u w i l l r e a c h o v e r 6 0 0 0 r e a d e r s ! ! !
T h e T A R G E T f o r u s e r s o f R o c k w e l l ' sA I M 6 5 . F i n d o u t h o w t o u s e t h e p r i n t e r ,k e y b o a r d a n d d i s p l a y . R e v i e w s o fu p c o m i n g A s s e m b l e r a n d B A S I C i n R O M s .S i x b i m o n t h l y i s s u e s f o r $ 5 . 0 0 U S a n dC a n a d a ($ 1 2 . 0 0 e l s e w h e r e ). C o n t a c t :D o n C l e m , R R#2 , S p e n c e r v i l l e , O H 4 5 8 8 7
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 48/52
INSERT ORG $1F00DUPLICATE OF BASIC INSER T ROUTINEEXCEPT FOR EXIT JUMP
fIF00 20 22 C5 JSR $C522 1F55 AS 7C LDAZ $7C
IF03 90 44 BCC INSC IF57 8S A9 STAZ $A9IF0S A0 01 LDYIM $01 IFS9 65 5C ADCZ sselF07 B1 AE LDAIY $AE 1F5B 85 A7 STAZ S A7
IF09 85 72 STAZ $72 1F5D A4 7D LDYZ $ 7DlF0B A5 7C LDAZ $7C 1F5F 84 AA S TYZ S AAIF0D 85 71 STAZ $:1 1F61 90 01 BCC INSDlF0F A5 AF LDAZ $AF 1F6~ CS INY1F11 8S 74 STAZ $74 lF64 84 AS INSD STYZ $A8IF13 AS AE LDAZ $Ar lF66 20 DA C2 JSR $C2DAlF1S CS J N Y 1F69 A5 80 LDAZ $80lF16 Fl AE SBCIY SAE lF6B A_ 81 LDYZ $81IF1S 18 CLC lF6D 85 7C STAZ $7C1F19 65 7C ADCZ $7C 1F6F 84 7D STYZ $7D1F1B S5 7C 5TA1- $7C 1F71 A4 SC LDYZ sse1F1D 85 73 STAZ $73 )F73 88 DEY
. 1F1F A5 7D LDAZ $7D 1F74 B9 06 00 INSE LDAAY $00061F21 69 FF ADCII'!$FF 1F77 91 AE STAIY $AE1F23 85 7D STAZ $7D 1F79 8S DEYlF25 ES AF SBCZ $AF IF7 A 10 F8 BPL INSElF27 AA TAX lF7C 20 67 C5 INSF JSR $C567IF28 38 SEC lF7F A5 7A LDAZ $71.IF29 AS At LDAZ $AE IF8l A4 7B LDYZ $78lF2B ES 7C SBCZ $7C 1F83 85 71 STAZ $71 •F2D A8 TAY lF85 84 72 STYZ $ 721F2E B0 03 BCS INSA 1FS7 18 CLCIF30 E8 INK 1FS6 A0 01 INSG LDYIM $01SF31 C6 74 DECZ $74 IFS! B1 7 1 LDAIY $71lF33 1S INS! C LC lrsc D0 03 BNE INSH
IF3l& 6S 71 ADCZ $71 I F S! : 4 C .3 8 1D Jt1P $lD38IF36 90 03 BCC INSB 1F91 A0 04 INSH LDYIM $041F3! C6 72 DECZ $72 IF93 CS INSI INY1 F3A 18 CLC IF94 lH 71 LDAIY $711F3B B1 71 INSB LDAIY $71 lF96 D0 FB BNE INSIIF3D 91 73 STAIY $73 lF9S CS INY1F3F CS INY 1F99 98 TYAlF40 D0 F9 SNE INSB 1F9! 65 71 ADCZ $71
IF42 Ec 72 INez $72 lF9C AA TAXlF4l& [6 74 INCZ $ 14 1F9D A0 00 LDYIM $00lF46 CA DEX IF9F 91 71 ST~IY $71lF47 D0 F2 B NE INSB iFAl 1 .5 72 LDAZ $7-21·F 49 A'I 101.
INSC L DAH1 $ 0A1FA3 69 00 ADCIM $00
lF4B F0 17 B EQ INSD iFA, CS INYlF4D A5 86 LDAZ $86 IFA6 ' 1 1 1 71 STAIY $71lF4F A4 87 LDYZ $87 iFA8 86 71 STXZ $7.1
IF51 85 82 STAZ S82 IFAA 85 72 STAZ $1.~
lF53 84 83 STYZ $83 lFAC 90 DA BCC INSG
f ,
MICRO 11:46APRIL 1979
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 49/52
LOCATION
HEX DFnqAL VAlUE TO BE POKED
00D8 Low order starting line number (wieght 1)19
OODC High order starting line number (weight 256)20
OODD Increment desired (1-255121
Example: POKF 219,232
POKE 220,3
POKE 22150
This will give a starting line number of 3 x 256 t 232 = 1000, and
following lines will be incremented by 50.
LISTING 2- NONSTANDARD LINE RENUMBER
STATEMENT STATEMENT TOKENOKEN
END 80 FN 11.5FOR 8 1 SPC( A6NEXT 82 THEN A1
DATA 83 NOT 11.8INPUT# 84 STEP A9INPUT 85 + AADIM 86 ABREAD 87 * ACLET 88 / ADGOTO 89 f AERUN 811. AND AFIF 8B OR BORESTORE 8e > B1GOSUB 8D = B2RETURN 8E < B3REM 8F SGN B4STOP 90 INT B5ON 9 1 ABS B6WAIT 92 USR B1LOAD 93 FRE B8SAVE 94 POS B9VERIFY 95 SQR BADEF 96 RND BBPOKE 91 LOG BCPRINT/! 98 EXP BDPRINT 99 COS BECONT 911. SIN BFLIST 9B TAN CO
CLR 9C ATN C 1CMD 9D PEEK C2SYS 9E LEN C3OPEN 9F STR$ C4CLOSE 11.0 VAL C5GET 11.1 ASC C6NEW 11.2 CHR$ C1TAB( 11.3 LEFT$ C8TO 11.4 RIGHT$ C9
MID$ CATABLE 3
TOKENS (sho r t h a n d u s e d i n BASIC t e x t)
ENTERING THE PROGRAM
The hard way to load the program into your PET is to convert my
hex listing into decimal and POKEeach byte into memory. This is,
of course, a challenge to your accuracy and diligence, although it
may take only slightly longer than renumbering by hand. It isonly
a little easier to write a BASIC program which wil l accept the hex
data and convert to decimal. with the hex incorporated in DATA
statements and obtained by the READ statement. With this
alternate, the program can be recorded for future use.
Tomake loading painless (excpet for the wallet). I have arranged
to make tapes available through NAIL', Drawer F, Mobile,Alabama 36601. These tapes load the machine-language program
directly into high memory. Ask for "SYS8181" and send $18.18 By
the way, they also have a dandy PETmonitor called SYS7171for
$2971, which has machine language capabilities, the ability to
co-reside in RAM with BASIC programs, but also has the very
helpful feature of being able to APPEND one BASIC program to
another, lust like the big boys do, with interleaving of l ines. Like
SYSB181, it usesthe BASIC line-inserting routine to do the merging,
just as though vou typed all those new lines on your keyboard. I
used a version of this monitor to develop SYS8181. If there is
sufficient interest out there, I may develop a ROt\-1version of
SYS8181.but vou will have to be a hardware buff to wire it into
your PET
Since PET BASIC was written by the same company who writeAPPLESOFTand issimilar, some APPLEowners may wish to obtain
a disassembled. documented listing of this renumbering program
Ifrom me for $') 00.
'National Artf i r ia: InteJligpncf' Laboratory
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , " .P.S. SOFTWARE HOUSE
FORMERLY PETSHACK
PET"" SCHEMATICSFOR ONLY $24 9S YOU GET24" X 30" schematiC of the CPU board. plus ov ers ized schematics at the Video
Monitor and Tape Recorder, plus complete Parts layout - all accuralely and
pains taking ly drawn to the minutes t detai l
PET'" ROM ROUTINESFOR ONLY $19.95 YOU GET
Complete Disassembly listings of all 7 ROMS, plus identified subrounne entry
points: V ideo Monitor. Keyboard routine, Tape Record and Playback routine. RealT ime C lock . etc. To en ti ce you we are a lso inc lud ing ou r own Mach ine Language
Mon itor prog ram for you r PET using the keyboard and Video display.You can have the Mon itor prog ram on cassene for on ly $9 .95 ext ra
PET to PARALLEL INTERFACE with 5V .8A p ow er s up ply $7495PET 102nd CASSETTE INTERFACE $499S
Send fo r our free SOFTWARE BROCHURE. Dealer inqulfles welcome.
PETTI<EXPANDOR PRINTERPRINTER PRICE WITH PET INTERFACE $525• S m all s ize o f 4 .S "H x 121f/'W x 91Jz"D
• Im pac t p rin t in g - 3 c op ie s
• P rin ts 80 co lum ns w ide
• P rin t C ylin d er - n o t a rn a tn x
• U ses B Y:!" pape r , p res su re o r p in teed
• E as y t o m ain ta in y ou rs elf , o r re tu rn to u s
• R eg ula r P ape r - C oa ted pap er no t reqU Ired
• l ig ht we ig ht . 11.", tn s. w ~h c ov er
• P rin ts 1 () c ha ra cte rs p er s ec on d
• 64 C ha rac te r A SC II C ha racte r S et
• F ull D oc um en ta 1io n In clu de d
This is the ideal. low cost. reliable. self maintainedprinter with which to complete your PETsystem.
P.S. SOFTWARE HOUSE
P.o. Box 966 Mishawaka. IN46544
II Tel: (219) 255-3408 w s . · iP-l".~ltc_~a-.._. . . . . . . . . . . . . . . " . _ " " .
APRIL 1979 MICRO 11:47
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 50/52
caUALITV
APPLE II® SDFTWARE PET@
Wpple FORTH
Pet FORTH
FORTH isa unique threaded language that
m Js ideally suited for systems and applicationsprogramming on a micro-processor system.
The user may have the interactive FO RTHCompiler/Interpreter system runningstand-alone in 4K to 6K bytes of RAM.
( Q Jhe system also offers a built-in incremental
assembler and text editor. Since the FORTH
3·0 ANIMATION A·$24.95 language isvocabulary based, the user may DOMINOES P·$9.95tailor the system to resemble the needs andstructure of any specific application.
@ ]rogramming in FORTH consists of def iningnew words, which draw upon the exist ingvocabulary, and which in turn may be usedto define even more complex applications.
Reverse Pol ish Notation and LI FO stacksare used in the FORTH system to process
m Jrithmetic expressions. Programs written
in FORTH are compact and very fast.APPLE II COMPUTER $34.95
PET 2001 COMPUTER $34.95
AUDIO ENGINEER A·$29.95 STARTREK P·$9.95
~
Apple PIE
PIE (PROGRAMMA IMPROVED EDITOR)is a two-dimensional cursor-based editordesigned specifically for use with memory-mapped and cursor-based CRT's. It is totallydifferent from the usual l ine-based editors,which were originally designed for Teletypes.The keys of the system input keyboard areassigned speci fic PIE Editor funct ion com-
mands. PIE includes the following features:
~
blinking cursor; cursor movement up, down,
STRATO LASER A-$15.95right, left, home, plus tabs; character insert
DEPTH CHARGE P-$9.95and delete, string search forwards and back-wards; page scrol linq: GO TO line number,plus top or bottom of file; line insert anddelete anywhere on screen; append andclear to end of line; move and copy buffer.
~
APPLE" COMPUTER $19.95
All orders include 3% postage and handling.
Apple II is a registered trademark of Apple
Computer, Inc. Pet is a registered trademark
of Commodore International and TRS-8D is
a registered trademark of Radio Shack.
SUPER STARWARS A-$15.95 California residents add 6% sales tax. BATTLESHIP P-$9.95VISA & MASTERCHARGE Accepted.
1 1 I nr . , aROGRAMMAINTERNATIONAL, Inc. a . . . .3400 Wilshire Blvd. Il. c tLos Angeles, CA 90010
C ~ t 4213) 384-0579
384-1116 n O J384-1117 c t . ,
ANALYST A-$19.95 APPLE" LIGHT PEN $34.95 Dealer Inquiries Invited I I I
m
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 51/52
pr gra •1
GRAPHICS PAC Quadruple your PET's graphic resolution. Do not
be stuck with the PET's cumbersome 25X40 1000
point display. With the Graphics Pac you can indi-
vidually control 4000points on screen. It's great for graphing, plotting. and gaming. The
Pac is a set of three programs with full documentation. PLOT places coordinate 0,0 in the
screen's upper left hand corner. Fer more sophisticated applications the Pac includes
GRAPH which plots point 0,0, in the center of the screen allowing you to plot equations in
all four quadrants. As a bonus aHi Res Doodle game is included. All this on a high qual-
ity cassette for $9.95
2ASSEMBLER 2001 is a fun featured assembler ror your PET mioro-
computer that follows the standard 6502 set of ma-
chine language mnemonics. Now you can write
machine code programs. Store your assembled programs. load them. run them. and even
list your programs and various PET subroutines. Unlike other assemblers this is one pro-
gram! You do not have to go through a three tape process to edit and run a program. Of
course to make more space you can trim out the features you donot need. Assembler .2001
allows you to run through the USR of SYS commands. This valuable program is offered at$15.95.
3
BIKE An exciting new simulation that puts you ill
charge of a bicycle manufacturing empire. Juggle
inflation, breakdowns, seasonal sales variations,inventory. workers, prices, machines, and ad campaigns to keep your enterprise in the
black. Bike is dangerously addictive. Once you start a game you will not want to stop. To
allow you to take short rest breaks, Bike lets you store the data from your game on a tape
so you can continue where you left off next time you wish to play. Worth a million in fun,
we'll offer BIKE at $9.95.
PINBALL
4Dynamic usage of the PET's graphics features
when combined with the fun of the number 1arcadegame equals an action packed video spectacle for
your computer, Bumpers, chutes, flippers, free balls. gates, a jackpot. and a little luckguarantee a great game for all. $9.95.
5SUPER DOODLE Give your PET a w,?rkout. This program really
puts the PET's grepbics to work. Super Doodle lets
you use the screen of your PET like a sketch pad.Move a cursor in eight directions leaving a traiJ of any of the 256 charactrs the PET can
produce. New features include an erase key that automatically remembers your last five
moves, a return to center key, and clear control. Why waste any more paper, buy SuperDoodle for only $9.95.
6DRIVING ACE Non stop excitement with a fast moving. high
paced version of your favorite video arcade racing
. games. Shift up! Shift Down!' Watch your gas. andbe careful on those hairpin turns. This dynamite tape has the two most common arcade
racing games specially adapted to run on your PET computer. Driving Ace s.:imulates an
endless road packed with tight turns and gentle. but teasing. twists. Starting with fifty
gallons of gas, how far can you go with a minimum of accidents? Grand Prix places you
and your car on a crowded racing track. Race the clock and be careful steering around thefast but packed Grand Prix track. $9.95
Dealer Rates On Request
8/3/2019 Micro 6502 Journal April 1979
http://slidepdf.com/reader/full/micro-6502-journal-april-1979 52/52
microsystems
P.O. Box 687 Ames, Iowa 5001024 S.E. 16th Street
5 1 5 / 2 3 2 - 8 1 8 7
DB/65
A complete hardware/software debug system for the Rockwell, Synertek, MOS/T,echnology 6 5 0 0
microprocessor fami'ly.
Features
* Prom resident debug monitor
* Software history of instruction addresses* ' 2K ram standard with sockets for additional
'6 K if required
* ' Standard in-circuit emulator
* Hardware breakpoints
* Single step mode
* ' Eight software breakpoints
* ' Real-time software breakpoints
if RS 232C or current loop terminals* Scope sync output
Recommended