the transactor v4 01
TRANSCRIPT
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 1/68
mf l U~ f U D f H T H u n : 1 2 G J
I l iP - R I T T R I ': 1 U ~ f l l P - [ ] [ j F U ~ r : 1
~ L I I } t I ~ L ~ f : i
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 2/68
FromTh _Edftor's D .k (7 )
~h,'t'III'jl l ' t l l ' I I P il l " ~ W ' " ' 'tlU 1 " , 1 1 1 IIl'hlll V u l l lm ! I 1 1 i . . r u I m n r k s u 1 1 (, \ \ cI~l1ltli 'r r n 1 1 1 1 . l I f l · II I '1 h l I r l U l ~ ; j t l ( I J 1 1 1 , ' 1 1IIIil H I
, 1 1 1 1 1 1 1 1 1 : . - U w :lIM L .,m'llIlllh,' ! In.1 ~\lIh ,I ' Y I W " . · ' hUt'tlot, t oJlIlnt'tNn I1l1d f \d\ ' 111~" 'I . l~
1 j , 1 t 'k I I I I \ ] ld l u l t il l! ! Vell!, l'rlllllllifHilm (.IIHUI,1 lilt InIHlrud p l l b l l ~ h '1 , Ih'l'III{.tl h i 1IIII>HIlI'~IIIIL'ill 1'1'111M1tu r il l h W r m r III
nil' nJ l l 1 l 1 \ t j d , I I U ~ 1 1 1 1 1 ~ . v _ j I l { · 1 " 1 1 l u l l II I , ; lIhfl~Jhll l l1n 0 1 1 1 ~ I I I ' i r W : i , IW u I !Itlll! i , , ~ i l l ' " \ \ 1 l ' r ' L 1"1'I!U'lHhll'lli ,m d n il Inlil l II I
P W ! 4 f I I U i W I " Ill! Ildift'U lut 1 1 ! r . 1 l 1 1 l 1 1nlllplll II-u l ' I I I I ' 1 1 1 l 1 l l 1 T i l l ' ' f 1 o " 1 . 1 1 , ~ h l l w H u l d " , u ! r l ~ r Ihl.!t!lml·llIl~ ,j M ' lJWNul O l i n f flrl~III~'1
P I ! I ' publillUlllllli, nphhlt~11UII "~I I I I ' ~ h ~II · MII~!I'·.
' lhllrl ~I ,llh'l lilt, 1 . 1 ' 0 1 "hll t~'lllIl' IH I" . . Idlllll'd~ 1111'Ullh n",I 1 ~ · I I I · r . . . ,Im ~III r l ' lm l l l t , l In T I n ' . \ ' n l l l ~ I ' 1 1 1 1 1 1 1 1 1 ~ nIh II I III
dililt,tIIIIDIJI!l'l! W I hll l f l I l l I 1 .1 11\· 11~'~I'IIl II 1 1 " " " ' ' ' 1 1 1 1 1 > 1 1 9 C 1 1 1 , 1 i 1 I 1 1 ~ I h ' l l I'I n Im l v 1 1 1 1 1u' t~ '1 f I'll' 1'11111~11I 1m W.l~ ,d 1.11 ~I'l' rill II h I
l'lnllf11~11'~ i 1 l t l l ' JI'llll"I,hJlJalltlll~u.hli i lL d~ I~ 1 1 • + t I M j l 1 i 'I'll ! ' r .u l l1dt . :hl l w l l h l U lI I I JU ,,~ ll1 ly W l lh K ln m l ln h~Ilri'''llIllullII'Wl'II,l'lIl1l'rrlll ~~'IPi Wf"I,'ln Ihl' I ' I H h l PI1~hIIII . l lh ,1I til",', II, m} ' h ln wllwh 1 I ~ , h , ! o o 1\'I'ft h '' II Ij .! 1 l 1 I1 1 ' d II I 11I"l'lllIllL rm~Hl'lUllIF ' r l l l l k Ilailik 1 1 ' 1 ~ ' , l u l u l l . l I I "'linn f1hjlllll~III'rh I'I'MIJ]W,\~1 1 1 Ih~nlill" l'IrI.
" I - . ,trl, IH I.\! ' ~ lin Ilull lll ltl fll'Uil! Illk I l i l A un 'l'lu·lrnlltilll'lof ,I!; 1 1 11 ~ 11 1I t ' f 1 I ~ n t l l nl plllJlh 1 1 1 1 1 1 1 1 ' "
"~lIffl 1IIIIIIhn IHilt', Wlilk n l H I I I 1 ~ 1 1 I1~ I1h.1· [1wlJllld pili IH l HI li lt I J l lW t ' r L , l i l l p uu l hlt ! ! i<I ' I'd IW lli ,\ ": lmIPHli II
"Wdl , Vil l i ~'!'j : .I l lt I IUl ,,'II W I' mh' t l i l l p l'rm ll'l1th m tu JU ! r'lllllllliKhul
I'ht' ' 1 ' 1 1 1 1 1 n n m W r l ~ IIl1vl'11l1nllll
I ' ~ ~ , I I ~ l ' h i I t J k t ' l I l 1 " ~IIIJ ' 1 I 1 1 1 1 1 il \ 1 0 wl~II'II'llIf' h , w k l r ,111"oIt ' lof ~ l I h ' : . t ' T I I I H l I ~ I h . , 1 h n \ · t ifHwllrilml wlll!WIII"l 1'\'1' Iwl'lI !l1'VI 1 ' 1 1 1
, , 1 , 1 1 1 1 1 1 . 1 1 IIoUIlI~~ 1IIIIn IIlrlllJ~h IIIH "\I~INl'ril1lhmI ll'I Io HI I'II '" ~ ,lI ld wr aW , 'Ijllll' yllll~ Ilppml,. w l l h l l l l l Wllh'll ,llt'll' Wlllllr! Ill'n u 'frUUIHlrlltr, 1 1 1 1 1 1 ~ n l l k ' l ' h i I . I I . h IltlGU'II!111HfolllH I I \ ' 1 1 1 '" , rflHlfiiH lUI 1 ., . 1 1 1 1 '1 '1 N I ' \V 11.II 'l~n'f ''l1h II 1 1 1 A l l l i 1 1 1 ) i l ' l H V L lu t ~ 1 1 I ' r '
11l11Rllthw . I I H 1 1 1 1 ~ h l l l lU h WI! V.UIlI l l r J l lH lu 1mYUI l l ' i 1 1 l 1 - J : 1 1 1 1 1 ( 1 ' 1 1 1 1 1 ~Ifld 1 ' 1 1 1 1 1 1 ) 1 1 1 II 1 f.j ll '! tU II iC " Wl'llul hI! II { Iillil ) 1 1 1 1 ' 1 1 fll uJ 'I'h~'T'rllrl'iiltlllr i l l l f1lnm llV t , l'IlIL'II'lhllll~.m u l r1 \ l Ii ll ll lJ h l 1 1 11 1 11 .' 11 0\,(lII~ f'tllllPllf(', jll\!l'NIII111UI
. l , I I k l · flU)' IIlllH1lnm , 'no ( ~ l ' p ~ n t 1 'III "I'VltUIll ff l'JI,(II.lnnt It II O l J H I t I t L l ~ ' t · t l ~ ~ l n S : 11 1 1 1 I 1 1 ' 1 1 1I w mil'll mng.lzlllI 'lI , ow ~IUUI'iOJ1 • 'II'~IIIII ' I h , · 111I!.hlt'I'I~' f i r . ~ · !lm q 1 1~ ln l1 ~, p l ' ! ~ p l l , l r , i l " ,md .n t'l'ij~t''fh'". ( 1lilKIIIII!lIv I fW,Ul ' 1 . 11 I l l I ' j l l I S ! 1 l u l l tI \'UIIIIJ,'ll'jU! II1/tYu k .
W l ll li l U I I I~ . ld ll lj lU o u l V I ' I I ! , 1 1 1 1 { um l ! " Iht,.,I· dl"lIl11li1illlt'I'II, l' tl lUw I jJ f H 1 1 1 l 1 1 1 1 1 1 r l J : l h l l i l lW ~hlll hll~ will hi nL! W i lY ~,'hlll'lIIl"H'1
1 1 1 1 1 1 1 1 1 1 1 1' 1IIIIyth11~lnll l l l !l l t I Jl I I d . .. .· r l h d l 1 ~ IIIi fllW plmhll I Y t l U II I ' l t - l [ ' ('MlJ m l ! 1 1 1 1 T l u ' ' l' f. 1 I 1 1 l1 1 l '1 I .. I r , h l l i li u IHIlrL'!ln Ihlm 1111)'
()lhf~1 1 1 I I ~ l l 7 . 1 1 1 . 1 'rill! nUN I ~nrnplill I IIIIIU~II\ tlPt' lnf\ 1 1 1 1 ,, ' I H ll ' 1 1 1 ' 1 1 1 1 Il'W 1 1 1 1 1 1 1 . 1IIII1r~t'l'II'lllly ~ 1 1 ' l l'IIII!fIHIY I I rm l i l r l l u - I I I
r rW I I In o , n p p l 1 1 '1 !I Ihl ' [ ' 1 (11J [ I '> I I f I' I I I uti\' Um. ( lu (J .l ll ~ Itl'IIlI.ll.ll tm! tall l t '" t i l l rnlr-HK'Ompu'lcr mu r k ' : ' 1
I Wt lh 'o llH l \ 11 11 1(IJlUlllllllt~.liI\ t l u r ~ l l ) h ' 1 1 1 III II Iw(..mYCIIII 1 I. · d I 1 o l I " l t 1 ! l 1 1 1 I 'k l l 'Y
In 1l1lptOWI1h'II1 'it II 1 1 1 ' 1 ! 1 l 1 1 H I u l l 1 1 1 1 d lit IWlkt, III~II"'}LI.d,
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 3/68
H I J 0 0 ' I n ·istiug" L ud 2'
N WK ,t n d N w Prn JlII t o ; ~
'B i l s ' l u ri P ' i .f S H
'11:-t u rdl'n B ot k o r T ri k s 1 ~
Till M N "( IIJ II 1
I lsk Un- ss 'nlhl 'r 17t v rs I I Stril1;~J hill ~:l
'ill I( h , in T rn i r 2 '
T ranslatlon A rrays 27
n n 1 1 1 ~ II : 1
• 'l ip rPI~ nnlunl Pro ram :i,2
PL , • UI rl I T r i c I , , r rl ._\
Till .~.ld I' 1)' Vl
V I ' I~ S-2:i,2 {'f
T h : r mmodnr (i4 :
A Pre l imlnu ry N o ·v~..w
Ar h it tur M ,n p
M m or M'lJ
I rot' H~'( I I / ( I }rt III-,/2 chill l t III' ~
" n d 'IlS' ·d M , - r u n r M Ip
rL lsin ~ S cI iO i
r t l s h R Iud
t Issu
A v
A J
N ,
f i 2
1 , 1 1 1 1 1 1
, , " . 1 1 1 1 I I 1 1 1 1 1 1 , 1 1 1
I, ,1I1[lrlill .Rllllnl1l
1 . 1 1 H ~ , 1 h 1 1 . 1 1 1 1 1 1IIhlI IW'IIlh~Hjlllhm (1111I1d I IIir'Ll'"
II 1 \ Ifi II,1 1 " " ' , 1 " Iflll
N '11,11 [u ~I'''II', rm u 1' . 1 1 1 1 1 1 . "
1I,'k I ~1I1
I'nllhu'tilillItUhl\ I"IIIII~ I~II
\ 1 1 ' 1 1 1 1 I"~I ! I I I h 'l I I ~ ~ I " .
\ lit If"illlltll' l 'h ~ lI h I 'r , II1 1 1 1 1 1 1 1 1 1 1 , ' h , " t
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 4/68
Program Listings in T e Transactor
prInt'
AU programs listed in T he T ransactor w ill appear as l!lff \\fould UII your screen in Upper/l .o ,wt"1 :a~ mode , Manr progr i l lns
wl l l e on ta in r e\ 'L " I'SC ideo h ara cte rs lhal represent cursor mov em e nt s; c o lo u r !'. odunctlon k e s , T he wil l also b shown
~ xrll. : lIy · Ih <> 'w o uld ap ea r o n your' n but t hey ' r e lis ted h ere fo r re feren ce ( Ed ito r s ' o le : S om e c hara cte rs c ou ld 1 10'lyp I il l lime lor Ihi II. . Th~ywill appear 0 11 this pug next isue)
( ) J. ;tn siOl lt ll ly prog.tdm<; w i l l uu i ta rn lint: t h a t slluw ( tJl1Nl"'CtJ' tiv~ spaces. One i l I'lit number o f sp aees you i n s e r t " , > ,1 1 11101e
c rltle al to c urre ri u p ' r a l iol ! o f t h o • p rogram ~ hen i t i . the r equ i r ed numb 'lor spac will be sho w n . F or ex am p le:
I l iO h righ t R - w u ld ~ e show n as - pr in t" [ 5 1 1 ) 1 ' 1 1 : I O } nu s h r ig h t
D O \1 / n -
Up
Righ t
Left - [UI]
R V S
RVS 0 r ,
lnsert
Delete
Clear ern-
Hom e
ST p
For VIC 164
B lack -
W h ite -
Red
Cyan ~ [C a]
Pu rp le - [P u r]
Green -
Bl ue
Yellow - [ Y e 1 1
Oral1gp
Brov n
L igh l Red
G rey I
Gr y 2
l igh,1 G reen - .
Lighl B lue -
Grey 3 - [Gr3 )
.unCtiOIl KeJ's, C/64
F] -
F2 -
F3 -
F4 -
F5 -
F6~
F7 -
FS-
2 S.p••mberlOeiober '982
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 5/68
News and New Products
{)(J au hOI!(! a new produu or scmic ? Just send a l! 'h e
aela il: ) 10 1 1 . . ' : 0andu: 'f! 'II see Ilia' il~iublished tn tnu s e c / I o n of
,he 1If!}.11h1Il.'iQa'or Ert
tiUldardized Edu lUona) ftware
O f cours m lOury size will s ti ll r es tr ic t th e l ise nf lauger
p rog ram :., b! .u m ost m ach ines in C anadian schoo ls h ave
: i2 K , 8 0. c u i IIr u n machines " '111require IIscreen modf f ication
P I gram thai converts t 4n otnrnn output. Tid" wil l havailable on a ut i l i l i disk along w ith cop ies o f li t • "over-
h ead" rno du l _ u sed in th e standardi7.i 'l l ion p r o ce s s 0111 r
This summer, i: lo oun30 B oard s o f Ed . have been work ing on
it c ollect io n u r u ver m o n prograrus ill all at tempt to stand-
ardize educat ional so hware , O n co mp lch on o f 'hi mam-
moth [a sk , a ll o l l he sp p ro gram s \ i l l ~ ark on IrruallyevEryCommodor r n a h ine w ilh Ih exc 'p lion of th e early BASIC
1.0 PETs, the VIC-20, and 'the new 'P' and'S' serie
eomputer s , B ASIC 1.0 w as exc lu lll? d Io r u hvio us rea so ns , I h
V lC -20 du e to lts 22' co lum n screen size. and th e 'P ' arnl "B '
series because o f n lOWm t ma l a re h ne ct u re .
Each p ro gram has been fitted w ilh abo ut 6K o f "overhead"
subrou t ines P re-p ro gram c od e w ill tes t vh at m ach ine th e
. rogram r., b (liln g ru n o n . T h a i mean s each P ro M I': m can b
lo aded in to ellh r th e 20 0 1 (B AS IC 2.0 ) , 40 32 .80 32. 6 .
• u perP •T ~ II CAM mod ~,Of even the n w C ommed o re 64 ,
an d w ill run w ilho ut modil1callon Standard kecyboo rd i npu tand screen fo rm aU ing ro utines h a ...e also been inclu ded 10
gr lt@ the soflwiJr~ mor unuerm appe rilf teo
u tllttle s w ill also be inc lu ded to mak ' p ro grammin g lire
eas ier .
The ( 'O m p l e l '£ ' library hould 'be il\'ailable fram school
bo ards a cro ss C ana da by O ctober 1 I J ·a .r ller F or s ln vo u
litel a di keUe, abou t 2U programs. and it •~anagcf fileccntalnm g d ;!Iails o f th programs. A ma~tl'l ca l , J iogu ' disk
can al 0 be obtained ror descrip tio ns on th e e nu re c nlle c-
l ion, iii'estimated 50 In70 d is k e tt es !
C om modore w ill be dis tr ibu ti r18 th e diskcH ~ lolh if d '£ .1 1-
ers sem 'lime around Nov I 1 1 b r 1sl. but no procedure
details h ave been released. POSSlbl t Ihe,,'11 11j fr{1{! fo r
s ch o o ls s u p p ly in g their own d is k et te s?
Three wComm do 1010 ources
S TR IC T LY COMMODO J{F . is a h i-rn o n thiy , s nhw ere-o -
r le ru ed I JlJ bli ca llo n I ha l i s Em l i l ' f ' l y ..Jf'\! red In V I -20 , PET ,
C8M. and SUperPET OWl! 'rs. Pro uct r ' j ' \\ , Iwgf lun-
IIUUS 'hillS, and other lactual mal nal ,I S em ' ·red. "early
su bscr ip t io ns o re ~20 ~H C il II sd a , S I US. dell lars (o r slill
s ide subscribers , and S 25 U S. do lla rs in d U other co uumes .
SamrJI lssu 1I ar 2 i f ! Ca ad u an d t i l • U .5 ., ~~else\ he .
WllI'lo;
T he T m nlluler ______________ ....;;;;. ~s. tembell'lOdober 1982
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 6/68
S tr ic il C om modore lnc,
S lJi bs cn pli n D ep t.
0 1 7 Oil h w o o c l Plac N W .
CLllgary, ALbcrtHt
T3H IEII
trktly Comm odo r lnc , i ls o p la nn in g a ne th '1 ' publ ica-
IIUIl. S UP ER 6,1 will cover m ater ial on th e new CommodoreIV J nd lAX exc lus i t!ly R a L . ' 15 U S. dollar in anada
and th e U .S .. 20 US e l swhere , Samples $4 C anada and
U.s.7 $5 Fo r other : o un trl . S .C In c asks I l tal all che LI
arid InfO'S he 111U .. d ollars o nly.
Editor ' o te : So f < 1 f l've only seen o l u rne 1 /1 ss uE ' 1 01
STRICTLY COMMOD RE. It carne o n 1/2 by 1.I 's folded
n r l s lap led 2 1 1 I he C [ l I r e fo r 36. 5 112 b 1/2 in ch p ag es
T he p ro gram w ere d ocum en ted n icely with d . r i p t ion o f
iml\Ol1anl v al ia bles a nd c on ve rs io n s F or o th er mach ines .
hQ\ ver, III il repro luetion qUelIlis 'an only 81 ueu 1 '.
Mos l ol the m ag is geared lo r beail1ners, w hich the openlyadllut bu t their l rueat ton are adrn rabl w -ilh g ood g row th
potentlal,
Subsc r i p t i on s , 1 0 t il e eom bm d m ag azine O llt! 520 US. o r S l5
CD . in erth America fo r 6 I i-monthly Isues. Ove rseas
5 u b s c rr p 'I I Q I l .S a r e $ -1 ,5US . Ea ch i s s l l J e vIm b e protessicnallv
pr in ted t nd secu rel sh iP I' d In n- e lnp via fi r I ' lass
mail.
PET "APER and MidnigJlt M get
T he P A:P ER (o rigin ally T he PET PAPER) , nne o r the nldeslin d I'l nden t pu'blica lio n s SUPP( )if11 ng Commodo re cern -
pu ter s I m erg ing ,yU h ano th er imle endem r onree to
Commodore users, the Midnight SoF1wilr Gaz 'It ,bt'gin-
nmg wi t h lhe DelobN, 19 .2 ISSlIe.
To eel brate the m rger, a contest is unden ...a y [0 Tenarlle
rhe merged magazInes. The p rSOI1 suggesling the best
name \ ill r xelve il h"e VIC-20 coUrl,t!5y o r Cornpu l rCuunlry ofSpring'leld. IL Judg ing will be by the editors, and
In ease or II ,by the read rs of Ihe combined magazine.
Emnes must b e r ec ei ve d by 0 em b r lS I a' l th e a ddr es s
hclow.
During the past two years. Midnile has become 3 widely
re sp ec te d rl! ,'iO I1 TCe in 4 1 s la le s il l l t '1 II coantrles. Speciaflz-
illg IrI hr ief illdep nd rH r vle . of pr duc t s for C o m m o - -
d ore c om p u te rs . II h ~ received p ra ise from near ly everymagazi ne suppo r 1in s CBM prlxlu I . [ urreni i..ue i..d
30 0 pag H I book , w ith advance commiuments rO J
1 n , o o o copies.
T h e PAPER h as tr adili ol1 la lly b ee n a s trong sou rce o f i l . ' r t l l l : 1 1 $
ami u n cria ls ro r us rs o r BM quipmenl with exc lIeIlt
s er ies o n such top ics es fi r Iaeps il l maelnn lang uag e as
w~1Ias ex tended If -vi w s o f Im po rtan t p ro ducts.
nd subscriptions 10:
Midn i t~ So l twa r e Gazelle
635 M ap le
M . Zion.IL
62549
2178615320
Commander
T h e [irsl issue of C ommander is slaLm f or D e ce rn h F hI.
1 82 LikeTh Transactor, It will be devoted 10 i u I o rmauon
on Commodore prcduns only. C om m ilnder w ill be pub-lis hed m on th ly by M iera S 's tem Sp e ia lties , T a rna .
Washington
S ubsc r ip tio ns a re $22 in Ih L J .A. , .16 in . Canada and
Mex lCO , 1 I t 1 l o thercourar ies $ 3 7 s u r £a cE ' o r $54 ,i r Inai l ( f
assum all lig ures , a re in U S dollars). S end all o m to .
C omm and r
P .D B ox 98827
Tat.tllml, \V'ashingltm
9 ·19
205 565 IiSIS
O r call Loll lree in th e U,S ., (exCepl WA ' , III, AK )
1-8 ( l {) - l126-18 .30 \ ;, ~I L1you r V isa, Mas lc l rd o r Americ an
Expr 58 n um ber. S ubscrib befo re Ihe ]llelllicl issue an d
r ec ei ve a $4 discount .
Editor s No te. Sin ce a C ommander has nO I yet been re-
leased , I an t g i e you an c p imon , H ow ever. II w ha t lhei r
prcrnotlcnal mal rial avs is I ru , il "O U nds Ilk ' a very
professional eUor t t ha t shou ld b . cons id red.
mmodore cnnputing
This one is relalh1ely new nd worth m nlioning. Without
question, lt's the best Irom Ih U K , C mmodore Cornput-
in g w as, or ig inally C ommo dore U .K :s. club nl!W!rleNer
(k now n to som e as" PUC ") . Com mod r so ld p ublica -
t ion r ig h ts to ick H amp shire p ubllcarlo ns, fin d P ete
G eT ra rd, a ls o < .l Commodore vel, is p rC KIu lu g !'.O m s U J r
work I've seen tw o exf"..t'llimi j <suesso Ja r
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 7/68
S ubs cr ip tio n r ates to r 1 0 issues a re 1 2.5 British pound s in
th e U .K . and 15 p ou nds overseas. Y ou 'll h ave to 'Wo rk t .ha t
out in Canadien lO r U .S . do l e rs befo re sending . A ir mail
ra te s a re a vaUilib le o n re quest, W rite o r su bs crib e u sin g:
Commodore Computi·mtg
S ubs crip tio n M a na ger
M J \! G S U BOa!di .eld H0l!15e
P err ym o um R o ad
Hayw .a r fl s He at h
Sussex RH r s 3DH
T he o nly p ubbcnlo n I k no w o f devo ted solely to th e VIC-20 .
I im ag in e as C omm od or e: ·b ri ng s 0 t new h o me en tr ies
'th ey 'll r over th es e to o. V I C C om p ,u tin g is not r ela ted to (h e
a bo v e mentio n edp u b I i C ' a 1 i o l 1 , but I n e l i e v e (hey a r t " dose!) 'essociatedwitlt {il not awned by} Microcompu t e r Pr in t tou t , a
mo r e g e ne ra l computing labloid .
.A nnu al iu becr ip tlc ns 6 p ou nds in th e U .K .. 9 in . Euro p e a nd
16 overseas . O nce ag ain you 'll 'h ave 1 0 re -c alc ula te fo rCanad ian i',Iild U .S . d o l. la rs . Their address :
VIC Compu ti ng
39-41 o r lll R oad
London , E n , g l a . l 1 d
N 7 . 9 D : I ?
Toront:o Typesetter C,oDllIeds To PETICBMs
A ltie T yp esett ing o f T oronto h ave boon in th e typ esett ing
business since U973. O ver th e y ears , co -fo under N ate R ed·
men has been ex p er imem i ng w ith his Q uad ex 500' Iypese·
t ln g s ys te m a mi s evera l mic r o compu t e r s i l i ! c 1 1 1 1 d ] n g Appl ,e ,
Rad io Sha ck ; a nd jusl:r.ecen:tly, Commodo re . Data gen ere ie d
'by llie 'computer C ' i I I f I be sel1~dir ec tly io r,o th e Q u ade.x !'ro n!
en d s ys tem , P ro m t h e r e i f's s en t to t h e r y p es et rl ng mach ine ,
R es ult: th e infinite q ua lity n n.e printer!
T he conneetlon I:> iI. s tan dard R S --232 lin e al. 96010-baUd.'U sing a Super PET w ith R aymond L i' R S-232 erm lnal
p ro gra m, se qu en tia l file s g en era te d by WordPm fo r e ve ry
a rtic le y ou s ee' in T l! te T ra ns ac tc r we r e transfered to th etypesel ter .
E ven p ro gra m istings ca n be typeset . ProgJams ar e s im p ly
LiSTed to disk ami sent like an)' ether SEQ lile, Cursor
ICOIU,rol. charac ter s can aliso be IY pESel, bu t onlyas th ey
ap pear in Up per/L ow er ease mo de, T h e ma jo r advan tage .
h oweve:rr. is th e p o ,ss:ib ilily o f keyboarding error is el imi-nated,
Once ill the editor, a spell checking programwith over
2 .0 0 ,0 0 0 w or ds c hec ks YIJIU' tex t in seconds.
W ith aU ,of the inh er ent caJp ab.ililies . p lu s so me cu stomptogrartLs wri t ten b y M r. Redmol1llof th e Quadex, Allie
o lfer s ale."t l p rocess ing service. th ai's unparal leled by
"ol l - the-I ine" typese.ttin,g eq u ip m en t. If t he re 's en Q u g h de -
m and, :a te may ,con_sidel ' instal l ing a m odem so th ar lext
can be ' Sen! remote ly .
F or m or e in fo rm atio n c on ta ct:
N at e R edmo n
Au ic TypeseUiinS lid.
5453 YOf lge·Stre~' !
W i li lowda le , On t a r io4 '1 6 2 2l 84 95
Leading Edge In t r oduce s Low ..Cost 12" M.on: i t o r • .
T h e new es~ addit ion IU th e Leading Edge P ro du c ts ' [ i,n e 0 :1
BM C mon ito rs is U le BM-12EN; a hi-res .. n o n -g l. are , g re enscreen 12~model in high demand for use by cenatn market
seg ments s uch as p ro fess io na l, edu catio nal and specialized
sma ll b u s in e ss e s,
A 20 M B z bandw hh g ilr 'es [ be .BM-12EN a sh arp er , m ore
p re ci se i m ag e, a nd th e n o n- gla re s cr ee n r ed uc es eye s t ra lnsubsrant tal ly over prolonged: p e ri o ds . .The I.J ni l comes w ith aone yea! repair/replacement warrant)' al a . dealer costol
$-99.0 cus,
L eading : l~ dg e is th e ex c lu sive U .S . distribulm 0:1 the
BML12EN, asw ell as the "M ean G reen " BM-12AU, an d tho
co lo r eo rn p osn e BM l-1 400CL . A ll monitors a re c or np et i-
lively p ric ed a nd dea ler in qu ir ies a re w elc om e, C on ta ct
Leading: Edge Products
2 .2 5T u r n pi ke S tr ee t
C anto n, M A .02021
Tol l hee : I 8 00 :34 3 6 83 3
In M A & Can. : 16178288150Telex !95] - 624
O n A ug ust 1 '1 ).1.'982. :l ea d. in g Edge announced a one year;
en d -u ser p artse nd lab or warranty f o r thei r c omp le te l ine o fC . lI oh P row r it er s, F - IO Starwr i ter s and P rir um a sle rs , C o n-
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 8/68
l[,I.'<I!.lIJ~~~lJ!ilc jJrudll-t'l:; ls !hi?l.::Ir8!::,i\{ rtld.Ek'l'l:t'r ,i Illiuo;':DU[,.put(!rIUrid~~.-[:!'in Ih~ 1,.5 ..e!1~lJilJ~'illg ~w(.'r J.~o]p";~)plt' in W
......W~ hal!ll::;L'Si ;:.n::r,w.!; ttl!!!' c · r : . l J n l l 1 :
V J C nWli:!e:~n(l~ h ; . '\ 1 < ." { ' . I i! : ) . . . . ~lt:l~~:; ttl I I ! : : .E . ~ . t!l!!!'lfiphH 1 : 1 1 : : ; .n f l i l :
~(! rl'\" inl. : ludll ig C:om~~ILoi!ll.trc:, H !1i \ 'I iE'!:t~P!' ldot i 'l l rd.~IHJ ~.I I It { ·~
U i l : : :E dF.Viffl . Ci l ' lo 'n fl ! ' i will r i r - d l h . .. ..\ :'IC lV -lIN K rr:~ lT I!h i" a~ io O l
l l In o F t H r . 3 ( : L i 1 ! , + t L'tInUru~le·rbr ~ m h Ilmt!> i l l : t ; . [1~:f.f..~il:Q)soo~
and ~iJ ) f .I :' rru !TI an iRl ) ·~ef$, .
JusJi p;!c"l?nn~, V'-LINK 1 1 . 1 ' [ · ( ; ' " , 1 ; , ' CQIIIHlO!Jl:.ln:· G~ W~!i per,;e;' t~,
D u e - ~IUUlle:'lophi~l!';iJtt'd l1it1llJr....m lhe-(~·1.rtlil(vni~ t~mUd l
t id i r i: ! ·r ~ h . ~ 1 i I ifs . r . r .. .o f ' Ii l' = - = ' " '· ~ r ('I ill ' c u n fl"..Y.:IU!'"!iI~k,'S£ ' \ i · . J ; > t y t t ! in R !
0 1 ' 1 o ne ~id'L:~~:J ! . :<lmiid! i! f! : ; . l l 1 t : mn!ll". "rr. ( fiji « h . .. .tOI I IC~ i!lil
IEE[ f'i!ir;.1-Mse ' t . : U l l n O C n U ! . III b o L ' l : W C W i : o , . . < J " 1 1 < . ROM ~ lti1 l1
Wltr<'HI~ ~ J I J i . ; I I i : J ! . C ; lraul i1 i 1 f ! ' ! 1 'Ult.! al! ;,(. i i ! . i . . ·t!'~ ' I o " U U B A S I C · . ; [ .~ I.. . - - ", ~
mmm.;.~.d!i i l r l 1 j o: L :t).;.1('lim(;' hu 1 i : 1 J i I . ! o : o : . ! mi.(i: l!l i1.0F ~t) ni?e:n r L ) t
R A M 1~:II,p.:!l!1:;1U~~ on I h l s [ In " , ,: I h E ! [vI. h . ' t~ . . .I ! ~ 1 '1 1,.'-:111 1 I ' 1 r ~lll'.
R E ! m ( ~ 1 o ? n ~ : 's!o;'j l < ' t J t < l 1 : s u i i .l lf ) r :s . m r c l - l. :l 1 U 1 1 ( . '0 b y E l ' 9 . " ' ~ m n it S i P f "
I ;Ml l~s . ; : t ! " - r the n8y,;est a l8 l. iI l on te rh,tir [klll'rllt..u !:ouLa1or
liltPf /6LII1I)(i;'~,oj,or Ilnll;uf Illll.'r!I,;'rc:~r~:n lJ m l [ "l r n c h lf t ~ ,/r,~'ill.1
l : i l i h : - o n ~II 1 : t ! , 1 : a . 1 m :p,ffif'I. ... t h t - nt'n~I::\t' / I . e . p t l w c r cU!Llml
s.....I : . ; :h ! )Cl i l bl . . " I I IOOnl1. ' ( j :~Cil.r th e I: fqt[ipm'i' !n In IX ' f; : a l . ; . , t r u - r
tOiP"'i.'nl.t·11cc arH~ :;'~::;l('!tn , : :. h l @ . ! t U ; ! . M n l i !! > 6
M j o ; .: r o c o : ;. m p l J l lc r .lJIpl1'niCil.1lfll'l:'i inr ludp :1I.1IH'~I('H}·. h'J~il<:ll.
inn ll ls rri . .,1 ( : In · ( lIJ .I . .' r~ II<:I t sy~ews t t. iJ .\ ,i li l: = l ' ; n,ppd tfl (,o"~'en,
IcnUy o : : m l H l : I o l n G > w p r l l'l t he - 1~It'r(!lhlW :S f lII.'lIlfrom.a. t ~m r a . 1
1 ( ' i r . ' ; l i o : ; n
T o : ! i l i Rf ' ff ll JH . · S l. .n lt h l . ' L J I w lO ! llu r I Da d i ! l :OIp l ld~y is 1M ~; W ,: i f[S
'!rla-";'fIIU!1III W L l h I f lM h s n c .k ;P ! t O l; p . ..hl'l~(A .h~f!dlh'.~ ] KW
:u~, R e n l o l . e ~!;\ ,lh;:hil1!;l.ulla:lI. i l!bh1!in 1 i J I " " J I ' 1 f ' 1 ~ri. ln~in~ f ~ ( ) m
smgLi:'-fi'11i!!IM moop.I~lv qued- rlllt'it'd ~ :n~nl !J m ~fl!O:Jcl~.
iPr irOl 'f i .~1Ifi r l ~:l$ ~ .~ , 95
fdr.:f 5:uiUL! U J '' 'M U 'd H~lnllI i k ' I 1 \ i ' i L l E ; - T~I~mmu f i : L ( : ~ l i D . l l ~
I U 6ilO IM y ...J.l::....~ A " ' · ( ! n I : J i E ~ . I lnh ]f!,
Hid'J mCHlic! Hi I I .. Onr.!ll'i:l)
L 4 (" 3 ." 'J 8
4 H i f ; A · ~ 1 1 [ ; ] 1 6 . ; ;
C o m I~Judort! C a n i ! i I : J O l J has !>p ot ne, .. . . .. ?ri~il)T1;;;,f ~ d . l L h e S ' . l I p l . : " i .
P J : : ; T l a [l ! !' P l; !; ~ rm rO ? ! i ~ (1 'i to a ll C ~ m i J. . J ti l ii dl . : i ! i . l c r~ , tm tHlUl -
dr.u'.:-tiS. IH.JY iJL' hiJ!lndlin~, tlresu diIw·rt: :nlly, r.IJlt I .1l~"UI"f i i t :~ l u : ~ y should b f! 1:I\'nil..h J e 1 r o r n ' : = ' i 1 j ' d o : . : . . : I l . e f L J ~ ' I l l € . ! 1 i J Ut :' } 'C l ~!
~ ~ ~ d L h i b n o l J l [ k : ~ ,Cubol W l H iIoI~ bE > in thil.~5 0 1 1 , i r m 4 "'n ! ; ; n d . i!\,~
announced. j~ Fref':nf rh . , t"~ ~oSupt'lrET owners and will
! ; i t ' lfH;;ludt~ wi~h I1l:WSPET Grdll'!f!i.
TI'N~~:s~m~ler !:lnd M itl1rp~riJm~ are r f "p m 1 : p d l y II n -
dLl lng". !d 5 1 0 yo ur d iskfttl? 5 1hat c o m a 1 '" ~.U~cr1 1 he~ wiJIno l n . e - e d ! O I : l J I d < : ! ~ ' l n g "
A n oQ i t l f ; ' (If! M Ili .: fuFOk l IU. ;; .I ._ "~ rocent n i : l : J f ' f l ' l ! f I ' P r ' ; . ; . h ~ . I ' l ! : I I
fORTR:A~l dtJt'Sna~ lib> d i!ll:. <l:~:'i,j::('ill~~(1 '~i'YIl' f ]&.nds an d
:0 . 1iI' f",nlo? nt ! ;, 1h"l, ,~n II.! dri\' 'Ii." 1 . 1 . " I I i : . ! a vo id p n tE 'n :tia l E' !rmI! i ,
illw a }'s , il" clu d~ Iltie d riv -£ '<ntllm~:t. T h i s m a .y o Jl ! l I Jbl' 1rue ftllf
! '" . ( 1 m I ! ': Q I I I ( h e o 1 ~ e - ; t l a l' l g u ~~ I: ' ! : l . b u t .h a ! l l r f t b < ;! o :! n l~et'l.Pln!5.l-
bty this n U l " : wiUllw n);erI1 n the fle'\'I.' version.
~ran j . : . S t I [ ' t : :· l
t ic"," " ! runic sr fl " 'ia 'L51 ;~ . rn ( ',
[ L ' 1 mMll l~ h M;jl i : t J ~ r e t ll '1aUl :k . MA.~)Hf":~
~H es s l5:1:.!
R k ' t ! v a . l E ' Te:letl,)mnn.lnlt.:aHuJ~:ii ill k i l ; lmLOl1d H m . OI1l~ario"urc nCI"W mar .keHnJi: t hf ! V-UI" i :K. o 1 J F l ~ E : E . E . l..~ , f a C l · br LII~
V ]C The l M L : l . . _ g e · c . X l i f l : I > i : s t s O~jj .i ;O'inrid~.E"1 h at p l.l! J~ ~mllQ I hE'
~:<I!rlrlllElI,;'s J l J t on tht: ~k. On po.....lr-up, wLlh the (';(Htti~
m r M ! C f ' . (b e ' V i r p C ! f r u J ~ 1 User P U r l i ! ic!JuFi! ;lurcd.B the I ! E . E Epan, 'Hi!:! unit al~~ ilildLlnf'.!': AA..~IC ·1il~I)~'Lm.;;nds"lruj eau
~ { lr d p ll lL i 'd I 'l O ' ti 1 h t l' d i. J I !l io l h : : HRA.\1lof 'It.'tpi!Jntlin~ Iie m e m o r y
[;.j yo u r . .. ..C - :N l .
~IIjiJ.·..It1 11~~a llilliNy o r Ol1tinm~:I ( jl r l 'ihl ! ' iJs.€ 'r FInn I F . E . F . : on ei...< i i m f 1 l ~ a < : :lJ l 'ln e: .: lu r c Jl1 ~ 1 (UU,.t'lt:. u ~ ,o o m I ! ' . : . I : : . [ (.3rdl-f!~
[t;'g, k ;l r ~ ~ " " " ith Pf :1 ' tfl IF.f.E cable'~~. " m 1 l t h - e :i f is e s s e n IIi i l l l I y < :I
VIC ' 1 0 r E . E . E . ~~bLe'ilJlt d~i.$y-,d~-1l.il~i!!~ l. ! l iJ~tL:!;:.rIEEE 10 I E E . F : ,
r~!bles: .a t .hird .~ypPor C'i' lhlo!'.' iIII()\'o·.r; inti;'tia(~ng.0, ~tio~.;-rs
•
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 9/68
Two New .AHemblel'S From
PRom SilkSmoolhware!
T he A ssem b.ler fo r the Commodo re V[C -20 is a mach ine
l! an gu ag e dev elo pm en t s ys ttem c on sis tin g. o f th ree p ro gr am s ;
T he E dito r . T h@ A ssem bfer and T he L oader . T h.€ package
w i l l fun crien o n all VIC eo n figu rat io ns., includiing the 5K
c as set te-ba sed .sy stem . T h e luser-frie:ndly desIg n a llo w se a s y creation .o J machine Iang:uage p r og r ams an d :B ASIC -
- c al la b le Jmb rou t in e s. A p ow erful! two-pa s s .symbolic as -
sembler ln terpre ts a tg eb ra ic ex p re ss io ns , d ec im a l, h ex , and
li teral data . It accep ts p rog ram s from th e so urce ~ibraryereated by lheEd ito r aFid it c reates ob ject modules fO I i use
b y T he L oad er. T itle abili[y to load an d link multi lple m O O . -
ules g'iv'es t he V ]C o w ner Ute oppo :r tunUy to d evelo pe very
'l ar g e' a nd powerfull m ach ine lang uag e .p ro gram s (eg. a 4K
, :Il'fog ram on th e 3583 'byte vtc). T he u ser 's m anu al is
:professionally wri t t en . d ear an d c omp l e t e . .T he p ack age is
a v a i l . a b l l : e on cas sette fo r $24.95 p lu s $ 1.0 0 p os tag e '& han -
dUng . OT (jill diskette fo r $29.95 p lu s $1 .0 0 p&h.
D evelop e-64 fo il"h e C ommodore 64 is a m ach ine lang l,J.ag e
dev elo pm ent s ys tem c on sis t in g o f a n edifa r /as sembler ' and
a loader , With the editor/assembler, m ach ine lang uag e
'P ro gram s m ay be crea ted, m odified, S1Jved to th e so urce] ih r ar y a nd assembled, Load m o du les a re c rea !ted for jnp t , !~
by th e loader a nd lis tin gs a re p ro du ced c on ta in in g source
and generated m ach ine lang uag e in either hex Or deehnal,
T h is p ow er fu l two - pa s s s ymbo lk : a ss emb le r i nt er p re ts alge-
bra ic ex press io ns an d a var iety o f da ta fo rm ats . C om p letely
com pa tible w ith T he A ssem bler fo r th e V 1 C=20 , D eve-
lope-<64 l e a n accep t statements up to 78 eharacters in I'eog thand labels u p to 73 ch erac ters long . T his product is " h u -
m an-eng ineered" fo r m ax im um u ser- fr iendlines s . T he
m a nu a l is p ro fes sio na lly w r it te li l, d ea r a nd c om p let e, D ev e-
lo pe-S 4 is ava ilable o n c assette fo r $3 4.95 p lu s $] .0 0 p&h ,> 0 f o n disk ette fo r $3 9.95 p lu s $1 .0 0 p&h.
Need mo re? ' Con tact:
F r en ch S ilk Sm o ot hw a re
PO . Box 20 7
cannon Falls " M i nneso ta
.550095072634821
Toronto PETUsen Group Now
2000 .Memben Strongl
, T PUG star ted im 1 '978 w ith a m ere 30 membe r s , Ch r i s
B ennett , c lu b sec retary" in fo rm s m e th at th is m onth th ey
passed th e 20 00 member m ark . T hey h ave regular month ly
m eet ing s a t tw o lo caoons ii i Toron to , s p ec ia l i nte re st
g ro up s, th eir ' ow n n ew s let te r ( T he TO RPET ) , and a disk
li br -a ry w i th a lm o st 5 0 d is ke tt es !
Memberships are worth every nickel Th e y g et you The
T O R PE T ,and fun access to th e librar y.
Canadian Assoc i a t e M embers; $20U.S. Associate M embers; $30 US.
O v e rs ea s A s so c ia te M embers: $30 ' U S .
Canadian R egular M em be'rs; $3 0
C anadian S tu den t M em bers : $20
F o r mor e lnfo rm atlo n co ntac t (after business h O I . I T S ) :
Chr i s . Bennet t
381 Lawrence A ve W est
T o ro nto . O n ta rio
M 5M 1B 9·4167829252
Or u se your com pu ter to call th e lPU G B ulletin B oard! a t 416
2 23 26 25 . [lPM , to9 AM.•Mon. tbroughSat. -All d ay S u n.]
7
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 10/68
Bits andPieces
N once 'th at th e p rog ram is self modifying, a p rac t ice th at Is
OK fo r small programs but s h ou l d be avoided Uke the
p lag llle in la rg er o nes . S ell-m odify in g so ftw are iis th e w ors t
f o r d eb ugg i ng and f i! l1d lng ou t Ih e hard way is n ot fun .
Got some interesting bif oiink» you'd like to shoreLa POK E,
Q screen ,d(1 'ZZ{~r,a b trg , o r some oth er anomaly? Send ; 1 in !
We 'I i ge g l(1d 10 prim it ! Ed
Optical 'lliusioD.
T his neat lit tle m ach ine lall1guage p rog ram w as w ri t ten by
Dave B erezow sk l a t C om modo re C anada. II doesn't do very
m uch ex cep t c rea te a ra ther i n t eres t ing look ing sc reen . T he 'p ro g r am w ill w o rk on 40 o r 80 co lum n m ach ines bu t th e 80
co lu mn seem ed tobe th e m os t im press ive,
033c ldx "$00
033e inc S8000.x ;v ic :u se rs m u st s ub st ,
0341 in x s c re en a dd re ss
.0342 bne S f a :
0 3 4 4 in c $033.1
0347 Im p Se455 ; f O l : B A S IC 4 .0 users
0 3 4 7 jmp $e62e .for BASIC :H J users
0 3 4 7 jrnp leabr ; f O I V iC -20 u sers
A 'S yo u can see, t he r ou ti ne i s, in te rr u pt dr iven w h ic h means
yo u']! need to PO K E. th e in ter ru pt vec to r to g et it go i ng .
p ok e 1 44,60 ; poke 145,.3
Al ter servicing th is c ode , the- normal iot.eltrupt routines a re
execu ted w hich m eans yo u'll s t i ll see th e' C i J t SOT . Y ou can
even edit (and !R U N)B A SIC w hile th is is r unn ing . ju s t d on 't
Iry 10 u se th e cas se t te bu ller th at it l ives in o r w ham mo l T ry
.m o vin g th e c ur so r a ro u nd th e " affec ted a rea ",
Vic users c o uld a ls o g et ttils go in g wi thou t 1:00 much, d im-c ult} ' (m ay be even witlil c olo u r? }. J us t s u bs titu te th e PET I
CBM scr een sta rt addr ess ($.80 00 in the second 11Ille)w lth th es ia n a dd re ss o r t he s cr ee n in y ou r p ar t icu lar V ic, l one 0 1 t w o
p oss ib i li t ies , $1£ 00 no rm ally o r $1000 w ith som e m em ory
ex pan sio n u nits . T o engage i t . ..
poke 788,60: poke 789. 3
F o r B A S ]C 4 .0 u ser s , ju s t typ e in th i s lo ader . O th ers willi
need 1 1 0 ch ang e [u st th e last tw o DATA elem en ts and th e
in ter ru pt vec to r P O K .E s.
10 lo r j = '828 to 841 : read x : p ok e j. x : n ex t
20 data 162. O . 254, 0 , 1 , 2 8 , :2 32 , 2 08 , 2 50
30 data 238. 63, 3, 76. 85, 228
O ne la s t no te ... don 't tr y to in c lu de th e in ter r u p t vec to r
PO KEs in th e above p ro gram . C hances are your machine
w ill c ra sh becau se befo re bo th PO KE s g et ex ecu ted, an
in ter ru p t o ccu rs som ew here in betw een .
I
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 11/68
SeJedive Directory
E ver been search ing th r-o ug h yo ur disk ettes fo r a p ro gram
and lo und yo urself s ift ing th ro ug h S EQ and R E i. fi lenam es
thai: [u s t seem. to get in the way? Or how 'bout the opposi.
t e'. .. ..when you ' re ]ookin lg for ' an SEQ o r R EL f i lename tha t ' s
[o sl in disk ettes fu ll o f prog l rams. We l l . .here 's , 8 qu [d : waya round it.
LOAD · $ 0;+ ....P RG ", 8
W h e n fin ish ed,. L IS T will display a ll PR O H Ies from . th e
di rectory . It 'Wo 'U]d s tand to reason th a t m ateh lng typ e
filenam es wou ld app eal' for b ot h d ir ec to ri es if l lh e d ri ve
n lUmb~r were omit led , but such Is n ot th e ease. n y ou lea veou t tlile dr ive Bumber th e disk o nly retu rn s fB en a:m es fro m
th ela st dr iv e u sed.
Mysler [ously, DLOA,D w on't w ork th e sam e way. YOUl mus t
use the L OA D com mand fo llow ed by ' , S " . Any f ile t yp e canbe s e le c te d though. M erely su bs ti tu te P R G fo r SEQ . RIEL o r
U S R .
An oth er v ar ia tio n • . ,subUlute th e .. fO I f i lename pattems.
T h is h as bo on disc ussed belorle. bu t now you can look f O T
f i lenames Ulat m atch a p a ttern -and are a lso o f ! : I i . par t icu la r
ty pe, ..
L OAD" S 1 :B - =S.EQ " , 8
... w ou ldlo ad a dtrec to ry o f a ll s eq u en tia l fi les 011 dr .ve I
t ha t s ta rt wi~h'8".
A Moat, Welcome Error Menage?
Never thought you'd see the day an error message wou ld be
pleasant, did you? Wel l today is tlh:e day! Just turn on you r
mach ine , hit HO M E, an d R JET UIR N.T oo bad yo u can o nly get
It w hen th e m ach ine is empty!
Quick FIle Reader
T . h w s tl ' lree.-I.iner wili l read j u s t abou t a n y ' SEQ file, Ifs no t
very s op h is ti ca te d b ut w hen yo u just w ant to "tak e a . boo" a t
a file, it can be typed in quickly and isn't too ha'rd to
m em orize. 'T he R V Swill h elp to s po t any l ra i l: in g spaces .
10 dop en#8, " s ome f i le·20 input-S, a$ .:.1"1· a$: if 51:=64then dclose: end
30 g,oto 20
F or R E L.fi les , s im ply ch ang e th e IF s ta tem ent in line 20 to :
if st =. t6 4 and ds-, 50 then ...
The n . - e a d e d 1lIep1 Quandty
Sometimes you want ~o read t iles one byte at a t ime. A
rou tine m ueh like th e ene above m ig ht be u s ed. ,o nly t heIN PU T '* w ou ld be rep lac ed by a G ET " . T h ere 's ju s t o ne
minor gatclia. It seems (hal whea a byte value of zero is
retr ieved by ( jET " " m e str in g var iable s la ted to rec eive it . is
se t to a n U l l l S ( lr in g , n o t O i R S (O ) .
T he most co mmon occu renee o f byte-by-byte reading Is
with. . PRGf iles f rom d isk. Plrogram f iles eemaln lots o f these
zeroes, ar least one p er nile of BASIC (end-of-line markers),
USM,ally a prog ram to read th e PROf i l e is se t IUp l ik e t h is ;
10 open 8, 8, 8. ~som e :p rg file,p,(
.20 getNS, a .$ : p r in t a s , . as( ( a$) : Usl =64 then dose 8 : end30 goto20
Th e p ro blem ii s that when a z ero is read in to A$" th e I \SC(
fu nc tlo n c an no t c op e will a t nulll s hr in li la nd bom bs o u t w ith
71 LL EGAL QUAN1l1'Y E RR O R. T he solu tion? Y oo cou !~d add
an ex tra IF s ta tem ent after th e G ET -, f O T example :
ih$=" R then a s , = chrS(O)
... bu t th a t 'W O uld,m ean an ex tra line fo r th e PR INT s tate-
m en t an d th e fo llo win g IF... ra th er clumsy. Ke ep t hi ng s t idy
with:
print a$,asc. (a$ -I- ch r$ (O) )
T h e A . S C ( funct ion returns th e A SC II valu e o f the f irs t
character of AS" If A$ starts W i ll h a vaiid ch arac ter ; th en
addiing C HR .$(O ) w lU m ake no difference. ]I' not , then
CHR$(O ) w ill be added to lthe nu llstring and a "(1 wi.11be
p rin ted r ath er th a.n th e dr ea ded illeg al q u an ti ty er ro r.
The MysteriolU Extn! .Records
T ho se o f yo u fam ili.ar w ith th e Rela tiv e Re co rd s ys tem wil l
know th a t th e end o f a rela tive r i l,e is flagged by th e
? REC OR D N OT P RESEN T enor , .05=50. However, the lastrec ord u sed fo r da ta is n ot n ec essar ily th e las l rec ord o f th e
file.
A 5 relative files g et bigger. th e D OS fo rm ats additi.onal
sectors by fi lling th em w ith "empty reco rds". A n em pty
9
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 12/68
record starts w ith a C HR $(255 ) fo lliow ed by C H R S f O ) , s t ,o t he
en d o r tbe r eco rd w h ic ll is del e rm ined by th e r ec or d leng th .
T his fo rm att ing p ro cess o ccu rs w hen data is w ritten to iI ,
r eco rd th at w ill r equ ire m ore disk space th an h as been
a llo ca led to th e' file s o far .
E ac h 2S 6 by te s ec to r can con ta in 25 4 bytes o f d ata (th e o th er
2 a re u sed by th e DOS) . Le i' s t ak e - a :oe x amp l e record lengtho f 127, th u s 2 r ec ords f i t exact ly into I sector. Imag ine t ha t 2
c om p le te r ec o rd s h a ve already b een w ri tte n to t he Ii le. Upon
w ritfn g a thlrd r e co rd , th e DO S mu s t fo rma t ano the r sec tor ,
Two empty r e co rd s are written, but th e first wUl be replaced
by th e data o f om th ird reco rd. Closing t he file c au se s ow '
th ird reco rd and th e one em pty reco rd to be s to red o n th ediske t te .
Re-open ing th e file is n o p ro blem , bu t bf,W do w e f ind th e
next a va ll1 ab le s pace Jo r 'Wr i t ing a new re -'(ltd? Athoughi our
fou r th record is em p ty . III RECORD# li , 4 ' ,iUINOT p ro du c e ill
?R EC O RD N O T PR ES EN T er ro r and th e C HR $(255) co u ldsu cc ess fu lly be retr iev ed an d mistaken for val id mterma-
l ion . The re fo re , w e m us t tes t th e f i r s t cha rac t e r of t he recnrd
io r CHR$(255) . A n IN PUT '" ' o f th , is record wH i result in a.
string of length 1. so a comb ina t i on of the two cond i t i ons
m i'8 h~ be e p p ro p rla te , H oweve r. INPUl'*'ing live re co rd s o f
length g rea ter th an 80 w illi p ro du ce ?S TR IN G T O O lO N G
erro r , so G ET * tnu st be u sed .i n c ombl nan on wi th an Sf test :
1000 ' r e m . ,t•.,. fin d n e xt a va ila ble r e c o r d . . . . - ,
1010 r e co rd" (If). ( rn) . rern En ;;;;;;reco!:dnumber
10 20 g 'e t" 'U ,a s :rem g et 1 S f cha r
1030 i!.,ds=50 then return1 040 i f ,a$"" ch r${2 .55 ) and sl;;; 64 t h en : r et u rn
10 50 rn=m + 1 : g o ro 1 0 ]0
Th i s subroutine wil l sea rch fo rw ard fro m w herever yo u set
RN in it i al ly . It s to p s w h en eith er a ?R EC OR D N O T PR ES EN T
o ccurs o r w hen an empty reco rd is fo un d. Fo r la rger fI les,
y ou m ig l1 l~cons ide r s ta r1 in g a t. th e e n d O 'f the file an w ork
bac kwa rd s , b ut y o u'll need to f ind th e firs t liv e rec ord an d
then mo ve th e re co rd po in t e r o n e fo rwa rd ,
In s umm ary , T,elying on R ECO RD NO T PRESENT is no t
g o od e no u gh . Al t h ou g h it w illI ns ur e a n ' empty r e co rd every
t ime. it ~<jUe ve n tu a ll y l ea ve y ou w ith w asted disk sp ace,
Oft,en the first reco rd o f the fB e is used to sto re a " greatest
reco rd Dumber u s ed " v ar ia bl e wh ich is u p dated on c los ing
and read back 011 cpenlng. A lth ou gh th is i spm bably th e
c le an es t a p p r o ac h , i t w ill onlyreturn new record numbers.
Any re-cords than have been deleted by wr i t il fl ,g a slngle
CHR$(255 ) m u s t be fo u nd w ith a subroutine l ike above.
P'oosililly aeornbination o f both these r .ec iln ]ques will pro-
d u ce a m o r e e ffi ci en t fi li ng s ys te m .
1D
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 13/68
.TheWo:rdProBook Of 'Tricks
. .
The Wo rdP ro l1 0 0 k Of T ricks is ,0 regular column by Com-
modore Cana:d as w .o rd 'p ro ce ss in g coasunan; Donna M .
Green.
Quiick~,LOAD.. For UP.WI· · VemoD.OfWoniPro
As you know it is ,a s imp le , quick mauer to tu rn you r
C om m odo re co mp uter in to a w ord p rec esso t; o nc e th e ch ip
h as been in ser ted in sid e the compu t e r .
A f te r p r es s in g S h i .f t+ Run /S t op which lo ad s th e p ro g ra m -
severa l q ues t io ns reg ar din g th e p rim er an d devic e numbersap pear on th e s c reen . T o sk ip o ver th es e q uesaons , s imply
p re s s :
CONTRO L - and ibe Statl.l.5Une will appear1
(Cer ta in default values will be se lec ted - "S " Io r NEeSp inw riter , " lIS " lines ava i lable - o r wharever t he : m a xi -
mum. is on your Wo:rdPf,o veitsio:n, "4 " f o r IP, rl. n le r DeviceN umbe[,,"s ," fo r D is k D ri ve D ev ic e Number.)
This, w in [1.01 o l1 !ly save t im e w h en s ta rt in g up . but I' r yo u
h ave a S p inw rit ,e r p rin ter , y ou 'l l. a ls o be ready to p rin t!
lnp utt ing , editing , and djsk u se is no w p oss ible; h ow ever, it
Is im por tant to be a wa re th .a t if yOUI are in tending to printu s ing any o th er p r in ter a t this t ime , yo u w ill h ave to do
a no th er q uic k reset to selec t th e p ro per prmter ,
W h a t if y o u d ec id e to ' p rin t o n a C BM p rin ter after t hi s q u ic k
Donna GreenCommodore Canada
s ta r t u p ? Yat! can e as ily r es et th e sys tem wil.h t he ( ollow in g
command :
C O NT RO L th en S 'h ift - I - Run /S top
Yiou will tillen be ask ed the usua l ques tions ; fo r e xamp le ,
when it asks wh a t p ti nt e[ , s el ec t "C '; f or ' CBM .lf the re is nochanse to the: rem a~n in g quest.ions; you may " return "
through th em u ntil th e centrol l tne is reached,
U sin g th is q uic k reset, you. can also ch ang e th e num ber o f
IJ in esin rn aln text ( fwm the m axim um - w hichIs the ,default
value) , to a sma ll er nurnber if yo u w ish.
lif th e " :number iJ~lines" is the on ly item to , b e changed,
s imply type in th e new number. th en p ress '\CO NTR OL " to
bypass , the remain ing que s t i ons .
CONTROL + SAFr + Q(QUIT )
T h is c om m an d will t a ke you out o f WordPrQ and back to
BASrCwi t hou t turning off your computer.
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 14/68
The ,Back,lash Key - .., t.
1. MakeUse of "Shifted Mode" - Ralher than the"Shift Lock" Key
T o en te r "S I1 Hted M ode" - p ress th e "\" k ey ,
Thls will highlight ihe "S" on the status li ne a nd all lenersw ill be ty ped ascap lta ls - bu t nu mbers w nl s tay as nu mbers .
T h erefo re. to ty pe a . do llar s ig n lo t e xamp le , u se th e S H IfT
key"'and number fo ur. T o exit fro m "Sh i f ted M ode" p ress '" ••
again.
A N ote on th e Sh ift Lock K ey : I'f th e " sh ift lo ck " key i s u se dfo r cap ita ls o r u pp er case ch ara cter s" s pa-ces w ill ap pea 'l' as
so lid lines on th e screen ; le:
This_ls_an_examrt: 1 e .
T h e se ' a re a ct ua lly "requ i red, sp aces " u sed to k eep item ssu ch as dates o r nam es all j o inedtogether and to treat th em
as one w ord: th is w ay t hey w on't be split at th e end o f a ljne,
W h en m ore characters th an a l ine w ill h old are ty ped in this
m anner a "Format E rr crvm es sa ge c ou ld result because the
System cannot f ind E I . . "space" to use as a l ine ending break
point. For this reason it I S better to use the "shifted mode" at
all times, rather than the "shift lock" key.
2. Turn on .heBeeper (Plus; versioDs)
CONTRO L + \ ( same tur ns beeper o f l)
T h e S t at u s. l in e wi l l indicate either "Sound On" o r "S ou nd
Off", The beeper will sound when yo u switch tex.t areas,
r 'ecaJ!1.memo r iz e, u p d at e. o r finish p rin ling a docu ment.
3. Shortcut for Recal.l1ng - Usln.g BacksJlaah Key ;~\"
Y ou are' also IP . roMb ly aware of the command to recal l: wben
the d ir,ecto ry is o n the screen , B efo re gi.vin g tfue op,m:mand,
move tb e cu r so r 10 ' the "me name" an d wh i l e poi:nHng to 11
wi th th e CIUSO.f e i the r in th e sp ace preced ing . o r on th e f i rs t
. c h a ra c te r 01 : th e name - p ress ;
SHIFT + CLR /HOME + R(RECALL ) 1 + \ + RETl IRN
4. Make Use of Comment Unes 011 Every Page lorFaster ReQlIJinl:
M ake use 0:1 a "co mm en t line" as th e first lin e o f YO L ir
d oc umen t ( ch ec kmar ik em <DIan + nam e of U le) and keep a.O O lP Y1 th e fi le nam e h ere. T hen. w hen u pdating 01' Memo -
r iz in lg a document , go to this eomrnent lin e an d have the
c u rs o r' o n t h e f ir S lc h ar ac te r o l the f il e n ame , P ress \. and th e
f il e n ame will .ap pear on th e s ta tu s line, ra th er th an retyp i ng
the name.
51,Q u J lC k R e c a ll : o r fi le w ilh S Im Uar NBID.e
'T o take advantage o f the "'\" shortcut (as in 1 1 1 3 above]
w ith o ut br in gin g th e directory to th e sc reen , reca ll a do cu -men t wiith a s im ilar n am e t he fo UQw in g w ay :
C ursnr to th e Iirs t ch arac ter o f th e r H e nam e (online 1 in 'th e
" commen t" s ec ti on ), then press:
SH IFT + CL.RIHOME + R{R .ECAl l ) + \INST/DELKEY + NEW NO . + RETURN
Example: Ii "report page 3 'H was the name indicated in the
"comment line", and "report page 1" was required, recall
using "\," as above then press . INST/DEL to delete the "3"
then nype "l" and return.
I n c . l in ke d document, t he ''T I x'' c omm an d which is a lw a ys
th e bo tto m line, C411 be u sed. ju st lik e th e "em " com m and
(wh i ch , is usually the f i rs t line), The cursor can . p oin t to th is
nam e, and th e baek sla sh k ey can then be u sed to disp lay th e
"fi le name" I o r r eca ll ing purposes ,
FOR OTIIER "'~QUlCK.RECALL" TIPS,•••
1.Quid£.RecalI/ScruDThrough Unke4 fUell
'fhis IS a grear lime saver and a very helplul ald when
w o rk in g w ith long l ink.ed documents:
SH IFT + CLR / HOME + R + CLR / HOME + RETURN
When t h e : C L R / H OME key' is p res sed th e second n rne in
th is com mand, W o rdPro au tom atically searches ou t th e
" nx" co mm an d an d d isp lays lhe 'file n am e co ntain ed there
o n the Status Line .
Perhap s yo u have fCfrgolteJl ex .ac tly h ow a "iHe nam e" w as
spelled on !i lediirectory bu t you know itstarted w ith "s t", T o
r ec all t he f .i rs t d o cum en t on the disk t hat begins with "sf',
g iv e t he f ollo w in g command:
SHIFT + CLR lHOME + R(RECALL: ) + st- + RETURN
Th i s w i l l fin d th e .fjr st docurnen t th at beg ins w ith "sf ' and
recallit to, the screen"
th.lra ...actar
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 15/68
A lso , w h en a tab is se t (con t ro l + s) at column 80 ~ . by
If the re are disks in both D isk D rlves "0 " and ":~", th e p ress ing th e TAB key, th e c :u £s or c an . q uic kly be m oved to ,
fo llo w in g command can b e : g i v 1 e n to q ;u lic k:lyview a ll th e 'files th e r i g h t side o f t he s cr ee n.
t h a t begin with. glveneharae te rs :
O lcou rse, s ince th e o ,JrsQ r calilnol go lef~ of co lum n 1 , i ,t wil l
T o qu ick ly sero n back up the scr een , p res s eii lier HO ME I m ove ins tead to co lum n 80 o f th e L ine a oove!
HOME . or
CONTROL + CUR SO R ARROW UP That's i;lllfor now . MQ renex t issu e!
CONTROL + 2 + RlETURN
i The s l a lu : s li t li e wil!l p r omp t " S el ec ti ve : .:" . B y typ ing "2" at
thlstime : it will bring both di rec to r i es to the screen , Disk
Drive . · 0 1 1 i f i i !t s t ,and below it Di i sk Dr ive #0 . Obv ioos l y , a d is k
m ust . be in bo th drtvestor thls I, D 'Wo r k . ( Th i s wi l l t hereforen ot w ork o n the 2031 sin gle d .isk d rive:)
4. Recall Selet:dvely hom Directory
CONTROL + 2 + st·+ RETURN
Th i s will br ing to th e s c reen a lis t ing o f o n ly th e files th a t
begin with "st' fro m both D rive '* 1 and D rive #0 . T o recall as p ecUt c f ile. mo ve c ur so r tO I IH e nam e and recall uslllg th ebacks l, ash key as described a'oove,
Q a klk C u r.a or M :o vem .e nta
1. Sc: ron Up&Down QuJddy
A s y ou alrea dy k no w, if you wish to scron th e WIso r quiddyto th e bo tto m o fth e sc reen , p ress :
CONTROL + CUR SO R ARRO W DO WN
2.To Jump to Bottom ofl'e.d
How ev er , th er e iSaJ10their way to reach the bot tom of your
doo1Ll,rDemithout scrol llng tbrOllgA the text o n the screen ,
andposs i tJ . ly goIng to o'fM -
p re ss :
CONTROL + TAB KEY (OR BACK ARROW. OR. UP
ARROW~I
T h e c urs or wi l l quickly jum p d ow n 10 th e la st line o f ~yp.ins
in y ou r document, and s to p a t column 80..
T o m ove th e cu rso r fo rw ard from th is p o in t (cofumn 80 ) -
p res s :
CURSOR RIGHT KEY
This wi l l m ove th e eursorjorwerd one positiol1l ( pa s t column80 1)to "co lu mn o ne" o n the line below - exadly whel l 'e you
w ou ld p ro bably w an t to con t inue Ityping!!
U sing th ese fas ter w ay s o f m ovlng tbe cu rso r a rou nd th e
screen will be very help fu l In editing text and m ak ing m ore'
effIc ien t u se o f th e s ys tem .
Whe n th e cu rso r is in th e middle ·0 1 a sentence, to re ium (0'
th e beg in nin g o f t h e ]in e belo w w ith ou t era sing illlformatiQnby a cc id en t . . p r es s:
SHIFT + RETURN
T o Q u ic lty m o ve the c urso r u p one l ine to co l umn 80 or th een d. o f t h e p recedin g line - p res s :
SHllFT ... CURSOR ARRO W LEFT
13
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 16/68
T h e M ANAG ER so ftw are system h a s becom e one o f th e String Insert
m ore p op ular database p eekag es fo r th e 80 co lu mn C om m o-
dore computers . Now fo r som e p rog ramm ers g oodies . . . a$;' aaa ' ; b$ = ·1 .23 45 67 890 ~ .:.\m , a 'S . bS , : f " I
The MANAGER Column
'Tfle Ma na ge r C olumn is a reg.u/ar feature o f Tbe T ransac to r.
ttyo« have any tip s fO r o th er Manag er u s e r s , send them , i n .
and w e'll include them in the next issue. Ed:
T h e fo llo win g lisHngs i llu str ate s om e or the BAS IC exten-
s io ns th at a re c on ta in ed in the MANAGER m a ch in e c o de.
x$;;;;;;"·; \i. n. x$: x.$=x.$
This routine inputs a string into the called variable from
logical file number "11", Tile input routine will bring lo all
a sc ii ch arac te rs an d te rm in ate o nly 0 . 1 1 a cin)'i. r e t um
(ascii 13). The x$ =x$ ls necessary to transfer [he s t r i l lg from
the reserved buller into BASIC space. Maximum s i r ing
length i5255.
Screen Dump
open 4,4 : \d : c lose 4
Th i s ro urin e p erfo rms a s cre en dump o f t he cu rrent co ntents
of th e screen to th e p r ln er.lt will p erfo rm a PET -A SC II
co nversio n d ep en din g o n the co n ten ts o f m em ory ad d ress
22527: ie , poke22527. J 4 ; = A90I. .poke225,27. 12 = PET.
John StovekenMilton, Ont,
This routine .inserts the .s t rill g a s Into bS s t · a r r i : n g at position
n.Foe example . if n '" 3 th e r es ult of this ope ra t i on wouldr es ult w ith :
a$ ~ "aaa"
'0 $ .~ " 12 aa a6 7 89 0"
S imp ly r og g le s th e PE T from u pp er-low er case 10 uppercase --grep hics m od e. o r vice versa,
·Pri lnrer Output
\p,a$
P rin ts a string to Jo gk .a l me 4 (w h ich is O PEN ed by T h e
MANAGER o n d evice 4) p erfo rm in g the s ame PET-ASen.
convers ion as in the \d com mand (dep enden t o f con ten ts of
le ca tto n 22527) ,
Th.l'ranlll'fJ.r 14
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 17/68
Toggle Auto-Repeat/STOP Key
\r
S im ply ' tog gles th e au to -rep eat, disabled S TO P' k ey .
\ 1 . · pmgramT h is c omm an d will lo ad a p ro gram fro m disk to m em ory . If
the command \1: "nam,e is used then a machine co de
module (o r .se r fU e) ca n be loaded in to m em ory w ith o u t
muck ing up th e B AS [C polnters.
ProIP 'BID Load &. Execu,te
\x. ·name~
T his com mand w illI load and execu te a BASIC IProgram from
disk . I ts c ou nte rp ar t, \x ; • n am e- willi lo ad a , m ac hin e c ode
mod ule aad 'sys' to the start ad dress o f that modu le .
T hese ro u tln es m ay be u sed in you r ow n so ftw are ' if it 'i s
called from "T he M AN AG ER '; p ackag e. T he sim ple rou te to
calla p rog ram from The M !AN~(jER is no modify th e
"MENU" p i O g r a : m by adding th ese tw o lines,
146 pr in t spc(1! i ) "zee new p rog ram nam e"
166 if ,a s =·'T then \x. itnew p rog l , am~
!MANAGER . fi le s may be vieYt'oo with a , very s imp le p ro g ram ,
th at m es t be ca lled frQ m th e M A NA G EIR .
o ba;;;; 18 432 ; rem base address foll' mach i ne rode
10 pr in t Tnpu t file nsm e .: : l = 1 6 : g osu lD 1 00 02 0 "as = x$30 p rin t "input drive ~: : 1= 1 : go sub 1000
40 d ,_ val (x$)
45 rem ,. * * O p en an d read the . fi le • * *S O d op en#l. (naS ), d(d)
60,a.$""·'~: 'il,a$ :·a$:;;a$
61 rem inp uts ,8 str ing in to th e speci f ied 'variable l (aS) f rom
th e log ica l file sp ec ified (1 )
10 if a$=ch r${ 25 ,5 ), th en . delos e : s to p
71 rem ch ara cte r :2 55 ind ica tes the en d, at a M A NA GER .
relat ive r u eS O pr in t a$ : go to S O l
1000 rem .'Umpu t Ii:string loop ...
1010 x = peek(198)I; 'j' = peek(216}1020 x s . .. .. !s y sba+S7 . y , x .1
1021 rem In p uts a s tr ing o f length I a t th e row aad co lum n
speci f ied by y an d x Into t be v ar ia ble x s
1 03 0 retu rn
J f W~ wished to view a M ANAGER file in wried o rder, w e
mu s t f irs t scan the, po lmer me as oo ciated w ith t.h .e'main file
and u se i t to g ive u s th e reco rds in th e Correct o rder . T o do
this, we w ill ch oo se l ines SO to 9 0 to pe rmi t this.
50 dop eno ll, \na$} , d(d)
6{) np$=n.a$ -I- 8 ,p tr " : d o p en r" 2, ( n p$ ), d ( d)
70 a$ = > 1 ~ : \i, 2, a$ : a s = ss
72 rem th is inp u ts a secord from th e p o in ter I fi le i n Ih e" so rte d " s eq se nce
8() sx=s t ; r em s tore s ta tu s .o f p tr fi le
T he reco rd p o si t io n in th e m ain r i le is "s to red" in th e la s t
' two bytes of th e p olm er (o r . ind file), and can be decoded
with t his r out ine :
90 lID = ( a sc ( ri gh t $( aS,2: ))+ 256t(asc(right${a$, 1 » ) ) ) 1
32768+ 1
100 r e co rd= l, (nn~1 1 , 0 x$:=". : \i,. 1 x$: x$=x$
120 p r im t . x$ : if s x ; ; ; ; ; 64 th en ddo se ; s to p130 ,80'1070
M o re M A NA C-.ER N ote.
T h ree su b-p rog ram s o f T h e M AN AG ER .system h ave th e
Q p \io n o f u sin g " searc h c ri ter ia ' to selec t rec ords fro m a file..
T he th ree a re: G lo bal U pdate. P ro du ce Sub-Files. and R e-
po r t Generate.
Those o f you tha~ use The MAN A'GER wUl know that All
c o nd it io n s s p ec ifi ediinth e sear ch c r i te r ia m u s t be m etbefore a record will be se lected , Inotherwnrds, o on :dit io n # 1
mus t be t rue, AND condition '*2 mUISI:be true" AND conct-
t ion "3... t h rough t o ' eondition *0. Even U one falils . Ithe
r ec or d Is dis ca rde d a nd tes tin g b eg in s on th e nextreccrd.
B ut su p p o se w e'd lik e to selec t a reco rd if only one o f th e
s earch c r i ter ia w ere tru e. T ha t is , r on dit io n·m m us t be tru e,
O R condi t ion *2 , m u s t : be tru e, O R 1 1 1 3 , etc . F o r examp le. to
p ro du ce a su b-file co nta in ing reco rds th at h ave "O t ta wa" o r
"T o ro nto " in th e Ci' ly t fe ld w o u ~ d b e im p os si ble uslng T h e
MANAGER as is . F or th is-w e need, o ne sim ple m odlfic aU on.
The p r ogram you modi fy will depend o n w hich fu I"Ictilon you
p lan to u se 'it w ith . F or G lo ba l Update. th e program name is
" g lo b al ", P r od u ce Sub-Files is " fin is h" a nd R e po rt G en er ate
i s · 'generale2". F onu na tely th e line nu mber is th esam e in all
eases, L oad th e ap pro pria te p rog r am u sing a DL OAD com -
mand and L IST l i m e 2370 . Y ou shou ld see someth ing l ike:
23170 ff=1f+fll ; next: fII= 1 : if ff<nf then fI-'€): f f . . ,Q
11 _
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 18/68
The number of fields to be tested is represented by the
v aria ble n f. T h e v arie ble F F' ls a f l a g accumulator, Variable
F L is s et ~ o 1 if a c on dm on is tru e, an d 10if f a lse . The r e fo r e F F
must be equal to NF fo r all co nd ition s to be true. U Ff is J ess
th an N F, f l . . . and FF are s et 1 :0 zero w hich tells ano th er p ar t o f
th e p rog ram to con tinu e w jrh [h e nex t r eco rd . T o g et [h e
p rog ram 10 accept "any condi ' t ion tr ue", ch ang e line 23 7'0 to:
2 3 7 0 ff=tf+ fI : next : 'f l= 1 : . i f f t : : , O t h e n f l =0 : f f = O
A one byte ch am g,e! N ow th e p rog ram w i l l i only skip 1 0 th e~n ex t r ec or d. if NO NE of th e conditions are met. T h u s th e
search cr iteria fu nct ion h as been ch ang ed from and A ND ing
o pera tio n to a n ORil lg ope ra t i on .
You cou ld take th is one step further and rep lace th e IF
sta teme nt to a G O S U B . T he s u bro ettn e m ig ht te st fo r c erta i n
p airs o f cond i t i ons to be tru e. Ju st set F : . and ff a p p r op r i -
a te l) , b ef or e e xi ti ng .
T h is " new " p rog ram m ust be SA V Ed under th e sam e nam eso that the M AN AG ER men u p ro gram can lo ad it ( remem-
b er , t h is program can't be run un le s s the machine language
S U b T Q u t i n e s are set u p' fir s t) . R enam e th e or ig ina l . vers ion
wi th:
rename dO . 8global" to' global.a.nd"
Alte rna te ly , it . wmddn't be difficu lt to m odify th e m enu
program to cal l either version by c h oi ce ..
Larger MANAGER Data. Files
A S yo u all k n ow , R EL lUes o n tile C om modo re 80 50 are
limited 1 0 a maxtmum size of 180K. This is why The
MANAGER c an n ot f i l l an 8050 d isk w ith just o ne file. But i f
you get th e new DO S lo r th e 8050. (av ailab le n ow o r soon
fro m C BM ) the restrlcticn is lifted . the sam e ho ld s true fo r
the n ew 8 25 0 and the 9060/9090 hard d is ks.
To allow for larg er files, two p rog ram s mu st be sli .ghtly
modified. L o g ic aJ ly . t h ey are the Create option (fi lename
"create ' ) and th e M anip u late F iles ep tion (filenam e
" Iilem an" ) . E ach p ro gram needs on ly one line ch ang ed.T h e l in es are: .
• create " ; ltn e 3070
• f ilema .n " ; lin e 1 30 70
L IS Tth e ap p ro pr ia te lin e an d s lm p ly plac e a R EM sta tem en t
a t the beg ln ni ng . Y o u c ou ld d elete :th e li ne c om p lete ly , bu t
Ihiis way, if you ever want [he line back again for use with
the B O S O , i iUlslremove the REM . Now DSAVE it back 10 the
disk using replace. eg~
dsa:ve'@Createn
TimhMader 16 S... .. . d•• r/Octob ... ,911
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 19/68
Disk. Un-Assembler
You've a ll heard of a " dlsa ssem bler" ... a util i ty f o r d is p l ay -
ing m ach ine code p rog ram s. B ut disassem blers are u su ally
li m it ed t o j us t th at, ie . dlsp lay o nly . Y ou can: list th e (lo de,
fol low it aro un d, an d wi th s om e disassem blers lik e (h e o ne
in Supermen, even m ake m lno r ch ang es. B ut inserting code
allc m ajo r m edscan be a n aw kw ard an d tedieu s task .
Unless you h ave so urce code. M o st m ach ine lang uag ep ro gram s are m ad e fro m so urce co de .•. a file, generated by
a p rog rammer (mine som e so rt o f e dito r) , th at c on ta ln s the
start. address o f the p rog ram fol lowed by var ia ble defini-
t lons machine lan gu ag e ln tru ctlo ns , w ord an d b}1e t ables ,
p lu s ev ery th in g else t h Q i t g oes in to p rod!Jc ing a ch u nk o f
m ach in e co de. An assem bler is m en used to co nver t so urc e
code Into a . m ach ine lang u ag e p rog ram . H owever , this is
u su ally a]l you ge t ; a m e p ack ed tightly w ith th e h ex
inst ruct ion codes . O ften th e seu rce is no t m ade available by
th e p ro gram m er , an d although a d is as sem ble rw i ll u n do the
p ro g ra m in to a n. illteU ig jble lis tin g, it c an n fJt reverse the
process back to source code. F or this we I n e e d ! an "Un-As-
Semble r " .
S m aU m ac hin e lan gu ~e p rograms can be "PO K Ed in " o r
h and-a ssem bled w ith ou t to o m uc h t ro uble, B u t la rg er p ro -
grams usually require the aid of an assembler, or in most
c as es , a s ym b oli c assembler" Symbolle assemblers a llo w th eu s e o f la be ls in s ou rce code, L a b el s c a n be any.rombina t : ion
o f l et te rs a n d nu mbers, bu t mus t s tar t w .ith a letter . T h e C BM .
Paul Higgi_nbottomToronto, 001..
assembler allows a m ax im um of 6 ch arac ters. A label can be
u sed anywhere mere can be a n a ddr es s Of a n e xp r es si on .
T rans fer ing ex ec utio n is ac tu ally o nly p os sible by refeTenc-·
in,Qa label, ·Forexample:
INPUT
JSR O PNDSK
JSR CETCHIR
eM P e W e RB N E INPUT
By u sin g la bels . o ne can wr i t e ma .c hiin e c ode w ith ou t th e
n eed fo r c alc ula tin g br an ch o ffsets , remembering storege
locat io," addresses orsu b:rou tine addresses . o r th e valu e of a
p a r ti cu l ar c h a ra c te r, B e s id es .t h ey misht a ll change,~ modl -
r l. ca ti o li ts a re made .
A disassem bler w on 't sh ow yo u labels bu t ra th er th e abso-
lute values, JMPs and JSR s will be followed by hex ad -
dresses , b ra nc h i nt ru c lj on s by t he i r a<: t l. la lo f fset s , a nd lo ad,
s to re, co mp are m tru cno ns and th e lliike.by a h ex ctd:dress o rnumbe r . Al tbough a. di sa ss em bler c ou ld be' u s ed to creete a
lo ad fiIIe fo r an edito r, m e resu lt w ou ld be ap pro ach ing
u s el es s. E v e( )' b ra n ch . J S R , . and JM P addres s w ou ld h ave to
b e a lt er e d ~y h and to a label. T he sam e label w ou ld h ave to
b e i ns er te d at rh e l in e s c o n ta in in g th e destination inst ruc-
t io n. T hafs a lo t o f 'w ork .
Enter the Un-Assernbler, This one was. written by Paul
'17
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 20/68
Higg inbo t t om. 1 1 p r od u c es s ou rc e c od e ft le sc om p a ti ble with
the Commodore a ss em b le r e di !t or . The beauty of Paul's
p ro gram is th at i t w ork s fro m disk. 'T h e p r o gr am you w is h to
p rodu ce source code fo r d oe s, noi have to be re sid en t in
m em ory w hich is a p roblem when t h e p r o gr am l iv es ill th e
same space as the Un...assembler. Labels for branches and
j ump type in s tru ctio ns are th e on ly ones generated, Ot h e r
lnstructlons a re le ft a lo ne .
The un-asserobler opens the rnachi ne language p rog ram on
d~k as 1 '1 p ro g ram file . Anetherwritefije is opened that will
u sed to s to re th e so u re"€: lis ting . . T hree p as ses am made
t h r o u g h the p ro gram F ile . O n p ass 1, the lirst tw o by tes that
represent the load or start address of th e program are
retrieved, Theil it runs right through. th e file to find th e end
of the program. This lslmpcrtam since only jumps and
branches wi t h i n the program ltselt are labeled, Jumps and
branches outside o~the p rog ram cannot possibly be given.a
label simply because the code at the destinatlon does exist
in th is , f ile ,
Pass 2 finds all the jumps and branches that t ra n st er e xe cu -
lion to some point with in the bo undar ies o tm e program.
Th e s e en t ry p oin ts a re " la gg ed" by t h e u n - as s emb le r.
Pass 3 completes the job. The Un-assernbler re-opens the
p ro gram file and str ip s o ff th e fir s t tw o by tes . A I t h is p oin t i 'l
lo o ks in the L a g table 10.se e if this spo t is an em f) ' point If II
is , a la bel is sent . to th e s ou rc e co de file t ha i i s a e om b in at lo n
ol rhe leaers "AD ' ; fo l lowed by th e i lc tlia I a ddr es s o f t h e n ex t
in str uc tio n. N o w i t retrIeves this b yt e a nd d is as sem ble s ii,
When it determines the m od e' o f th e In s tru c tio n , 0 , 1 o r 2m ore by tes a re retr ieved, If th is ins tru ct io n w as a bra nc h o r a
j ump 10 s ome dest inat ion w ith in th e p ro gram . t i le U n-es-
sernbter substitutes th e offsen o : r addres s w'jlth a label. T he
la be l w .i ll b e " A D'" fo l lowed by th e address o f th e dest ina -
tio n . T he p roces s con t inues u nti l th e enrue p ro g ram Is
u n-as sem bled. Pau l's p ro g ram w ill au rom atlcaily s tan a
n ew file if the first gets to o I,arge fo r the C om mo do re ed ito r.
T here are a few peculiarilties to w atc h fOT. P L I ' S t , th e Un -a s-
sernbler willtry to decode every th ing . T ha t means even
.byte a nd .w o rd ta ble s will be trea ted as c ode, B y te ta bles are
o ften u sed fo r th ing s [ik e com mandfables
o r erro r m es -sages . Usual ly I . h e y contain A . : S C n cha ra cte rs < lin d a l t hough
som e A SC II v alu es h ave co r resp onding m ach ine codes , it 's
unlikely that an entire table. would be disassembled into
sensible code, What you ' l l probably see in the resulting
SOUJce code me is a number of .byt directives, separated
occas ional ly byso me m iner s i lly looking d is as se m bly . T h is
silliness can be.changed back to .byts, or lef t as is, accordingto preference.
S ec on dly , B IT tnstructlons get s p ec ia l t re atm en t. Orten. < 'I
B IT instru ctio n is u sed 10 "h ide ' a 1 lo r 2 by te 'code, Since
this, h idden code w ill p robably m ark an entry point, B IT
instructions are placed on .byt l ines, The On-assembler
do es n't a ttem pt to di s t ingu i sh re al B IT in st r uc tio ns fr om one
O ! these "code-hiders" so' you'll have to decide whether to
m ake chan ges to the so urce.
A ls o w atc h to r p ro gra ms , th at s tar t at the b eg in nin g o f B A S IC '
text sp ace . T hese w i l t probably start w ith a SYS comman d,
but the lln-a!isembIer wil! still try to decode h.
Ultimat:e ty , whatever "he Un-assernb¥er produces can be
re-assembled. (using the C omm o do re a ss em bler ) into ex-
actly the same program' you started with. The labels it
gene ta res migh t b e , subst i tu ted fo r m ote m ea nin gfu l n am es
an d , o f course, It w on 't commen t yo ur Ii.stin g . C han ces am
y ou 're u sing th is program because you can 't g et th e original,
s ou rc e. A lth ough tile Un-assernbler wo n't. g ive YOUia s ou rc e
lis tin g a s c om p lete . y ou su re will g ;et it qu ick er and w ith noquest ions asked . .
I . The lranlGCtor
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 21/68
10 0 p oke5,2; p eek i( 42 ) : p o , k e5 3 , p eek (4 3 ) +27: clr : p ok et , p e e 'k ( 5 ; 2 ) : pDke2"pee~53)1
1110t t s""pee'k(5.2) + p eek (53} "2S 6 : to r i=634to654: read ill: poke l, a : next : sys 639
1 15 d at a1 6S ',2 51 . 7 6; 3 4,2 15 , 160,0., 152: ,145, ], 2 30 , 1 ,2 08. 2 ,2 :3 0.2 , 1 66,2 , 1 6,2 44 ,9 6
1 2.0 h 2"" ,63 4 : M ... S 5 '0 63 : a l=251 : ah = 252 : < :1=1 : c2 =2; rn:h=256 : p=O : mr= 127 : mt"" 12 ,8 : ms ....16
121 q=O = h $="· ':a$=·· :b$='" :c4·=4 : 1=0 ; a l =0: 00=0: deff :nI(P)= (p /mh- i rn t (p /mh) - .mbt1 30 a s " ,,0 : n l$ .. . c ht$ (O ) : a =0: re=O : ad =0: d ef in a s( a}= ( a>3 1 ) an d {a <1 28 )) +(a > 1 59 )1 4 0 If .. , : Ic = 0 : d e ' f f o , r t ( x ) = p e e k { x + ts ) : di m I l m . $ { 2 5 5 } . md(25:5)
IS O p r inl ' U n-A ssem bler ' : p rin t"by P au lH]gginbotlom
754 fo r i" " 1 to 149 : r ea d a , a ~ $.b : mnS(a) =3 1 $ , : md(a ) = b : nex t7:90 p rin t : input"d rive'. p ro gr am fi len am e" ; dlr $,(S ,~ if drS < O ~o r dIIrS >"l'fhen 790
7'ti o p e- ol,S ,I S : .print#l.~t+dr$ : '$ :=dr$+o:" + f$
80 I in put ~drive, s ou rc e m en am e~ ;td$,o f$ ; U . len (o fH > 1 2 th en 80 1
80 2 o fS " "'t d$ +-t + ofS +" : . '~II td$< O "'.o r td$Y .l" th en 802
803 print"'l:t + td'$~close l : open ,2,8,O,f$ :if ds then pr in t ds$ ~dose 2 iend
80 5 t ' = ' ti : gosub 3000 : nf=2 : nf$; '" o rs +~1.5 : p= s-cl : 5$= 0
809 open3 .8 ,S i "@· + n t S +8,S,w·: p r in l n . f . S ; I e . = 0 : iii dd th en p rin t ds8 .end
8]0 if pes-ct 'then p rin t" "3 : ..=$";: ad=s:' gosub 9000: prinlll!3: p.rint"3:;~
8]SIc=ic+ 1 : iH:<>lfthen 830
8] 13nf$=·of$+ m ld $.( st tl '$ (n f) .2 )+ ·.s ~ : p .r in t" '3 ,~ ;· ; prinl"3: ,fil" 'nfS
817 c lo se 3 : nl = nf+m :
go t 080983 0 p=p+d : gosub 2000, : mn=q : sa=p : gcsub 4000 : print"'3;~·';
840 if m n = 36 o r mn =44 t hen p d.llt" 'S ," ;< tth is w as a bit i nst.r u.c Uo :nY : g:oto : 8 4 5
S4~ I f mn$(mn)<> " then 850
8 45 p r in t" 3 ,"~ by t $ " '; ; ad = Illlll ~ osu ib 0 0 10 ; pn n t*3 : g o to 815850 p r in t- :3 ,m ilS (m nf .; - .
8 6 0 oom'd(mn) g o t 0 8 7 '0 1 , 9 0 0 ,'9 3 0 , 9 6 0 ,9 9 0 , W 0 2 0 ., . 150.1 0 8 0 ; 1 1 1 0 ,1 ] ·40;1170,1200,1230810 g o sub 2000: pril1t#3,.~#'$~;~ad=Q ; g o su b 90 10 ; p nin tf3 ,; p =p +d : g o tG 815
900 p rin t*3 :a" : Soto8~5
9 3 0 , p r in~3 : gotQ ,8[5
960 g osu b 20 00 : p rint·:S : $~;;ad = q : g o:su b90 1£ I : prlnt*'3~ :p =p +cl :gal0 8'15990 gosu b 2Q iO ; ad",. q ; gosu b2.o00
1 00 0 IP :$= ~$ '".a d = ad
. . I -
q"mh. : i f adcs o r a,d>e, t hen 101910m if f nr t( ad -s l t h en p$ ""•ad'1 0 1 9 1 p : r in l < l l3 , p $ ; :gosub 9000: print#3 : p=p+c2 : g o t 0 8 1 51 0 20 g o su b 2 :0 0 0 : ad" '" q ; g os ub 20 001025'IP:S=":$~:oo:;;: ;ad+q.mh: ifad<sorad>etheI11030
1026 if fnrt(ad-s)then p$:;;. ad"
1030 p rint*3.p $; ; g osub 90 0 0 ; p r in t" '3 "M,x" ; p ;:;:;p +c2 : g oto S IS
10 50 g osu b 20 00 ; ad ....q : g o su b 2.000
l O S t p $= =,·,r .:ad=ad+q " 'm h : if ad<S o r ad> e th en 10 65
1052 if fn r t( ad . ..s ) t hen p$,=" a d "
1065 ptin~#3,p$; : :g05OO 9000 ; p r it nt #3 ,, ~, { : p ==p +c2 : goto 8] 5
10 80 :sosu b 20 00 : p rint.*3.~ ($·; : ad=q : ,g osu D 90 10 : pritlt '*3.").:{
1090 p= p+ el : g oto 8151110go s ub 2 i JOO :p r i n t ,\ f! 3 :'f $~ :: ad=Q : g O S l J b 90 1 0 : p r i n t N S , " ' , x ) "
1120 p=p+d : g Q (o "U 5
1 1,40 g o su b 2 00 0 : p rin l·3 ,~ $·: : ad=q:: gosub '90 10 : prin:t~:3;·.-r:
1 15 01 1= p +c .1 : g oto ,8i5
I l710 gosub 20 0 0 ; print"'3.~$·;: a d= q :: g o su b '9 0 1 0 : print#3;,y·
] 1 80 p= p -e-el : S ,o to8~5
]200 gosub 2000 :ad= p +q+(q>mr)'" mh + c2 : p -$ =~'$:": Iiad<s 'or adn then 1220
1211 if f n r t(ad~s ) them p$=~ad'
122,0 pri:n ' ' 'S.p$; ; ; g o s u b 9 0 00 ~ p ri nt :'l '3 : p = p+ c 1 !g o t . Q 81 5
l'
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 22/68
1230 g : O S I J D .20 00 : ad = 'q : g osu b 20 00
1231 print*',3,'(:, p$",,~$. : ad" ',ad+q '''m h : ifad< s o r a .d> e th en ' 1240
1 23 2 H fn l1 (a d-s ) th en p$ =:Uad "
1240 prinf#3,pS;: gosub 90001: pr]nt#3:r : p= p+ c2 : goto 815
2000 ge t M 2,d ,: q " '" a sc (a$ '* " n l$ ) : r etu rn3000 print.passl~: get-*2. a$, 1 ;1 $ : rem get start address3010 s=asc( ' a$+n t$ )+asc(b$+nl$ )* . I ' l I l ,h : e--s3021g :et"2, a$.: e~e+ 1 : if s t""O I. h e n. 3 0 21
3022 gosub 9 ;600 : p = s-I3025 p =:p + 1 ; gQ :sub 2000 : n $= m n$(q) : n = md(q)3026 on n g o s u b 3 0 -5 0 . 4 0 10 .4 0'1 0 , 3 0 50 ,3 10 0 ,3 10 0 , 3 10 0 ,3 0 .5 0 ,3 0 50 ,3 0 50 , , 3 0 . 5 0 " 3 11 0, 3 10 0
3030 ilp<=e U'!!'en3025i
3039g~sllb9600:prtnt".p'ass.~ ; re tu rn3050 gesub 2000: p'=p+cl: re turn
310 0 g osu b 20 00 ;ad='q : g osu b 20 00 :ad=ad+q "'m h
310 1 H ad> =5 and 00 <= e then pok e t s+adl - - s , cl
310 2 p ""p +c2; retu rn
3110 g o su b 20 00 :ad ""P+ q ..'lq >m r} *m h+ c :2
3111 H ad> =5an d ad< = e tl .en p ok e Is + ad-s , cl3120 p =p+cl : r e tu rn4 00 0 i~ p > eth en w r in t# 3.~ ;· : p r ii nt *3 ,'".e nd" ; dose 3~ :dose 2 : e nd
4001 if p <s: o r p >e th en retu rn
4005 if ~n r~ (jp ~s) then p rin t#3 ,";· : p rih t#3 :ad"; : ad =P ' : go s ub 9QOO
4010 return900 0 pok e al, fnl(ad) ; p oke ah , adlmb : cmd3,.;: sys M : retu rn
90 10 . p oke al, ad : c md3,; : sy s h 2: : retu rn
9600 dose 2 : open 2, 8, 0, f$ : g e t l l ' 2 . a$, as : return[0000 data 0, brk, 3, I, ora, 9, 5, ora, 4, 6,
toO10 data 8, php, 3, 9, ora, 1, H}, asl, 2, 13:,
[0020 data 14, < 1 5 1 , . 5, 16, bpl, 1:2, 17, ora. 8, 21,
W030 data 22, asl, 10, 24, etc, :3,2'5, ora. 7, 29,
W040 data 30, asi, 6, 32 , jSE, :5,3.3, and, 9, 31,
[0050 data 38, rol, 4, 40, pip , :3,41, and, I, 42:,
[0060 data 45. and, 5 , 46, mi. 5 , . 48. , brnl, 12, 49.
W070 data 53, and. 10, 54;. fO Il" 1 0, 56. set, 3. 51,
l0080 data 61. and, 6, 62; rol, 'S, 64, ni, 3. 65.
[0090 data 69 , eo r , 4, 70, lsr, ,4 . 12. p h a. 3. 73.
W100 data 74, lsr, 2, 76, imp, .5 , 17, ear, 5 . 78.
Hn) 'O data 80 . bvc, 12 , 81 , eor; ,8, 85, eer, 10, 8 16.
W120 data 88. eli, 3, 89, eo!', '7, 93, eor, 6, 94,
HII130 data 96. rts, 3, 9 7 , . adc, ' 9 . , 101, adc, 4, 102"
10140 data 10,4, pia. 3. 105 , ade, 1 , 10 6, ror, 2 .; 1 0 :8 ,
1 0 150 data 1 0 9 . adc , 5 , 1 .1 0 0 , > r O l , 5 , IJ2 , bvs , 1 2, 1 13 "
10160 data 117. adc, la, 118, m:r.]O, ]20, sel, 3 ., 121,
101710 data 1.25, adc, 6,126, ror, 6, 129; sta, 9, 132,
10180 data 133 , s t ta ,4 ,134, s tx , 4 , 136, dey , 3 , 13 ;8.,
10191) data 1 :40 , .s ty ,S , 141 , sta, 5, 1412, six, 5, 144,
10200 data 145. ssa, S. ]48. sty, 10, 149, s ta , 10" 150"
10210 data. 152. tya, 3, ]53, s ta, 1, 154. ~xs , 3, 157.
'i0220 data. 100. Idy, I, ]61, Ida, 9. 162,ldx. l, 164.
10230 data 165, Ida; 4, 1 6 1 6 , ldx, 4, 168, ~ay, 3, iss,
10 240 data 171) , tax , 3 , 172, lldy. 5 , 113 , Ida . 5 . '174,
asl, 4
5
10
6
4
2
8
ora,
ora,
ora,
and,
rol,
and,
and, 7
9
1
5
eor,eor,
lsr,
Isr, 10
6
4[ 3
8
'1
l s r ,
ror,
jmp,
adc,
adc,
sty, 4
3
12
11
6
4
1
5
txa,
bee,
sb: ;
s ta.
Idy,
Ida,
ldx,
2Q
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 23/68
10250 data 176, D e s , 1 2 ' , . 177 . Ida, 8 . 180, Idr. W. 18], Ida, 1 0
10260 data 182, ldx, 1 1 . 184. dv, 3, L S S , Ida, 7 ,. 186, tsx . 3
10270 data 188, Idy, 6, 189. Ida, 6, 190, ldx, '7 " 192 . cpy . 110280 data 193, cmp, 9 . 196, cpy, . . 197, , cmp • 4 . 198, dec, 4 .•10290 data 2 0 0 , i n y ' , 3, 201. ernp, 1 , , 2 0 2 , dex, 3, 204 , cpy . 5) 0 3 0 0 d a l l a 205, cmp, 5 " 206, dec, 5 , , 2 0 8 , bne, l2, 20 9, cm p , 81 0 3 1 0 data 213. cmp, 10 , 214, dec, 1 0 , , 2 U 6 , cld, , 3 , 217 , cmp, 7
1 0 3 2 . 0 data 221. cm p , 6 222 , dec, 6, :224. cpx , 1,225. she, 9•1 0 3 3 0 d i a t a 228. cpx, 4 , 229. s o c , 4 , 230, i nc . 4 . 232. i nx , 3,
10340 data 233, sbc, ], 234, nep, 3 236., cpx , 5.237. s o c . 5.1 0 3 5 0 data 238. lnc, 5 " 24.0, beq . 12, :241. s o c , a ; 245, s o c . 101 0 3 6 0 data 246, inc, JO , 248, sed 3 , :249, she, 7, 253. sbc, 6
1 0 3 7 0 data 254. inc, 0
21
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 24/68
Universal String Thing
T his is n o t a comp l e t e S trin g T l: lin g,. , ju sIthe IN PU T'"
s ectio n . Q u itesim p ly, the p ro gram is an IN P UT ~ utH Hy that
lilts s ome 0'[ th e re stra in ts imp o s ed by the B AS IC IN PU T"
c omm an d" II w o rk s on all v ers io n s o f B ASIC (excep t I. D) f o r
PEl:< ; an d CBM s. I' f th ere 's e n ough demand" a ViC S t r i : n ; s
T hing w ill be released that will p robably w ork on theC om moda te 64 w hen I t a r r ives ,
. [Jogk<t~m e number] must be used in the DO PEN OT OPEN
sta teme nt. U sin g th e ro utin ew ith a ny o th er file n umbe r wi l , 1
r esu lt in ?F1LE NOT OPEN E:R 'ROR after th e S YS call.
N o buffer is r equ i r ed fo r [h e in com in g d ata . T he ch a r a c t e r s
are b t l 1 .1 directly Into th e sp ace alloca ted fo r Ih e s tr ing
variable. If th e strill1!g resides in h ig h R AM , they w ill be
d eli ve re d t he re . lf th e s t r in g is declared in th e program, th e
charac t e r s will land rignl in text space .
T he strin g, used fo rin put m ust be U1ef i rst var iab le seen by
BAS!C. Loc.ailion 18·9 d ecim al is u s ed 10 store th e len gth . of
th e lnp ur SIr ing . Inp u t S lO PS on ly on Carr iage Re t u rn an d
E0 1 w hich o ccu rs a t th e end o f a li le o r r ela tiv e r ec o rd s no !
terminated by a CR. Leading spaces, commas, colons and
q u ota t io n m ark s a re a l i i a ccep t ed .
T h e s ize o f the s t r in g c an be u s ed 0 g overn th e am ou n t o f
ln p u t. F o re xa mp le , r emov in g ' I i i nes 110 and 120 bo rn t i le
p ro g r am below leaves a s = "abcdelghijklmnopq" , w ith a
Jim ButterfleldToronto
l 'el1gth of 17 . Now, s tr in gs lo ng er than 17 can nOI be
retrieved in whole, lns tead, th e r i l ' S t 17 charac ter s are
brought in and th e rem ainder is received II I subsequen t
calls . H th e s tr ing is exactly I j' l on g t ol lowed by a C a rr ia ge
R eturn , a subseq uen t in put w o uld be mel by the CR andP EE K(l89) w ou ld eq ual zero . B e ca refu l th ou gh . In ti l i s c as e
AS will con ta in th e p revlo u s inp u t, no t nu ll s tr ing .
Using nhis r o u t i n e as opposed to IN PU T'" can be-especially
he lp fu l when disk sp ace is a t a p rem ium . 'I I can h andlesrrtn gs IU p to 2 5 :5 c h a r ac t er s I O I 1 l . g a nd th er e's no need for
C am ag e R etu rns .
" - T h e Sllring Thing w as o rig inally a urillry wntren by Bi l l
M ac l.ean o f B M B Cornpuscience. It ln clu ded s tr in g s ea rc h.
str ing overlay. and s tr in g in pm fu nc tio ns . F o r deta ils on t h i spregramsee The Transactor, Volume 3, Issue 1. Copies am
ava ilable fro m th e T oro nto P ET Users Grou p ,
22
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 25/68
4 0 1 reml· .... • .... • •• "'•• ··,.·++••• * * * " ' " • ••S O l6 0 1
' 7 0 1
8 0 1
90
100110
120
130
2 : 0 0
2 ' 1 0
22 0
2 : 3 0
2 5 " 0
260
40 0
4'}()
4 2 04 2 5
430
4 4 0
4564 6 0
rem ••rem ••
rem ••
rem ••
s u i ng t h in g ( uni ve rs a l)j im bu t t er f ie ld
s tr in g u sed fo r lnp ut
mu s t be f i r s t variable
++
+.
" .rem *** "••• i . ' . , . * * · .
as,=' ·abcde' fghjjklmnopq~a$ = a$+ a s +,a:S+a$ + a$a$=a$+ a s +,a:$rem above sets s tr in g klli maximum (l ie. 255)
d lllta, 160. 2.,17'7, 42,]53,184, 0,200,192. 6
data 208,246,16;2, I, 32, 198,255
data 32,228.215,5,201; 13,240, H, 164,,189,145
data 187,200, ]32, 189,196,186:,208,238" 76,204,2:56
for] ; ; ; ;896 to 9 33 : read x : poke j" X : I I =t+ x : nextj
if t<>5167 then stop
dope. ,#~ , " some S EQ file" ,d Orem: next sy s same as 'inputlllIa , $ i '
sys896rem; I=size o f i np u t (couldbeO]
I= :peek( lS9)
p r in t l ef t$ (a$ ,l )
if st = 0 goto 420dc:lose
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 26/68
File Chain TracerI
T hin k abo ut it . Re la ti ve record lef'igths limited only by the
ca pa ci ty o f y ou r dtsk , Number o r f ile s o p en s imu lt an eo u slyllmlred only by FRE ( O ) . AU possible u sing th is ulil iLy by Bi l l
MacL ean o f Mi lt on O n t ar io .
E ver y dis k. file (S EQ , P R .G , or U S R ) is c on lr u cte d fr om s ec to rs
th at a re li nk ed together us in~ " ch a in p o in te rs ". E ac h c h ainpoi interconsists o t tw o bytes ~ h a t r ep r es en t the track and
s e c to r co - o r dl n at es 0 :1 th e n ex t block in th ,em e. T h e p oim er
to th e ftrst blo ck is s tored in th e direc to ry bes lde lh e
filename, Subsequent pointers are stored in the [irst two
by tes ( 0 a nd l) o f each sec to r in th e m e . T o In dic ate th e las ts ec to r o f a file , the track co-o rd ina t e is s et to zero ( CBM d isk
un i t s do n o ' u se t r a c k 1 0fo r t h i s r easo ntand th e by te u sed fo r
th e sec to r co -o rd ina te is set to th e las tp os it lo n u sed .
By r ea din g a ll or th es e p oin ters in to an ar ray , a co mp le te
map cam be bu ill or any r i l le on disk . Then , usi.ng a D irec t
Ac ce ss c h an ne l. any p ar t .0 1any file can be read at a :ny lim ewith a 'block-read' command followed by the correspond-
in g tr ack and sec to r va lu es s to red in th e ar ray fo r that f i le.
Positioning lnto the sector I S done with the "butler-pointer"
command.
T h er e a re several w ays o f t r ac in g th ese p oin te rs to th e en d o f
it file. T h e tr ick , p I cou rse, is .0 ge . . t he ' fi rs t one out 01 th e
directory. One could OPEN th e directory as an SEQ file, bllt
s ea r ch ing througha l ong directory is s lo w in B A S IC . B i ll's
Bill MacLeanMOton, lOot.
p ro g ram leis th e DO S do ~h at w o rk in r na ch lo e la ng u a ge .
W h en a 'file i s O PE .N ed, th e D O S must also k no w where th e
d ir ec to r y e n tr y lies, T hesevalu es are s to red in D O S memory
and can be re t r ieved with th e "m em ory - read" and G ET '"
co mm an ds. O n ce the (h:s1sector is fo un d fro m t h e d i re c to r y ,
t h e fo llow i ng sectors a re "blo ck -read" w ith th e "U 1 '· 'com-
m and, and th e- p o inters are col lected by G EPlllg th e firs t 2:by te s from e ac h u ntil the trac k v alue e qua ls z ero .
'Other Program Notes
T his p rog ram w ill work on th e 80 .50 , 8250 . 90 60 . 90 90 . and
the 40'40 by removing 'the Urst "rem" in Iine 100. DOS
var iables ln th e 40 40 are a ll illthe s am e p la ces but offse t by
4 . T h e s ing le dr ive 20 31 is to ta l ly different and will not
respond properly to this program. VIC disks were not tested.
Accorncdatlens are made for 21 simultaneous open files
wi th(I,
maximum size D f JO I block s each . T h e two Integera r ray s u se u p a total of a bo u t 8 :1 < .C h a n g e the d imens ions
ap pro pr ia tely fo r m ore o r less f iles , an d m ore O r less m a x i -
m um block s , bu t th ey m us t be iden ttc a l and th ere m us t be
enou g h R AM L o h o ld them a lo ng w ith yOU( p rog ram and
other va ria ble s, A q uic k approximation for RAM consump-
tio n o f O De in teger a rray is the product o r me dimensions
L i m e s 2.
The D array is JO .r D r iv e numbers. Preferably. an files
24
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 27/68
c on cer ned w o uld be on one dls l! :eU e, bu t m e TiQutine will
lin d files o n either d rive.
PR IN T D S$ m ig h t be rep laced by a G OSUB 10 y om favori te
e rr or r ou lt in e . Non-existent flies will also be - reported by
lines 160 to 180 .
Even thoug h the data file h as, been CL OSEd (line 150 ), aJIO O S vanables are s tU l p resent in R AM u ntil th ey 're over-wri t ten by ano th er O PEN . T h e secto r , t rack , and drive,
nu mber af 'e u sed to "UI" th e ac tu al di rec to ry seder th at,
h old s th e fi len am e F lS . T h e tr ac k a nd s ec to r c o- ordin ate s o f
th e firs t block in a file are sto red in th e 2nd an d 3 'rd pos i ti on s
at a directory entry, Thus, l is added to the offsel before
e xe cu tin g t he " bu ffe r- po in te r" c omm a nd ,
Shou ld th e file y ou 've O P EN ed be f o und in th e las t sec to r o f
th edlrec to ry , th e track , as w ith any o th er file , is set to zero , If
T lddr~O " T is s et back to th e d lrec to ry t rack nu m ber (line
270 ), bu t th is m ust be decided by t he o ;p er at or (e g. anotherINPUT) o r : ,be t t e r yet, a s u br ou ti ne desig ned ~ o ~ es t w ba.lt
type 'o f d isk u nit is connected,
ValD, 'FhIs Te\!hnique
W i th th is routine, a . r ela ti ve f il e system co u ld be im p le-
mented wi t h reco rd s izes m uch larg er th an 254. O f cou rse
s t r in gs M e llmaedto 255 s o m ore than one would be
neces sary to s to re a record.
A .s u bl !'o u ti rn e fo r t his wmdd need th e array i ndex nUnlbe[
( ls t d imen~i .on ) t ha t c ont ai ns the potn ters to a .pa r t i cu la r l i l e .T h is in fo rm atio n sh o u ld a lso be s to red as po in te r s are
co llec ted, T o p osit io n to a r eco rd , th e p rog ram wou ld "U l '
th e c lo ses t sec to r, T h e cc-crdlnetes 'fo r t h is s ec to r w ill be
s tored in th e array at th e element , ca l cu l a ted by :
~Nrr(( reco rd nu mber - 1 ) . (record s ize 1254»)
The remainder of the above ls used toposttion into tile
sec tor when th e record s ize is no t a mll l~ ip le of 254. A
co u nter m u s t ,a lso be main ta ined so t ha t th e nex t block
wo uld be read w hen the 254th byte has been retrteved . A
slight variauo n o f Jim B uU erfiield "s U nw ersal Strin g T hlillQ
(tl i' lis lssue) would be ideal.
N ow th at you h ave all th is done. a co lum nar repO rt g enera-
ror is a s im ple task . F i gl lr es f rom several different : fi les cou ld
be mnput s id e -b y- sid e .
Allh'c) 'ugh th is a~proach i s n ot imm .edi iat ely suited to r ex-
pand i . n gmes . it could b e in clu ded w ith a llt t leex tra code.
H o w ev er . c ha ng es to ex is t in g data can be p er fo rm ed in a
frooti .on. Df tne tim e it w ou ld :take 10 op en and dose all o f th e
f i les seperately.
O n fin al note... B ill M aclean teus m e that he m ay release a
more 'complete versio n o f th is , lItility if th ere 's e no ug h
d eman d. II w ou ld co ntain all necessary funct ions such ast h os e d is cu s se d, p l u s so me extras; (no doubt ) , Comment s
a re w elc ome. p le as e a d d l r : e s s them to me (K arl J. H il do n) a !The T r ansa ct o r.
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 28/68
: r em se l sector
] 00 rem d4040 ""4 ; rem rem ove rem fo r u se w ith 40 410l U ) z $ ; " " c hr $( O } : dim t % ~ 2 0 , '100),,5%(20, l O O } , d ( 2 1 ) '1
] 20 i npu t " f ilen ,ame.,f ile'" ~; ( , $ " f. : fi $ =f$ +• .sr ~]3{) open 2, 8, 2 " ~.o!. : open 1 , 5 , 8. 15
] 40 open 5 , 8, 5 ; (f i$)
] s . o pri.nl ds$ ; diose 5
160 print'" 15 , "m-r \:h r $ (1 4 2 + d 4) ;c h r $( 67 )17 0 g et" '15 . a$ : e=a_sc{ a i+ z$) ; r e m e : u l : ) r ?
18 0 if e= 2 55 th en prinflnot fo un d ' : p r ln t ,:g a lo 450
19 '0 ptinr'15, " rn -r • c h r$ (1 46 + d4),;chr$(61)
2 00 g e! #1 5, a.$: s=<l isc(a$+z$)
210prili~N] 5, •m-r ~chr$(l49 - : I - d4);chr$(67)
2 2:0 g e ~# 15 , a$: t :=asc( ,aS+zS)2 30 p r in t''''' 1 5, ." r n- r ~ c h r:$ {1 50 " . d 4.J ;r h r$ (6 7)
2 4,0 g e t# 15 . il:$ : o",":asc{a$+z$}
2 50 p rim l# 15 ,."m-r · ch rS : ( l44 +d4) ;chd(67}2 60 g et# '1 5, a$ : d=asc(a$+z$) i: d{ .l) .,.d : r em dr ive num
27 0 i f t = 0 <then t =39 : rem 1=18 f o r 4>04 'D .76 fo r :906G1/90
280 prinf'entry d ir tr ac k §or : : : : ;~; : t:~,~: ,s
2.90 p ri n t" o ffs et in to sec to r :=~;0
300 prlnt" drive =":d
310 print#15.w
ul:";2;d:t;s
3 20 p rin t" 15 , ~b-p" - , :2 :o+ 1
33 0 11", ,10
: r em op en direc t and cm d channel
: r am op en and
: r em dC) -$ efi le 'i lS '
: rem sector in di r
: rem track in dir
: rem of~:setnto sector
3410 ge l*2 , a s35 0 I " " a sc {a S+ zS )
360 g et.'"2 , a$
37 0 s = a sc (.a $ + z$ j38 0 t%(f . n~=l: s%(f,nj=s
390 if t=O then 450
400 prinl~sec,~:[I':'orile al';l,s
410 n=n+l
4 20 p r in l# l,S , "ul :";2;d;t;.s
430 pr[nt#i5, "b-p;";2:0
440 9O to 3 4 { ] 1
450 close 2; do se 1 5
: rem p os lt to n in to d ir: rem array index
: r em ge1 ltr ack
: rem store in array
: r em t r a c k ; ; ; ; ; ; O ? ye s, e nd
; rem read subsequen t b lk s
; r em p os 'ntc zero
S.,..mHrlOctob., '19~2'
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 29/68
Translation Ar,rays
H aw m any tim es h ave you w an ted to rep resent a number
l us in g a k~ on th ek eyboa rd ? Ne ve r, eh, W elL .. n ext t ime
yo u do , th is t idy little p ie ce o f c od e w in come ,inhandy.
U00 get a s !f a s =~,' then ] 0 0
110 ifa$='"':1 t hen X=; 11 20 i fa $= '" w "t he .n x= 2
J 30 if as ='"e" t h . e J ' I I X =4
140 ihS ='"r" then x = 815 0 if a.$='"t" then x =16
J60 if as ='"1 th en %= ,3 ,2
170 ifa$="u· thenx=64
180 ifa5="r thenx=128
190 ih$='·o" thelu=2S6
200 if a s · = ' · p ~then x=51221 0 pri int x: go lO 10 0
B u t yo u say, " th a t 's no t very t idy at all ' , and you 're
,absolutely right A s a m atter 0' radl. it r ee ks . H er e's a b ett er
way . ..
G iv en th e n atu re o f t h e p os sibiliti ,es fO I : x (ie. a ll p ow er s ,o f 2) ,i i t bec om es a pp arent lli la t a POR -NEX T lo o p cc uld se arcb
th ro us.h K YS, a nd th en o utp u t 2 raised to the power o f N ,
w here N is title posi t ion o f A S , wUhin K Y $. F or ex~m ti>le;
100 ky$= "qwertyu iop"1 1 0 g e 1 ia $:i fa $= '" 't h en ll O
120 for' j=] to , len(ky$l
)30 i:(,at =midS (ky:$., i. 1 ) t he nprln12 t 0-1) : goto 1t o
140 nex t: g oto 1 r oOn Jy th e p ro blem he re is t~a:1 as K YS ge ts : lomger, t he s ea rc h
becomes slo w e:r, an d o ur lo u llp ut n umbers may IilQ[ be so()fder1y.
Tbe best way is a t ransl1at ion anay, It allowsfor expansion,
i t 's fa s t and can h andle every k!ey o n th e k ey bo ard.
J 00 ky$ = ..qwerty ,u iop·l0 5 dim ou t f255 )
110 fo;r.i= I to le n(k yS )
120 Qu t ( asc (mid$ (kySI, j » ) ) = 2.t fj-l}130 nexllA O get:a$,: if . a s =•• Iben 140
IS O p rin t au t (a sc (a$): ,g oto 14 0
O f eo ur seth e a oo ve is m er el1 y a tr:a nsp osilio n o f the filrst two .
The :ledmiqu,t! shows Its true sttength in th.e fol lowing
examp~lles.
S....... r lOct . .. . '1912
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 30/68
IEEE Modem Driver
Haveyou everbeen in ,abin,d fo r an ASC ll m od em driver bu tjust d id n't have o ne wilhilfl reach? C on vertin g P ET A SC U
(sometimes caned "PE.TSCII" ) to real ASC II is n o t SQ tou!!jh
us ing trans,iaNon ar rays . With t h is p r og r am yo u can be IJP
and ru nn ing in no tim e from any P ET /C BM th ro u gh an
IEEE m o dem , a nd it 's ea sily m em o rized.
]0 0 g o su b .210 0
] 10 g et a :$ ; if ,,$<>_. th en p rin tW5 , c h r$ {_ t( as c( a$ J} );
120' if peeklsrq] and 128 then get'"'S, as, ;,x9 " " "pe iek( ieee ) :
prjnt cb r$( l{asc (a$ + dnS(O ) ) ) } ;
1 3 1 } go ta L 1 0
200 d im t{255 ], f(255 ~ : prim ch:r$(14)
210 fOlf j=32 to 64: t(j)'=j ; next
220 fOlr j =65 to 90: I( j)" . , i+32: ru YL230 fO lrj= -9 1 to 95:lG}=i :r·~t
240 fm i:192 to 218: l(i)= j 128: rex250 t(13)= 13 : t (20}=8
2:60 rem add m ote fu nc t ion s h ere
270 loll' l=01[0255 :,H t m thenl(l(j)) = i :f ( ltO}+ - ] 28)= j : next
2:80 po ke 1020, 0 ; p oke 59 46B J 4 : open 5, 5
290 s rq=59427 :.ieee=5 '9426: re tu rn
T h is m o der n dr iv er is ac tu ally an adep tau on o f o ne by Ji m
Bune rfiE !ld w ith a p inch o f Pau l H ig sL nbou ,om flavo uring .
No t i ce t h a t th e k eyboa rd /m odem serv ic ing is kepI c lo s e. t o
th e start w ith th e se t-u p caned once a s a s ub ro ut in e, In a
communica t i ons ty pe env lronm ent , m ax im um sp eed is es ·
sent ia l . Wh.en B A S IC sees a backw ards G O TO (as in lin e
130) it starts at th e b eg in n in g o f BASIC a ,nGse arch es fo rw ard
' 1 : 0 t h e d es ti na ti nn l ine. B y moving the s etu p r ou tin e' out o f
th e w ay , B A5~ :( is re lieved o f l ook ing t h ro u g h unnecessary
lin e n um bers, T he rlrne saved . is n o t much. bUitm ig ht b e jus t
e no ug h t o s ave p ote nt ia lly l os t c ha rac te r s whi le t ransmist ing
a nd /o r r ec ei vi ng .
T w o tr an sla tio n ta bles a re used here : the T a rr ay fo r c ha ra c-
ters sen t to th e m odem and th e F ar ray fo r ch arac ters
received from the modem. Integer arrays could have been
u sed bu t !-Joa,tng p o in t a rr ay s a re f as te r.
Graphics are seldom used in conununlcauons, P.RINT
C HR $(14) sets U pp er/L ow er case mode .
Line 21 0 begm s sett ing u p th e T O ar ra .y . C h a rac ters 32
(s pac e) th ro ug h 64 (@)arel thesame in A SC II as in PETSCI [ "
so a simple equa te does lit. In Upper/Lower case mode,
PE1.CII 65 to 9 1) dis pla ys lo w er c as e letter s, and in tru e
A SC II, low er case ran ges fro m 9 7 1 0 1 122, so 32 Is added to
each (line 220), The five cha rac ters from 91 to 95 are the
sam e ag ain , ~ o r bo th " T ru e ASCI I u p p e r case is th e s ame as
PETSCII lo w er c as e-v alu es . h o wev er , un like d um b term i-
nals ; one mu st u se th e SH IfT k ey to obta in them . .Th is ish an dlle d b y l ine 240 . C arr iag e retu rn and Delete are a . w a y
from th e m ain s tream of t h i n g s s o th ey 'r e s et u p in div idu ally
(line 250 ). PO K E 1020,0 disables IEEE tim eou t and th e
O P:EN com mand is Jor th e modem .
G eU in g ba ck fio o ur subject, it 's lines 1.10 and 120 th at lakeadvantag e of th e array s. L ine 1 10 G Ii:T l;characters Irom th e
keyboard, When it has one , the PETSC[[value is used as an
i ndex into the Tn array. F or e xamp le , pre-ssing DELete,
which is CHR$(2O) t ,causes the c on ten ts o f T ( 20) to be se nt to
the modem as a single byte value, in this case 8 which is
ASCI I lor Rubout.
Line 12{} ,GETs[rom the modern, SRQ signals a chan~.tter
pend i ng by set!mg bi t 7 o f 59 427 . A lfter the G SP ', the SR .Q
Flag is cleared by s imp ly do i ng lit 1ead o f the lEEE o utp ut
buffer Ohis is bU ilt in to the sm arts o f the IG . T he true A SC I[c ha ra cter rec eived is u sed. as an index in to th e F RO M a r rey,
T he charac ter is converted to PEThel( a nd P R IN T ed. using
C HR $. T he C HR $(O ) is added to A $, as a p re cautio n aga in st
the n u ll s tr in g .
Keyboard Setup
Now let's tak e th in g s o ne s tep fu rth er , Address ing onep ro blem at a tim e is o ften the best w ay to so lve a p r og r am -
m in g task . H ere w e'll lo ok ala s im p le o rg an k ey bo ar d.
F irs t a table o f frequencies mu s t be e st ab lls h ed . T h is i s d on e
easily u sin g a s ta nda rd fo rm u la to u.n d in any book 01 mus i c
ru ndam eru als , I t s ta r ts w ith ti le h ig hes t des i red no te and
t he n d iv id es it d ow n fo r s u bs eq u er u descending n otes . T h e
r esult s awes to re I nt o the F ( F re q u 'e nc y ) a rr ey .
Nex t the k ey bo ard is defin ed. O n o ctave (lo vers 1 2 n otes" A
fo G p lu s th e s ha rp s ; The 24 k ey s ch o sen to co r resp o nd to
th e 24 calculated hequendes were selected to resem ble a
dual-level p ia no k ey bo ar d (Li nes ] 0 0 0 - ' 0 40 ) .
T he K YalT ay IS u sed to s to re ascending values from 1 to 24
in th e e lem en t c o rr es p o nd ln g 1 0 th e ASC v alu e O f h e k eys
(Lines . 2 0 0 0 -2 040 ) .
So now w e h ave Iwo levels Q f lndirectioa. T h e ASC valu e o f
t he ' key p res sed is u s ed 10 index th e key ar ray . and th e valu e
ilheTi'aMit:lCfOf
5.pt.mIN r'Octalb.r 19128
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 31/68
th ere is u sed to index into the lrequen yanay.
1000 d im f(24) : fl ::::040
10 10 for j=24 to 1 s t ep - I
1020 U=fll (21 ([112))
1 0 3 0 fO)= 1 1
1040 next
200l(J d im ky {2S5}
2( ) ],O kyS" ,, ·zsxdcvgb lm j rn r5 t6yuB l900p "
2020 fo r j = t Ito le n ( k) !$ )2030 1< y (asc (mid$, (ky$, j, ]})l =
2M O next
30 0 0 p ok e 594,66, 15
3010 pokeS9467. 16
3020 get as ::U a$=" U th en 30 20
3030 fr=(500000/4/f (ky (asc (a$))))- 2
3040 p ok e 59464, fr ; rem p r in t Ir
305 .0 if p eek (15 ~ )<> 255 then 3050
30 60 p oke 59< \64,0
3010 go to ,3020
S ev er al m o dif ic at io ns a re a va ila ble t o Lillis p ro gram . F irs t o l
al l . it u ses o nly one waveform pattern. T h e ", IS " in line
3.0 0 is binary 0.0001] 11. This will produce a very even
squa r e wave . T ry differ en l va lu es b ut 0 andl255 will p roduce
nothi l i lg, Secondly, Lry subst i tu t ing the s ing l 4 in line 30 30
10 a.2 o r an 8 . T he variable F R can rang e from 1 to 255 . T ak e
th e R EM out o f line 3 040 to see w ha t it 's do ing . T he range
co u ld be inc reased several w ay s. Yo u mignt add m ore
frequ enc ies and k eys o r you can leave a coup le o f o cta v 5
g ap betw een th e lo w er and the h i ghe r when set ting u p th e F
array.
Th i s p r o gr am is extremely u ns op h ls tic at ed , s o t he re 's lots of
room for improvement, However, the emphasis was on
translation arrays. Whe n we explore music synthesis . the
techniques employed here wil l undoubtedly re-surface,
The Jran.sactor 20 SephJmbe'l'IOdabar 198:2
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 32/68
Flling It.
O nce you h ave learned h ow to inp ut from th e k eybo ard and
o utp ut to th e s creen , i t 's easy to tak e the n ex t s tep , a nd in pu t
o r o u tp u t u si ng o th er devices.
The p r in t e r is handy, o f co urse, B ut th e s u per p ow er co mes
fr om dev ic es you can both read and w ri te. T h a t w ay ,
in fo rm atio n can be' s to red now and bro ug ht back in la ter .You can store names , addresses, p hone num bers ... and
read th em in w ben YOLI need th em . T h is g ives you tw o
a dv an ta g es : fi rs t, t ile information i sn 't lo st w h en YOL I turn
the power off; and second. YOIl have lots o r s t o r age spaceeven if y ou r c om p uter m em o ry is sm all.
The Golden Rule.
You ' ll r in d it easy to rem em ber th e g olden ru le o f inp ut and
o utp ut: th e in fo rm at ion g oing o ut is a lm os t exac t ly as you
w ou ld see it Q 1 nth e sc reen . S o if you ask ed to p r in t o u t a
valu e o f 167 , ih e fo llo wing ch arac ters w ou ld h e sen t to thec as se tte, p rin ter o r d is k: S p ac e; 1 : 6 ; 7 ; R e tu rn . T h at 's a lm o st
exact ly th e s am e as w ou ld g o to th e sc reen ; w e w ou ldn 't see
th e R etu rn o n th e sc reen , bu t w e'd see i ts effec t s inc e a new
line wo u ld b e s ta rt ed .
T ile op po s ite s ide o f th e g olden ru le co ncerns inp ut.Jl th e
abo ve valu e w as w rit ten to a dev ice, and la ter w e rew ind
and ask to INPUT from that device, the program will re-
ceived exact ly th e sam e info rm at ion a s H w e ty p ed on th e
Jim ButterfieldToronto, Ont,
keys: Space , 1 . , 6, 1, and Return, On the keyboa rd , RETURN
s lg nals th at w e are fin is h ed: and it m eans th e s am e w hen
'th e in fo rm atio n c om es fro m s om e o th er devic e.
Two specia l . s itu arlons shou ld be ment ioned . Y ou m igh t
h ave noticed th at if w e say PR TN T 1 67 an ex tra cha rac t e r is
delivered to , th e s c reen : beh ind th e la s t d.igit, 7 , th ere 's acu r so r - r i gh t . You m ay n ot n otic e it , s in ceit do es n't p rin t, bu t
i t 's th ere. T h is ex tra ch arac ter w ill no t be sen t to o th er
devices, T hat 's g ood becau se w e don't need it ; we' s av e th e
sp ace and no h arm is done.
T he o th er s i tu atio n is ano th er inv is ible ch arac ter . M any
vers ion s o f B as ic send o ne m ore ch arac ter a fter RETURN .
B as ic 4.0 do es [lo t no rm ally sen d it , bu t m os t o th er B as ic s
s en d a s pe cia l c ha ra cte r called a I .. in ef ee d. T h e L i n ef ee d i s 1 .1
n ic e c ha ra cte r fo r c e rta in ty p es o f p rin ter s: it may b e n ee de d
to m ove th e p ap er u p ready fo r p rin tin g th e nex t lin e. B u t i t 's
w as ted in da ta s to rag e, and m ig h t even g ive u s ' a li t t let ro u ble ..M o r e o n 't hi s later,
Writing A File.
It 's eas y to w rite a fi le" A l l w e. n eed to do is : Open it , wh i ch
tells th e co mp uter to g et every th ing ready to g o; P r in t th e
stuff; and th en C lo se it , w hich tells th e com pu ter to w rap
every th in g u p.
Th.lrilliisactor 30 S.pt.mb.i'IOctGb.1' 1912
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 33/68
T h is is ju s t a s ea sy , excep t than w e need 10 w rite th ese
s ta tem ents as a p rog ram . IN PUT and IN PU T'" won', w ork as
le t 's do it . If you h ave casse tte tap e, typ e:
OPEN 6 ,1 , 1, " DAT A FlL E"
or if YOll have disk, type:
O PEN 6, 8, 2, " G ; D A T A F I L E , S , W " '
. , . and in eith er ,c ase, y ou r fi le num ber 6 is ready to g o .
N ow w e can w rite a . few th ing s. L et 's try so me nu mbers :
PRIN't#6,3
PR INT '* 6, 1 23
PRINJ#6,3*45"'6
A nd a few nam es :
PR INT " "6 , " HELLO '
PR IN T""6, "M Y N AM E IS FR ED"
F ina lly , w e w rap up th e file w ith :
CL OSE 6
A re w no tes . D id y ou no tice that aJte rwe op ened th e fl le , the
coding w as th e sam e no . m a tter w h eth er w e w ere g o ing to
tap e o r d isk ? T he .o PEN s ta tem ent se ts every th i n g u p fo r u s .
T his can make thin gs very easy.
N ote th ai w e u se one p r in t s ta tem ent fo r one item . D on 't tr y
punctuat ion: PR1NT tt6,3,123, wou ld no t work r ig h t - w e
w ill n eed that extra RETUR N when we read back the data.
1 1 " 5 a lso in teres ting tu see th at ex p res s ions are w ork ed ou tbefo re being p r in ted, so th a t 3 ' " 4 . 5 · , 6 w ill be p laced on th e
iH e a s va lu e 4 2,
Now fo r th at sneak y Linefeed, You don't real ly need to
wor ry abou t t h i s i f yo u h ave 4.0 B as ic o r if you a re u s ing
cas set te tap e, bu t it 's g ood p rac tice . T h o se PR IN T~ s ta te-
men t s wrote th e in fo rm a tion w e ask ed; th en a R etu rn ,
w h ich w e w anted; th en a L inefeed, w h ich w e didn 't w an t .
W e can g et r id o f th e u nw anted l.inefeed by w ri ting th e
R etu rn o u r se lves ~ i t c odes a s C HR $(13) , S o w e m ig h t m ore
c o rr ec tly w r it e:
PR1NP '6 , " HELLOB ; CHR$ (13 ) ;
. "and don't fo~getboth semicolons.
Reading It Back.
dir ec t s ta tem ents typ ed on the scr een . S o w e code:
lO OO PEN 4; 0 , 0 , "DA TAF IL E."
or, fo r disk:
100 O PEN 4,8 ,3 , " DA TA FItE"
A nd con tinu e w ith :
110 ]NPUT#4, A$
12: 0PR INT A$
130]F sr- .o G O T O 1100
140 CL O SE 4
W h at 's S T do ing ? That's th e S ta tu s w ord .. If i t 's zero , w e are
reading o m fi le no rm ally , If i t 's no n-zero th ere is so meth ing
go ing on - usually w e are at the end o f the file (ST wil l equal
64 in t hi s c as e) .
YOUI' d ata s ho u ld c ome b ac k ve ry nicely just as yo u w ro te it.
ConclusioD_
It's not h a rd to wr i t e and read files, We'll pick up a few fille
p o tra s n ext tim e a ro un d .
IheTraluac:to!'" 31 SeptamborlOdober 1982
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 34/68
SuperPET Terminal Program
. .
If you ba y! ! a S UJ> er IP ET a nd an R S232 modem , th en you
probabl ,y have- a te rm in a] p ro gram 10,m ake th em g o ' , B u t
u n less yo u w ro te th e p ro g ram , you m ay be won(h~r ingh owfile Supe rPET se rial p o rt w o rk s. Thi s p l" ogrnm. wm show yO I1
iust how easy it Is .
T he S up erPET RS232 pori: is c on t rol led etIllirely 'by one chip:
th e 6551 AC IA I (Asynchronous Commun i cauon s Inte r lace
Adapter). Tile 6S51 has 4 lnremal reglsters; dta, s ta tu s . t ile
c omm an d reg is ter . an d th e c on tr ol r eg is ter . Incoming!
ou t go i ng , characters, are rou ted th rou gh , th e' Data, Regi s le r .
T h e S ta tu s R e gis ter tells I.lS i f a ch arac ter h as arrived, il th e
las t o ne w as 'S en t, a nd o th er th in g s li ke transrneslon emm; .
'T h e C omman d IReg i s t e r controls verioas t l 'ansmit / l :e<:Eiv~
func t ions such a s p ali 'i ty m ode, fu B /h aM duplex. etc , B au d
rate, word length. numbe r o r s to p bit s; a nd dock so urc e arecontrol led by th e C ontro l R eg is ter ., A dd'resses fo r th e 655 I
regi s te rs are' lr or n S EF F O to SEFF3,
Only ~heCon t r o l and C omm and R eg is ters need. 10 be set u p
before using [he port V a r i o u s , fUflcti:Qns are invoked by
se lt i llTLSi l l s wUhi[ l the registers. T h e I Pr o~ ram s et s th e Con-
t ro l R eg .. fo :r 3 00 bau d (bau d; bits p er second) . a wo rd
leng th e! 1 w h h J s to p bi t , an d all c on tro lled by the 6551
lnternal dock. The Command R . e g . is se t lo r even p arity an dno in ter ru p ts . S om e olherconfigurat ions a re sh ew n ln th e
l i s t i ng . but ro r more detail,s seefhe ta ble s t ha i: fo l low.
John Stoveken
Milton" Ont.
On c e y o u'v e e st eb lt sh e d t l 1 l .e C Q n n g u r a t i o n o j th e A CiA . t he
Deta a nd S ta tu S ' registers do all th e lIIYork; T he Data R eg . is
used for both sending and l~eceMl1g ch araciess, 'ifbe 655 L
"knows" the differ'cnce between eheraeers Intended fO r
o u tp u t, a nd those th at m us t be' tr ea ted a s In pur, T w o bits in
t he Sta tus Register ' H ag these co nd itio ns. W hen a characeter
c er nes in fr om the RS2321: ine . bil3,Q!f Ilhle S t a~us Reg. is set to1 (lines 220 -230 ) . [f you ' re s en d in g , a c h a ra c te r by POKi n g il
to the Data RegiS -leT .bi t 4 , fa the S tatu s R 'eg . must be set to I
0' els e th .e la st charac te r h as not been s ent ,(lines . 340 '& 350 ) .
T he entire com municat io ns sec tion in Ih i p ro gram lies
between 20 0 and 390 ,. ] 1" 5 ,e :asy U) fo ll ow . .. sIan by i rnagln-
i'ng i l ! 1 1 1 inaCit ive RS2~32Une and an inact ive keyboard.
T h e S ta tu s Reg;isteralso f la g s o t h e r potential condit ions s u ch
a s e rr ro rs in tr an sm is sio n, B u t u nles s you . g o to a mach iae]ian guage p JiO gram , yo u w on 't heve lime' in BAS iC to do
any th ing , wifh th em . B AS IC w iU pe rm i t ' abou t 30 0 bau d
max imum . A n yth in g h i,s he r a n d y ou'll s ta rt dr op p ing ch ar -acters.
Y o u'll n otic e th at Jo hn is using t ra ns la ti on a rr ay s t o c o nv er s
P et: A S C Il to tru e A SC II an d v ic e ver sa . F or m or e j nlorma lion
o n rhisp ow ertul an d versatile le ch niq ue , s ee 'Ihe art icle in
this issue en titled "T ran slatio n A rrays," .
lh.'Trall:lGOe .. 32
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 35/68
29 8 rem HU***
299 :
30 0 get a$ ; if a s = ~ " then 200310 ch = asc(a$)32'0 if el l = 18 th en e t = = 1 : g oto 30 0330 if c t = 1 th en et = a : ch = = ch and ,63
340 a = peekirs» 1)
35'0 if a and 16 = 0 t hen 340360 print chr ,$ (ch) ;
370 ' ch ~ p a(ch )
380' p o ke rs, el l
39.0 g O I O 20 0
997 :
9 9 ' 8 :rern a sc i i to pet t o a sc ii t ab le c o nv er si on
9 '9 9 :
1 0 00 dim p a(2 55 ), a p(2 55 )
1010 fo r i=0 to 64 : pa(i}"" i;p(i);;;;i:,ext :rem numbers and stuff
1020 for i=65 to 90
1030 pa ( :i ) - j, + 32~040 ap (i ,) = i+ 128
E050 next
]060 for i 91 to 96 : pa(i)=i:p ( i ) " "i:ex t :.ap(96)= 44
1070fo ri==9 7to 127
1090 ap( j } ==i-32
1100 next
llWforl= 193 to218
1120 pa(i}= i-1281130 next
1140 ap(127)=2'O: pa(20)=127 :rem deletes
1 15 0 a p(8 }= 1 57 : pa(1S7)=8 .rem back space
1160 pa(7)=7: ap(7)= '7 .rern bell
l170 a p(1 2) = 1 47 : pa(l47)= 12 :rem clr screen/form feed
I ,L80 ap O 0)= 10 : pa(1 0) = 10 .rem If
1190 p at] 3 )= 13, ~ap (13) ;;;;;; 3 : p a(l41)= 13rem cr ( permits shU t lock)!t200 return .
send character out
10 r em , ,' " " '. ..s imp le bas ic te rm ina l p r og r am : fo r s up e rp et . .* * . .
,20 rs = 14*4096 + 15*256 + lS*I6:remsuperpet 6551 add re ss
30 ell = 6 + 16 ... 32 + 0: rem 300 baud + elk + 7 bit word + I stop bit:
31 r em o th e r c o.n fi g s:6 + 16 + 32 + ] 28 "" above with 2 s t op bits32 rem 8 + ] 6 + 32 + 0 = 1 20 0 ba ud, good lu ck in basic
33 rem 6 + ] 6 + 0 + 0 = 8 bit w ord40 em ~ 96 + ll .rem even p arI ty an d no in .ter r u pts
41 rem 32 +11 ::: odd pa rity "O + 11 = n o p arity50 poke rs + 2 ,em
60 p ok e r s + 3 , en70 d$ , = du$(20)
80 gosub 1000 .rem set up translation arrays
9 0 print._.;
98 rem *HHH g et cha rac t e r in 111."".""
99 :
200 a = peek{rs+ 1) :rem status res is te r210 if (a and 8) = 0 th en 30 0 :rem no character rece ived
220 cr = peek(rs) :r em r ec ei ve c h ar ac te r
225 cr = ap(cr) :r em a sc i! to p et conve r s ion230 print du$(cr);
29 7 :
:rem get keyboard character
:rem next cha rac t e r control
:r em Ia st c h ar ac te r :not se n t
:r em p et to asc ii
: rem sen d c h ar ac te r o u t
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 36/68
,A,PL And The Su:p ,e ,rPET
Serial Port
A fter w ork in g w ith c om p uters fo r only fou r y ears , th e rea l
s u rp r i s e in th is re la t ionsh ip is probably t he i nfr eq u en cy
ra th er th an th e f requency w ith w h ic h m ajo r p ro blem s ar is e.
[won ' t claim that th is . i s b ec a u se a lm os t a ll m y w ork is in
AP L , b u t it p ro ba bly do es c on tr ibu te . O n e s uc h p ro blem th at
I 've finally c leared u p invo lved th e u se o f th e s er ia l , p o r t
( R S = = . 2 3 2 C ) o n m y S up erPE .T . , Itto ok a lo t o f h elp fro m a lo t o fp eo ple , bu t my s p ec ia l th an k s g o to Peter V elo cd o f C omm o-
do re C anada . H e too k th e tim e and sh ow ed th e in teres t to
set lip the contacts that finally shed light on one more
hidden sec ret o f th e S up er P El.
D ocu menta tio n o f th e S up erP ET 's s er ia l p or t h as o nly been
released in bits and p ieces , A t th is p o in t I 'm s till not :
convinced th a t enou g h p ieces h ave com e o u t to le t th e
ave rage u se r 'p u ll th em all together , even if h e h ap p ens to
h av e a cc es s 10 a ll th e a va ila ble li ter atu re. I 'll try 10 'co r r e c t
t h i s here" a t leas t to r any APL use r s ill th e audience. Don ' t
s to p th o ug h , if yo u are no t an A PL freak lik e m e. M uch o fth is is n ot t ied to , anyone l anguage , o ther pa r t s m ay at leas tbe a t g u i di n g m i le st o ne '!
T h e f i r s t : p roblem in u s ing th e ser ia l p o r t is to g et som e
in fo rm atio n a bo ut i ts "pinouts": the locat ion and operat ion
o r each o f th e 2 5 elec tr ic al connect lons th a t m ak e u p th is
commun i c a t i on s channel, Some o Hh is h as recently become
avai lable , bu t none th a t I fo u nd w as either explicit or
complete. Here is how the s tandard information goe s :
Eike KaiserToronto O 'D t ..
RS-232C h as th e f o l l owing 25 p ins , in tw o c olum ns
.1 e ar th g r ou n d
,2 : t al ll sm i ll ed d at a (TXD)
( R X D I
( R TS )
(CI'S)
(DSR )
14 sec. transmlned d!ala
1 5 Ir an sm J l d oc k
16 s~ .o l1d " IIY rece ived da ta
1 7 r ec eiv er c lo ck
18 •..• u n as si gn ed , ..
1 9 s ec . r eq u es t 1 :0 send
2 0 da ta le 'r mi na l r ea dy (O T R )
21 s i gna l ql.lalilydetecl
22 t lng detect
23 d at a r at e s el ec t
24 tr an sm it d oc k
25 ,. .u ness lg ned, . "
RE F : B y te . May 1982, p , 21 2 et atCommod o r e Mag , F eb 82 , p .S 8, A pr /M ay 82 p .87
Diablo d oc u men ta tio n, p .2 ~1 0
Torpe t , A p r i l l 9 8 2 , p ..23
C om pu ters and Prog ram ming , Ju llA ug 1981, p .3]
T he T ransacto r , V olu me 3, Is s lJe*6. p .G
Normal ly , o nly p ins l -8 , and p in . 20 a re u sed. D iablo and
S up er PE .T u se o nly th ese p in s bu t may have conniet on pIns
2 & 3 , o r p ins 4 & 5.
T h e' p in a llo ca t io ns s ho w n abo ve r eflec t th e in du stry s tan d-
. 3 , rece ived da ta
,4 r eq u es t t o s end
5 clea r to send
6 data se t ready
7 lo gic g ro un d
8 carrier delee!
9 . . . rese rved i. . .
I 0 • • . re s erved ., .
II..unassigned ...
12 see, car r ie r deled
13 sec. dear to send
( [ )CD)
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 37/68
ard w hich , so far as I h ave seen, Commodorehave adhered
to , As noted, o n ly p in s 1-8 and p in 20 are used by th e
S up erP E.T . A m ong o th er th in gs , th is lim its u sers to o nly o ne
seria l device a t a tim e being attach ed to th e m ach ine. If you
dream ed of a p lo t t e r and p r in t e r , one o f th em better be on
th e IE EE p or t.
T he no te on a poss ible conf le t an p ins 2 and 3 tu rned o ut tobe a fact. I doubted th is fo r a . Iong t ime. T he connect ionins ide the S1. IperPET :is the female sid e o f the RS-232 p l ug ,
W ith ou t \o !i ts hin gto s ex is t, I r ea so ne d th at th e "t ransmi t ted"
line o n a m alep lu g rea lly ougntto be th e "received" line on '
a fem ale. p lu g. A fter a ll •. none o f t h e d o cume n ta ti o n refer"
anced above sa id "transmitted to " o r " t r ansmh ted f rom".
My g u es s s eem ed a lo gic al comp romi se , r ight???
N ot so . I t tu rns ou t tlla t ma le o r female do esn 't m atte r (a t
lea s t no t in com pu ter s ) . P in . 2 s ends data : from wha teve r
device th at p in is a ttac hed to , regardless o f it s s ex ! C o un t
o ne mOl'€ : fo r equa l i t y .
T he m oral o f allth is is th at p in s 2:and 3 M U ST be reversed in
llny co nnectio n betw een a Su perl'E f a nd a s eria l device that,
adh eres to th e indu stry s tandard fo r th e RS - 2:3 2C p o rt s.
T hat is a g enera liza tion g leaned from expe r i ence , bu t its eem s even m ore sens ible th an m y male/female theory.
The p oss ible conflic t on p ins 4 and 5 relates to a "hand-
s hake" procedure, w here th e S up erPE T co nfirm s that the
p r in ter is ready fo r Inp u t . P in s 6 and B are u sed to tes t th at
th e p rin ter is il l fa ct th ere. If y ou r p rin ter do es n't a ctu ally use
th ese p ins th en it 's t ime to play elec tr ic ia n. W ith ou t rem o v-i ng a n y l ex is ti ng c o nn ee tlo n s, s omewhe r e ln e it he r m a ch in e,
o r in th e cable jo in ing th em , you m ust m ake a connec tion
be tw ee n p in s 4 and 5, and/or pins 6,8, and 20 . These f oo l
t lleS lllp erP ET in to th in kin g th at th e p rin te r IS s ending all th e
right acknowledgemen t s o f its e xis ten ce. F O r de ta ils , W a te r*
~ oo h as a tec hr tlea llet te r w ith 1 1 b it m or e i nfo rm a ti on .
So m uch fO orh e h ardware. Now iu st p lu g it all u p and watch
APt fly back and fo r th betw een m ach ines - r ig h t? W rong !
T h e S l.lp erPE T h as its ow n sp ec ia l A S e n r ep re s ensa t i ons
w hich difter from th e standard th at m ost m anu factu rersadh ere to . T his is m ore o f a nu isance th an a p ro blem , s in ce
Waterloo h ave p ro vided som e facility, h ow ever m eag re, fo r
co nver ting th is "infernal rep resentat io n'lln to an "ex ternal
r ep res en ta tio n" th at dev ic es lik e ASCII p rin te rs c an u se.
C onven ien tly th ese are p ro vide as th e sy s tem fu nc t ion s
" b1XR " a nd "OrR", T he fo rm er converts S up erP ET jarg on
in to som eth ing th at th e res t o f th e wor l d canunders tand,
w hile th e lat ter tu rns incom ing code in to t i le S u perPE"rs
ta lk.
T h is d:ifi 'erel1 ce d oesn 't s eem to a ffec t o th er W a terlo o Ian -
g u ag es , p erh ap s becau se th ey u se th e s ta nd ar d ty p ew r it er
c har ac ter se t, u nlik e th e s pec i a l characters, used by AP t .
W a le 'r l oo may also h ave fo u nd a L ess c um bersom e w ay o f
handling the convers ion in th e other l anguages ; and are
movins s lowly in t h is d ir ec ti on in release 1 .1 o f APL . Note
th ou gh . th at in release 1 .0 th es e c onver s io ns do no t w ork o n
matr ices . Th i s is th e imp rovemen t t ha t release 1.1 w i l lbring ..F or now w e m ust convert ou r text l ine by l ine.
N ote th at I s a id ."text", W ate rl oo didn ' t p rov ide fo r sending
a ny th in g o th er t h an charac ter s ou t ' th e s e r ia l porfi,al l ea st l n
AP t. N umber s a nd fu n c ti on li st in g s d on 't q u a li fy . Bo t h mus tfirst be conver ted. to character representations 'O f them-se lves . T his ag ain is qu ite con trary to th e basic p hi l nsophy of
A PL , w h.ich w as to let u sers be u sers , and obliv iou s o rc omp u te r t ec h nlc a llt le s.
F o rtu na te ly th ese ar e .n ot di lfic ult tas ks . "T h orn ,j ~ is t i le
APL operator t ha t conve r t s number s into th ei r c ha ra cte rrepresenta t ion. " ' I DS 5pi25" g ives a p r in ta ble 5 b y 5 m atr ix o i
all th e numbers from 1 th rou g h 25 . F oncr lo rr s th e A PL
eq uivalent o f u ser defined p r og r ams , are converted by the
s ta tem ent "O C R 'F N ' " , w here F N rep res en ts th e fu nc tio n's
name , wh ic h mus t be en clo sed in sin gle q I J O I , e ., < ; . T his has a
hidden problem t h o u g h . OCR s t r ip s th e f unc ilon o f us linenumbe r s , m ak ing th e p r in ted. lisU ng very different h om
u sers , esp ecia lly new use r s , com e to exp ec t f rom t hei r
exper ience w ith lis tin g funct ions 011 th e. s cr een . T h us , yet
an oth er s tep is fo rc ed OIl u s by W a terloo - re-insert ing line
num bers in a w ay th at m irro rs w h at APL wou ld no rm ally
give us. T h e p rog r am " NUMBER " i s i n cl u ded below to m eetthis need.
H ere th en are o u r th r ee .fu nc tion s . "PRINT' is the main
r ou ti ne , a nd f .a i.[~ yh o ro u gh n ot es : o n it s.o p er ati on follow the
li st in g s. "ASK '" i s a u ti li ty f unc t i on t hat is called by PR INT , i ts
p u rp ose being to m odify th e way th at u ser Input I s h and led
atth e screen and 1 0 interrupt p rog ram execu tion u nti l th at
Input is received. T his is used to p erm it ch ang ing p ap er i ryo u a re no t u s ing com inu o u s forms. An a lt er na tiv e s ta te- -
m ent allow ing fo r a utom atic advance o f con t inuous fo rm s is
p rov ided in t he d ls cu ss lo n be low. "NUMBER" , J i n aUy , p r o "
vides fo r fu nc tion lm e nu mber ing as descr ibed above,
D o no te th at th e p roblem s w e are fix ing h ere are not APL
p ro blem s , T h ey a re lit t le ln co ns is te nc ies th at W a terlo o g ave
u s in an o t he rwi se very a cc ep t ab le AP L lm p lem en ta ti on .
I -Iopef l l i ly tu tu re releases , bey ond 1 .] , w ill con t inue to w ork
tow a rds th e A PL g oa l o f encourag ing a very casu al u serre la tio ns hip w ith th e 'c om p ute r.
Dlscusslon of Functio,n "PRINT;'
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 38/68
N o te: S ee e nd o f a rt ic le 'fo r p ro gra m listings,
APL p ro gr am s a lw a y s ta rt wi th l in e z er o , w h ic h de fin es th e
s yn tax o f t h e funct iol l , alo ng w ith an y local v ar ia ble s t ha t it
will c re ate , T h eir n am es . s ep ar ated by s em i- co lo ns , lis t th e
tem p orary w ork va ria bles that will no long er be needed
w h en ex ec utio n term in ates . H avin g them here te lls A PL to
t h r ow them out fo r you. Any variables created by th e
ex ec uting fu nc tio n bu t n ot lis ted in t h i s way r em a in a va ila -ble fo r p os sible la te r u se .
"P~NT" exp ects a r i g h La r g umen t o f X , wh ich is th e data w e
w an t p rin ted. "X " can be a var iable nam e, i t c an be "ffiD AT A "
(th e c ha rac ter rep resenta tio n o f n u m bers) o r it can be "O CR
'F N ' " , as discu ssed abo ve. In . fac t , A PL even lets u s s tr ing
to ge th er m o re c om p lic ated a rg u me nts to fu nc tio ns . R e rn em -
be r th e p ro ble m of l ine numbers no t ap p ea r ing in th e O CR
o f a n mctio n? T o fix th is , th e "N UM .B E R " fu nc tio n above can
be used as in this statement:
PRINT N U M B E R O CR 'FN "
.ln this case "NUMBER" is jus~another functlon wh i c h does
i ts jo b before P R IN T . T h e: r ig ht arg um ent in th e h ea der
p er mits th is ty pe o f s yn ta x.
L ine one o f an APL fu nc.t ion is o ften reserved fo r a brief
s ta tem en t o f w ha t th e fu nc tio n does o r how. T h is Is s tr ic tly a
m a tte r o f style. 1 s u gg es t y ou g et: in to the, h abit , and a fu tu re
art icle w i l l sh ow h ow you can tak e g rea t advantag e o f th is
feature. Unl ike BASrc, APL lets you have numerou s p ro -
g ra ms an d s ets of d at a a va ila ble .s im u lt an eo u sly , m i xi ng a nd
m atch ing th em as in ou r '''PR IN T NUMBER " e xam ple, T h issaves a g rea t deal of c o de , b ec au s e you can re-useutilitlesrather than re-ceding th em into every ap p lica t io n th at
n ee ds th em . Wi th su ch a m ix tu re o f f unctlon s , th at o ne line
o f do cu m en ta tio n c an p ro te ct a ga ln st c on fu sio n o ver s i m i l a r
flam es , and h elp yo u o r o th ers find their wa y a ro u nd .
L i n e ' 2 im p oses a condit ion o f o u r ow n on th e data to be
p rin ted. T his can be removed, i f yo u p refer" alo ng w ith its
erro r rep o r t o n line 13 . I ts p u rp ose is to p revent p r in t ing
any th ing excep t tw o-dim ens ional m atr ices . T he reason fo r
this is th at it is . m u ch eas ter 1 0 0 re-s t ruc tu re the data to . a
s tandard fo rm at th an to g enera lize th e p ro g ram fo r n-dl-
me ns io n al o u tp u t.
L i n e 3 sets u p th e A S C U p r in ter a s th e o u tp u t p o r t , E ven
th ou gh "ser ia l" is a p re-defined file to the Supe rPET, i t is
n ec es sa ry to " C R E J X T E ' i t fo r u se ra th er th an ju st 'T IE' i t. T o
m e th is rep res en ts a no th er a no mally in 'th e W a terlo o irn ple-
mentation. .. butagain too sm all to beef a bo ut. A s in B A S IC ,
fi les are ac ces sed by num ber . A n APL s ys tem v ar ia ble ,
D N UM S , k eep s a lis t o f all o f th e cu rrently a ct ive fi le 'T IE '
nu mbers , and th e' 'TIDNUMS'" r etu rn s th e l a rges t element
in th is set . T his i llu stra tes th e "m onadic" u se o f 'T", o r
cei l ing" combined wi th reduction, "1", to select only the
la rg es t elem en t from a set o f da ta . O u r s ta tem en t also u ses
'T " in its 'dyadic ' sen se, m axim um , w hich selec ts th e larg er
o f th is pr imi t ive 's left a nd r ig h t a rg umen ts . In th is case 'W e
h ave 0 on th e left , and th e resu lt o f 'T IDNUM S" on th e
r ig h t. T h us if any files are already T IE d t hen th ey will h ave aT IE n um ber ]a rg er ~ ha .nzero , a nd th at w ill be th e m ax im u m
o f th e tw o va lu es . H no files are T IEd, th en 0 will be th e.
larg er o f th e tw o va lu es . In ei th er case, w e add one to th e
resu lt ing va lu e, to c rea te a new and cu r rently u nu sed T IE
nu mber. T his is s to red in t h e v ar ia bl e "T IE ", w ith w hich w e
t h en "D iCREATE" ' ~ h e link to th e ser ia l por t .
A t th is p oin t w e sh ou ld tes t fo r the s u cc es s o f t hi s o p er ati on .
R eleas e 1 .0 w ou ld a llo w thls, but u nder release 1 .1 o f A Pt
there will be n o retu rn cede from the "OCREATE" opera-
t io n, a nd th erefo re n oth ing to tes t. (T h is is ba sed o n p relim i-
na ry r eleas e l.I informat ion , arid rem ain s to be provenw hen th is release becom es ava ilable) F or now w e w ill leave
th e fu nc tio n in th e fo rm m os t ltkely to o utlive th e imm in en ttransition to re lea se 1 .1 .
Line-l now defines th e nu mber o f ro ws o f d ata (in X} th a t w : il l
be p r in ted. T his is u sed la ter to tes t fo r com plet io n o f th e
p r in t ing to be done. It w asn 't neces sa ry to u se a va riable to
p rov ide th is c on tr ol, bu t th en we w ou ld h ave h ad to in ter ro -
g ate th e sy s tem fo r th e s ize o f X after each line w as printed.
In som e A PL sy s tem s th is can w as te tim e and com p u ter
p ow er , esp ecia lly w hen la rg e numbers of i tera t ion s a re
involved,
L ine 5 in i t ia lizes a cou nter to zero .. T h is wil l co u nt th e
itera t io ns th rou gh th e p rin t ing lo op , and h ence th e nu mber
o f lin es p rin te d. It is im m ediately inc rem ented o n line 6,
w hich s tar ts th e loo p to seq uentia lly p rin t each line o f data .
L ine 7 does th e actu al p rin ting , bu t it a l so . i nc ludes a Les t fo r
th e s uc ce ss o f th is o per at io n, Note th at each line o f da ta will
h ave tw o ch arac ters (ca rr iag e retu rn and linefeed, lro rn
DiTe) c ate na te d to i t 's e nd be fo re be in g tu rn ed to i ts ex ter na l
rep resen ta t io n and th en DPUT to th e fi le "T IE ". If t h i s
o pera tio n is no t su ccess fu l i t re tu rn s an er ro r m es sag e w h ic h
w e s to re in "Q". N ext w e tes t i ,1 0 is no t eq u al to t i l e ' sh ap e o f
Q (ie, thai Q is fiat emp ty ) . If th~s i s t ru e (Q is n ot em p ty ) th en
Q m us t conta in an er ro r m essag e and w e branch to th e line
" OUTERR " (L in e t 5 ) w here th e u ser is advised o f t he fa ilu re
and it's cause.
L ine 8 now tes ts w heth er w e h ave printed a n even mul t ip le
o f 6 0 Iln es . It u ses th e concep t o f r es idu als , a nd th e assurnp-
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 39/68
O ur p u rp ose w as 'to u n lo ck som e of th e secret s I O f th e
S up erf'E F'sser tal p or t. p ar ticu larly for A PL u sers w ho seem
to have h ad an un fa ir sh a r e o f u nd oc um en te d p ro ble ms to
fa ce . In th e p ro ce ss we h av e trie d 10 i ll us trate some concep t su nde :r ly in g t h e AP t la n,g u ag e. O th er secrets are' lefl Jor you
to face, su ch as th e' p ar i ty , du plex ; and llnefeed set t ing s o n
equiprnentthet is available .t o y ou . V a rio us s up p lier s and
re tailers w ill n o do u bt be glad to . h elp w ith fu r the r ques t ions ,
in clu ding W ater lo o. P atien ce a nd ex per lrnem etio n o n your
li .on th at m os t p ap er form s w ill accommodate 60 llnes o f
p rin t, Y o u c an change ' this va lue to uit yo ur O \'V "nn eed . If
th e residual o f "1" re la rlve to t h i s base value is n ot zero, then
th e p ro gram branch es p as t line 9.
If this res idu al is zero (lines 60 " 120 . I SO ,. . ,) Ihen line 9
invokes the sub-function "ASK". This prints to the screen
th e m essag e th a t is g iven a s it 's. r ig ht a rg um en t: h ere,"PAPER O UT ... ". This sub-fun ctio n then w aits fo r a re-
s p o n se from t he o p er at or , a llow in g whateve r 'lim e is neces-sary to permit cbanging paper. If you are u s ing continuous
fo rms w ith 66 nnes p er p ag e, rep l ace th is line w H h:
(O XR 5p DT C[3])D 'PU T T iE
Th i s w i I I s pace th e p ap er u p by 50lines, getting y ou w elll p a st
t h e p e rf or a ti o ns ln th e fo rm s. F or shorter fo rm s you can
m odify th e va lu e 60 In line 8" and even sq u eeze dow n th e
v e rt ic a l s p a c es in th is rev is io n to line 9.
Une 10 test whether "l" is less th an "L lN ES " - have all
ava ilable lin es been p rin ted? U no t , it branch es back to th e
to p o f L O O P l fo r th e neld l ine o f data, If so , it p roceeds to
nne 11 , th e equ ivalent o f it "C LOSE " statement in B A SIC .L i ne s 1 2' a nd ttl branch ou t of th e p rog ram to avo id pr i l l i ing
er ro r m essag es on 13 and 15, w h ich w ere p rov ided fo r
condi t ions that might ar i se on l in es .2 a n d 7.
T h e u ti li ty Ju nc tio n "A S K" will n ot b e e xp la in ed .here. I t is
w ell w orth p lay ing w tth th is one th o u gh , s ince w ith sm allmodif ications it provides a w ide rang e o f on tro l o ver u ser
inp u t F or exam ple, ch ang e it mexp ect alerlt argum en trep resen ting accep table resp onses , th en tes t fo r th ose re -
spouses and branch back to line 2 if ' th e u ser lnp ut doesn't
m atch th e a llow ed inp u ts . T his is th e' bas is .o f an a lm os t
u nbeetable trap to safeg uard you r p ro gram s ag l'lins t all sorts
o ~ e w U s ]
T he' fun ctio n "N UM BER " ,!'!ill also n ott be exp lamed here, A t
th is p in t w e don 't k no w w ha t au dlence th e new l1 ransaclo r
w i l l g ath er to its elf, an d ti le la st thing w e w an t Is L O t UT Il off
l i m y o f t ha t audience w ith lo ng m ono lo g ues th a; don 't m eet
t h ei r n ee ds .
p a r t wi l l be inva lu able th ou gh , s ince none o f th ese sources
will have h ad ti le ex perien ce w ith , -very g adg et you migl l l
wam to plug in to t ile RS-23 2C p ort o n yo u rra ch in e,
L et u s ' k now how yOIJ feel abo ut th ls artic le. D i.d it help wi t h
th e serial p or t? Wi t h i n t roductory AP t exam p les '? W i th
examp le o f APl style?
D id I con fu se? .. bo re? .. ell lig hten ? W a s it timely 01'
ou t -of-date , 100 s im p le o r to o a dva nc ed ? Y o u r interests are
o ur in teres ts , becau se o ur m ag azine is y ou r magazine .
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 40/68
'fP:R.lNX[mV'
[0] PRIN T X ;,~ IN E:S~ I;Q :T I~
[iJ" PRINTS X TO PRINTER' V IA SERIAL FDR T i NOT LIMITED' TO SCREEN 0P r i[2] + '(2zppX)/I I?PERR
[:3J 'S ER IA L'rt:R EA TE T IE+1+0 rr/[WUM S.~ [4 J LINEs+1t pX
[,5] I-.={)I
[6]l.O,OPl :Z...z:.t·1
[7] ...(o;epQ+-(IlYR X[I;] ,,[}reI 7 3] )O PU T T I!:) /,O lJT l£R R
[8.] +(,0=60II)/T8ST
[9,J Q+ASK 'PA,PER OUT:: ··RET,fJml" TO CQN:1INI/E.'
[10)TKST:, +(1 c l .DJ ES) IWOPl[11] r!iJNTIE TIE[12J -t{]
[1 3]IP .l'BRR:,IIIN PlIT M UST BE 2 DIMBNSIONAf . : RE" ', SP l iU f :T l I:R8 A! l.D R l iaS llBMIT . '[l~] ~
[15]OUTBR:R:'INTERRlIPl':: OUTPUT FAl,LED . '.Qv
"! lASK[O]v
[0] R+ASK X
[l]R ALLOW S' RE SPONSE ' ON SAM E LIBE AS PROUPi' X '
[2] [!i+X,'·'"
[3 ] Rt-( l !j .+pX)'.j .t!l
v
illMBER[O]'V
[0] , Z+NUMBER TXT ;R
[ 1 ] I t * - l + p T X T
[2] R +O -t4-'J(R,l)p-l+'lR
[3] z . . .(r[I~R~'J')jTXT'V
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 41/68
Tiny-Ald ForVIC-20
lnttoduction
S inee th e ear ly days o f Ute PET" various 'enh an cem ents fo r
B AS IC h ave been available-T oo lk it and Pow er 8 1 1 1 e tw o
c ommere la le xa rn p le s. B iH Seile r, t hen o f C ommo do re, p ro -
d u ce d t h e I lr st p u b li c- doma in version, c al le d BAS [C -A i d.
M an )!' up dates, co rrectio n s and lmp ro vemen ts have been
m ade over th e 'past co u ple o f years,. T h e PET I C B M program
bas ballo on ed to a 4 K p ac kag e r O T alm os t every h vo ur .o f
e qu i pmen t c o nf ig u r at io n .
A s 1 1s be en c us to m ar y ill th e C om modore com munity , M r.
Jim B Ullerlie ld d evelo ped a ersio n o f the BAS rC -A i d . He
c alle d Ih i' lTNYA ID2 ( r TINYA1D4, fo r B ask 4 .0 ) . T h is
, of fe re d t he s ix most useful commands t ro r n I he f ull- fle d ge d
program.
F ollo win g is my m odiflc a t io n o f that work des igned no
p ro vide V IC u sers w ith th e sa me ben efits , A ft e-r uslng t lli s fo r
a w hile, I th ink you will find th e a.dded co mm ands near ly
indjspensible.
Features,
V I C T i : F l Y A i d is . a m a c h i n e l anguage p rog ram w hi c h c o n -
s umes abo ut 1200 bytes, o f yo ur R A . M memo ry. A fter you
h ave lo aded th e p rog ram , typ e 'R UN ' and h It 'R ET - RN' , T he
David A. HookBarrte, Ont.
p ro gram rep ac ks i ts .elf in to high m em ory . T he a pp rop r i a t e
p oin ter s a re se t so th ai .B AS IC w ill not clobber it V IC Tiny
Aid is DOW alive.
On c e a c ti va te d, five comm ands b com e atta bed t BA I e .Th ey will ,functIon o nly in "d lr ec t" mode. t.e, on ' in c ude
th em in a p ro gram .
(1) N UM BER 1 0 0 0 . , 5
N M B E .R JO O ,I O
' RETURN'
R enumbers a BASIC p rog ram w ith a g iven s ta .r tin g 1 11 1'
number and given ~nr . m e : n t b tw .n l ine number. Themaximum incremernls 255.
A ll r ef eren ces a ft er GO TO , T lEN . GO SUa an d R - - ar
auto matically co rrected , A d isp lay o f these l i nes is p resen ted
o n th e s creen as i t w ork s, II a G O TO refers to a non-ex ls tern
Illlle n umb er , th en it is c ha ng ed tI Q 65535 . T his is an illeg al
l ine number, and mus t be orrecled beto re th e B AS IC
p ro gra rn is u sed.
( 2) D EL ET E 100-200
DEL ET E- 1500
DEL ET E 519 9-
' RETURN'
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 42/68
Deletes a .rang e o f lines [rom a B AS IC program. U ses th e
same syntax as th e L LSTcommand , s o a ny lin e-r an ge may
be sp ec i fied Jar r em ova l. D E 1.E T E w ith no ran ge wiU per-
fo rm like a NEW com mand, so be carefu l.
(3 ) F IN D /P RIN T J 'RETURN'
FlND IA$I , 15~610F IN D " P R 1 N T ' , 2 00 1 0. . .
W i llo ia ca rn a ny o ec ure nc es o f t he c ha ra cte rs betw een th e "I"
ma rk s , Almos t a ny c h ar ac te r m ay m ark th e s ta r r /en d o f th e
s t r ing to be found, so ' l ong a s both are th e s am e. T he fir s texample w i l l find al l th e PR IN T mstrucrions in th e program.
If y ou are loo king fo r a string o f text w hich co ntains a BASIC
keyw ord , yo u m ust 'lise the quo te charsct rs as m arkers.
This will prevent Lh search string from being "tokenized",
If 2 1 lim ited lin e-ra ng e is , des ired, u s e- th e s ame syntax as 10f
L IS T. No te th aI a com ma ("," ) m ust sep arate th e line-rang e
fro m the en d marker.
A ll lines conta in ing th e s tr ing aile p rin ted to th e screen. II a
lln e hasm ore than o ne o f them, each occu renee w ill eause a .
repe t i ten 01 thai line.
( 4) H A G E-P R1N T -P RIN l'* '4 ,-
CHANGE IA BC /X YZ/, 60 00 -
CHANGE 1 .0 5$ /0 1 S /! ~5000
' RETURN '
Us ing th e same sy ntax as H ND, yo u may change an y s t rung
to any o th er s tr ing in a B AS IC program, T his co mm end is
very p ow er fu l, and w as no t p ar t o r th e ear ly v er sio ns o fB asic-A id o r Toolki t .
A s b efo re , yoQIJ m ay in dicate a U ne-ran g,e. As th e c ha ng es
r ue r na da .th e r ev is ed lin es , ar e d is p la ye d all t h e s cr ee n.
Waldl o ut fo r the d lffereilc .e h eiw eea B A BIC k ey wo rd s an d
s tr in gs o f : text with in quo te s . Y ou m ay u se' th e quo te cha r ao -
ters to ditf- r en tia te , a s with F I D.
( 5 0) K I L L 'RETUR '
T his co m rn an d d isables V IC Tiny A id and its associatedcommands. A syntax error will be th e r es ult it any of the
above com mands are now trted,
S ince th e rou tine is afe from interference from B AS IC , you
m a y le av e il active fo r as long as you r m ach ine s tays on, It 1 5
p o ss lble th at V IC Tlny A id m ay in ter fere w ith oH leT p ro -
gram s thar m od ify 'B ASIC 's i nt er na l 'CHRGOT ' r ou ti ne. TheK IL L c o mm an d a llo w s you t o a vo id th is c on lllc t.
P'rocedu:re
T Ile V I C c on ta in s .1]0 internal machine l anguage monitor,w hk h is really th e i()n]yp ractical w ay to enter th ls p ro gram .
S o lo llo w ODe of th e th ree meth ods below to p erfo rm the
t ask .
(]) B orrow an Upgrade (2 ,0 ) 1o r B a sic 4 .0 PET/CBM. wi th . .it s
in ternal M L mon i t o r . Th i s w ill be th e e as ie st m e th o d to
w ork w ith the p rog r am included,
(2) Use your VIC -ZO , but you mu t have a machin e la ngua ge
mon i t o r :
- Jim Bu tte rf ie ld 's TJNYMON F O R VL C (O omp l.lte 1ll2.0,January ]982)" -my adap tlon o f SUPER MO N FO R v r c(T he T tan saeto r, V o lu me 3, Is s ue # 5) . ~VICMO ear-
t r i d l s , ( \ ! fr om C ommod or e.
(3 ) T he easy w ay ( ? J . S en d $3 ., a blank cas s ene o r 1 540 1
2 03 [/ 40 4 0 d is ket te in ,8 s tam p e d, s e lf -a dd re ss e d mailer
to m e at:
5 8 S teel S tr eet
BAR R IE , O ntario, C ANADA
L4M 2E9
Be s ure i ts p ac ka ged s ec ur ely . D is kettes wi ! ] be r e t u rned in
DOS 2.0 f o rma t , Only 2040 (DOS L O ) ow n en n eed tak e
extra care. (T he p ro gram s n eed to be cop ied to a DO S 1.0
fo rm atted disk . D on 't S A V Eo r o th erw ise W R IT E to th e disk
y o u . g e t ) .
If yo u ere using a V ] C , and h ave a 3t. R AM or SUPER EXPA N~
DER cartridge. plug lhis in, [tt will be somewhat easier to
f o ll ow , s i n ce pmgr.ams a re then " PE T -c om p a ti ble" w it ho u t
fu rth er ju gg lin g. H ow ever do n't u se the 8K o r 16K exp an -
s io n fo r th is jo b,
If yo u are hlfnHiar w ith th e op erat ion o f th e M l mon ito r ,
p lea se s kip a he ad to t h e s p ec ifi c, b el ow .
YOLI a re abou t to type in a b o u t 2 5 00 .0 ch a rac ter w or th o f
"hexadec ima l " numbers . In addition to th e dig i t s nomaerct. o n ine th e alphebettc c ha ra cter s fr om A -F r ep reseo t num-
b ers fr om tell to fifteen . T h es e c ha ra cters , a nd th ree in stru c-
l i ons , w ill be all tha t .a re used to en te r o u r p ro gram . Y o u
d on 't have to un derstan d ttl1e p rccess-qusi typ e in the
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 43/68
S ever al lin es s ho uld ap pear on th e screen, m u ch H i e fih €!" mem ory -du mp " w h ic h ac co mp an ies this ar t ic le. A fo ur-
"dig it" qu an ti ty ca lled an "address" leads o ff a line, and
ei ther e ight o r five co lumns o f Iwo~ "digif" v alu es a pp ea r
alongside.
ch arac ters exac tly . It" s no t very exc iting bu t don 't be tO Q
in t imida ted b y th e " W l J n m y " display .
E nter th e m ac hin e lan gu ag e m on ito r p ro gram :
T INYM O N/SlJPERM O N fO R VIC ,_ L OAD an d RUN the
program.
PET leE ~ - Type "SYSI024" an d h it "R ETUR N" .V ICMO N Cartr idg e - "SYS 6"4096" or "SYS 10.4096"( dep en di ng o n v er si on you h a ve) . t he n t ype "R ET UR N " .
NO T E: If you are w ork ing on th e u nexp anded V lC you will
n eed to f o U o w t he a lt er na te i ns tr u ct io n s i n p a r en th e s es .
T h e cu rs or w ill b e n a sh i ng next to a p erio d ch aracter ( ''," ) .Type the en tty s ta r t in g a t th e c urren t c urso r posltlon;
"RET R N "M 0580 05CO (.M 1180 IleO)
05xx-06xx-07x:x-08xx-09xx- Axx
L ook at th e tables of values in lhe art icle. They show e~ght
ro ws o f th ese addresses . N ote th at th e fir s t "blo -c k" h as the
a dd re ss " 0 5 0" .w hich m atch es th e fi rst address i u s t above"
T he Ilrst ro w o f the next table shows, " 0 5 e O " " , wh i ch is th e
second ( or e nd in g ) a dd re ss just above,
Y ou r rnlss l n is to typ e In t h e : m atch ing val l ies fro m thear t ic le, in p lace o f th e tw o-"dig it
ii
values you see on th
screen.
R em em ber to h it " 'R ET UR N" at th e end of each screen l ine,
o r Ih e c ha ng es won" be made.
Double -c he ck th e valu es y ou 'v e ty ped, lt 's no t easy to fin d
an eno r la ter on .
look at the next block of values. Type in the start/end
addresses 10 display:
"M 05C O 0600 "RETURN" (. M n00 1200)
Type in th e valu es , req uired and go Oil with th e res t of th eblocks .
You w i ll u s e a dd re ss es rangin.g f r om:
as sh ow n in th e t ab le s" T h e "x" characte rs s land fo t t i le
o th er tw o " dig its ," o f th e a ddr es s ln th e leftmost co lumn.
IFyou me wnrking on the un exp en ded VL C. the sequen ce o f
addresses is:
'I txx- l2 xx -1 3x x- 14 xx -1 S xx -1 6x x
Yo u w ill h ave to typ e th ese p airs o f ch aracters in p lac o f t he
lea din g tw o s ho w n lu sta bo ve,
W i th th at task co mp lete, w e are ready 10 p reserv th is w ork
on tape. So type:
.S ·VIC AID.ML· ,OI,0580,OAB6 HREiURN"
( o r.S ·VICA ID.ML " . 01 .. 11800.1686 "RETURN")
M ount a blank tap e, and fuHaw tbe in s tru ctio ns , S ave a
s ec on d c op y, fo r s afety .
E xit the M L m o nito r" w ith:
.X "R ETURN "
VER IFY th e :p ro gram normally b efo re go in g a ny lu rth er,
ow comes. the easy part Type "NEW", then the BASIC
l isting. E nter th is ex ac tly , w ith ou t i nc luding, a ny ex tr a text,
S ave th is as ·'V ~ CA ID .B A S" and VERIfY' i t,
F in ally " L OAD "VICA ID .M L" and SA VE "VI AID.R'r" onano th er blank tap e. B oth th e B ASIC parr and th e m ach ine
language ' p ar i h av e been S AV E d to g eth er .
Check-Om
W are g o ing to ch eck out th e m ac hin e langlilage u s ing a
"checksum" method, Typ e in "NEW" before p roceed ing .
Now enter the [ollowing program:
10 i= 0 : rem ( i = 3072 fo r u nex pan ded V IC )
20 t=O : f O f l= 1408 i to 274d + i:30 t= l+pee! \ iO)
40 next j
50 print t
A fter a lew seconds, i f th e value 161705 , appears. you 've
l ikely got it perfect. G O I to th e n e xt s ec tio n .
If no ll , the re 's a t least one incorrect ent ry . Change th e tw o
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 44/68
] print" vic tiny aid"
2 print adap ted fo r vic byt
3 p rlnt " david, a, h ook "
4 p rint" from 'tiny aid ' b y : "
5 prtnt " l im 'bu t t er f ie ld "6 print" a nd < ba si c a i d' by:"
7 print" b il l s e il e r"
8 p r in t comm ands :"
9 print" ange /?/lPrin~~4,/~
1 .0 print" .gosub., 200-~
U pr in t " d el tie 1 30 -82 5M
12 [ J ' r i n t "n um ber 1 00 ,.~ ·
i3 p r in l ~kill (v ic aIdr
14 sys (peek (43)+peek (44)""256 + 383,)
values in Lina 2'0, using the table below. Re-RIF tile
p ro gra m.an d c om pa re a ga in .s l th e valu e in th e t hi rd e olum L'I.
Repeat theprocess ~OTleach row, noting any that dlon'
ma t c h . E ach row co rresp onds to tw o "blocks" from the last
s ec t i on . Y ou w ill h o w e to re-enter th e M L monitor to r e-
-check tho se s ec t i ons lhat dirfer . Re-SAVE th e M L p a r t I ~ J
Block" V allie 1 Value 2 Checksum
.~1- 2 1408 1535 1520[
3 - [ 5 3 6 1 6 & 3 1722 i5-6 L 6 6 l J 179 ] 15925
7- 8 1192 19]9 15117
9-10' 1920 2 0 4 . 7 ~ 5 5 ' 6 5
11-12 2 0 4 8 2 1 1 5 1414113=]4 2 1 7 6 2303 15840
i5-16 2 3 0 4 2431 16276
17-18 2 4 3 2 2559 15152:
1 9 - 2 02560
2 6 8 71519421 .2688 2 7 4 1 6 0 7 3
Operation
T heflnal acid test. RelO AD the p rogram from lap .and RUN
H . T h e sc reen wil l dear and a br ief s u mm ary o f th e added
commands wil l be displayed. The cu rsor sh ou ld return
almost instantly, un der the ''R EADY .'' m essage.
I[ f tile c ur sQ ' f d oes not com e back , there is som eth ing s t illamiss . All th e valu es ap pearing in th e artid wer e p ro du ce d
h orn a w ork in g c op y o f th e p ro gr am (H en es tl) . Y O l l I st i l lhave
op t ion (3 ) from th e Procedu re sect ion available, If you do
send a tap e/disk now , mclw i e y o u r n o n -t u n ct lo n ln g ver-
s io n. I c an th en do a compare, to s ee w h ere th e erml1(s) were .
T his h as been a m ass ive' exerc ise, an d m istak es can eas ily
c reep in . Y o ur c om m en ts a re we l come .
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 45/68
.: 0 58 0 a s 2d 85 22 a- 2e 85 23
.: 0588 a5 37 85 24 a s 38 85 25
.: 0590 aO l O a a s 22 : s o 02 c6 23
.: 0 598 eE l 22 bl 22' dO 3c , a5 i 22.~05a lO dO 02 (;6 23c6, 22 b I 22.: iQ 5a8 fO 21 ,85 26 a s 22 dO 02
. : 05bO c6 23, 'c6 22 b 1 22 18 6.5
.: O Sb8 24 aa a s 26 65 25 4 8 a s
. : Q i5 c .O 3 7 d O 0 2 c 'o 3 8 c B 3 7 ' 6 8
.: 0 5c8 91 3 ,7 S a 48 a s 37 d O l 0 2
. : 0 5 dO co 38 c o 37 68 91 37 18
.: 0 5dS 90 b6 c9 dJ a o ed a s 37
. : O S e O a s 3 3 a5 3 8 8 5 3 4 , li e 3 7
.: 05e,g 00 aa aa aa aa aa aa aa
. : 0 5{O aa aa ilia an aa aa aa aa
. : 0 5 ( 8 aa aa aa aa aa aa im aa
.: 0600 d f' ad (e ff 00 85 37 ad
. : 0 60 8 {f if 00 85 38 a9 4c 85
.: 061G 7c ad d9 fu 0 0 85 7d ad.: 0618 da fb 00 85 7 1e 4c 8 f f c.:0 620 0 10 fO 0 3 4c 0 8 d a9 c .9
.: 0628 85 1e 1'19aa85 7d a9 bO.: 0 1130 85 7e 5 db rb 00 85 .8b
.: 0638 86 97 ba bd 01 01 c9 &
.: 1 0640 fO ] 0 dO 02 a4 ,8caS 97
. : 0648 a s Sb e s 3a bO 103 t ic 80
.: 0650 00 00 @ bd 02 01 c9 c4
. : 0 6 .5 8 e o ed a s 8b ] 0 0 2 e G t«
. : 0 6 '6 0 8 4 1 B e a2 G O 0 0 8 '6 a s (1 1
. : 06158e8 ail 7a b9 01:100 02 38
.: 0670 fd d9 ff 00 [0 13 · c 9 1 8 1 )
. : D 6 7 ' 8 .r o 1,3 e6 a5 e8 bd e a If
.: 0 68.0 0 0 1() fa bd 0 9 II 0 0 dO
. : 0 6 8 8 , e4 m b l , e a c8 d O e O 8 4
.: 0 690 7a a s a s O a aa bd :f5 ff
.: 069 8 00 4 8 bd f4 ff 00 48 20
.; 06aO e9 f b 00 .!Ie 1,3 00 00 2{)
.. 0 6a8 b2' (d 00 as Sf as 60 ,85
. : o s e o 24 86 25 20 J 3 c6 as 5f
.: M ba 0.6 1 6 0 90 O a a O e I b I 5 f
.: 0 61 :0 10 04 aa S8 b l 51 85 781
.: 061:8 86 1b a5 24 38 e5 7a aa
. : 0 6dO a s 25 e5 7b a8 bO Ie 8a
.: OMS 18 6S 2d 85 2d 98 65 2e
. : 0 6 e O 8 5 2 e a O 0 0 0 0 b l 7 a 9 1
.: 0 6eS 24 (;8 dO IS e6 7b e6 2S. : 0 6 1 01 a s 2 e c 5 2 5 b O e f 2 0 3 3
.: 0 6 18 c5 a s 22 all 23 18 69 0 2
.: 0 1 0 0 85 2d 90 (II e8 86 2e 2 :0
.: 0 70 8 59 c6 <Ie 61 e4 20 7c c5
.: 0 71 0 20 73 0 0 0 0 85 8b a2 0 0
.: 0 718 00 86 49 20 B e r e i 00 Z 1 5
. : 0 7 20 a s c9 o n 00 dO 07' a . 2 : 02
.: 0728 8'6 49 20 8e fd 100 20 73
.: 0730 00 00 m 03 20 fd ce 21)
.: 0 738 b2 fd O O a5 5f a6 6'0 85
.: 0740 la 86 7h 20 d7 ca dO O b
. : iH48 e a 98 18 657a 85 7a 90
.: 0 7 50 0 2 e6 7b 20 ca ff 0 0 fa
.: 0758 1)5 2{) de fd 0 0 bO 03 4e
.: 0 760 S f F e 0 0 84 55 e6 55 a
.: [)768 55 a s 31 a s 32 85, 8b bl
.: 0770 7<J!fO d8 dd 00 00 02 u o
.: 0178 ed ell c8 c6 8b dO n 88
.: 0 781 ) 84 (lb 84 97 a s 49 to 5b. : 0 7 8 8 2 0 E O td 0 a s 3 4 3 8 e S.: 0190 32 85 a7 f O 28 c8 to ca.: 0 79-8 bl 7 (1 dO f9 18 98 65 a_7
. :0 7 a O e 9 0 2 9 0 4 0 c 9 4b bO 3 c
.: 0 7 aS a s a1 ]0 0 2 d> 8b 18 6S
. : 0 7 bO O b 85 97 bO 05 20 2 4 . f e
.: 07bB 00 m 03 20,0 fe ~O , afi,
.: 0 7cO 97 38 e5 : 3 4 .a8 c:8 a5 34
. : 0 7c 8 r o o r 85 8e aG , 33 bd 00
.. 0 7dO 00 02 91 7a e8 e8 <:6 8e
. : D7d8 dO 15 AS a s 2'd 65 a7 85
.: 07eO 2d as 2e 65 8b85 2e a 5
.: 07eB 7aJ af 7b B5 Sf 86 60 a6
.: 0 7fO 43 a s 44 20 3d f e 00 20
.: I07 fB el £ f a9 00 00 85 c6 a4
.: 80 97 'Ie £2 Jc 0 0 a4 73 (8
.: 08nS 94 31 a9 00 00 95 32 b 9
.: 0 810 0 0 0 0 0 2 m '1 5 c5 S b F a
.: 0818 05 'f6 .32 c8 dO f2 84 t«
.: 0820 60 e s ab.iIl 04d1 ,21'1dO
.: 0 828 0 1 1 6 0 - lc 0 8 d 90 0 5 fO
.: 0 830 0 3 - 2 0 a6 [d 0 0 20 1 6 b c9
. : 0 8 .3 8 20 13 c o 2 0 1 7 9 D O ' 0 0 m
.: 0840 O b 20a£ fd 00 20 73 CO
. : 0 84 8 0 0 20 fib C '9 dO eO a s 1 4
.: 0850 05 15 dO 06 a9ff 5 l, , : e s s e 85 15 60 20 ea ff 0 0 85.: 0 860 43 20 ' ca rI 0 0 85 4438. .08'68 as ' 14 e5 43 illS 15 e5 44
.: 0 870 60 a5 7a 85 2.21 :1 5 7 b 85
.: 0878 23 a s 2d 85 2:4 a s 2e 85
.: 0 880 25 60 a5 22 c5 .24 dO 04
. : m ! 8 8 a s 2 3 c 5 . 2 5 6 0 ,a 4 Q b a 8
. : 0890 b I 22 a4 9 7 c8 91 22 2.0
. : 1 0 8 9 8 0 1 f e 00 d lO O J 6 0 e G 2 2
.: 08aO dO € Ie eo 23 dO e8 a4 [Jb
.: 08a8 bl 24 a4 97 91 2 < 1 20 0]. : 0 8bO fe O (l dO 0) 60 a s 24 dO
.: O Bba 02 c6 25 c6 24 4c 24 f,e
.: O Bc 00 aO 00 0 84 as 84 O f:
.: 0& 8 2.0 cd dd a9 20 a4 as ' 29
.: O B dO 7f 20 d2 f: l c 9 ' 22 dO 06
. : 0 8d 8 a s Q f 9 If 85 0Ic8 b m. : o S e o 5f f(} 19 10 ec c :9 H 10. : 0 8 1 il8 e8 ,2 4 O i 304 8 4 a 5 20.:O IUO 7c r e (0 c8 1;)1 ae 30 dG.: 0818 20 d2 f f dO i6 20 d7 ,ell
.: 090 0 38 60 aO 9d 8'1 ae a cO
.: 0908 84 a f 38 e9 i'f ita aO 00
.: 0 9 H .l 0 0 CD to ee e6 ae dlO 0 2
.: 09 1,8 e6 al bl ae . 1 0 f6 3 fI
. : 0 9 20 2 U 6b e s a5 14 8~ 35 a s
.: 928 15 85 36 20 leI r_ e 60
.: 09 30 e9 as 14 8S 33 as 15 85
.: 09 '38 34 20 Be cf .20 ca r r 1)0
.: 0940 20 ea U 00 dO 21 20 ac
. : 09 48 If I()O 20 ca r r 00 20 ca
. : ( l,950 f r I dO 03 4{' Sf f c 00..: 0 90 58 2 0 ca r r 0 0 a s 63 9 1 72 1
.~0 960 20 ca ff 0 0 a s 62 91 7a
.. 09G8 2() b7 ff 00 to e2 20 Gil
. : 0 9 70 r r 00 20 ca n UU 2 :0 ca
.: 0978 If 0 c9 12 dO Ob 2'0 ca
.: 0980 ff 00 r o e s c9 22 dO f7
. : 0 98 8 f I J I e aa I b e W 9 < 1 2
.: 0 9 9 {l 04 dd d4 ff 00 m 05 ca
.: 09 98 dO fB fO dd a5 7 0 1 85 3b
. : 0 9 aO a s 7b 85 3c 20 73 M 0 0
.: 0 9a 8 eo c J3 2 0 6b c : 9 ' 20 51 r r
.: 09bO 00 a.S 3t 85 < 7 1> a s 3b 85
.. 09 b8 7a a() 0 0 00 a2 : 0 0 00 bd
.: 0 g eO 0 0 0 0 0 1 . (9 30 90 } 1 ·8
. : o sc a 20 73 CO 00 s o 0 '3 20 82
. : 0 9c lO f f n o 68 aD 00 00 911 1a
.: 9 dS e8 d e8 20 73 00 0 I bO
.: 0 g eO 0 8 20 9, if 0 () 20 7 ! ) 0 0
.: 0geS 00 90 r 8 c'9 zc 10 b8 s n
.: 0910 96 20 ac ff 1 0 0 21 ) ca fI
.: 0 9m 00 20 ea r f .00 dO 08 a9
. : O a O O f f 3 5 6 3 8 . '5 6 2 3 '0 D f ! ~ O
.: O a08 ca f1 00 r5 I <I d U 01 20
.: O a,lO ca tf 100 cS 1 . d O b 20
.: O alS dl dd <19 20 4 c d2 r r 20
.: 1 082 0 c a ff 0 0 20 b7 ff 0 0 r { )
.: O a 28 c l2 20 a2 ff 0 0 e6 97 z
. : O a30 24 fe 00 e6 2d dO 02 e6
.: 0 a38 2e 60 20 a1 n 0 0 ' e s 97
.: 0840 20 o e Ie 00 a5 2d dO 02
.: O a48 ,,6 2e <:6 2d 60 20 fO fd
. : O a 5 0 0 :a O 0 0 1 G O 8 4 O t ; 3 4 ! = ) 7
.: Oa58 60 ,a5 35 85 63 <15 :36 B 5
.: O a ti 62 4ce co as 63 18 65
. : O ~ 6 8 3 - 3 8 5 6 3 < 1 5 6 2 6 5 3 4 S S
.: O a7 0 6,2 20 C O l r r d {) Ib 6C1
.: O a78 aO 00 flO 1:!67i1t dO 02 e6
.: (laSO 7b bl 7a 50 89 Sa Btl a7
.: l }aS8 3 48 4 I 4e 47 <:5 1 -1 45
.:: G a9 !) 4t 45 54 c 5 45 t1 9 4 ,e ( ;,4
.: O a98 4b 49 4c , c : c . 4e 55 4d : 2
.: O aaO -15 d2 00 {I, aS k 0 0 41
. : O a 1 l8 1 c o n a 5 f c D O « . :6 f h ! J U
.: O abO 98 If! 0 0 ac Ib 0 0 aa a
.: O abS <lia aa aa ail, aa aa i ' . I i f I aa
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 46/68
ASCIIModem Driver For VIC,RS-232
,~
O ne very p racH cal use o f the Commodo r e VIC -20 is il l
c om rn un ic atlo ns , G i ven th e sticker p r ice o f rh e V IC and a
VICModem (or astandard RS-232 modem wnh Ute VIC
R S -23 2 adap ter ) , y ou an d your bu dg et w ill fin d th is r ap idly
g ro w in g p as tim e a n e co n omic al introduction to c omp lIlUng .
The V IC has a bu ilt-in R S232 i nt er fa ce . Bu t do n't g o l ook ingfm a s tandard R s;...232 (on nee-lor (th at trap ezo id sh ap ed
connec to r m uch Iik T he Transac to r m a sth ea d b or de r) be -
cau se yo u won ' t Nnd o ne. C omm odo re dec ided they ' cou ld
getsom e m o re m ilea ge o u t o i tae Use r P o rt (l i le card-edgeconnector 0 11 th e far r ig h t l oo k in g from th e back ) an d m ak e
it dou ble as R S-232 s ince i t 's; u nlik ely bo th w in be in us e
s imul taneous ly . T here 's ju st o ne ca tch . T h e U ser Po r t is
driven by a T IL device (k now n as th e 6522 V ersa ti le
Interface, Adapter) , so ou t p u t leve ls ran ge from 10to 5 ; vo lts,
R S-2'3,2 modems requ ire a - (2 to 12 volt range, so tile V IC
R S-232 ad ap ter I(VIC lO llA ) is requ i red , T he V[C M o dem
a ls o co nnec ts la th e U ser Po rt, bu t H has th e a da pter bu ilt in ,
The V IC a ls o ,b as b uilt-in ROM rou tin e s f o r tra n srn ittln g and
rec eiv in g c harac ters o ver th e R S -23 2. T h es e ro utin es do th e
ac tu al h andsh ak ing o f da ta and are invis ible to th e u ser .
However. they don 't d o everything Some BASIC is s til l
necessary 10 g el th em sta r ted, ln t ta ct, a n d th en bu t th em
o n when 1'10 l onge r needed.
W hen a file is O PEN ed to devic e 2, th e R S -232 por t , 2
reserv oirs o r " buffers" are autom atic ally allo cated ; o n e fo r
s t o r in~ , charac ter s from th e k eybo ard allld th e o th er fo r
ch aracters co ming in from t:tu em odem . B oth buffers a re 2.5 6
bytes , lo ng and are p laced "back -to -h ack " in th e to pm ost
5 012:b yte s o f RAM . The O PEN co mmand also seals l o f r th l s
a rea o f m em ory so th at no th lng else i ( l ikes t r ings ) will tr y ro
u se it . If yp u p lan to u se R S-232, th e O PB N sh o u ld occu rvery ear ly in you r p ro gram . O t herw is e, an y s tr in gs t hat a re
built at the top of memory wil l get clobbered wnen 'the
O PE N com mand allo cates th ese bu ffer s . Also m ak e su re
y ou r p ro gram . h as a free sp ace o f at lea st . 51 2 by tes; (p relera-
bly more ro t variablesan d arrays) o r you.'11 sud d en ly fin d
t h a t th e end o f y ou r tex t h as been g obbled!
Two other rather no tew or th y even ts occu r upon opening
th e RS-232'. F i rs t" t h e s er ia l por t is disa - led . T h at 's r ig h t, n o
m ore disk o r p rin ter , If th at was n't e no ugh, th e cassette po r t
is a ls o ben ch ed . lit seems that th e V IC devotes qu ite a biL o f
it s n!lterfac'e Iuternals to s uppo r t i ng RS-232. Disk andprinter loggillg I s s ti ll poss ib le , however it would require
c los ing down th e R S -23 2 w hile t hey a re s er vi ce d. T h es efeatures would slow down a BASIC p rogram to the po in tw h ere c hara cters m ig ht be lo st, A m ac hin e 'lan gu ag e dr iver
w ou ld be n e:o ess .a ry f or a m ore aophis ticared ter min al p ro -
g r am .
T he tra nsmit/re ce iv e ro utin es b eg in w o rk in g when charac-
ters start ap p earin g in either o n e o f these buffers, U sually
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 47/68
only o ne bu ffer sees activ ity a t any ODe t ime. Rarely do both
ends o l e ! communica t ions lin k want to tafk atthe same time.
S o; ,a fte r y ou send ch aracters, you 'll be W aitlllg 101' a re-
sponse . Don't WOlf}' abou t che ra ctersk om bo th lends mfx -
in g to ge th er o n any S l i ng : ! e l ine. It p ro ba bly w o n't h ap p en .
E ach bu ffer h as 2 o ne-by te pointers th at a re s tored £wm
$029B !o $029E. A one-byte po in t e r is m o re a cc ur atelyre fe rre d to as a n "index", but w e'll use the term "pointer" fo rbetter readabil i ty an d c la r it y .
.~
The Input or Receiver BuBer
T his one co llec ts ch arac ters com ing from th e m odem . T he
l il rs lp o in te r ( $0 2 9B ) t el ls t h e ,til' ro ut ines w here ~n s to re th e
n ex t i n com i ng character and th e o th er ($0 29C ) tells B A SIC
whe r e it can G E T"" its nex t ch arac ter fro m. In it ia lly , th e 2
p oin ter s s tar t o u t a t the same p lac e. A t th is po i n t a IG ET #
would return a null str ing i nt o t he v ar ia ble , When acharac-
t r a rr ives a t th e p or t" If,s s to red in th e rece iver buffer andthe po in ter at 5029B is ' incremented. Now there 's a gapbetw een th e tw o p eln ters , T he nex t G E Tf.!wou ld pu l l th i s
ch arac ter ou t o f th e bu ffe r and $0 2 '9C is inc rem en ted,
m ak in g, bo th p o in te rs e qlla J aga in . E ss en tia lly , o ne po in t e r
i s ci 1 as i ll g t h e anotherin an attemptto k eep th e g ap as smallas p o ssible, m uch lik e a race betw een two vehicles on a 25 6u n it t ra ck .
T hu s, th e id eal o rd er o f even ts Is .. ' 1 ch arac ter cernes in ,
BAS IC g , et s it out, ano th er com es in, an d 5 0 0 on. B u t su ch I
n ot a lw ay s th e c ase. A t v ery h i gh t ra n sf er s p ee ds (w .i lk h . lt h e
V IC is p r epa r ed 10 handle ) . BA S iC c an p ote ntia lly tall be-h ind . A charactercomes in. and ano the r . and another, and -
BAS IC may only p u ll one ou t fo r every 2 or 3 th at come in.
T hls situatio n is O K un tii th ere is 2 55 ch an :iC ilers w aitmg fo r
BASIC 0 re t r ieve , W hen tile next one arr ives , $029B Is
in crem en ted, an d th e.2 p oin ters bec om e eq ual ($0 9.28 h a
" la p p ed " .$ 0 29C}. T b o.s e:2 56 ch arac te rs a re now lost be -
cause it ap pea rs to th e V IC t ha t there a re no ch arac ter s in th e
buffer,
A t 30 0 bau d, ap p rox lm ately 30 cbars p er second, (a very
p op ula r sp eed in th e m lc ro en vir onmen t) th is p ro blem is not
lik ely to a rise u n less th ere is too m uch B AS IC betw eensubsequen t GET " "'s . .1 f a co ntin uo us stream o f data is s lam-ming in to th e p or t, to o m any IF s la te m en ts m ig h t slow down
BAS iC enough t ha t e nt ir e buffers g e , tmop p ed , Sho rt in c om -
in g bu rs ts sh o u ld be no problem th ou g h .. As long as th e
s tr ing s are less th an 256, th ey 'll w ait in t he 'b uf fe r c om t or t-
ably unt i l BASIC g ets th em ou t .
The Output or 'Transmitter Buffer
Characters are sen t from t h i s bu ller w hich o pera tes m uch
th e s am e w ay as th e receiver bu ffer . O n ce ag aln , 2 p oin ters
'c o nt ro l t h e now of da ta ! n and ou t o f th e bu ller , T he fir s t , a t
$ 02 9D " tells t h e t r an s r ni l/ r ece iv e rou t i ne s w here to g ri:l.b
ano th er ch arac te r fo r s ending . T he o th er p oin ter , a l $ 29E.
indica tes w here th e PR IN T '" ' c om mand w i l l p la ce s ub se-q uen t c harac ters , A s t hey ar r ive ill th e b u ff et , t hi s p o in ter is
incremented. and as they gel sent, $02.9D is incremented,
SQ , lik e th e in p u t bu ffer . th e tlr r ou tin es a n.~ c on st an tly
Ilryillg, to elim inate any g ap betw een L Ju :tw o, pointers.
U nlike the Input buller, the t/r ro utin es w on ', ,all0\\' the
ou tp u t buf fe r to o ve rflo w ..H PR INT ; illil. es to p lace more Iha n
25 4 characters in th e bu ller , B A SIC will w ait u n lil som e o:f
them are' sent before Iettingany more pile up. Since most
o it:eo th e k eyboard will be th e m ain sou rce o f ou tp u t
characters, it's unl ikely t ha t the output buffer will see t h i s
condition. A send-from-disk feature cou ld possible till upth e tran sm it ter bu ffer , bu t, as m entio ned ea rlier . th e' serial
po r t Is disabled by tile ,R5-23,2 , 50 d is k: is ln a cces sa ble
anyways. A machine c od e d riv er would meed to do e [he
R S -2 32 , br in g in s ome d is km 3 te ria l, re -o p en cornrnunice-
N O I l l S and continue from th ere. O ne wou ld also . h a v ' E io
incorporate certain p recau t i ons to take care of the buller
space t h a t · g e t : s de-allocated and then re-ellocated during
t h is -p r oc ed ur e. A g a rb a.g e col lec t du du g disk /p rin ter ac cess
mig h t put s ome vi ta l s t r ings u p th er e th at wou ld eventually
be destroyed. As you can see, an all-encompassing VIC
modem driver would require some careful thought,
AllasST
T h e s ta tu s var iable S T t akes 011 a w h o le new m ean ing
du ring R S-232 u se , B its wi t h i n ST are u sed to flag var io u s
t r ans miss io n erro rs bu t if every th ing seem s to be g o ing O K .
an ST t es t i s o ft en un ec es sa ry , [f y ou 'd lik e t o i ns er t one , a
s lm pl 'e tes t fo r 5 r<>0 will ln dic ate an nor , o the rw i s esmoo th s ai li ng . S f Is c le ar ed 1 .0 ze ro i J :nmed i a te l y after beingread, s o if you w an t to k now w ha t it was , you'l l need tl O t r ap
it in to s om e o th er v ar ia ble.
ClosinglJlp
A s imple C L O S E bring s you r V IC back to n or mal. T h e sp a e
ea ten lip by t ho se b uf fe rs i s r et ur ne d (try ?FR E(O )} .r i le se r ia l
po r t comes bac k, an d th e cass ette w ork s once m ore, B ut
before you c ia . C ommodor e suggests thts line just to make
s ur e ev er yth in g's been s en t;
140 if peek(37 t 51) and 64 th en 140
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 48/68
More V IC RS~2S2 lafo ASCU l 'cnmJmaI Software
T he VIC Programmers Re:fer,ence G uide has a, sec t ion on
RS - 232 . De ta il s 0 11 cent rol registet and com mand reg is ter
s e t up I S c over ed alo ng w ith s om e more RS~ , 232 J a c r s .
B elow is a p r,og ram tha i w iD g .e t y ou s ta rt ed . S im p l er ones
are aro un d, bu t lh ls o ne t alk s t ru e ASC II ..F o r a m o re de ta ile d
descript ion o r .the p rog ram, take a lo ok a t t he a rt ic le titledT r aa sla tlo n A r ra ys in 't h is i ss u e ,
C OMPUT E's A ugL ist "82 I ssu e 2? h as am ide w orth look ing
II p b y jim B utterfield and JIm law. F o O l th ose of y OU ! ge t t ing
bo red w ith d en ai ls ; here's w ha t w e've been I ,ead i. ng u p to .
10 0 g o su b 20 0I] 0 get#l, a$ ; i r a$ th en p rin t ch r$(f(a sc(a$)} );
120 g et a s : if a $ t h en p r in t# l c l1 r$ (t (a sc {a $) )) ;1 30 i fa S< > "! " goto no : rem o r su bst. an y ChM to end p ro g
140 if p ee k {3 71 5 t) and 64 th en [40
150 dose t160 p r in t ch r$(9) : rem enables Shm/CBM
170 end
20 0 open 1 ,2 ,3 , c h r$ (6) + chr$O 60 ) : r em sets 30 0 bau d
210 p r in t ch r$(14) : rem sets u p p er /low er case220 p rint ch r$(8): rem locks , ou t case ch ange by Shi f t lCBM230 d ,im r( 255) , f( 2S5)
240 'lo r i",,3 ,2 to 64: tG)=j : nex t
250 forj;;;;;;65 to 9 0: 'tUi) '" " j+32 .: nezt
2 , 6 0 fo r i" , , 9 J to 9 5 : l(j)i=j : next
27 0 fo r j= 19 2 to 218: t(j)i='j-128: next
280 t(13)=13: 1(20)=8290 rem a dd ex tr a fu nc tio ns h er e
30Q for j l""Oto255 :if ~mthen f(tOH= j : f{tOl+ 128)= j : next
3W reairn
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 49/68
h ou s ing , bu t in a co lou r th a t lo ok s l ike a c ro ss betw een
beig e and g rey . Unlik e the V IC , it has a 40 column by 2~ line
s c reen ou tp u t and th e m odu la to r is conta ined ins ide th e
h ou sln g w h er e: it belongs ..The keyboard reels a . l lt tl e n lc r
to o, bu tth at 's o nly a pe r sona l oplnion, pos s ib fy injluertced
by the order in which they carne eut.
Tlbe Commodore 64: A Preliminary Review
.r
ln a wor ld w here new m ic ro com p ut er s s eem to be appear-
in g fas te r than federa l bu dg ets , i t 's h ard to dec ide w hen tobuy. T h a i fear o f o bso lescen ce is " ,·ery real w hen YO UR
m oney is 011 th e line '. B u t all compu t e r s will eventua l ly
b e come obsolete , s o w a itin g br a beue r o ne is perpetual.
There fore , yo u mUSI determine wh i c h compute r w W di n
every th ing you des r re a t a p r ice th at su its yo u r bu dg et.That's a pretty ta ll o rde r. because you might fin d o ne t h a tdo es every th in g, bi ll a s ec on d m o rtg ag e o n y ou r house was
I10t in y ou r p lan s. A ltem ate ly . th at inexp en sive m ach in e
you've had your ey on mighlt only give you room for a
stmplemortgage program an d yo u fin d yo urse lf faced with
exp anding no t on ly th e co mp ute r bu t yo ur lnvestmem t oo .
P inding a cernpromlse can be lau gh .
II you've d ec id ed th an y ou 're definitely in th e m ark et fOlr a
m icro , ch eck ou r th e Commodo r e 64 ; Commodore ' s newes tentry and, without a doubt, their best so far. AIUlOUgh It
look s lik e a V IC from th e ou ts ide, ins ide it 's1 :1
w hole newstory.
T he 64 alread y has 64K o f RAM (hen ce the name), sa
"m emory exp ansion" can be s retch ed oft your shopp ing
list. Of course, not all 64K is available srrnultaneously.
Memory is . sp llt in to ectlo ns wh ich .must be swi tched in o r
ou t as req uired. M o re o n 64 bank -sw itch ing in a la ter issu e.
L ik e th e V IC , it comes in that "wedge" shaped plas t ic
Standard Design Features
• C artrid ge slo t to r gam es, ic., co mp atible w ith the n ew
MAX ma ch in e.
-8 bit u se r p o r t
" S er ial.bu s 'F ordisk, printer , etc., (lik e on th e V IC )
• C as set te tap e p or t
• C om p osite v:ideo o utp u t a nd m o du la to r output po r t s
• A ud io o utp ut jack
• 3aIK avallabie fo r BASI text
• 2 bu ilt-in A nalo g to O ig .ilal co nver ters
• 16 colou rs
And tbe're's more....
Several new ch ip s h ave been u sed in th e 64's des ig n . A new
m icrop ro cesso r, th e M O S 651 0, m ak es it s debut. The 6510 is
still an 8 bit m achin e, but !n tern al ban k sw ilchin g cap ablli-
ties allow for th e bonu s R AM . O U 1 e . f featu res in clu de: p ro -
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 50/68
g ram rna ble s ta ck p o in te r, v eriable len gth stack , an g bit
bi-direc~iol1al 1/0 portand it's software compatible with
6502 programs.
T he 6566 V ideo D isp lay C hip
T his o n e's a beauty! E verythln g yo u ever wan ted to d o in
m ovable g ra ph ics ... and 'th en som e, T h e 6566 h as th e·cap sblllty o f m ovin g defin .able sh ap es , o r m ote c omm only
kn ow n as "sp rites" " Up un til now, s prites h ave o n ly been
ava iT able o n m ach ines lik e arcade g am es .P acm en s. g alax i~
a n s , : f r o g ; s ,e t c . a re a l l d on e usl,n g sp r i tes .
T he 64 allo ws 8 sp rites to be disp lay ed s]ml1ltaneously (wi th
m ore: by u s ing "ras ter com pare" w hleh w ell exp lain . in a
later i ss u e) . Y o u s imp ly defin e a s ha pe s om ew h ere I I I mem -
o ry , se lect a sprite number , po i n t th at sp rlte at th e sh ap e,
an d tu rn i t o n. L ik e m ag ic i l1at shape w ill a pp ea r in sta ntly
0 11 th e screen . T hen by merely giving X a nd Y e oo rdin ates ,
the s h a p e moves aro un d th e screen by itself! N D moreera;sing the s h a p e at i~ sprevious Iqcatkm, 1 1 1 0 mo re u pd aU n:g
sc reen R AM and co lou r tables ... everything's done in
hardware !
O t h er s p r it e f ee lu r e sl ndude- h c rl zon ta l and/or v er tl ca l s i ze
ex pa ns io n; h i- res o r m u lt i c olo ur s pri tes ; c olH sio n detec tio n
betw een sp r i tes . o r sp-rites an d back gro un d; 'sprlte/ba ck g ro u nd d is pla y p rio ri t y (s pr it es ca n appeal in ,fro n t o f
backg round . 0]' d is ap p ea r be hi nd b ac kg ro u nd ).
Other 6566 feattur~sinclude: .srnooth scrolling horizontally
and vertically; ~6 colours with 3 grey shades; bi t map modef or h i -r es o lu t io n d i sp , la y ; I /O p o r ts fo r 2 ioystkks 'Or 4
p addles o r Ilg ht p en Inp ut.
T he 6581 Sound In terface D evice (S ID )
T he S ID is vir tu ally a syn th es izer al l a C h ip . It h a s 3
independently controllable voices, each with a 9 octave
rang,€!and 4 wave io rm s in clu di ng square, t r i ang le , sawtoo th
an d n oise . E ac h voice a ls o h as a p ro g rammab le en ve !o p egenerator a nd v olu m e cont ro l w r t J } a m as ter vo lu me co ntro l
f or a ll ~ 1 1 re ev oi ce s, rile S ID h as som e o~he;f v er y s ep h ls tl -
cared f ea tu res such as oscil la tor synchrentzatlon, r ing mod-u la ti on , f ilt er r es on an ce c on tr ol. a nd it even h as al l externali npu t [o r p ro ces sing s ig nals [ro m o th er sou rce s su ch as ane le c tr ic g u i ta r .
Inail . the 6581 call p rodu ce sou nd w ith better qlJality than
som e o f th e lnstrurnents it can s imu la te . W i th a l iU le p r o-
g ra mm in g , v oic e s yn th es is shculen 't be to o much ~rouble
either.
T he 64 com es w ith 2 of th ese, T he: 65213"5rep lace tile 6520
an d 6 5.22 o f e arlier mach ines . Each chip has an 8 bit shlfLr :eg is[et fo r s er ia l 1 10 , 24 clo ck w ith p ro gram m able a la rm , 8
or 16 b i t t h andsh ak ing on read or w rite,. 2 indep endent H 5bitinterval timers and ~e capabi l l ty for sourcing or sinking 2
s tandard T T L lo ads . I've been lold ~ha. t the e xt er na l i np u t ton ile S ID c all on ] y p rocess "S ig nals th rou gh th e fih er section
which ellminates several possibilities. However, the 10526
h as tw o analo g 1 .0 d ig i ta l convert e r s. B y o o nn ec ti ng e xt er na l
s ou r ce s h er e" a u di o s ig n a.ls can be s en t th ro u gh illl s ec tto ns01 the S ID w hjc:h w ill p ro v.id e' fo r some ralherinteresting
experimeI!Jlat ion. The AID's will also elim inate a lot of the
analog :int:edacing probleresthat hf1ve plagued us. in. th e
pas t .
Aooessories
Commodore intends to u se m any o f the s am e a cc es so rie s fo rthe 64 as are availabl'e now for the V1C. V I C joysticks,
paddles , disk dr ive , I J ri n ! te r " modem, RS -232 car t r ldge and
C2N cassette are a ll comp atib le w ith the 64 , Abo l. lll. the on ly
d irferen (e is th e s lQ 't fo r thin gs lik e g am es a nd utlllty eer-
t r idg es .It 's been c ha ng ed to a v er tic al p in type c on nec to r a s,
op p osed to th e card! edge ' typ~ connector on th e V IC -20 ,
T hls is no t on ly less space censurn ln g, but p romises to be a
li t tle m ore- ru gg ed as th e co ntac ts a pp ea r 'to be les s suscepti-
ble t o fr ic ti on w e ar ,
Future accessories, accordung to Commodore, include a
Z --S O p lu g-in card. so ft-Iced m odu les fo r B A SIC :4.0 , Pascal ,F o rt h, a nd P ilo t, e xt en de d BASlC c a rt ri dg e s f or g r ap h ic s 31'J:d
s ound suppo r t , and m on ito r t ype c ar t r idg es fo r m ac hin e
languag,e exerc t ses ,
SomeComm.ent:s
T h is tim e C omm odo re's done II r i .gh t ! . They p laced the
s c re en :RAM immed ia te ly fol lowing zero p ag e, th e s ta ck , an dRAM allo cated fo r the-cassette buffer. Th i s leaves a 38K
s tretch o f u nin terru pted m em ory w hlca has been set u p fo r
BASIC 'text. Unlike th e V IC , th e screen won't be m oving
around on you , bu t lik e th e V IC , t h e L O AD com mand willad ju st fo r th e new s ta rt o f te xt a ddre ss ,$ 0800 .
T h e c h ar ac te r g enerato r ia set u p lik e in P ET /CBM s, It lakes
no address sp ace aw ay from th e p rocesso r u nles s you w ant
t e mo di fy ' i t . U sing a very .simplepmgrarn, it can be transfer-
red to R AM (w h ere it will requ i re a ddres s sp ac e) an d iii,
c hara cte r p oin ter in vo kes th e n ew lc ca rlc n,
The 64 has 16 colours, 8 more than the VIC. Commodore
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 51/68
h ad so me tro uble ' w ith co lou r qua l i t y 01\ T V and moni to r
o utp u t, bu tth is h as been c leared u p il l t i le r e le a se vers ions,
L t h as th ree dist inct g rey shades th at co meu p beau tifu lly
even th rou gh m odu lated output to a TV . T h e y also h ave <lin
e lem en t o f br illia nc e a bo ut th em thai m ake th em a p p e a r
m ore like co lou rs as op posed to ju st sh ades .
T h e C on tr ol key is always, a nice fea tu re on any m ach ine.T h e V IC C ontr ol ke y apparen t ly had som e p roblem s w hen
used in a communications envi ronment , but this is a ll0# _
c leared u p fo r th e 64. R UN /STO P-R EST OR E w ill s t ill g : e t
you ou t o f lu sta bo u t a n y crash , and c .hangtngfrom Uppe r !
L owe r ca se ' to G rap h ic s mode [5 a snap 'W ith th e sh ined
C om modo re 'k ey at th e low er lelt co rner of th e keyboard. 8
func t ion keys are included (4 p lu s 4 sh ifted) and I've been
in fm medl [h at a new m eth od o f k eybo ard s cann ing wi l l
allow th e C ontro l and Commodore k eys to a lso be used ass h ift k ey s. C om b in at io n s ot C T R l., S hir t , and th e C om rn o-
dare k ey m ig h t resu lt in as m any as 32 etfedive function
keys!
C om modore op ted to s tay w ith th e ser ial bu s fo r Iotertaclng
p e ri p he ra ls . U n li ke ' I E EE paral lel , b it s a r e d el iv er ed iII se r ia l
w h ic h r edu c es c omm u n ic ati on s speed e on si de ra bl y, T h i s
r'eductiolll i sn 't r ea lly noticeable w ith th e p rin te r , be t d is k
ac cess is so mew ha t h am p ered. F or tu na tely th ere w ill be an
lEEE ln ter ta ce c ard avai lable fo r th ose th at already OW1ll
IEEE p e ri p he ra ls ( se e th e N ew Produ cts section Jor info rm a-
t io n o n RIC"s V-Link) .
fo r som e reason th ey decided to ,ins ta ll BASrC .2.. in tbe 64
w h ich do esn 't h ave all th o se n ice disk comm ands lik eCa t al og , 'R en ame, Copy , e t c_Tha t ' s not ' roo hard t o l iv e with,
[ bu t th e p ro ble m w llh SABle 2 , a s y ou 'll r ec all , i s th e. n as tyr ea lm o f " g ,a rb ag e c olle ct io n" . R e ca p pin g. g ar ba g e c olle ct io n
o ccurs w hen there isn 't en o ugh un used m em ory to acco m-
m odate a new str ing g enera ted by BA SIC . A t th ls p olntth eo pera ting sy stem dec ides It m us t perform a ga : r: bage ' co ll ec -
tio n .. T h e s ys tem re-packs all go od strings all th e to p o f
memo ry , e ff ec ti ve ly throwing, aw ay any old ones th a t a re 11 0
l onge r needed . D u rin g th is p ro ces s, th e m ac hin e will a p p e a r
to "hang-up". The delay will vary depending on several
co nditions . p resent a t th e t im e, bu t on 32K BASIC 2 PE .T !
CBM's , t he re ' were r epo r t s o f g arb age co l l e c t i ons takinganyw h ere from 20 seconds to 2.0 m inu tes . As ment ioned
ea rlier , C omm odo re in ten ds to m ak e B A S IC 4 ].0 a va ila ble o n
a plug-in car tr idg e, bu t th is wil l p r oba bly c on ta in the-disk
' commands only . F ortu nate:!y th ere are a nu mber o f way s to
avoid! thisproblem whi ch we'll cover in a fu tu re ar tic le, bu t
BASIC 4 .1 J wo uld h ave been much better s uited fo r th e 64.
In Summary
T h e Com modo re 64 is super io r in ev,ety asp ec t over th e V IC .T h e V IC s ti l l h as ils a pp lic at io ns t ho u g h so don't d ee m lto u l
lo r t i le c ou nt y et, B u t e ve n a t double th e p ric e O o f th e V I C -2 0,
th e 64 seem s to be th e l og i ca l .cho i ce . .P rog ra r r r rn e r s will lind
th e 64 a p lea su re to , w ork w ith . Games? A c inch o n th is
machine ... and you can bet they'll be a bs o lu t el y d az zl in gw Ith th e added g rap hiC S and sou nd fean ires .
S up po rt fo r th e 64 w ill p ro bably reach u np receden ted lev -
e ls . B e si de s b ei ng capab le o f nearly ev er y P ET fea tu re seen
to date, the added features of this machine will have
p rog ra rnme r /wr l t e r s lust c rank ln ' o u t m ate r ia l, Y ou can
cou nt on at least one 64, rela ted ar lide in every m ag azine
with CB M c on ten t. T h e 'T ransacto r w ill be no excep t i on , bu t
with a difference. We'l) le t Y0I.I. ]mow whenaVI:C/PET/CBM
app l i ca r i on will wo r k 01 1 it 64 . S ee th e a r t ic le th is is su e o n
V IC M odem D river , and 54 m emory m ap s ap p ear at tile
back,
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 52/68
Commodore-64, Arehlteeture :Map
,~
C H A _ H lI , c r E R S E T
(bit 2 o f $000'1)
() ~ CHAR ROM
1 = tlO ! :tOM /RAM
VIC II C hip seesrhts 15K block
I ln p( )wer-IJ .j>
$ j E O O O
$ O C O O
$0800
: m o o o
$(;000
$ A I O O O
'$8000{32768)
M O D O
( 1 6 3 & 1 ) 1
$ 2 0 0 0
{8192]
i S O S O O
$ Q O [ J O
r-----·(6553S) ~~~~ r--------------,
KERNALROM
8 K I - I 1 R A M
r t l l ! 1 0 1 $ 1 0 0 0 I}
0 , = RA M
I .. KERNAL ROM
~---{;;I31I)----I !------------I
C i IA 1 ; . C I A 2 1 'S . B L l S , P . U , p . l1------ (55~O----I
C olo ur R alj1 Nibbles1-----(S'i~5)----I
V](:II,Sm~-~-a;.1~~Bj-· ----I
~ K R A M
1----- (.-19152)----1
B A S I C
INTERrR~n:R
RO M
1----(40960)---~
8ASIC
U ser RAM
( 3 8 fJ 1 2 . !B y le s )!
i lK R AMmaps 10 $1)000 when
bits Q & l oHOOO I = I)
........----------___j
B K L O R A M
OJ i l 0 01$00 (1 )
0"" RAM
I = B .AS IC ROM
E X R O M
SK .ROM C i lt hid s e
11 ' 1 < 1 ] ) 5 , h~rr:
...- .. '.--------~~~
H I - R E S S e < O O I l
mapSIHl:fe
. .. . . . . . 1 - - _ - - ...J
!----- j : 2 0 4 : 8 ) ---------I
S creen O K ) : : : : : : : _ , ' 11------{1(24)------I L...-~~~~~ _ _ _ _ _ _ l
Wo rk sp ac e (1 K)
P r o n e S S O F Reg . ( SO I l)
H I·RES Co lo u r 1able
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 53/68
Commodore 64 Mem,ory Map Compi l ed byJ im Butte rfie ld
0 0 0 0
0 0 0 1
0003 -0004
0005 ~0006
0007
0 0 0 8
0 0 0 9
D O D A
0008
o o a e0000
O O O E
Q U O F '
I){) IQ
O O H
0 0 12
0013
{)Q U , - ~ 0 0 1 5
O O U 6
0017 ~OO J8
0 01 '9 -0 021
1 00 22 -0 025
1 00 25 -0 02A
002B -002C
002D ~002E
002F -00301
0031 ~0032
003'3 -0034
0035 -0036,
0037 -0038
0039 -OOSA
003B -oose003D-003E
0 03 ,P -0 041 )
0 10 4] -0 042
0043, -0044
004,5 -O( )46
0047 -0048
0049 -{J04A
004B ~004C
004D
004E -005,30054 ~0056
0057 -0060
0061
0062 -10065
0066
0067
0 0 6 8
0059 ~006E,
O D 6 F
o1
3~5-6
7
8
9 'II]
U
12
1 3
14
\5
1 6
17
18
19
2 0 - 2 1
22
23-24
25,-33,
34-37 '
3 8 - 4 2
4 a . . . 4 4
45~46
4 7 - 4 8
4 9 - 5 0
5 1 - 5 2
5 3 - 5 4
5 5 - 5 6
5 7 - 5 8
5 9 - 6 0
61~62
63-64
6 5 - 6 6
6 7 - 6 8
6 9 - 7 0
n~72
1 3 - 7 4
7 5 - 7 6
77
'l8~83
84-8'6
8 7 - 9 6
'9 7
98-101
102
10 3
10 4
lOS- l IDH]
Chip directional register
CtJi :p 110 ; memo r y & t ap e control
F lo at- F ix ed v ec to r
Fixed-Float vector
Search charac ter
Scan-quotes f l a g
T A B co lu mn save
0 '"' L O AD , 1 :::V ER IF Y
Input buffer pointer/# subscrpt
Defa ult D IM fla g
Typ e : F F ; ; ; ; ;; s t n in g . O O = = 1 i 1u m e r k
1 'y ]j e: 8 0= in te ge r, 0 0 '= floaflng po in t
DAT A scan /L lS T q uete/rn ern ry flag
SubsCl ' ip t lFNx flag
0 = IN PUT ;$4 0 =GET;$98; READ
A T N sign/Comparison e v a l f l a g
C urren t l/O p rom pt flag
Integer value
Po in te r: t emp o r ar y st ring s tack
last 't em p s tr in g v ec to r
S ta ck fo r tem p ora ry s tr in gs
UUlity p ointer ar ea
P ro du ct a rea fo r rnultiplkatlcn
Pointer: Start-at-Basic
Po i nt er : S t a rt - ol -Variables
Po i nt er : S tM! - o f~ 'A r ray s
Po i nt er : End -o f -A r r ay s
P o in te r: S t ri ng ~ s to ! "a g e(movi ng d own)
Urmty string pointer
Pointer: Limit-of-memory
C u rr en t B a sic : li ne n um be r
P revio us B as ic lin e n um ber
P o in te r: B as ic sta teme nt fo r CON T
C ur rent D A TA line nu m ber
C u rr en t DATA a ddr es s
I npu t vector
C urr ent var iable nam e
C u rr en t v ar ia ble .a dd re ~s
Varlia ble p o in te r fo r FOR iN 'EXT
V-save ; op-save; B a sic p oin te r s av e
Compar i son symbol accumu la t o rM ise w ork . area, p oin ters. etc
Jump ve cto r fo r fun ctio n s
M ise n um eric w ork area
A c : c u m Nl : E x p o n e n t
A c cu m *l: M a ntis sa
A ccum= t: S ig n
Series evaluation constant pointer
Accums 1 h i-o r d er ( o ver flow )
Aocum o ! 2:: E xp onent, etc.
S i g n c omp ar is o n. A c c i i ! I vs #2
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 54/68
(1)70
007] -0072
0 0 73 -O OSA
007A -'O Q 78
0088 -O DSP '
009'0
009'1
0092
0 0 9 3
0094
009S
' 0096
0 0 9 1
0 0 9 8
0 0 9 9
009A
(109B
o o g e00900 0 9E
009F
D O A O - O O A 2
O O A 3
O O A 4
O O A 5
O O A 6
O O A 7
O O A a
00A9
O O A A
O O A B
O O A C - O O A D
O O A E - O O A F
O O B O - O O B I
00B2 -0083
0 0 B 4
00B5
00B6
00B7
00B8
00B9
O O B A
o e m s -DO Be
O O R D
O O B E
O O B F
o o e DO O C 1 " " ( ) O C 2
O O C 3 .. .J O O C 4
00C5
O O C 6
O O C 7
o o e sO O C 9 ~ O O C A
O O C B
H2113-114llS~138
12:2-123
139-143
144
145
' 1 4 6
14 7
~48
149
150
151]52
153
15 4
15 5
15 6
157
158
159
1160-162
1 ' 6 3
164
1 6 . 5
166
i67
168
1 6 ' 9
HO17]
1 7 2 - [ 1 3
174-115
176-J771 7 8 - 1 7 9
l80181
182
183
184
185186
187-188
189
1'90
1 ' 9 [
1 9 2
193-194
195-196
197
19 8
] 9 9
200
201 -202
20 3
Accum" I lo - o rde r ( rounding)
Cassette bu. ff Jell/Series pointer
eHRGET subro utin e; get B asic cha r
B a si c p o in te r (w it hin sl1brtn)
RND seed value
S tatu s w ord S T
K e y s w : i t c h P IA : S T O P and R V S f la g s
Tlmtng constant for tape
L o a d ; ; ;; : 0 , V e r if y = :: : : : 1
S e r, ia J o u tp u t: d e te r r e d c h a r flag
S e ri al d ef er re d C h a r ac te r
T ap e E O T re eeived
R e g i st er s a ve
H ow mall)' open m e ; "In p ut d ev ic e, normally 0
O utp ut C M D device, n ormally 3
Tape cha racte r p 'a rit .y
Byte-received flag
Direct =$80 /R UN =0 ou tp ut contro l
1'p P as s 1 er ro r lo g/ch ar buffer
T p Pass 2 er r lo g co rrec ted
JiJfy Clock HM LS e ri al b it c o u ll t/ EO ) nag
Cy cle c ou nt
C o un td o wn .tap e w rite/bit c oun t
Tape buff er p o i I ll er
1 ' 1 ' W rt lo r coun r /Rd pass/tnbu
T p W r t new by te/R d error/lnbjt cnt
W r t s ta ff b it /R d bi t er r /s tb it
Tp Scan ;Cf I .t ;Ld ;£ndJby t e a s s y
W 'r l ea d le ng tll/ R d c h ec k sum /p a ri ty
Pointer: tape~, scrolling
T ap e an d ad d sl:E nd o f p ro gram
Tape t lmingcons tan ts
P nlr : s ta r t o f tap e bu ffer
1 ""T p t im er enabled; b it c ou n t
Tp EOT /R S 2'3 2 nex t bi t to send
Read cha rac t e r error/outbyte bu f
Ii! c ha ra cters in fi le n am e
Cur rent l o g ic a l f il e
Cu rre n t s ec n d y a dd re ss
Cu rr en t dev ice.
P oin ter to Iile n ame
Wr sh i,ft word /Rd input char
/I blocks rem ain in g to W r /R d
S er ial w or d b u.ffer
T a pe m o to r in te rlo ck
1 / 0 start address
K er nel se tu p p oin ter
La s t keyf. l ressed
Iii ch ars in keybd buf fer
Sc reen reverse, f l a g -
End-of-hue forlnput pointer
I npU t cur so r lo g ( row, column)
Whi 'ch key: 64· If no key
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 55/68
e o e e 20 4 0 = nash cu rsorO O C D 2 0 5 Cursor Liming countdownO O C E 2.06 Character unde r cursorO ; O C F 20 7 Cur so r In blink p h a s en O i D O 208, In pu t fr om screen/from keyboardo o m -00D2 209-2~O P o in te r to s cre en lin e
0 0 1 0 3 2 1 1 P os it io n o f c u rs or on a bo ve lin e0 0D4 2 ] 2 O=direc: l CLltSDr, e ls e p r og r ammedO O D S 2 ] 3 Curren t screen lin e len gth
0 0 06 2 ' 1 4 Row where c uro sr live s0 0 07 2 : 1 5 Last inkeylehe,cKsl lm/buffer
. , .00D8 2 :1 S ; -It o f INSERTs outs tand ' I 1 . g00D9 -OOF2 211-2,42 S creen line link tableO O F 3 - O O F 4 2 4 3 - 2 4 4 S c re en c o lo r p o in te rO a F S - O a F S 24:5-2:46 Keyboard 'Pointer
O O F 7 ~ O OF8 2 4 7 - 2 4 8 RS~232 Re v pn t r
O O F 9 - O O F A 2 4 ~ 2 5 0 R S = 2 3 2 T N pntrO O F F - O IOA 256~266 F lo atin g to A SC II w o rk area
O I a O -OI3E 2 5 6 - 3 1 8 T ap e erro r lo g
0100 -01FF 2 5 6 - 5 1 1 Processor stack area0 : 2 0 0 - 0 2 5 8 5 1 2 - 6 0 0 Ba sic in pu L b uf fe r
. 0 2 5 9 -02:62 6 0 l - 6 1 0 L o g ic al fi le table0 2 , 6 3 -02:6C 611-620 Device # table
02'6D - 0 2 7 6 6 2 1 - 6 3 0 Sec A d d s ta ble
0 2 1 1 - 0 2 8 0 6 3 1 - 6 4 0 Keybd bu ff ,e l"
028 i - 0 2 8 2 6 4 1 - 6 4 2 Star! o f B asie M emory
0 2 8 3 ~ O 2 81 643~644 fo p o f Ba si c Memo ry0285 645 S erial bu s tim eo ut flag
0 2 8 6 646 Cu r r en t CQloJ: code0 2 8 7 6 - 4 7 Colo r under cu r so r0 2 8 8 648 S creen m em ory p ag e0 2 8 9 649 M ax size of keybd buffer
028A 65 0 R ep ea t a ll k ey s
028B 651 Repeat speed counter028C 1 3 5 2 R e p ea t d el ay c o u nt er028,0 653 Ke y bo a rd S h i ft /C o n tr o l f la g
0 2 S E 6 5 4 L a st s hi ft p at te rn -
028F -00290 S55~56 K e yb oa rd t ab le s et up p o in te r0291 65 1 K eybo ard shift m od e
0 2 . 9 2 6 5 8 o =s c ro ll e na bl e029 13 659' RS - 2:3 ,2 c o n tr o l r eg
0 2 : 9 4 660 R S -23 .2 co mm and reg
0295 -0296 6,61-662 B it timing0297 6 6 3 RS-232 s ta tus
0 2 9 8 6 6 4 #" h it s t o' s en d
0 2 9 9 -029A 6 6 5 R.S--232speed/code029B 667 R S 2 3 2 r ec ei ve p o in te r029C 6 6 8 R S 23 2 in pu t p oin ter
0290 669 R S 23 2 t ra ns rn lt p o i n te r029E 6 7 0 RS232 outpu] pointer
029F -02AO 671-612 ' [R Q save du rin g ta pe 110
02AI 673 C IA 2 (NMI ) I nt er r u p t Cont ro l
021 \2 '074 C IA 1 T im er A contro llQ g
02A3 1 6 7 5 C IA 1 In te rr up t Log
02A4 67 6 C IA t T imer A en abled H ag
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 56/68
02A5 677 S creen r ow marker
0 2 C O -02FE 704-766, (S prite 1 1)
0300 -030] 768-769' E rro r m essag e lin k
0 3 0 2 -0303 1"1'0-771 B as ic w arm s tar t link
0 3 0 4 -03015 772-773 , C ru nch B asic tokens l ink
0 3 0 6 -0307 7 7 4 - 7 7 5 P rin t to ken s lln k
0308 - 0 3 0 9 7 '76-771 s . t a n ' new Basic cod e lin k
o . 3 0 A -030B 7 7 8 - 7 7 9 G et a ri th rn eti,c e leme nt lin k
03 0C 7 8 0 S YS A - reg save
030D 781 S YS X -reg save
Q S O E 7 8 2 S Y S Y -reg save. . O S O F 783 SYS status reB save
0310 -03,12: 7 8 4 - 7 8 5 US R fu nc tio n ju m p (8248)
0314 - 0 3 1 5 788-789 H ar dw ar e in terr up t vec to r (EA31)
0316 - 0 3 1 7 7 '90-791 B rea k in terr up t v ec to r (f 'ES6}
0318 -0319 792-79'3 NM I i nte rr up t v ec to r (FE47 )
0 3 1 1 1 . ~031B 794-79'5 O P E N vector (F34A)
031C -03,lD 7 9 6 - 7 9 7 CLO S E v ec to r ( F291 )
031E -031F 7 9 8 - 1 9 9 S et -I np u t v ec to r [F20E)
0 3 2 : 0 -0321 8 0 0 - 8 0 1 Set-output vector ( F ' 2 5 0 )
0322 -0323 802,-803 R es to re [/0 vecto r ( 1 0 3 3 3 )
0 3 2 4 -0325 8 0 4 - 8 0 5 I N P U T vector (F157)0:,26 -,0321 806,-807 O u tp u t v ec to r (FleA)0 3 2 8 -0329' 8 0 8 - 8 0 . 9 Te st -ST 'OP vec to r (F6,ED~
032A -032B BHl!-81l G E T vector W13E )032C -032D 812-813 A bo rt 1 /0 vec to r (F32F)
032'E ~032F 8.14-815 War .m stalJt vector W E S 6 )
0330 -033] 8]6~811 L OAD link (F4A5)
0332 -0333 818-819 SAVE li nk ( F . 5 E D )
083C - 0 3 F B 828-1019 Cassette bu ffer
0 3 4 0 - 0 3 7 E 8 3 2 - 8 9 4 ( Sp r ite 1 3)0 3 , 8 0 -03BE 89'6-958 ( Sp rite 14 )
0 3 G O -03FE 96.0-]022 ( Sp rite 1 5)
0 4 0 1 0 - 0 7 F F 1 . 0 2 4 - 2 0 4 7 Screen memo ry
0 8 0 0 -9FF'F 2 0 4 8 - 4 1 : 0 9 5 9 Basic RAM memory
8 0 0 1 0 - 9 F F F 327168-40959 A.lter.nate: R OM p lu g-in area
A O O O -BFFF 4 0 9 6 0 ~ 4 9 1 5 1 ROM : Bash :
A Q O O -BPFF ~ 9 a 6 0 = 5 9 1 S 1 Alte rna te : R A M
C O D O -CFFF 4 9 1 5 2 - 5 3 2 4 7 RAM memory. I nc lu di ng a lt er na te
D O D O -D02E 5 3 2 4 8 - 5 3 2 9 4 V i deo C h ip ( 65 66 )
0400 -D41C 5 4 2 7 2 - 5 4 1 3 0 0 So un d C hip (65 81 SID)
D 8 0 1 0 -DBFF' 5 5 2 9 6 - 5 6 3 1 9 C o lo r n ybble m em o ry
DCOa -DeOF 5 6 3 2 0 - 5 6 3 3 5 Inter fa ce eh lp 1 .,1 R Q (65 26 C IA )
DODO -DDOF 5 6 5 7 6 - 5 6 5 9 1 In ter fac e em il' 2, NMI ( 65 26 CLA .)
0000 -DFFF 5 3 2 4 8 - 5 3 2 9 4 A J f e r n a t e: C h ar acter s et :
E O O O -FFPP 573414-65535 ROM : Operating System
E O O O -FFFF' 5 7 3 4 4 - 6 5 5 3 . 5 Alte rna te : RAM
FF81 -f 'FF5 6 5 4 0 9 - 6 5 5 2 5 J ump Table , ln clu din g :
F F C 6 - Set Inp ut ch annelFFC9 - S et O u tp ut ch annel
me - R esto re defau lt 1 /0 channels
F F C F -INPUTFF I )2 - PRINTF F E l - T est S top key
F F E 4 - G E T
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 57/68
Commodore 64 - ROM M,emory Map ADlE;AD78 ;
AD9E :
AEA8 ;AEF l ;AEF 7 ;A.EfF ;
AF08;
AF14 ;
AF28;
AFA7 ;
,AF~6;.AFE9~
BOt6 ;B081;
B0 8B ;8113;
Bl1D~BI9-1 ;B lAS ;
B1B2';
BIDI.;B245;,
B248;
B:34C;
B3'lD;B391;
B39E ;B3A6;
83B3 ;B3E1;B3F4;
B465 ;8415,;
B481;B4F4;
8526;
B580;8606:
B63D ;B67A;
B6AS;86DB;B6EC;
8700;
8'72CiB'737;
8761;B77C ;
8782;8788;
879B ;B7AI ) ;
B7EB ;
B7F1;
B80DjB824;:
B82D;
AOOO~ ROM control vectors
AOOC ; K ey wo rd ac tio n vecto rsA052; Function vectors,
A080; Operator vectorsA09E; Keywords
A19E; Error messages
A 3:28; E rro r m ess ag e vec to r s
A 3,65 ; M ise messagesA .38A ; S can s tack fo r F O R /G O SU BA3B8; Move memoryA3FB: Check stack depthA408; Check memory spaceA 435; 'o u t o ,fmemory'
A437; E r ro r r o ut in eA.469; BREAK entryA474; 'ready.'
A480; Ready for Bask
A49C; Handle new line
A533; Re-chaln linesA 560 ; R ece tve input I lneA579; Crunch tokens
.A 613; F ind B as icJ in eA 642 ' P erfo rm '[N EW ]A65E ; P er fo rm { CL R ]A68E; Back up text pointerA 69C : Per fo rm [L IS T ]A 1 42· P er fo rm [FUR JA 7ED ; EXe c u t e s ta te rn e ntA ,S 1D : Pedonn [R EST OR E]A82C; Break
A.82F.; Perfo: rm [STOP]
A831; Perio rm [E ND ]
A857; Perform [CONT]A87l; Pe r fo rm [RUN]A883; Perto rm [GOSUBJA'8AO; P erfo rm [G O T O ]A8D2;. Perform [RETURN]
A8F8; Perform [DATA]A906;' Scan for next statement
A928.; P erfo rm [L F]A93B; Perform [REM]A94B; Perform [ON]A 96.B ; G et f ix ed p oin t nu mberA9A5j Perform [LETJIMaO ; Pe r fo rm [PRlN'f#]
A A86; P er fo rm [C MD )'AM O ; Per fo rm [PR IN T ]ABlE; Print string from (y .a )AB3B;, Print format character
AB4D: Bad input routineAB7B; Perform [G.ET]
ABA5; P er fo rm [IN P UT -]
A8BF ' : Per fo rm [ INPUTlABF9; P r omp t & input
AC06; Perfo rm [R EAD],
ACfC ; Input error messages
P erfo rm lN EX T]Ty 'pe match checkEvaluate expression
C onstant - pi[valuate within brackets
Tco mm a ..
Syntax error
C h ec k 'r an ge
Search for variableSetIJpFN reference
Pe r fo rm [ OR ]
Perfo rm [A ND JCompare
Perform [DIM]Locate variable
Check aiphabetie
Create vartebte
Ar. ray peinter subr t lneValue 32768
Float-fixed
Set up array'bad subscript'
'illegal quantity'
C om pu te ar ray s izePe r f o rm [PRE]fix-float
P erfo rm [P O S]Check direct
Pe r fo rm [DEF]
C h ec k fn sy nta xP erfo rm [F NJPerform [STR$]
C a lc u la te s tr in g v ec to r
S et li p s t r io .gM a k'e ro om Io r s tr in gG a r ba g e c o lle ct io nCheck salvageabiJity
Co l le c t s tr in g
ConcatenateB u ild s t r ing to memoryDiscard unwanted string
Clean descriptor stack
Perform [CHR$]
P er fo rm (L E FT S]Pe r f o rm [R IGHTS]
Perform rMID$]
:P 'uUs lr ing parametersPerfo rm [L EN JExi t string-mode
Pe r fo rm lASe]Input byteparamterPerform [V A L ]Parameters for f;OKE/WAIT
Float-fixed
P er fo rm fP 'E E K]Perfo rm [PO K E]Perfo rm [W A IT ]
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 58/68
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 59/68
EDFE:E6:13;
EE85:
EE8E;
EE97;
EEAO ;
EEA9;E.EB3;
EEBB;, E F ' O S ;
EF2E.;
EF3]'
EF3B;
EF4A;
EF59 ;- [P7E;
EFC5;
E F ' C A ;
EFeD;EFDO ;
EFE1;
F O O D ;PO l 7 ;
F 0 4 i D ;
F O S G ;
FOA4;
FOBD ;
F12B;
F ' 1 3 E :F14E;
F157;
FI99;
FICA;
F IOD;
F2 0E :F 2 5 0 ;
F29];
F30f:
F 31 F ;F32F ;F333 ;
F34A ;
F3D5;
F409 ;F 4 , 9 E ;
F5AP;F5Cl; ,
F S D . 2 : ;F5DD;F G 8 F ;F69B ;
F6BC:
F60D:F 6 , E 4 ;
- F 6 E D ;
F6f'B;,
F12D;
f7GA;
Send 'unlisten'
RecEl' ive from s er ia l bu sS er ia l do ck o nS erial clo ck off
S er ia l o u tp u t 'I 'S er ia l o utp u t '0 'Gel sertal in & clock
Delay lITIS
R S - 2 3 . 2 s e n d
S end new R S-232 by teNo-DSR errorNo-CfS error
Di s ab le t lm a rC om pu te, bi! c ou nt
RS232 receive
S etu p to rec eiveR e c ei ve p a ri ty e rr o rRece ive overflowR ec ei ve br ea k
F r am i ng e rr orS u bm it to RS232
N~D'SR errorSefid to RS232 buffer
Inp ut fr om R S232'
G et fro m R S23,2
C heck ser ia l bu s idleMessages
Pr in t J f direc tGet...from R S 2 : 3 2
I npu tGel . . l a .pe/ser , iaJ l rs232Output;
.. to t ap e
Set i npu t deviceS et o u tp u t d ev ic eClose m eF ind f ileS et file va luesA b or ta ll f i le sR e s t o n ! d e J a L l l t I /ODo r lJeopen
Send SA
O p en R S232L o ad p ro g ram,seerching'
'P r in l f il ename
,loadi:ng/verifyjng'S a ve p r o g ramPrint ' saving '
B um p clo ckLo g PIA k ey reading
Get time
Set l ime 'C h ec k s to p ke yO u tp u t er ro r m essag esF ind an y t ap e b ea d!W r ite ta pe h ead er
F 7 D O ;
f7D1;f 1EA ;F8 0D ;1"817;
P82E;
1 " 8 3 8 ·I
F841;
F864';
: F 8 7 5 ;F8DD;
F8E2;
F92C:F A 6 0 ;
PB8E;
FB9'7;FBA6 ;
P B C 8 , ;
FBeD;
FC57 :peg3;
FCB8~F O C A ;
FCD1;
FCDS;
FCE2;
1 - ' 0 0 2 ;
FO lD ;F 'DI5;
PO tA ;
FD30;
FD 5 0 ;
F09S;FDA3;
FDDD;FDF9;
F E O O :
FE07 ;
F E I S : ;
P ' E 1 C ;
FE2 1 ;
PE25,
FE27;F'E2D;
FE34 ;FE43;
PE66;
F E : 8 S ;F E B C ;
F E C 2 ;
FED6;FF07 ;FF4 3 ;FF48 ;
fF81;F f FA ;
G e t b uh e r a dd re ssSe t bu ff er start/end pointers
F i nd s p ec ifi c h ea de r
B um p tap e p oin ter
'press, play.,'
C h ec k tap e s tan rs'p re ss , r ec or d . .'
I ni ti at e t ap e r ea d
Irn tia te la ;p e w rite
Com mon tape codeCheck tap e sto pSet 're ad Um in g
Rea d ta pe b its
S10 re 't ap e chars
Reset po in t e r
New cha ra cte r s etu p
S en d: tr an sit io n to ta pe'Wr , i~e da ta to tape
I R Q entry po in tWrUe tap e leaderRestore nOlmaJlRQ
S e t IR Q vectorK i l l ta pe m oto r
C h ec k r Jw p oin terB um p t/w po in t e r
P ow er reset entryCheck , 8 - ro rn
B -rom m askKernel rese tK er na l m o ve
Vector'Inlt iat ize system cons t r u sIR Q vec to r s
I ni rl al iz e I /O
Enable t imerS av e file na m e d ataS a ve ti le d el ai J! sGet-statusr lag s t a tusS e t s ta tu sSet t imeou t
R ead/se t to p o f m em oryR ead to p o r m em ory
Set to p o f mem ory
R ea d/s stbo tto rn o f m em o ryN M J entry
Wa rm s tar t
R eset L RQ& ex'ilI nt er ru p t e xi t
R S-232 tim ing tableNM I R S-232 inNM I R S -23 2 O L D t
F ak e IR Q
I R Q entry
Jumbo jump table
H ar dw a re v ec to rs
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 60/68
Proeesser- 1/0 Port (6510)
$ 0 0 0 0 ~NI
I N OUT IN O UT OUT OUT OUT
S I l Q O l1 3 1 J o 1 ; ! Tape Ttlp!! O-ROM EF R AM A 8R AMM .o lo r 5enSf Write $"vltch $wilch Switch
DO R 0
P R
. .S I D (6581)
V (lice I Voi l :e2 V o ic e ' 3 V o l e _ 1 J . 1 v o r c ~ 2 : VOi!!tlJ
$l)lInO $1)·107 S D 4 0 E I . . . 5tl272' 54279 5,1285
- F r e . q u e r u : : y -$D~OI .f,[H08 S D l W F H 5 ' 1 ' 2 7 3 5 " 1 2 8 0 5 4 2 8 7
~D4M $0 ,109 $D~10 ~ulseWjdlh L 5 4 2 7 4 5 4 . : 1 8 1 5 4 2 8 8
II
-: ! : D 4 U 3 : & D ' 1 0 A 5D411 0 , I) {) III ' 1 1 : 5 1 1 2 7 5 54282 5 < 1 2 1 : 1 9
5D404 $0401'3 S l " ) 1 1 1 2Voice Type :
K fW .54276 54283 5 4 : 2 9 0NSf. P IJ L . . S A W TR I
S01l05 $D,IOC 5D413 A tt ac k T im e DecaYTlme 54277 5 4 2 8 1 1 542912ms-8ms II 6m s " :,2 4 s ec
:sm1l6 :S0'10D 5DtH,,!S ,l sl wn L e ve l R ei eil,Se: TIRIe
5'1278 5 4 2 S S 54292, 61115 ,24 se c
Voic es ( wrHe : o n ly )
o I} I. 5 4 2 9 3
H 54291
V I54295
54296
$D416 Filter Frequem:y
R esonance P iller V o ioesI ~ V3 V2
S ! D 4 · 1 8 Passbaad : M !;!lIterv a 011 H I , BP L O V(liv)rme
Filter & Voll, ime (wr i t e only)
54297
SD'llA Paddle 'f (AJD"'2.) 5 4 2 9 8
$D418 54299
54300
S en se {m ad o nly )
N o te : S p ec Ia l V O i ce F ea tu re s
(lEST , R IN G M O D, SY NC )
a te omi lt ed : [rom th e' ( 'tb ov e diagram.
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 61/68
CIA 1 (IRQ) (6526)
ll"addle5el I IJo slick 0
A f: l t'ier R igh i lell Down U~
K Eybo ar. R ow Select ([rwelted)
I .Ioysli k IFire R illh l L ell Dewu U IJ
Key oard Column R ael
SF F - A ll O u!pU I
$ 0 0 ,- A l l. ll 'l pU l
r- Timer A -
- TimerB -
Plm 56321
SDCOO fAA 56320
' S O C ! ) l
·r S O C C J 2
S~a:J3
S , 0 C ( l 4
SDC05
SDeDS
S D o n
SDr .oD
DeDE
~ D C O F '
S O D O I .
$ .OD02
$OD·3
S D D O t !
SOD 0 5
so D O G
S D D . Q 7
SDD 0
S D D O E
$DDOF
. 1 TapeTlrner II1~anUpl'
~npllt B A
One O u I 11m'! Tlmer
Sl io l Mode PB60u t J\ S~llrl
O ne OUi Time! T imer ISho t Mode PI? Qui , S S ta rt
Serial Clock Serial Clock A T N RS-231 VICTI V I C ~ I
IN IN OUT OlIT OUT O UT addr 15 addrl-li
DSR crs OC O " R " D l " R Ins ,RS-232IN IN IN I N O UT OU T I N
S 3F - S er ia l
S O C ) - P :U .P . A ll l l r l ( J U I or $06- RS-232
- T im er A -
;-- TimerB -
IRS-232J _ I_ T im er h ll erm p lIN B A
TimerASllltil
Timer
.BSlul ' l
,. C onnected bu t n l l t used. by 0 .5 ,
CDIt-\ 5 63 2. 2
DDR B 56323
T A L 563211
'l'AH 56325
TBn. 56326
T H 56327
ICR f>(l333
eRA 563:'J i1
DORA 56578
D DR B 5 G5 79
T A L 5 1 5 5 1 ' 1 0
'I ;AH 56581
' r i B L 5 6 5 8 2
T , R H 56583
ica 56581)
CRB 56591
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 62/68
~"'~~:Y~n:i ; 1 ! ! _ ~
~i~~iii~:hiiHj~iilljW~i;;·~~~'Ui!iin~[i~ii~)l!
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 63/68
., '"~
. , .~ ~
-; ;~ § ~ ~ " ' ~
=
~ , . ,9 .~ i. & ,:~ ~ ~ ~ i ~
~~ s ~ ~
'" ":II ~ ijj tI i ~ ~
~co ;5 II I
i '" 2!~ ~
_
~e:
~ i !! 1 e ~'<~iE
'"~ j! ~ e !! l ~ " ' ~ E
I Ie
" 4 " ~ t : . ~ ~Ii' I I?
5 .;:> I~iJI,-,!Jl ' 1 " " ~" " ~J.Ur--'Il I-=:
~ .! l F .. 1 " . .
i~~ ~ ;r .5' '--. . . . _ _
j ~~~
~I:: ~ ~'"F=-'!!5~f e~'". ; ; ; - = -f-- I -
ii" ~"i 'ih ~~d6" i'll: D : ! - ~ "1
N N S~ 0l1li I-i
C-"S c'" !!') . J . ! ! !
S. ~ ~ -,le.
~ ,----
! ~; i" ~l
~~ "g 1~ k ~; '.,. '1 i i ' .~ i -e ~I o;l!
r!i-
~,<- .. ,
0;
Ii: Q :; 1 ~ ~ --- ~ !l r p ; - "II:
.i« ~
,~ ~ j
'e ~ J! ' ", , F ~~ Z n0", ~Ii
. . . . . ~- : X l ! liJ b - .. . - ~
f-- f-- N -I- ;;:=,_ !i
~ ~ < I F;0 3
uc -c
1 : 0 :
1---. : ; , - i-- ~If
~!~ E ; ; ; ''"
f-- I---§!
:I'l~g 3: .(
~ j I 1 (
Ii!
~ ~ ~ ~ ~liI
,_
! ~~ a s ~ ,~ ~ s B ~ ~ g
~ ~ ~ ~ ;; s ; a =r; . . ~ ;t i :
~~~i ~ i
- ~~ s;1,
' " ;Ii'"
i1 !~ ., .~ e. . . . ~ if S f ~ " '" . . . . ~
@ E
~,~ ~ ~ .. .
~'" ~ !.:! '" " z
. .'ii
~ ~ f ~ il '" ill ~ ~.. ~ ~~ ~ J 'i ,.;;: ~ ~ ~ :0 ; : 0 ; ~ " " ~ ;p ;
~ r;S
..J ~ :;:
S'nH j~. .
~-r= - ~::;: i~ ~i. ~ , ,~ .s _ . . . . ~~~i~ <> l: .,;::7,;"'g
t - - %~;.,
¥ "~ . , . . . .-
~I I~. d ' , ; ~ ~ ~
i.Q! )
fi' j o nii ::. e
i" ~~~r'l .!!i
;: s s!e - li ,---- i :> -"
: :: f ~ ~ a
i;:;
~ ' "~je ~ ~ '" ~ j ~ 5 ~ f ~ J i .~ ~. . Ii: "7 jIi II) ,. ~s ., ~ .,"
= =JI-!;;l
~~~. t-
I ) :if; ii ~~~
~~_j~ ;' ~ . j
; 0 : : '" ~~i:~';; J . ~
0..
7 J I ".J 'S '
. . ~u,
~ ~ ~-e-
~ s c ~ a;~ e j e ~ ~ ! ! ' t .. . -e e ~.. . .~ ~~ ,,_ ,.
~ ~ '"~ i ~ a ~ ~. . . .
11~ . .I ' 0 ~ e '". .,
~j~
!!' 'E ~ ~!
. .~ s j ~ i
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 64/68
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 65/68
ABOUT SUPERSCRIPTSupe 'FScr ip t tra n sf o rms y our
C ommod ore computer In to a : tru e w o rd
processor, enablin,g your sec re ta ry totu rn o ut h ig h q ua lity le tte rs , rn aits ho ts ,
qJI1otat ions, contracts, 3 1 ' 1 d repor ts moreq uick ly an d easily than ever before.
QU.ALITV AT YOURFINGERTIPSW ord p ro cessin g w Ith SUp8rScr. ipl a l lows
you to make a,UIhe changes you need at
the screen .fro m a sim ple sp ellin g
co rrectio n to a co mp lex re-o rd erin g o f
peraoraohs Yo u can control the I'lnalformat t ' 5 f ' th e p rlrs ed d o cume nt byin sertin g p rin ter co mm a n ds w here
requirM, Trese commands Include bo!df ace, under li n ing , supe rscr ip t s,
subscr ip t s, V8 rli ab Ie prleh an d ribb onco lo ur cha n ge, ln tact all o tthe attractive
fo rm attin g features fo un d o n m od ern
I ,et ter qual ir ty pr inters.
PER:FECT C'OPIES I EVER ,YTIMEOn ce the preparation 01 I he cocu rnem is
b as iC -B illy c om p le te , y ou c an v ie w i t onthe screen exactly as tt w il~ ap p ear o n
paper, Then you can either con tinue te
make co rrectio ns an d imp ro vemen ts, o r
proceed to pr int Superscript will p rin t as
many fin al' co p ies a s y ou lik e, w hen ever
yo u lik e.
UNBEATAB.LE VALUE,N o R O M o r cassette key n eed edM u lti·us er a t sin g'le p rice
Exclusive Canadian Distributor
CANADIAN MICRO D IS TR I B UTOR S LTD.500$t~~~f'~Ave_.Milton.Ontarl iQ, Canada L9T3P7/416·871l ·7 '277 '
PRIMARY FEATURESU se 01screen a s a,w in d ow o n te xt W IthSCROLILING, i n a ll directionsMIE.MORYSPACE to r 25 0 h ne s o f le )( .! 8 0 c olumn s W id e (20.000 characters)
TEXT WIDTHS fro m scre en size u p to 240 characters
SIMPLE VIEWING o ll e; .;1 w i lh o r wi thOu tembedded co rrmanos
Ability t o i nse rt l n to Ihe tex texp l ana to ry COMME,NTS t ha t a re n o t p ~ in t ed
LOAD f i les created by ollher packages. including Wordcraft rNl,Wordpro 1M an a
The Mallager™, to r merg ing , ed it ing and p r in t ing .
EDIITING FAiCII.ITIESAbili. ly 1 0€!x€!cule CO:MMAND5 on a succession 01 li n ked documen t s
SEA,ROM an d RIEP'LACE o t a p iece o f t ext in o ne O r a stril1g o f docu rnen ls
Powerl'uIINSERnON an d TRANiSFEA capabil i ty
EA'AS,Ea li i, remai nder pa rag raph o r sen tence
Automatic o r manual MERGING o llile se g. lo r m ailin g o r c re cn c on lro l
HORIZONTAL, VERTICA,l an d DECIMAl , . labs. w hich can be
sa ved o n d isk
CENI1 ' iEFUNGan d R IGHT ' A t .IG INMENT w ith m ix o f normal an d enlargMcharacters
HEA,DERS an d FOOTERS o n e ve ry p ag e w ith a uto p ag e rI1 umbe rin g
PRIINTING
CONTROL o r o O lhma rg in s, lin es p er p ag e. te xllrn es p er p ag e,lin e s pa cin g. a uto lin e' fe ed a nd fo rc ed p ag in g
DOCUMENT PRINTING: c o n tin u ous , s in g ie shee l o r r nu ltic o p y s in g ly o r a s
SIring o f d ocumen ts w ith mergin g as req uired
BACKGROUND PRINTING: s in g le page o r c o n tin u ous , iresrl19' s cr ee n f aro the r t asks
RIGHT JUSTIFICATION with aquaJwh il e spacing on le tter Qua l il y pr in te rs
PRINT FEATURES i nc lude : under l in i ng , enhancement b o ld p rim ,
suoerscrip ts , subscr ip ts , r ibbon co~ourchange, varia.ble l ine an d character prtchSPECIAL PRINT1ERCHARACTERS c an b e u se d e .g . b ac ks pa ce ,
e scape c o des , u se r d e fin e d cha ra cte rs
SUPERSCIRIPT - o ne d isk run s o n the2001,4016/32,8032 a nd 8 09 6 O o rrm od o re computers, 4 04 0 an d 8 05 ,0
d is k d riv es , a lii C ommo do re p rin te rs a nd a w id e ra ng e 0 1 le ite r q ua lity p r i n t e r s , _
CSM i~ r••gisto,ed trademark oICo'mmod'oro' B~sJn090M.chlfl8o,W",dc,oll I." mlli:.I,orad j."oomalik of Oalav iew LimitedWordpr,ois., ' ' 'Qos, t . reO' t rac1efT1;1,"" (II Pr,o.ioll$$iQAa'r$ 0 " ' , , , ; , , , lnc,
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 66/68
Ma'nl.lfactlll l rer
l ssu e Ii' !Pa~e'
2 3 ~ 5 ~
Advertising Index
Micl'o Appl i ca t i onsP'l'ecisiof l .5oftw~ re
Ma sl,er ( pro grammin g aid )SlIIperscript (wordproce:ssor)
Software
Advert i ser P r o du t '! N ame (Oe s er ,i p ti o n)
lB C61
Mal1l. l lact lw1!t
[SSllei!'!ag e
23 45 6dver iser P r od u ct N am e (D es cr ip t io n )
C o ns lIllO t s ln t'l S l a c k M a r k ' e .l W i :l! 1 'Y o U l r P C (b o o k )
A T o Z B O Q , I < O f GamesDynamics Dr Mone.y M g rn t (book)In vrn eru, A na lysis w /Y Q ur M icro ( bo ok }
E le p ha nt D is k et te s~ad in g E dg e Inc
In T h e N ex t Is su e O f
Th e T ra nsactor• B u t terfield Centerfold
• M eet S ]D -Vo ice 'O f T he 64
• C om modo re 64 O rg an P rog ram
• 40 40 Pow er /E rro r Indica to r
• M a ch ine-C ode Edito rL ink T o BA SiC ~A id
• P lu s M ore O n - V ]C -20- PET/CBM
- S up erPET
Keep On Transactin'. ..
' . ' _ _ ' . . _ . . I _ _ " ~
" .. USEY,O UR , P E R S ' D , HAL, CQ 'MPUTER!
' \ 1 ~ ~! FOR FUN AND PROFlTI:I.'.'' fi~~ 0 YOU CA ,N PLAY THE S,TOCK & BO'NC
I
I,! 1 MARKETS, WITH VO'UR PERS'ONAL '
I ~OM'PUTE IR I Now! Ofl&-of-l l-kl 'n(' }:)08 page i /. lv : ;-lr!illoa Sou rc !! ! Boo k CIlt! ISl!chyou ho w 10 ~se com pu'I1 '~ in IhsIr !v i: ts tmen r F / e la , F o r No v ice Of A.:t"lInc!Jll ' Compull ' i ( Hcbllyls!s WflO ~
wljt i l MORE r : r o m their II ' ll ' lCllft li :\S a n it m ak e m o m i w J S' llo ,ws f low logl . l l
I:/arled tn S'lock &, Bocrc ' M I l 'f il e ls Pl,\JS ~ow 10 'use your computer as Ii_ da'la srJl:/n;e lor d'e!ermin'rrg: pro.filable s toc k se /e l; ;I 'i em :> . buy-sell' de- I
Ii slo ,, :; ; m<li " ke{ IlvaJUl!ticms: O~GlerIIT1251 Delivered $'11.75 ,", ,"
:tifHfmtH$$Nf CHECK·CLlp ·MA lL t rOo ,. t;VIHffJ,~.,gI
o NEW!A TO Z B,OOKOF COM'P'UTERGAMES II• HOME 'N' OFFICE: FUN- TO-MAKE II ';ROJECTSI
II', Tasted, Raady-Io-Run Programs wJthAdull & Kids, Varia-
- li()fl~; Poker, B l a 'c i l J a o k, RouloUo, nus ~! ln ! 'l ers . .Kn i g lJ l. s ,H o /· Sh a! W " More ! s e a Pl!g~ 73 II/us I. 'Order T1026 Do f iv e reQ $9 .76 ,
1 I "DYNAMnC~ OF I'fiR'sON~' ~ ~ ' N ~r; ' · .N ~ s r M I E N ' r · A . : N M y s i s , w ; r ~" ~ ~I
ANAGEME~] Th e B t l , s t SOlid MOf1~'_ 'MICAOCClMI'IJIIBlS·' LO!esj' In Os iP f l hMcnoglr,g Advlc;e W!)I" Stuffed fnto GUida'l . ! .$!ngevervr!;lce o t o o o d , Irnr~1'
9n e ,G .e < II l , S o tJ JW , ' T h "6 ,I s h e P llf f ia rnanll~, E l O I Y ~ , C o f f i j ) U , l>elll.fiCI.~,e'To A J ~
IoIJ~((l, ,01.th~ Best Mor1~ SO,'lin~,In DeCIs!cnMcidno,RrQlClm 8 i WQY$1C i. M c :u !1 eY MOr lOolnF' L t rd Q lm qi'l Qr'I A VQ ~ - USi Il T Il" ~OI!b 1 0 M o kJ l! t'vClIUO"QI'l~able. A f lnonda SuIV~l'cl MOIfIIlJ0101 o..k:klYo O n :! !. ! I n4 iQ ' S12,,1' i DeIMarOO,
Irnli rig $,,~e;~men' S tr als gl,9 S T h at 'V nl OU T I U .s R v A i r : ! 516,25. Conod'o. MexicoSend "krur , t i l " " W . Q I tn , Socirtng,. OrdJlt by A l l ? S1s;2ll
IAP•• $ 14 };l/i D e~ i;'e<e<:LO UT U ,S. bV A rt ..... ' - . .. .. .: '"$19.95, Ocnad l: l M~lco by AIR S19.213 (8usln's$$ ~5 Tax Deducilclel
M:ONIEYBACKGUAAANITEE=====...jit' CUE , em( YO UR SELEC TIO N ABO 'VEI -4I~ ' GtilJck M.O. 0VISA 0MASTERCARD.
II ,Exp.,
Iame.
Iddress,
1 eUy , Stale Zip ----
ICOINSULTO_RS,.IN_T'~. _ BOX 6589"0..... __ -DENVeR,C0802,D6 USA- __
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 67/68
I UL: liP
- MATTIN-
e a PUT D ' DTD, Nl:I ,au
0111 n
d 1 1 tr u tons I 0 1 - b n u plur. ina
rrol
r N
rs
8/7/2019 The Transactor V4 01
http://slidepdf.com/reader/full/the-transactor-v4-01 68/68
pSovs whu? Says ANSI.
Sp ifiwlly, su lx ommilt X 3 B B o f ti l Amer icon
N(liiorlCll Skmc!w d .. Imlilut· (ANSI} ro y \0. 1hI fnel
1 51 oil L I phnul '" f lopp. 'J II I nl at 'xc' d tl1(· \p s
r qun ·d 10 [lief" o r {')(C 1 J (III Ih il slondor b.Bul ju I who IS "subcomrnl t t X3BS" 10 IS '>U > su h
p' onounco r lit.n r ~ ?
rh )lor o group of pooph r prtl~tlntinu [l 10 1 q ,
w ~II b n l u l l ( e d c ro s s suc t iou o f d is cip lm r s - fr om{1( adt uno, qovemm nl (lfjl'nCIOS, nnd th computer
•mob l i f t mls jJ cbl fo r I v ryonr in th , d isk mo krm )b u . .i n .s s,
H o w ? By tJ IIh . . 1 I Il< J t O IJ - I h 'I peuodic oUy ( o l t 11 ,
n' uspecl Iund Ithi full moun ) to (on oct rnor
c u r d mou r u l e ' . 10 , n I 0 I h q u a l i l y o f III ) ( i b l
Jish . T ilf II 1110II(nl lui book ru ns all I 20 !l1I1
spnc d p n q r - s l is tmg , and I n ~ 1 t i f l C J urOfl !lu nd, ·dsu pon hu nd, t d .. o r slonrlords (J dl~krnus l nn ~I In
o , d t r 10 b r o bil'S'Iud by A N S I . (And l il t: roby b e l a k u fI5 r .r io u~ ly by p i op k who IClkt, dhk . ',I'I io u ..l y . )