micro 6502 journal april 1979

52
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

Upload: cubemanpdx

Post on 06-Apr-2018

237 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Micro 6502 Journal April 1979

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

Page 2: Micro 6502 Journal April 1979

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

Page 3: Micro 6502 Journal April 1979

8/3/2019 Micro 6502 Journal April 1979

http://slidepdf.com/reader/full/micro-6502-journal-april-1979 3/52

Page 4: Micro 6502 Journal April 1979

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

-

-~~-- -----

Page 5: Micro 6502 Journal April 1979

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 .

Page 6: Micro 6502 Journal April 1979

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

Page 7: Micro 6502 Journal April 1979

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

Page 8: Micro 6502 Journal April 1979

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

- .--

Page 9: Micro 6502 Journal April 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

Page 10: Micro 6502 Journal April 1979

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

Page 11: Micro 6502 Journal April 1979

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

Page 12: Micro 6502 Journal April 1979

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

Page 13: Micro 6502 Journal 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

Page 14: Micro 6502 Journal April 1979

8/3/2019 Micro 6502 Journal April 1979

http://slidepdf.com/reader/full/micro-6502-journal-april-1979 14/52

Page 15: Micro 6502 Journal April 1979

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

Page 16: Micro 6502 Journal April 1979

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

Page 17: Micro 6502 Journal 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

Page 18: Micro 6502 Journal April 1979

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

Page 19: Micro 6502 Journal 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

Page 20: Micro 6502 Journal April 1979

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

Page 21: Micro 6502 Journal 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

Page 22: Micro 6502 Journal April 1979

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

Page 23: Micro 6502 Journal April 1979

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

Page 24: Micro 6502 Journal April 1979

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 '

Page 25: Micro 6502 Journal April 1979

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

Page 26: Micro 6502 Journal April 1979

8/3/2019 Micro 6502 Journal April 1979

http://slidepdf.com/reader/full/micro-6502-journal-april-1979 26/52

Page 27: Micro 6502 Journal April 1979

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

Page 28: Micro 6502 Journal April 1979

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

Page 29: Micro 6502 Journal 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

Page 30: Micro 6502 Journal April 1979

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 _

Page 31: Micro 6502 Journal April 1979

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

Page 32: Micro 6502 Journal April 1979

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

Page 33: Micro 6502 Journal 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

Page 34: Micro 6502 Journal April 1979

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

Page 35: Micro 6502 Journal 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

Page 36: Micro 6502 Journal April 1979

8/3/2019 Micro 6502 Journal April 1979

http://slidepdf.com/reader/full/micro-6502-journal-april-1979 36/52

Page 37: Micro 6502 Journal April 1979

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.

Page 38: Micro 6502 Journal April 1979

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

Page 39: Micro 6502 Journal 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

Page 40: Micro 6502 Journal April 1979

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

. . . . . . . .

Page 41: Micro 6502 Journal 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

Page 42: Micro 6502 Journal April 1979

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

Page 43: Micro 6502 Journal April 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

Page 44: Micro 6502 Journal April 1979

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

Page 45: Micro 6502 Journal 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

Page 46: Micro 6502 Journal April 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

~

Page 47: Micro 6502 Journal April 1979

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

Page 48: Micro 6502 Journal April 1979

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

Page 49: Micro 6502 Journal April 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

Page 50: Micro 6502 Journal April 1979

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

Page 51: Micro 6502 Journal April 1979

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

Page 52: Micro 6502 Journal April 1979

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