Skip to main content

Full text of "Sinc Link"

See other formats


SINC-LINK 


Vol.6  No. 5 


Sept  -  Oct  '88 


IRIX'S"  mLmm  of 

SJW-PI'EB-SWeLIIIll  OSEOS 
M  SS.JS  ISSUED  5  IMSS 
m.  COPIES  OF  THE  HEHSLEITEl! 
SL'.  i>-SJP  ^  WIH-IIEIfflEfiS. 
PJP^S  I^^IVE  »  PliEE  COPV 
AS  PUS!  OF  THE  sas.oo  MIL 
HEHIEIISIIIP  FEE. 

piETIEjlS  DUE  {]iGlillH6ED,  FREE 

OF  canflfiE,  HUH  oibeii  tiheh. 
smcuiifi  USES  aMOPs. 

IS»,^''SnJ^  OEPllIHe.  PLEASE 
311  IS  PUBLICAIIOH  AMD  IKE 

SEHD  eOASESPOHDflHCE  TO: 

51ilS'!li'"'i,SIHC-I.IHI{  EOIIflllS, 
IpAOHIO  TIKEH-SIHCLAIB  OSEfiS 
£1118.  P.O.  888  72?'!  SIH.  A 
IOR0HT0.0HIi8IQ.Cfi|yilHI,  Skm 


TS2068  ISSUE 


Editorial 
Bob's  Notebook 
Larken  EPROH 

Big  Copy 

Simple  Sound  Port 
Label  Maker 
LKOOS  3  Review 
Pascal  on  Larken 
Larken  Game  Save 
File  Recovery 
The  Last  Page 


EXECUTIVE  OFFICERS  s 

PRESIDENT: 
VICE  PRESIDENT: 
TREASURER: 
SECRETARY: 

ACTIVITIES  DIRECTOR; 
TAPE  LIBRARIAN  ZX81 
TAPE  LIBRARIAN  2068 
TAPE  LIBRARIAN  QL 
PAPER  LIBRARIAN 
NEWSLETTER 
LIAISON  OFFICER  (Out 


EO  MAYBEE  (743-8141) 

JBFF  TAYLOR  (244-8583) 

BILL  LAWSON  (444-8772) 

GEORGE  CHAMBERS  (751-7559) 

RENB  BRDNEAU  (531-9749) 
■  ■  ■ 

RENATO  ZANNESE  (635-6536) 
REG  COTTLE  (785-3987) 
TOH  AROELLA  (653-6978) 
R.  BRUNEAU,   J.  TAYLOR,   R.  ZANNESE 
•of -town  members):  GEORGE  CHAMBERS , 
14  RICHOME  COURT,  SCARBOROUGH, 
ONTARIO,  MIK  2Y1  (416-751-7559) 


TORONTO  TIMEX  -  SINCLAIR  USERS  CLUB 

P.  0.  Bos  7274  Stii.  A  Torwrto,  Out.,  M5W  1X9 
Ccmotfo 


Toronto  Computes!  Presents  i 

■ —    •  ^   ^  £ 


pDITORIAL 

It    is  with  sueLLed  heart   Cand  sMghtly 
buelled    head  3    that     I    am    proud  to 
inncJunce  that   S^nc-Link  placed  third  out 
of  tuenty-tuo  entries    in     Time  Designs' 
'Top  Ten  Newsletters"  surv^eyl 

This  sur'v'ey,  puDLished  in  the  riay/June 
'88  issue  ot  TO,  judged  entries  from  all 
o^er  North  f^merica  on  the  basis  of 
content,  orismalityp  Layout  and 
appearance,  "hey  also  published  my  name 
as  editor  so   I'-n  particularly  happyl 

Of  course,  the  editor  is  only 
responsiDle  for  the  layout  and 
presentation.  I:  'S  the  contributors  uho 
rnust        supply        the  aL  I  -  i  mpo  rt  ant 

originality  ana  content.  uJithoui  them. 
I  ujouidn't  ha^e  anything  to  present  f  So 
I     think     That  hearty        round  of 

congratulations  are  due  to  the  urlters 
of  the  Hay/June  '88  C^oi  6-3}  issue. 
Heartfelt  thanks  lo  George  Chambers  for 
suomitt  ing  that  ^ssue  to  TD  and  for 
taking  the  time  to  fill  out  their 
questionnaire   ^n  winning  style. 

On  to  business,  ^^or  those  of  you  uho 
aspire  to  greatness  or  at  least 
political  office  of  a  kind,  nominations 
^or  the  neu  ciuD  Executi-vJe  uill  be  taken 
at  the  Septemoer  meeting.  Can  you  think 
of  someone  you'd  lii^e  as  president,  v»-p  , 
:reasurer  etc.?  Suomit  his/her  name. 
suDmit  your  name!  Uoting  uill  take  place 
at  the  Octooer  meeting.  Plan  to  be  there 
and  cast   your  <joiq  . 

In  case  you're  uondering,  the 
Sine-Link  bluro  on  the  front-left  cover 
is  changing  print  style  every  month  as 
I  experiment  uith  a  program  called  "1st 
Class  fonts'"  -^rom  Byte  Power.  I'll 
review   it    in  the  next  newsletter. 

Keep  those  cards,  comments  and 
art  icles  coming  and  maybe  we  can  grab 
^irst  place  ^n  tq - g  next  newsletter 
survey ! 

J  .T, 


COMPUTER  fmm 

Fall  Edition 

October  14, 15  &16 

Friday  ?jQGii-9piii  Sat  &  Sun.  lOanHipni' 

Exhibition  Place 

Arts  Crafts.&  Hobbies  BuiicUiig 

Keep  the  Toronto  Coiaputer  Fest  '88  In  nind  (See 
above).  Because  of  staffing  problcps  and  the  cost  of  a 
booth  our  club  will  not  be  presenT  at  the  show. 
However  our  club  has  been  asked  to  provide  support  at 
the  experts*  table* 

The  way  It  works  Is  like  this:  CoapvtMP-Fest  fdlks 
publish  a  schedule  of  when  the  expert  for  each  systea 
will  be  present.  This  way,  the  public  can  know  when  to 
com  to  the  show  to  ask  questions  etc»»  about  their 
particular  systea»  At  the  nownt  we  hav»  been  assigned 
peHods  as  follows^  Fri  Oct  14th,  4  to  Spsr  Sit  10  to 
2pa.,  Sunday  unasslgned. 

Rene  Bruntau  and  myself  have  volunfeetred-to  sit 
In  as  Tinx/Slnclair  experts.  Probably  we  will  htm  a 
bit  of  Tinex  stuff  there  as  a  talking  point* 

If  you  are  Interested  In  a  role  pleass  contact 
Rene  or  inyself.  Look  at  the  cover  of  tMs  newslttter 
for  phMM  nunbers. 

Georgr  Chanbtrs 


2 


SINC-LINIC 


BOB'S  NOTEBOOK- 

==-2!!5f.!:_2^osE  #,  channels  &  streams  o  a  tutorial 

many  uses  and  vet  tw«  ^Jf^    Powerful    and  have 

and  other  command^  liS!  FOrJI?^  mS?f  ^rL 

used  with  future  peripJeralS^  •w^?^  "^^^  ^« 

that  many  of  these  are  *  now    we  know 

interfaces.  Bu??  long  bi?2?;  dSI^S  ^^i***  "^^^^ 

apparent  that  OPEN  #  an  J  CLOSE  I  *«8 

play  with  the  basic  mtShine    Lfh  i^  *uT'  *  *«» 

with  the  opening  and  eloiw  do 

with  respeSt  loShi    TSZOk?  ILS^*^". 

keyboard  and  screen.                Printer    and  the  TS2068 

between  the  system  vaiiaWes  "JJd  thf 'tAS?'?^"'^  ^^•'^ 
J  his  area  starts  at  address  2fi^«  ^^^^^  program, 

just  short  of  the  progSS  L^a  whl^**  T'*! 
at  26710.  A  short  ?ro|SS  SJJn  ii  ^h^*T?^^"°"'*^^y• 
will  print  out  all  the  infn^»ri.f  listing  below 
streams.  Part  o?  its  outoSJ  1^!^°"  Z\  channels  and 
(with  some  expla;a?o?y^nJt«)f  °?;:«*''^''r  *«J«ble  1 
divided  into  5nbyte  blocks  fi^h  J?  u""** 
one  channel.              oxocks,    each    block  representing 


2068 


table  1  ,.  ^,.„.„,^ 
Address  Chan  Value 


26688 
26689 
26690 
26691 
26692 

K 

0 

5 
14 
12 

75 

26693 
26694 
26695 
26696 
26697 

S 

0 
5 

191 
17 
83 

26698 
26699 
26700 
26701 
26702 

R 

231 
10 

191 
17 
82 

26703 
26704 
26705 
26706 
26707 

P 

0 
5 

191 
17 
80 

CHANNEL  INFORMATION  AREA 
•  Notes 


2G708 


f^»5^A^^f*n."  add.l280d 
p^7l  ^^^^"^  routine. 

U^4clV^l^^  add.3086d 
11^*256*14),  get  input  key. 
Code  for  letter  "K". 

lat  2  bytes  same  as  for""!?". 

2nd  2  bytes  =  add.  45431 
input  routine  called. 
Code  for  letter  "S". 

This  block  irMserved~for" 
use  by  the  computer  and 
user?    ^""^^'^^is  to  the 
Code  for  letter  "R". 

fpSnn  ^y*2^''also'poInrtr 
fnnuJ'  ROW  Print  routine. 
Input  routine  called, 
(see  explanation  below). 
Code  for  letter  "P". 


128 


  Stop  byte.  "  " 

When  the  TS206rirswitcherorir°h3r!''''='"="==== 
irom  address  4522d  in  the  nnu  I J  L  copied 
Where  they  may  be  alSeiSS  ly\ll  TslrT^'^^'-  ^''•^ 

fourth  block  (Channel  "P") 
26704  point  to  the  ROM  PrJJ?  routing  '^Pf^!^  and 
These  are  often  changed  to  LfnS  iVLSJ  ^^^9**  (0500h). 
Aerco    prcode,    they^  ar^  chaS«d  J^^'^ff 
respectively  which  Equates  to^fltl  (tf^JH  ^^51] 
prcode    routine).    Once    these    tw«  ^t  t  °^ 
Changed,  all  printing  will  go  via  ?h«S^?^n^*^•  ^''n 
vprcode>  routine.  To  get  bafk  ^«  i-^J  SSoi<  ^     *°  *he 
bytes  must  be  restoreflo^fS?  -^'f^j'^e^^^e'ctlJ:!; 

^n"d^Ke°^^o"^ie^^%-  ^ie1??e%"?;„^JL^eTi^?  ^^^^^ 
resides  at  23734  to  237^4    AHH^f  ^®-^  area  which 

equate  to  26703'  anS  267^^^ 'if  JJ:«J«|q23749    and  2375S 

address  of  the  called  outnut  i«M^  ?  represent 
ROM  ,  bytes  3  and  4  ^^J^^LS  JS!  ("^"""ily  in 
called  input  routine,  fiSur  bvJS%  f^^lt^"  °^ 
the  Character  representing  i^i  ch^^li^'  °°de 

to^l\onitlJ^?\^°Ji;^J"f""  ^  han^  the  output 
the  "printer"  and  handles  oStnnJ^^^rf  stands  for 
Channel  "K'  stands  for  the  ^^JSL^^  k*^^*  PeripheralT 
output  and  input,  it  Louts  ^I^*    handles  both 

outputs  to  the    lowJr    SJrt  ^Jf  JJf  keyboard  but  also 

screen  display. 

When  the    print    command  ,  ^ 

through  channel  "S"  to  the  Lln^ff'  output  goes 

screen.  By  careful  use  It    th^  te*'"]    Part    of  ShJ 
output  can  be  made  to  go  thr  V^S!  oCherSSSil. 


and 
the 
the 
the 

of 


channel  "P-^  it  i«*  J?  command    go  to 

oh^el    "P"\    This    is  r'T^*^^^'"'*^'"'' 
#2."P-].  Note  that  thll  insSJ«otL  ^^J"    f°"««d  [OPEN 

KJIrid^^lid^Jh^^^^^^^^^^^^^ 

Character  of  the  ci^ei^^^hicWsS'^^^^^^^  t1"^il 

co°s,d''a:i„js*?hPi"^^"*^''*"'^^"^^ 

called  which  would  D?inJ«i  ^"P"*    routine  beinp 

addresses  26705  and  ft^Jfi    .  Jf"L  ^^y^^s  at 

address  4543) .  WU^out  ?Se  pUse  J  %hf "  .^f?*^"' 
be  immediately  erased.  *  ****  Printing  would 

At  switch  on,  only  four  of  the 
stream  0  points  to  channel 
Stream  1  points  to  channel 
Stream  2  points  to  channel 
i>treara  3  points  to  channel 


16 
'K" 
"K" 
"S" 
"P" 


streams  are  opened. 


the 


iTei^i%^js??nSr,r5?  iiirtt'Li  s'^^^^r*  ^^^^^^^ 

until  told  otherwise    A  ?hL«!i  ^^  directed  to  do 

command  C  CLOSE  S^fJheie  ^T  ^  ""^^  ^^^^'^  ^y  the 
Also,  a  channel  Jiv  be  ?in««H  k"^  ""T^J"^  ^  15. 

to  its  start  Ip  Sln^el  pointing    the  stream 

been  opened  to'^cSSl^^s"  ^rmaMl        «t"a«  3  ha. 
command  [CLOSE  #37-p""i    thio  L^,^®    closed    by  the 
LPRINT  aid  LUST  commiAds  to  t^f 
told  to  revert  to  nSl    Jm^  V""^ 
to  the  programmer  dSS'tJ^  H«i    Particularly  useful 
at  the  resStTof  the  EIr^S;  J^^^Sg^ng  process  to  look 

rather  than  wfsJi  JJLteTpaper*"'" 

Sne  ?loieTL?^e\1?^arir2nL°fe^'?  r^'*"'*'  ^'^^ 

fhf  Ke^^  ~  ^Sf  S 

all  have  their  output  Pff«r.*-«4  fi,f»  ana  INKEYI;,  may 
value  is  strsam  p  tea  this  way,  their  default 

PRINT  #1  il  "PP®*"  screen),  that  is  to  sav 

a"5IpRfNT^%tc!  "  P""^*^  #3       the  Hie 

SlySim?         ':iir^?f  'e\%*e'e^  then  use  it 

channels'^and  sSeams?  ^*^*ti,s  01 

3  REM  This  program  works  in 

5  REM^«=«f--LfL^P*°*''"'" 

6  REM  Use  GO  TO  10  for  info 
on  channels  &  streams. 

7  REM  Use  GO  TO  200  to  PEEK 
stream  info  in  system 
variables.  Use  GO  TO  220  to 
PEEK  channel  info  area  up  to 
start  of  program  area. 

9  REM  --ssssssassasssssssss 

r^Ao  ^?L*:^^^  23631+256»PEEK  2 
3632 t  LET  b=a 

20  IF  PEEK  a«128  THEN  GO  TO  70 
30  PRINT  -CHANNEL  ",CHR$  (PEEK 
(a+4) ) 

40  PRINT  -Output  Address=",PEE 
K  a+256»PEEK  (a+1) 

50  PRINT  "Input  Address=",PEEK 
(a+2)+256»PEEK  (a+3) 

60  PRINT  ,  LET  a=a+5,  GO  TO  20 

70  FOR  a=23574  TO  23605  STEP  2 
,TAB  rSf^  "^^"^  ">(ar:23574)/2 

P^^^  a+256»PEEK  (a+l)=0 
THEN  PRINT  "CLOSED-,  NEXT  a,  STO 

100  LET  c=(PEEK  a+256»PEEK  (a+i 
))+b+3 

pio2  ^SP^  -points  to  Channel  ", 
CHR$  PEEK  ci  NEXT  a 
120  STOP 

130  RANDOMIZE  USR  lOOi  SAVE  "ch 
ans.Bl-  LINE  10 
140  STOP 

^^Ll^^^'^^^^^  TO  23605 .  PRINT 
i,PEEK  ii  NEXT  i 
210  STOP 

jj2|0^LET  prog-PEEK  23635+256»PEE 


I  start  of  CHANS 
from  sys  variables 
tlast  byte  in  table 
t channel  letter 

t output  address 

I  input  address. 

t  stream  number. 
I  closed  channel 

•channel  letter 


iLarken  SAVE  routine 


> addresses  of 

channel*  attached 

to  streamr. 
I  start  of  prog  area 


SIMC-LINK 


2068 


Bob's  Notebook  con't 

230  FOR  i=b  TO  progoli  PRINT  i,     1  examines  ohan 
PEEK  ijTAB  20>CHR$  PEEK  1  AND  PE      info  area  up  to 
EK  i=>32  AND  PEEK  ic»90i  NEXT  i       start  Of  prog  area 

The  FOR... NEXT  loop  in  line  200  will  display  a  copy  of 
38  bytes  in  the  system  variables  area  containing  the 
address  of  channels  attached  to  streams.  Each  stream 
holds  two  bytes  which  accounts  for  32  bytes  and  the 
extra  6  are  used  by  the  internal  editor  and  automatic 
listing  routines.  Each  two  bytes  contains  a  relative 
displacement*  from  the  byte  before  the  channel  info 
area,  to  the  channel  that  is  pointed  to.  A  zero  means 
that  the  stream  is  closed. 

For  Larlcen  users,  note  the  extensive  use  of  OPEN  #  in 
the  extended  BASIC  commands  available  and  particularly 
note  that  when  any  or  all  windows  or  large  printer 
channels  are  opened,  38  bytes  (total)  of  memory  are 
added  to  the  channel  information  area.  This  changes 
the  location  of  the  start  of  the  program  area  and  can 
cause  a  problem  if  there  is  machine  code  in  a  REM 
statement  in  the  first  program  line.  (This  problem  can 
be  avoided  by  PEEKING  the  start  of  the  prog  area  and 
then  using  this  value  plus  5  as  the  call  address  for 
the  machine  code  routine  in  the  REM  statement  1  eg, 
[LET  x=PEEK  23635+256*PEEK  236361  LET  x=x+5«  RANDOMIZE 
USR  xj).  In  these  38  bytes  which  you  can  examine  by 
using  line  220  of  the  listing,  you  will  find  that  new 
channels  have  been  set  up  at  the  beginning  of  what  was 
the  start  of  the  program  area. 

An  interesting  and  illuminating  exercise  is  suggested 
for  Larken  users  1 

.[LOAD  "chans.fll"],  ie,  the  listing  above. 

.Open  some  of  the  Larken  extended  BASIC  channels. 

.Try  [RANDOMIZE  USR  lOOi  OPEN  #i;,"dd"J. 

.Then  [PRINT  #4i  OPEN  #5rwO"].        (These  will 

.Then  [PRINT  i^^+i  OPEN  #6,"wl"].        (open  three 

.Then  [PRINT         OPEN  #7."w2"j.  (windows. 

.Now  use  the  listing  above  to  look  at  what  has 
happened.  Try  doing  the  same  thing  with  the  Spectrum 
emulator  in  place,  if  you  have  one. 

I'll  leave  the  heavy  thinking  to  you  at  this  point. 
iVhat  I  have  written  will  pose  some  other  questions  and 
I  look  forward  to  someone  else  expanding  on  this  theme 
in  some  future  issue. 

by  Bob  Mitchell 

n30n 


TIMEX  2068  COMPONENTS  FOR  SALE 

1.  Complete  Systen 

-  TS2068  w/RooswItCh 

-  TS2050  modeiH-  Specterm  Software 

-  Ollger  00  Inttrface 

(Includes  Motherboard  w/RGB  1*face) 

-  Ollger  Printer  Interface 

-  Snith  Corona  Fastext  80  Printer  w/cable 

-  Disk  Drive  with  Power  Supply  (all  cased) 

-  Lots  of  software  on  disks  (free) 

Total  package  (excluding  shipping  costs)  $600  Can* 


2.  -  TS2068  without  Romswltch  $65  Can., 

3»  -  TSIOOO  (new  In  carton)  $30 

4.  -  TSIOOO  RAMpack  $10 

5.  -  ByteBack  mode*  w/software  $30 

(2068  or  1000) 

6.,  -  TS2040  Prtnter  $25 


If  any  one  Is  Interested  In  this  equipment  drop 
John  Matheson  a  11ne«  Address  is  1852  Appleford  St 
Gloucester,  Ont.,  KIJ  6T4  CANADA.  His  phone  nuMber  Is 

(613)  746-7869 


URKEN  EPROM  DOS  Version  3 
by  G«  Chanbers 

Larry  kenny  has  cone  out  with  a  new  EPROM  DOS  for 
his  Larken  system.  We  have  only  had  tthls  version  for 
a  few  days,  but  Bob  Mitchell  has  done  a  short  review 
of  it  else  where  In  this  newsletter.  Larry  Is 
offering  this  latest  version  of  the  EPROM  for  $5  plus 
S&H,  plus  your  old  EPROM.  I  happened  to  have  five 
spare  EPROMS  around  so  I  sent  then  to  Larry  along  with 
$26  and  asked  hln  to  send  a  set  so  that  we  cold 
upgrade  some  of  our  members  systems^  This  has  been 
done. 

An  Interesting  thing  however.  Two  of  the  EPROMS 
that  I  sent  to  Larry  were  made  by  TI  and  were  the  type 
that  have  a  "penthouse"  (as  Bill  Jones  calls  It)  on 
top  of  them.  Sort  of  a  raised  area  where  the  window 
Is.  Anyway,  turns  out  that  they  would  not  work.  At 
least  they  would  not  work  until  I  connected  a  wire 
between  pins  14  and  20,  and  bent  pin  20  so  that  It  did 
not  enter  the  socket.  Something  like  we  experienced 
with  the  very  first  Larken  cartridges*.  I  see,  also, 
reference  to  this  sort  of  a  problem  In  the  Current 
issue  of  TS  UPDATE  where  there  Is  a  note  to  the  effect 
that" ...apparently  the  EPROM  with  the  "penthouse"  on 
top  cannot  be  used  with  the  Larken  cartridge." 

It*s  not  really  a  problem,  just  an  Interestf*"  ^ 
quirk.  I*m  sure  that  we  will   hear  the  whys 
wherefores  shortly.. 

Bob  Mitchell  mentions  a  small  *bug*  In  the  PRINT 
routine.  I  have  drawn  Larry's  attention  to  It.  It  Is 
not  a  real  bug,  but  here's  how  It  comes  about.,  In  the 
Aerco  printer  drive  (and  maybe  others)  you  have  to 
poke  In  a  number  that  Is  one  less  than  the  number  of 
characters  you  want  to  be  printed  out  on  a  line.  That 
Is  to  say.  If  you  want  a  line  with  64  characters  In 
It,  TASWORD  Style,  you  must  POKE  In  a  63.  It  would 
seem  that  the  new  EPROM  defaults  to  64,  Instead  of  to 
the  needed  63.  It  Is  still  operational;  you  simply 
have  to  POKE  a  63  Into  the  DOS.  Uhen  I  spoke  to  Larry, 
he  was  unaware  that  the  wrong  number  was  In  the  EPROM. 
I*m  sure  It  will  be  corrected  promptly., 

As  I  mentioned  earlier,  we  have  upgraded  5  systems 

In  the  club.  By  sending  the  five  EPROMt  out  we  were 

able  to  do  this  without  anyone  having  to  shut  down 

their  system,  or  to  buy  an  EPROM  they  did  not  really 

have  a  use  for.  I  mention  this  because  If  any  other 

members  are  Interested  In  upgrading  by  this  process 

they  should  conUct  me  forthwith  and  I  will  return  ny 

EPROMS  for  another  go  around.  It  will  cost  you  $5.40. 

Plus  your  old  EPROM.of  course. 

«♦*♦*♦*♦♦*•**•***♦***** 


SINC-LINK 


2068 


3ig  Copy 

Hei-e   IS  a  program  that  can  h« 
used  to  m;=iif<a       T  --Aiau  can  Pe 

of  a  scr^Pn  ^.^^^^^  shaded  copy 
^'  ^Z''^®®"  '^2ing  the  2040 

?  prxn?  spectrum  mode, 

prints  out  in  four  secti^r, 
-^nd  these  sections  have  to  be 
taped  together.  ^® 

f  Jst'^'et^^^^  program  you  would 
^x.ot  oet  your  computer  in 
spectrum  mode.   Enter  CLEAP 
49999 :LOAD"B_C"CODE.Snce  thi 
-aded  you  can  load  a  screen  bv 
entering  LOAD"SCREEN"SCREPm?  ' 
RANDOMIZE  USR  50000      ^^^^^^^  = 
This  proaram  is  orespnt-^^  u 

^ntered^'v^:     ^^^^^  Holland. 
--         oo   ^'^  ^-snato  Zannese 


--  kem  big  copy 

^   ?.EH  saved  as   "B_r"  '-ODE 

^  ad;=5oooo 

i-ET  a  =  iO:    LET  b=il:    LET  c  =  i 
^  e  =  i4:    LET  f  =  i 

I  30    FOR  q=iOO   TO   200    STEP   10:  R 
-AD  aS.tot 

40  LET  w=i6*7AL  a$  (1) +VAL  a$  (2 

LET'to^ftot-l"^    ^""^  adr  =  adr  +  l: 

TO  )  :    IF  aSO"" 

'3    IF   tot<,:0  THEN     PRINT  "Erro 
i    in  i.ine   ";q:  STOP 

'-'     n  i-1      i  Q 

35  STOP 

^  90  PRINT  "All   IS  OK! ! !    Press  a 
Key  to   SAVE":    PAUSE  0 

'ibt^'  "B_C"CODE  50000, 

BcEir'  PRINT  "Preoarp 

to  JfiRIFY":    VERIFY  "B_C"CODE  . 

100  DATA  "3e003259c53a57c53258c53 
aD3c5  4f 3a59c547c5f 5cd89c4f Icl3e08 

3  2  5dc5e5  7e3  2  5cc52f 773a59c5473a58c 
54fc5f 5cd4b" ,6155 

110  DATA  "C4flcl7ee607325ac57ee63 
-^Cb3fcb3fcb3f325bc5c53a5cc54f0508 
Ch40cce7c3cb7  9cd0ac4cb2110f 2cl7Qr 
:3258c5el",6721 

120  DATA  "233a5dc53d325dc5c26fc33 

a59c53c3259c5fec0c255c3060af 5c5cd 

Cd0eclfll0f73a57c5c6403257c5fe00c 
2o0c3cdc8c4" , 6785 


130  DATA  "c9f 5c53a5ec53cf e21caf dc 
3fealca02c4325ec5clflc93e81c3f7c3 

5c5e5dd2169" , 7625 

140  DATA  "C447fe00ca26c4110400ddl 
910fc21ff 5a3a5ec506004f 0906047ecfa 

27cb27cb27cb27dd5600b277dd2311200 
01910eaelcl",5019  ^^-^-^^UU 

150  DATA  "C9cb39cb39cb3978cb3fcb3 

fcb3f21005811200047fe00ca67c41910 

fd09c90f0f0f0f 0a050a050c010403010 
40208080208"  ,  3542  J.y'*u:»uxu 

160  DATA  "00080002000004000000000 
000210040dd21b8c4cb39cb39cb391600 

5919780608cb7fc2a9c4dd23dd23c3b4c 
4dd5600dd23",4330 

170  DATA  "dd5e0019dd231710e6c9100 

008000080004000200400020001001608 

010018210040cb41cadac4cb3ec3dcc4c 
D26230b78bl" , 3817 

^180  DATA  "C2d0c415c2cac4060021f f 5 
773cb3fcb3f 77 2310f 7210059  36472310 

--.10  0  5a7Scb3f cb3f 77230478f e00c20 

0c521ff5336",533S 

190  DATA  "00dd2137c52100590e20dd5 
b00dd230608cd7aca2ac5367823cb2210 

f 40d7 9 feOOc 21 cc5c9 7 74400005444000 
05654000054" , 4324 

200  DATA  "2a252e572a252400022aa40 
0022Sa4000  3a8a4" ,10  7  6 


Addr  Hex 


OP  Operand/Notes 


C350 


C352 
C355 
C358 
C35B 
C35E 
C35F 
C362 
C363 
C364 
C365 
C368 
C369 
C36A 
C36C 
C36F 
C370 
C371 
C374 
C375 
C376 
C379 
C37A 
C37D 
C37E 
C37F 
C380 


3E00 
3259C5 
3A57C5 
3258C5 
3A58C5 
4F 

3A59C5 
47 
C5 
F5 

CD89C4 
Fl 
CI 

3E08 
325DC5 
E5 
7E 

325CC5 
2F 
77 

3A59C5 

47 

3A58C5 
4F 
C5 
F5 

CD4BC4 


LD 
LD 


LD 
LD 
LD 
LD 
LD 

PUSH 
PUSH 
CALL 
POP 
POP 
LD 
LD 

PUSH 
LD 
LD 
CPL 
LD 
LD 
LD 
LD 
LD 

PUSH 
PUSH 
CALL 


A,  00 

(C559)  ,A 
A,  (C557) 
•0558) ,A 
A,  (C558) 

C,  A 

A,  (C559) 

B,  A 

BC 
AF 

C489 
AF 
BC 

A,  08 
(C55D)  ,A 
HL 

A,  (HL) 
(C55C)  ,A 

(HL)  ,A 

A,  (C559) 

B,  A 

A,  (C558) 

C,  A 

BC 
AF 

C44B 


SINC-LINK 


2068 


C383 
C3  84 
C385 
C386 
C388 
C38B 
C33C 
C3  8E 
C3  9  0 
C3  9  2 
':3  3  4 
C  3  9  7 
C398 
C3  9B 
C3  9C 
C  3  9  E 
C3A0 
:3A3 
C3A5 
3  A3 
:3AA 
3AC 
-3  AD 
:3AE 
C3E0 

:234 
C3B5 
C3B8 

:3B9 
C3BC 
C3BF 
C3C2 
C3C3 
C3C5 
C3CS 
:3CB 


Fl 
CI 
7E 

E607 
325AC5 

7E 

E638 
CB3F 
CB3F 
CB3F 
325EC5 

3A5CC5 
4F 

0608 

CB40 

CCE7C3 

CB79 

CD0AC4 

C32i 
■  n  r  T 

3  5  0  8 
3  2  5  3  C  5 


3A5DC5 
3D 

325DC5 
C26FC3 
3A59C5 
3C 

3259C5 
FECO 


■JiCF 
:3D2 
C3D3 
C3D4 
C3D6 
C3D9 
C3DB 
C3DE 
C3E0 
C3E3 


060A 


CDCDOE 

CI 

Fl 

10F7 

3A57C5 

C640 

3257C5 

FEOO 

C250C3 

CDC8C4 

Q 


 .'  C"  '— '      '_  J 

:3E9  3A5EC5 

:3ED  FE21 

:3EF  CAFDC3 

:3F2  FEAl 

:3F4  CA02C4 

:3F7  325EC5 

-3 FA  CI 

:3FB  Fl 

:3FC  C9 


POP 
POP 
LD 
AND 
LD 
LD 
AND 
SRL 
SRL 
SRL 
LD 

PUSH 
LD 
LD 
LD 
BIT 
CALL 
BIT 
CALL 
SLA 
DJNZ 
POP 
LD 
ADD 
LD 
POP 
INC 

LD 

DEC 

LD 

JP 

LD 

INC 

LD 

CP 

JP 

LD 

PUSH 
PUSH 
CALL 
POP 
POP 
DJNZ 
LD 
ADD 
LD 
CP 
JP 

CALL 
RET 
PUSH 
PUSH 
LD 
INC 
CP 


AF 
BC 

A,  (HL) 
07 

(C55A)  ,A 
A,  (HL) 
3  8 
A 
A 
A 

(C5  5B)  ,  A 
1— <>— 

A,  (C55C) 

C  ,  A 
3  ,  03 

0  ,E 

Z I C3E7 
7  ,C 
C40A 

- 1 4   :  C  3  9  E 
3C 
A,C 
A,  0  3 
'C553) , A 
HL 
HL 

A,  (C55D) 

A 

(C55D)  ,A 
NZ , C36F 

A,  (C559) 
A 

(C559) ,A 
CO 

NZ , C355 

B,  OA 
AF 

BC 

OECD 
BC 
AF 

-9  >C3CD 
A,  (C557) 
A,  40 
(C557)  ,A 
00 

NZ ,C350 
C4C8 


JP 

CP 

JP 

LD 

POP 

POP 

RET 


AF 

A,  (C55E) 
A 
21 
Z,C3FD 
Al 

Z ,C402 
(C55E)  ,A 
BC 
AF 


C3FD 
C3FF 
C402 
C405 
C407 
C40A 
C40D 
C410 
C413 
C414 
C415 
C419 
C41A 
C41C 
C41F 
C422 
C424 
C426 
C429 
C42C 
C42E 
C42F 
C4  3  0 
C432 
C433 
C435 
C43  7 
C439 
C43B 
C43E 
C43F 
C440 
C442 
C445 
C446 
C448 
C449 
C44A 
C44B 
C44D 
C44F 
C451 
C452 
C454 
C455 
C458 
C45B 
C45E 
C45F 
C461 
C464 
C455 
C467 
C468 
C469 
C46A 
C46B 
C46C 
C46D 
C46E 
C46F 
C470 


3E81 

C3F7C3 

CDCDOE 

3E01 

C3F7C3 

3A5BC5 

CA13C4 

3A5AC5 

C5 

DD2169C4 
47 

FEOO 

CA2  6C4 

110400 

DD19 

lOFC 

21FF5A 

3A5EC5 

0  6  0  0 

4F 

09 

0604 


CB27 
CE27 
CB2  7 
DD5600 
B2 
77 

DD23 
112000 

19 

lOEA 
El 

CI 

C  9 

CE  3  9 
CB39 
CB39 

78 

CB3F 
CB3F 
CB3F 
210058 
112000 
47 

FEOO 
CA67C4 

19 

lOFD 
09 


C9 
OF 
OF 
OF 
OF 
OA 
05 
OA 
05 


LD 
JP 

CALL 
LD 
JP 
LD 
JP 
LD 

PUSH 
PUSH 
r 

LD 
CP 
J? 
LD 
ADD 
DJNZ 
LD 
LD 
LD 
LD 
ADD 
LD 
LD 
SLA 
SLA 
SLA 
SLA 
LD 
OR 
LD 
INC 
LD 
ADD 
DJNZ 
POP 
POP 


SRL 

SRL 

SRL 

LD 

SRL 

SRL 

SRL 

LD 

LD 

LD 

CP 

JP 

ADD 

DJNZ 

ADD 

RET 

RRCA 

RRCA 

RRCA 

RRCA 

LD 

DEC 

LD 

DEC 


A, 81 
C3F7 
OECD 
A, 01 
C3F7 
A,  (C55B) 
Z,C413 

A,  (C55A) 
BC 
HL 

IX,C469 

B,  A 
00 

Z,C426 
DE, 0004 
IX ,  DE 
-4  >C422 
HL, 5AFF 
A,  (C55E) 
B  ,  00 

C,  A 
HL,BC 
B  ,  04 
A,  (HL) 
A 
A 
A 
A 
D 
D 

(HL) 
IX 

DE, 0020 
HL,DE 
-22  >C432 
HL 
BC 


(IX+0) 


,  A 


C 

A,  B 
A 

A 
A 

HL, 5800 
DE,0020 

B,  A 
00 

2,C467 

HL.DE 
-3  >C464 
HL,BC 


A, 
B 
A, 
B 


(BC) 
(BC) 


SINC-LIHK 


2068 


C471 

OC 

INC 

c 

C472 

010  40  3 

LD 

RP . n 1 n  A 

ay~.  1  w  J  VJ  '± 

C475 

010402 

LD 

P.n   n  T  n  A 
oy—  J  U  jt  U  Tt 

C478 

08 

EX 

AF  .  AP 

C479 

08 

EX 

C47A 

02 

LD 

CEO  .  A 

C47B 

0  8 

EX 

nc  i  AC 

C47C 

00 

NOP 

C47D 

08 

EX 

A  P  .  A  P 

C47E 

00 

NOP 

C47F 

02 

LD 

v.DV«;  »  A 

C4S0 

00 

NOP 

C481 

00 

NOP 

C482 

04 

INC 

C483 

00 

NOP 

C484 

00 

NOP 

C485 

00 

NOP 

C486 

00 

NOP 

C487 

00 

NOP 

C488 

00 

NOP 

C48  9 

210040 

LD 

HL, 4000 

C4SC 

C490 

C492 

C49  4 

C496 

C  4  9  S 

C499 

C49A 

C49B 

C49D 

C49F 

C4A2 

C4A4 

C4A6 

C4A9 

C4AC 

C4AE 

C4Bi 

C4B2 

C4B4 

C4B5 

C4B7 

C4B8 

C4EA 

C4BB 

C4BC 

C4BD 

C4BE 

C4BF 

C4C0 

C4C1 

C4C3 

C4C4 


DD21B8C4 

CE39 

C3  3  9 

CB3  9 

1600 

5  9 

19 

~1  o 

I  u 

0608 

CB7F 

C2A9C4 

DD23 

DD23 

C3B4C4 

DD5600 

DD2  3 

DD5E0  0 

19 

DD23 

17 

10E6 
C9 

1000 

08 
00 
0  0 
8  0 
00 
40 
00 

2004 
00  - 
0  2 


SRL 

SRL 

SRL 

LD 

LD 

ADD 

LD 

LD 

BIT 

JP 

INC 

INC 

JP 

LD 

INC 

LD 

ADD 

INC 

RLA 

DJNZ 

RET 

DJNZ 

EX 

NOP 

NOP 

ADD 

NOP 

LD 

NOP 

JR 

NOP 

LD 


IX , C4B8 


D,  00 
E  .  C 
HL,  DE 
A,  B 
B  ,  08 
7, A 

NZ ,C4A9 

IX 
IX 

C4B4 

D,  (IX+0) 

IX 

E,  (IX+0) 
HL,  DE 

IX 

-26  .>C49D 

+0  >C4BA 
AF,  AF 


A,  B 

B,  B 

NZ,+4  >C4C7 
(BC)  ,A 


C4C5 
C4C6 
C4C9 
C4CA 
C4CD 
C4D0 
C4D2 
C4D5 
C4D7 
C4DA 
C4DC 
C4DD 
C4DE 
C4DF 
C4E0 
C4E3 
C4E4 
C4E7 
C4E9 
C4EC 
C4ED 
C4EF 
C4F1 
C4F2 


0  0 

010016 
08 

010018 

210040 

CB41 

CADAC4 

CB3E 

C3DCC4 

CB26 

<^ 

OB 
73 
Bl 

C2D0C4 

C2CAC4 

0600 
21FF5  7 
7 

CE3F 
C33F 
77 


•-•it  i 

C  4  F  5 

C4F8 

C4FA 

C4FB 

C4FD 

C500 

C501 

C503 

C50  5 


10F7 

210059 

3647 

lOFE 

21005A 

78 

CB3F 
CB3F 

7  ~1 


NOP 

LD 

EX 

LD 

LD 

BIT 

J  r' 

SRL 

JP 

SLA 

INC 

DEC 

LD 

OR 

T  r> 

DEC 

JP 

LD 

LD 

LD 

SRL 

SRL 

LD 

INC 

DJNZ 

LD 

LD 

INC 
DJNZ 
LD 
LD 
SRL 
SRL 
LD 


BC,1600 
AF.AF 
3C,1800 
HL, 4000 
0,C 

2 .C4DA 
vHL) 
C4DC 
(HL) 
HL 
BC 
A,B 
C 

NZ , C4D0 

D 

NZ,C4CA 

3,00 
HL, 5  7FF 
A ,  B 


HL)  ,  A 


-3  >C4EC 
HL, 5900 
(HL)  ,47 
HL 

-5  >C4F8 
HL, 5A00 
A,B 

A 

^  HL)  ,A 


C506 

INC 

HL 

C507 

0  4 

INC 

o 

C5  03 

"7  n 

LD 

A,B 

C509 

FEOO 

CP 

0  0 

C50B 

C200C5 

J? 

NZ,C500 

C50E 

21FF58 

LD 

HL, 58FF 

C511 

3600 

LD 

(HL)  ,00 

C513 

DD2137C5 

LD 

IX,C537 

C517 

210059 

LD 

HL, 5900 

C51A 

0E20 

LD 

C.  20 

C51C 

DD5600 

LD 

D,  (IX+0) 

C51F 

DD23 

INC 

IX 

C521 

0608 

LD 

B,  08 

C523 

CB7A 

BIT 

7,D 

C525 

CA2AC5 

JP 

Z ,C52A 

C528 

3678 

LD 

(HL) , 78 

C5  2A 

23 

INC 

HL 

C52B 

CB22 

SLA 

D 

SINC-LINK 


7 


2068 


'w  D  Z  U 

i  0  F4 

DJNZ 

-12  >C523 

C  5  2  F 

OD 

DEC 

C5  3  0 

7  9 

LD 

A,C 

J. 

FEOO 

.~"  r> 

00 

L5  3  3 

C2iCC5 

JP 

NZ , CSIC 

'  ^  R  "3  i^: 

J 

RET 

C  5  3  7 

LD 

(HL)  ,A 

'2  5  3  S 

44 

LD 

B,  H 

'-5  3  9 

0  0 

NOP 

C  5  3  A 

0  0 

^TOP 

C  5  3  E 

5  4 

LD 

ij »  H 

C5  3C 

44 

LD 

3,H 

C5  3D 

0  0 

'lOP 

■■—  Hi 

0  0 

MOP 

D  3  F 

LD 

D »  (KL) 
D ,  K 

-  J  4  U 

5  4 

LD 

C541 

0  0 

NOP 

C  5  4  2 

0  0 

NOP 

5  4 

D,  H 

C  5  4  4 

2A2  5  2E 

LD 

-~i  L  t  '  ,£i  E  z  1/ ) 

'_  L  / 

- 

LD 

D  ,  A 

_  L  ^  >i 

-  A  2  5  2  4 

LD 

HL.  (2425) 

C54E 

C  0 

NOP 

■_  I' 

0  2 

LD 

■  3C)  ,  A 

C  5  4  D 

2AA4  0  0 

LD 

HL.  (00A4) 

C5  5  0 

•"5  -\ 
•J 

r  r*- 

'BO  ,A 

C5  51 

23A4 

JR 

2,-92  >C4F7 

C55  3 

00 

NOP 

C554 

0  3 

INC 

BC 

CSS  5 

A8 

XOR 

D 

C556 

A4 

AND 

H 

i"'  S  S  7 

n  n 

NOP 

CSS  3 

0  0 

NOP 

C  5  5  9 

00 

NOP 

CSS  A 

0  0 

NOP 

--  c:.  c  s 

rs 

NOP 

Simple 

Sound 

Port 

By 

Renato 

Zannese 

S/31/88 

A  simple  sound  port  can  be 
added  to  the  rear  of   the  Larken 
Disk  Interface  so  your  monitor  / 
amplifier  can  control  the  volume 
coming  from  the  speaker  on  ^he  TS 
2  0  6  3. 

iou  will  need  to  get  the 
following  Items  to  make  a 
external  sound  port: 

-22k   res  1 stor 

-iOk  resistor 

-100k  resistor 

-   an  P:CA  jack 

xou  have  to  open  you  computer 
so  you  can  cut  one  of  wires  that 
goes  to  the  speaker  inside  the 
computer . 


First   thing  you  have  to  do  is 
carefully  solder  the  22k  resistor 
to  a  thin  piece  of  wire.  Solder 
the  end  of   the   resistor  to  the 
pin  called  sound.   Cover  the 
resistor  and  wire  with  thin  heat 
shrink  tubing.    Solder   the  other 
end  of   the  wire  to  the  center  of 
the  RCA  lack  and  solder  the 
outside  of   the  RCA  jack  to  the 
big  ground  trace  on  the   rear  of 
the  Larken  interface. 

The  second  thing  you  have  to  do 
is  solder  one  end  of   the  100k 
resistor  to  the  pin  called  beep. 
Solder  the  other  end  of  the 
resistor  to  the  end  the  wire  from 
the  beginning. 

The  last  part  you  have   to  do  is 
solder   the  10k   resistor  between 
the    nround  and  the  wire  that  goes 
to   the  center  of   the  RCA  jack.' 
Refer   to  diagram  if   you  are 
having  any  trouble. 

Make  sure  all  visible 
joints /wire  are  covered 
heat  shrink  tubinq.  The 


solder 
up  by  the 
lonq  wire 


can  glued  to  the   rear  board  on 
the  Larken  interface. 

If  you  don't  have  a  Larken 
interface,    this  modification  can 
be  .^one  inside  the  comDuter.  Be 
careful  when  workinq  inside  the 
compute  r . 

If  you  don't  have  a  monitor 
with  an  audio  input  vou  can  use 
the  Mini  Audio  Amplifier  made  by 
t<adio  Shack  #  277-1008 


fin  j 


4 

ujire 


SINC-LINK 


2068 


AN  IMPROVED  LABEL  MAKER  FOR  LARKEN  SYSTEM 
by  G,  Chambers 

Writing  programs  to  create  labels  is  a  time 
honoured  pastime  among  the  computer  crowd.  But  I  think 
this  program  offers  just  a  bit  more. 

It  Is  designed  to  produce  labels  of  the  contents  of 
your  Larken  system  disks.  It  offers  the  option  of 
printing  to  the  2040  printer  or  a  large  printer.  It 
provides  the  option  of  sorting  the  files  alphabetic- 
ally.  It  also  provides  the  option  of  printing  the 
program  names  in  one,  two  or  three  columns. 

Although  the  program  makes  use  of  the  Hacksel 
printer  software  -Iprlnt.Cl-.  another  driver  software 
could  be  used  by  modifying  lines  160  and  350. 

The  program  operates  on  the  basis  of  reading  the 
1  rectory  {Track  0).  placing  the  names  In  a  (d$)  array, 
then  manipulating  them  as  required. 


100  REM  File  Label  Maker  vi  i 
for  the  LARKEN  system 

110      REM      ,By  G.  Chambers 

1^  Riohome  Court 
Scarborough,  Ont. 
CANADA    MIK  211 

1^0  HhM    Use  to  make  a  printout 

disk  files 
130  REM  Data  statements  contain 
Drive  Control  Code. 

140  REM  For  use  with  the  DSK400 
.   system  of  509O  bytes/track 
using  a  DD  drive  i.e.SO  tricks 

j50  RANDOMIZE  (JSR  lOOt  OPEN 

^^160  PRINT  #4.  LOAD  -lprint.Cl"C 

170  LET  c$=" 

180  RESTORE  VAL  "210- 
3^1°/°^  "''^AL  "63000-  TO  VAL  "6 

^200  READ  ai  POKE  n,a 

'^10  NEXT  n 

220  DATA  195.43,246,0,0,0.0  0  0 
.243,205,98,0,201,58  '"'"•"•^'O 

230  DATA  100,0,251,201,205  31  ? 
46,58.176,92,50.29.32,265.126  ' 

240  DATA  0,205.123,0  33.  i%2 
17.156.224,1,0.20,237  176 

250  DATA  195,38.246 

260  DIM  d$(90,ll) 
f      270  LET  trac=yAL  "23728",  LET  ] 
oadbuf=VAL  "63000-  °  '  ^i-r  1 

280  LET  name  =  VAL  "=;7688" 
^290  BORDER  PI/PI,  PAPER  pi/pj, 


J^^s^r^l^.l  "2", VAL  "6",  I 

NK  VAL  "2")   PAPER  VAL  "6"."  LARK 
EN  DISK  UTILITY  ",  PAPER  PI/PI? 
.TAB  VAL  "10",   PAPER  VAL  "6","  L 
abel-Maker  "1  PAPER  VAL  "1-,,TAB 

VAL  "6";  PAPER  VAL  "6"|"  By  Ge 
orge  Chambers  " 

310  INK  VAL  "3-1  PLOT  NOT  PI.VA 
L  "108"i  DRAW  NOT  PI, VAL  "62"i  D 
RAW  VAL  "255", NOT  PI  1  DRAW  NOT  P 
I 'VAL  --62- I  DRAW  VAL  "n2  55-,NOT 

320  INK  VAL  "6-1  PLOT  VAL  "S-.V 
AL  "114",   DRAW  NOT  PI, VAL  "50", 
gRAW  VAL  "238", NOT  PI,   DRAW  NOT 
PI, VAL  "n50"i   DRAW  VAL  "r238-.N0 
T  PIi   INK  VAL  -7-  ^     .  " 

PRINT  Install  disk  ne 

eding  a  label" ...  then  Prea 
3  a  key"' ,  PAUSE  NOT  PI 

^^^JP^^  23658,0,  PRINT  AT  12,0 
I  OVER  0|O$|c$jAT  14, 0|   INK  7,-L 
arge  or  small  printer?  (L/S) 
PAUSE  0  \  II 

350  LET  n$=INKEy$i  POKE  26703,0 
.POKE  26704,5,  IF  n$=-l-  THEN 
POKE  26704,254 

360  PRINT  AT  14,0,  OVER  0,c$,  P 
AUSE  50.  PRINT  AT  16,0, "Print  Nu 
mber  of  columns  (l:-3)  "j,  PAUSE 
Oi  LET  p=C0DE  INKEY$-48 

370  PRINT  AT  16,0,  OVER  0,c$,  P 
AUSE  50 

380  INPUT  "Sort  (Y/N)?  ";3$ 

390  INPUT  "Enter  Disk  Title ",n$ 

400  LPRINT 

410  REM       PlGking  pgm  names 
from  buffer (Track  0) 
420  POKE  tracNOT  PI,  RANDOMIZE 
USR  loadbuf 

430  LPRINT  "Disk  Name,  "jn$,  LP 
RINT  * 
440  FOR  n=  PI/PI  TO  VAL  "90" 


450  IF  PEEK  (name+3)=N0T  PI  THE 
N     LET  e=n-l,   LET  n=VAL  "90",  GO 
TO  VAL  "520" 

460  IF  PEEK  (name*PI/PI)=VAL  "2 
54"  THEN  LET  name«name+VAL  "14" 
«  GO  TO  VAL  "490" 

470  FOR  m='PI/PI  TO  VAL  "9" 

480  LET  d$(n,m)=CHR$  PEEK  (name 
+m; 

490  NEXT  m 

500  LET  name=name+VAL  "''4" 
510  PRINT  AT  ll,ll;d$(n)," 

520  NEXT  N 

530  IF  s$i>"y"  THEN     GO  TO  59O 
540  PRINT  AT  11,11)   FLASH  1,"  S 

orting  "i  FLASH  0 
550  FOR  i=l  TO  (e^l),  FOR  j=i  T 

0  e 

560  IF  d$(i)>d$(j)  THEN    GO  SUB 

580 

570  NEXT    U   NEXT  i,   GO  TO  590 
580  LET  q$=d$(j),   LET  d$(j).d$( 
1)1  LET  d$(i)=qi$,  RETURN 
590  PRINT  AT  11,11," 

600  FOR  n=l  TO  e 
610  IF  INT  (n/p}=(n/p)  THEN  LP 
RINT  d$(n,  TO  10),  GO  TO  63O 
620  LPRINT  d$(n), 
630  NEXT  n 

640  LPRINT  I  LPRINT  ,  LPRINT 
650  DIM  f$(VAL  "9") 
660  PRINT  AT  VAL  "20", VAL  "6"}" 
Label  finished"' "Press  a  key  for 
another  start" 

670  PAUSE  NOT  PI,  GO  TO  VAL  "28 
0- 

680  STOP 
8000  INK  0,   PAPER  7»   BORDER  7i  C 
LS  I  LIST  ,  STOP 
9900  REM  *•  Save  to  Disk  *• 
9910  CLEAR  I   PRINT  USR  lOOi  SAVE 

"label2.Bl"  LINE  100 
9930  STOP 


SINC-LINK 


2068 


LKDOS  VERSION  3  EPROM 
HIGHLIGHTS  &  FIRST  IMPRESSIONS  by  Bob  Mitchell 

Version  3  came  hot  on  the  heels  of    version    2t  now 

the  LKDOS  cartridge  contains  some  major  additions  and 

improvements.     This    article    is    a    summary    of  the 

highlights  I  have  used  in  the  few  days  I  have  had 
version  3,  some  applications  I  have  already  identified 

and  used  and  some  of  my  overall  impressions.    The  new 

version  3  eprom  comes  with  new    instructions    and  you 

•lUST  REPEAT  MUST  read  these  very  closely  to  glean  all 
the  information  LARKEN  has  included. 

DOTE  I     [PRINT    i/^]    below    may    be      replaced  by 
[RANDOMIZE  USR  100]  OR  [PRINT  USR  100]  if  stream  #4 
has  not  been  OPENed. 

HIGHLIGHTS 

1.  PRINT  LPRINT  "file"  differs  from  the  PRINT 
-ommand  by  sending  the  file  to  the  printer.  Like  PRINT 
this  does  a  good  job  on  text  but  line  numbers  will  be 
'-arbled  in  program  listings. 
d.  fiUNT  #4 1  NEW  (reloads  an  AUTOSTART  program  in  the 
current  drive.)  This  can  be  very  useful  in  two  waysj 

(1)  Used  from  the  keyboard,  it  does  a  "warm  start" 
•vhich  lets  you  avoid  switching  ttie  computer  off  and  on 
tor  a  fresh  start.  A  "warm"  start  is  one  that  does  not 
-Change  any  of  the  settings  in  the  cartridge  or  any 
selected  ':)anks. 

(2)  Used  in  a  program  line,  it  reloads  the  AUTOSTART 
program  in  the  current  drive.  (If  there  isn't  one  in 
the  current  drive,  it  does  a  cold  start.)  This  avoids 
naving  a  duplicate  of  the  AUTOSTART  program  such  as 
"rienu.Bl"  to  return  to,  as  was  the  case  in  the  first 
version. 

PRINT  ,'/4t  i'OVE  is  a  [rename  file]  command.  It  does 
t;ot  copy  programs  as  can  be  done  by  the  LARKEN  "move" 
program  supplied  by  LARKEN  on  disk.  To  rename  a  file 
follow  this  command  with  "oldname" , "newname" .  If  you 
try  to  use  a  nevi-name  that  is  already  on  the  disk,  you 
vill  get  an  error  report  [Z  -  Name  Exists].  This  error 
trap  applies  only  to  this  command;  you  can  still  SAVE 
to  an  existing  file  name  (eg,  when  you  are  saving  a 
lile  with  new  listings  or  data.)  MOVE  is  particularly 
useful  for  renaming  an  NHI  save. 

NMI  SAVES.  LARKEN  has  given  us  a  choice  of  saving 
the  SCREEN  along  with  the  entire  program.  Pressing  the 
push  button  on  the  disk  interface  and  then  any  key 
from  1  to  5  will  do  the  NMI  save  with  the  SCREEN  too. 
iiolding  the  CAPS  SHIFT  key  down  while  pressing  any  key 
1  to  5  will  skip  the  SCREEN  save.  Pressing  the  [a]  key 
will  usually  stop  the  program.  This  can  often  get  you 
out  of  an  apparent  "crash"  when  dabbling  with  machine 
code.  The  [sj  key  can  still  be  used  to  do  a  separate 
■CREEN  save.  After  Dressing  the  NMI  button,  you  can 
always  press  [ENTErI  if  you  change  your  mind  and  then 
you  return  to  your  program.  The  [f]  key  can  be  used  to 
run  a  User  Defined  NMI  routine.  I  have  not  tried  this 
yet . 


7.  SEQUENTIAL  FILES.  Further  to  all  the  good  things 
mentioned  above  comes  the  piece  de  resistance i 
sequential  file  handling.  I  first  tried  this  by 
listing  a  file  to  a  sequential  filej  here  is  how  it 
can  be  done. 

8.  Type  in  both  listings  below  and  SAVE  them.  The  line 
numbers  in  listing  #1  are  intended  to  allow  it  to  be 
MERGEd  with  Tasword ,  Those  in  listing  #2  are  intended 
to  allow  it  to  be  MERGEd  with  any  listing  you  wish  to 
send  to  a  sequential  file,  assuming  the  latter  does 
not  have  conflicting  line  numbers.  Now,  LOAD  listing  2 
and  MERGE  the  required  program  and  GO  TO  99^0  to  do 
the  save  to  a  sequential  file.  Restart  the  computer 
and  LOAD  Tasword.  MERGE  listing  1  into  Tasword 
assuming  again  that  there  is  no  conflict  of  line 
numbers.  GO  TO  2190  to  LOAD  the  seq.  file  you  just 
saved.  This  will  be  slow  (if  there  is  a  better  way  I 
have  yet  to  find  it).  When  the  LOAD  is  completed,  GO 
TO  10  and  the  ASCII  listing  should  be  there.  You  will 
also  have  the  lines  from  listing  2  but  it  is  no 
problem  to  erase  then. 


LISTING  #1 
2190  PRINT  #4i   CLOSE  #5 
2195  INPUT  "name?  "i  LINE  n$i 
LET  n$=n$+"  IN  " 
2200  PRINT  #4 1  OPEN  #5,n$ 
2205  FOR  i=33280  TO  ^19280  STEP 
64 

2207  LET  f=0i   LET  j=0 

2210  LET  a$=INKEi:$#5 

2215  IF  CODE  a$=255  THEN  GO  TO 

2240 

2220  PRINT  a$; 

2221  IF  CODE  a$=13  THEN  LET  f=li 
LET  a$=CHR$  32 

2225  POKE  i+j,CODE  a$ 

2227  IF  f  AND  j<64  THEN  LET 

a$=CHR$  32 1  LET  j  =  j  +  li  GO  TO 

2225 

2229  IF  NOT  f  THEN  LET  j=j+li  IF 
j=64  THEN  GO  TO  2235 

2230  IF  NOT  f  THEN    GO  TO  2210 
2235  NEXT  i 

2240  STOP 

LISTING  #2 
9940  RANDOMIZE  USR  100 1  OPEN  # 
4 ,"dd" 

9950  PRINT  //4.   CLOSE  ^'5 

9960  INPUT  "name?  "(  LINE  n$t 

LET  n$=n$+"  OUT  " 

9965  PRINT  #4t  OPEN  #5.n$ 

9970  LIST  #5 

998O  PRINT  #4  J  CLOSE  #5 

9990  STOP 


NOTES 

Start  here  to  close  stream  0^ 
Enter  name  of  file  to  be  read 
IN,  ie,  loaded. 
Open  up  stream  #5* 
File  is  input  as  code  into 
memory  starting  at  address 
3328O.  49280  allows  for  250 
lines  of  64  characters. 
255  is  the  end  of  the  file 
sent  by  LKDOS  when  saved. 
Each  character  is  read  in. 
When  end  of  line  is  reached, 
set  flag  f  and  make  13=32. 
POKE  this  value  into  memory. 
If  flag  is  set  and  J  is  less 
than  64,  pad  out  the  rest  of 
the  line  with  jpaces. 
If  flag  is  still  not  set,  ttreW 
keep  reading  in  characters. 


NOTES 

Initialize  use  of  PRINT  §t^. 

Start  here  to  Save  seq.  filg 
Enter  name  for  file  save. 

Open  up  stream  fr'5  and  SAVE 
the  listing. 
Close  the  stream. 


FIRST  IMPRESSIONS 


5.  PRINT  //4i  POKE  8200, address  to  be  PEEKed.  Use  this 
to  PEEK  into  the  Cartridge  eprom  or  RAM.  Then  use  USR 
110  (eg,  LET  b=USR  110)  to  print  the  PEEKed  value. 
This  does  a  single  address  PEEK.  You  are  warned  not  to 
POKE  or  PEEK  addresses  96  to  111  or  the  cartridge  will 
crash. 

6.  LARGE  PRINTER  DRIVER.  Vastly  improved,  it  now  does 
all  the  essentials  I  change  line  length,  left  margin 
settings,  line  feed  as  well  as  handle  TAB  and  comma 
L,j.  It  will  print  any  GRAPHICS  characters  in  a 
listing  as  underlined  ASCII  characters.  (With  my 
printer  this  turns  out  to  be  the  ASCII  character 
followed  by  the  underscore  character  on  the  [O]  key 
probably  because  there  is  no  backspace  feature 
included  in  my  printer's  specifications.)  In  my  eprom 
the  line  length  is  set  improperly  at  65.  This  will 
probably  be  corrected  in  eproms  shipped  after  LARKEN 
was  told  about  this  one.  Change  any  of  the  settings  by 
PRINT  #4 1  POKE  address,  value.  These  new  parameters 
open  up  all  sorts  of  possiblitiesi  For  example,  if  you 
like  to  make  copies  on  your  wide  printer  of  your  CAT 
outputs,  you  can  change  the  line  length  to  say  48  by 
POKE  16090,47  and  print  the  copy  with  three  columns  of 
file  names  and  blocks  used.  This  done  after  using  OUT 
127,15  prints  a  neat  CAT  in  condensed  letters  that 
fits  nicely  on  the  diskette  jacket.  Incidentally, 
there  is  a  new  glue  stick  called  Tack  a  Note  by 
Uennison  that  makes  paper  self ^sticking  and  removable  1 
just  perfect  for  this  job. 


9.  This  version  has  just  about  all  that  one  could 
wish  for.  I  would  have  liked  to  see  a  Double  PEEK  or 
DEEK  included  but  maybe  that  is  where  I  could  use  the 
User  Defined  Command  [DATA]  feature. 

10.  Sequential  filing  will  have  to  be  studied  very 
closely  to  exploit  its  capabilities  to  the  full.  I'm 
sure  that  what  I  have  done  so  far  it  but  the  tip  of 
the  iceberg.  Other  readers  should  be  able  to  supply 
some  better  examples  for  utilizing  this  new  feature. 

11.  My  congratulations  to  Larry  Kenny  for  this  and  all 
his  other  innovations  that  have  opened  up  new  horizons 
for  us  Timex  Sinclair  survivors;  I  heartily  recommend 
you  LARKEN  owners  order  the  new  version  3- 

-30- 

Bob  Mitchell  88O8O5 


10 


SINC-LINK 


PASCAL  DISK  HANDLER 
for  the 

LARKEN  DISK  OPERATING  SYSTEM 


One  of  our  club  members,  David  Solly,  has  a  strong  interest  In 
Tslo68r°«iH  Pascal    for    tSe  %ectrum?  ouS 

thelaiiersystlm''^"  "''^'^''^  °"  PROCedures  to  alloS    ao=e;s  To 

interest  fn^pL^^i  ^''S?'"*^!!'*  t'^^^^^^g  f^""  everyone  with  an 
l4oirottawaront!-Kl"3P4f '^"^  '^-i-'  ^pt. 

subtlct  ^Mu.r?nn^?f'"^v."^!*'  ^"  ^l^P^S^  dissertation  on  this 
vou  a  co^v  i?  v^^^*^^  ^''-J'l?*  ^  ^  newsletter,  but  I  can  send 
you  a  copy  if  you  are  interested.  What  follows  is  an 
f^^rn"°-2Ty  paragraph  from  it,  and  also  a  couple  of  pa^Lraphs 
from  David's  letter  to  me  on  the  subject.  paragraphs 

comiluerHiSoft*(?M)''p«^^",  ^"^^^    ^y^*^'"  ^"^in  a 

uorapixea  Hit>oit  (TM;  Pascal  program  is  now    possible    thank«i  fo 

o^^J^rf  "''^^'*^r*^°P«'*  "^avid  Solly  and  L^rry  Kenny?  Thil 
Brlc?inaf         ""f  ^^        *°  procedures  anrgives  a 

directory  Sgrlm"     "  "^^'^  ^  ^^-P^^ 

Dear  George, 

on  acce^°J'fna''^^h"r  t^"^  ^^^^ ■  ^«=^i^ed  the  copy  of  my  article 
compl^eriascal     T    .orft-^"  Operating    System    from  within 

received  ^  ^thJ  1        ^  ""^^  *°  "^^oft   in  England  and 

virv  Tnterestl^a  *  ==^^"9    that   he    found  it 

lofiR    P«=^^?    =  H^'    ,  ^^"'^  ""^   ^^^^   printer   patches    for  TS 

in    th^    ,nfi«  programs    Mon   and   Gen   which  are 

^his  letter  on  T^""  °^  ''^^Pac  3.  I  have  included  them  with 
P^tr.l  .       separate  sheet.      I   have  tried  the  patch  for 

ll^^^L  although    I    should    warn    you    that  the 

hanS^e  th^T^f^"-"  3^^"^:=  ^OS  does  not  seem  to'^be  able  to 
wf^h  w       ^  J"""^    "9ht    curly    brackets,    therefore;    if  you 

cur^v    bLckJ;T"t?   P^^''^  correctly   use    the   option  for 

«"^,,L  "(*"    and    •■*)•■.    Another    way    to  get 

"°Thl  ^     wf"""^^^"!,,^^   ^°  another   short   printer  driver 

hLo.o    1  23320   without  opening   #3   to  the  line  printer 

Shf^  -iv  Pascal.    One  advantage  of   Larry's   new  system 

JZ  J  ^^t^^   "^^^^  Sasic    listings    it    that   you  can 

^o^o!h\.^    "  ^  detokenized   form  to   the  disk  and  then 

Anw«l  ^"to    M-Script    for    inclusion    in    an  article. 

TT^  J'  K  ^°         "^"^"^  some   serious   programing   in  Pascal 

TSronto  user  Grou;.  '""^  programs  to  you  and  to  the 

d^=k^>,.\^%  ^^"1?    ^""l^"'  Schieman    and    I    are   working    on  a 

«t  T  ^f=f f  l"""  ^^srsoft  Forth.  I  am  not  so  much  into  Forth 
=LfL   ™  .  ^    figure    that    if    I    can   make   the  Larken 

^^onLoT  f K  . "='^^"9   it   accessible   in   other  computer 

^  J'-'^'^I^  "i^l  h^lP  "nake  the  TS  2068  itself 
more  useful  and  hopefully  this  will  get  others  interested  in 
programing  with  the  TS  2068. 


SINC-LINK 


by  George  Chambers 


2068 


VERA  CRUZ  on  the  Larken  Disk  System 
by   G.  Chambers 

A  number  of  Spectrum  programs,  mainly  the  games 
variety,  are  arranged  that  further  blocks  of  data  are 
loaded  within  the  program,  during  It's  operation.  This 
article  describes  the  method  used  to  convert  one  of 
these  programs  to  the  Larken  system. 

VERA  CRUZ  consists  of  two  program  sections.  The 
first  section  relates  to  the  murder  scene,  while  the 
setting  for  the  second  section  Is  the  police  station. 
The  LOAD  routine  that  we  are  Interested  In  Is  In  the 
Basic  portion  of  the  program,  so  the  modification  is 
relatively  easy. 

Each  of  the  two  sections  of  VERA  CRUZ  Is  comprised 
of  a  short  BASIC  loader,  followed  by  several  blocks  of 
code,  then  ended  with  a  larger  BASIC  program,  ue  shall 
handle  each  section  separately.  In  this  particular 
application  we  have  no  need  of  the  Initial  Basic 
loader,  and  it  will  be  ignored. 

The  following  details  a  step  by  step  procedure  for 
each  of  the  two  sections. 

1.  Enter  as  a  single  direct  command:  LOAD  CODE: 
LOAD      CODE:  LOAD  CODE 

2.  Load  the  program  from  tape.  The  command  in  Item  1 
should  load  In  the  three  blocks  of  code  in  the  first 
section. 

3.  Save  the  code  to  disk  with  the  following  conmands: 
RANDOMIZE  USR  100:  SAVE  "vera.Cl"  CODE  32768,11150 
RANDOMIZE  USR  100:  SAVE  "vera.CZ"  CODE  64256,205 

4.  MERGE  the  longer  BASIC  program  which  follows  the 
three  blocks  of  code  on  the  tape. 

5.  Revise  several  program  lines  as  follows: 
Change:  10  PRINT  #4:  LOAD  "cruz.Bl" 
Change:  30  PRINT  USR  100:  SAVE  "vera.Bl" 
Add:  35  RANDOMIZE  USR  100:  OPEN  f4,"dd" 
Add:  36  PRINT  #4:  LOAD  "vera.Cl"  CODE 
Add:  37  PRINT  #4:  LOAD  "vera.C2"  CODE 
Delete:  810 

Change   820   Remove  part  of  line  820 

(AT  12,10;"AND  START  TAPE":) 

6.  Save  the  program  to  disk  by  GOTO  30 


Saving  the  second  section  to  disk  is  pretty  well 
the  same  as  was  done  on  the  first  one.  There  are  5 
blocks  of  code  In  the  second  section. 

7.  Enter  CLEAR  49999 

8.  Enter  as  a  direct  command  the  following: 

LOAD  "  CODE:  LOAD  ""  CODE:  LOAD  ""  CODE:  LOAD  "" 
CODE:  LOAD  ""  CODE 

9.  Save  the  code  to  disk  using  the  following  connands 
RANDOMIZE  USR  100:  SAVE  "cruz.Cl"  CODE  50000,6338 
RANDOMIZE  USR  100:  SAVE  "cru2.C2"  CODE  64256,1112 

10.  MERGE  the  Basic  program  following  the  code  blocks, 
and  modify  it  as  follows: 

Change:  30  RANDOMIZE  USE  100:  SAVE  "cruz.Bl" 
Add:      32  PRINT  #4:  LOAD  "cruz.Cl"  CODE 
Add:      34  PRINT  #4:  LOAD  •cruz.C2"  CODE 

11.  Save  the  Basic  to  disk  with  the  command  GOTO  30 

This  completes  the  conversion.  In  our  next  article 
we  will  deal  with  a  program  in  which  the  LOAD  coBnand 
is  contained  In  the  M/C  section  of  the  program. 


LARKEN  RANOISK 
9*  Chambers 

In  the  last  newsletter  I  mentioned  that  I  had 
purchased  a  RAMdIsk  from  Larken  Electronics.  I  shall 
give  you  an  update  of  my  expertccts  with  it. 

Really,  all  pretty  routine.  Mostly  fIne-tuiHng  my 
menus  and  being  a  bit  more  selective  as  to  what 
prograas  I  place  on  iqy  OMNIBUS  disk.  I  hav*  put 
Tasword  onto  the  RAMdIsk.  It  secMd  to  be  the  progna 
I  called  up  more  than  anything  else.  Mostly  btowst  of 
club  business*  I  suppose. 

Well,  one  thing  though. I  decided  that  this  was  a 
great  way  to  go,  but  I  needed  a  quad-density  drive  to 
hold  all  the  programs  that  I  would  like  to  have  at  my 
fingertips!  Imagine,  twice  as  many  program  options! 1 

One  of  our  members,  Richard  Hurd,  tells  me  that  he 
has  bought  a  TANDON  TM101-4A  drive  from  JB 
Technologies,  and  has  it  up  and  running.  This  is  a 
quad  drive.  I  spoke  to  Larry  K.,  and  he  says  that  the 
TANDON  is  the  only  Amerlcan-nade  drive  I  should 
consider,  and  further,  that  I  might  do  well  to  buy  It 
from  Ed  Grey  Enterprises.  So  I  have  sent  a  money  order 
off  for  one  of  them. 

Ed  Grey  is  one  of  the  two  people  in  a  partnership, 
Clifford  and  Grey,  that  supplied  so  many  of  the  2050 
modem  boards  to  Timex  owners.  His  address  Is  P.O.  Box 
2186.  Inglewood,  CA  90305.  His  phone  No.  Is  213  759 
7406.  Call  him  between  6pm  and  9pm.  I'll  keep  you 
posted. 


A  TS2068/Larken  Program 
FILE  RECOVERY 
by  George  Chambers 

It  sometimes  happen  that  a  user  deletes  a  disk 
file,  only  to  realize  later  that  file  is  still  needed. 
This  program  provides  a  simple  means  of  recovering 
these  files. 

The  file  recovery  process  is  based  on  the  fact  that 
even  though  the  disk  Directory  shows  no  record  of  the 
file  it  is  nevertheless  still  on  the  disk.  A  disk  file 
ERASE  conmand  simply  places  a  marker  at  the  start  of 
the  file  name  in  the  directory  track  (0).  The  marker 
is  the  value  '254*.  If  you  were  to  do  an  inspection  of 
file  names  on  the  directory  track,  using  the  utility 
' doctor. Bl',  you  would  see  that  unused  name  cells  and 
'erased  file'  cells  have  this  '254'  marker. 

This  program  loads  the  directory  track  into  a  buffer 
area  in  the  computer,  searches  the  name  cells  for  the 
desired  file,  and  removes  the  'erased'  marker.  The 
now-modified  directory  track  0  Is  then  copied  back 
onto  the  disk. 

You  should  note  that  the  success  of  this  program 
depends  on  the  erased  file  not  having  been 
over-written  by  a  subsequently  program  SAVE.  Being 
overwritten  means  that  the  tracks  containing  the 
actual  program  have  been  reused,  and  the  file  is  most 
certlanly  lost.  Sometimes*  a  file  may  not  be 
overwritten  because  there  were  lower-numbered  tracks 
available  for  storage,  in  which  case  file  recovery  is 
still  possible.  The  only  way  to  know  Is  to  try. 

see  next  page  for  listing; 


SINC-LINK 


2068 


100  REM  File  Recovery  Utility  for 
5  the  LARKEN  system 

110      REM      By  G.  Chambers 
14  Richome  Court  Scarborough, 

Ont.  CANADA     M1K  2Y1 


accid 


the 


120  REM      Use  to  recover  an 
entally  erased  file 

130  REM  Data  statements  contain 
"RHMD0S.C2"  Code. 

140  REM  For  use  with  the  DSK400  system  o 

f  5390  bytes/track.  Single-, double-, or  Q 

uao-. 

150  GO  TO  170 

160  CLEAR   :  RANDOMIZE  USR  100:  SAVE  "recovr 

31"  LINE  170 
170  RESTORE  210 
180  FOR  n=63000  TO  63104 
190  READ  a:   POKE  n,a 
200  NEXT  n 

210  DATA  135,43,246,195,72,246,195,104,246,2 
43,205,98,0,201,58  ' 

220  DATA  100,0,251,201,205,33,246,58,176,92 
50,29,32,205,126  »      »        »  , 

230  DATA  0,205,123,0,33,112,32,17,156,224.1. 
0,20,237,176  '       *  * 

240  DATA  195,38,246,205,33,246,58,176,92,50. 
i       29,32,33,156,224  '      '  * 

250  DATA  17,112,32,1,0,20,237,176,205,150.0. 
205,126,0,205  '       *  ' 

260  DATA  120,0,195,38,246,205,33,246,205,129 
,0,205,123,0,33  *  ' 

270  DATA  112,32,17,156,224,1,0,20,237,176,19 
5,38,246,201,0  ,  ,.=7. 

280  DIM  e$(9j;  DIM  aS(9):  DIM  c$(1):  dim  b$f 
9) :   DIM  d$(256) 
290  LET  trac=23728:  LET  nexttrack=63006:  LET 
loadbuf =63000:  LET  savebuf =63003 
300  BORDER  1 :  PAPER  1 :  CLS 
310  LET  a$='»  RETURN  ff 

320  PRINT  AT  2,6;   INK  2;   PAPER  6;"LARKEN  DIS 
K  UTILITY";   PAPER  1 ; , , TAB  5;  PAPER  6;"Delete 
d  File  Recovery";  PAPER  1,,TAB  6;  PAPER  6;"B 
y     George  Chambers" 

330  INK  3:   PLOT  0,108:   DRAW  0,62:   DRAW  255  0 
:  DRAW  0,-62:  DRAW  -255,0  ' 

340  INK  6:   PLOT  8,114:  DRAW  0,50:   DRAW  238.0 
:   DRAW  0,-50:   DRAW  -238,0:   INK  7 

350  PRINT  AT  10,0;d$jAT  14,1;"lnsert  disk  wi 
th  deleted  file"».TAB  2;"and  Press  any  key  t 
o  start":  PAUSE  0  ^  ^ 

360  REM     Search  of  tracks 

^ased  file 

370  INPUT  "Enter  the  full  name  of  the  delete 
d  file  ";b$ 
380  POKE  trac,0:  RANDOMIZE  USR  loadbuf 
390  LET  f=PEEK  57520«PEEK  57521-1 


400  POKE  trac,1:  RANDOMIZE  USR  loadbuf 
410  PRINT  AT  10,0;d$;AT  10,10.b$5AT  10,2;"Se 
arching  tracks  for  program"; AT  13, 8 .-"Track 

Program" 

420  PRINT  AT  14, 9 J "No.  Name" 
430  FOR  n=1  TO  f 

440  IF  n>1  AND  PEEK  57500=0  AND  PEEK  57501=0 
THEN     LET  n=7g:  PRINT  AT  10,0;d$;AT  11,1;  P 
APER  7;  INK  2; "File  name  not  found  on  tracks 
PAUSE  0:  STOP 
450  LET  d=n 
460  FOR  m=1  TO  9 

470  LET  a$(m}=CHRS  PEEK  (57501+m) 
490  NEXT  m 

500  PRINT  AT  16,9;n;TAB  14;a$ 

510  IF  a$=b$  THEN     LET  n=f 

520  IF  n<f  THEN    RANDOMIZE  USR  nexttrack 

530  NEXT  n 

540  REM  Search  for  deleted  name  in  0 

irectory 

550  POKE  trac,0:  RANDOMIZE  USR  loadbuf 
560  LET  g=57524+d 
570  POKE  g,245 

580  LET  c$=b$(1):  LET  eS=b$(2  TO  ):  LET  e$=" 
RETURN  "+e$ 

590  FOR  n=576a8  TO  61088  STEP  34 

600  IF  PEEK  (n+4)=0  AND  PEEK  (n-<-5)=0  THEN  P 
RINT  AT  20,3;  PAPER  7;  INK  2; "Erased  Filenam 
e  not  found" J  TAB  9; "in  Directory":  PAUSE  0* 
STOP 

610  FOR  m=1  TO  9 

620  LET  a$(m)=CHR$  PEEK  (n+m) 

625  NEXT  m 

630  IF  e$=a$  THEN     LET  a=n:  LET  n=6108a:  POK 
E  (a-H),COOE  c$:   GO  TO  640 
640  NEXT  n 
650  LET  m=a+11 
660  POKE  m,d 
670  FOR  n=1  TO  22 

680  IF  PEEK  Cm+n}=249  THEN    LET  na22z  GO  TO 

700 

690  POKE  g+n,245 
700  NEXT  n 

710  PRINT  AT  9,0;d$;AT  1 0 , 3 ; "Program  has  bee 
n  restored"»»»»  PAPER  5;   INK  2; "Remove  WRITE 
-PROTECT  tab  from      defective  disk  and  Insta 
11.  "»»"  Press  a  key  to  save  to  track  0 

PAUSE  0 

720  POKE  trac,0:  RANDOMIZE  USR  savebuf 

730  PRINT  AT  11,0;d$;AT  13, 9; "JOB  COMPLETEO" 
JAT  15, 10; "Press  a  key", "to  display  reoovere 
d  file(only3":  PAUSE  0 

740  PRINT  USR  100:  CAT  b$, 

750  STOP 
1000:  SAVE  "recovr"  LINE  100 
1010  STOP 


SINC-LINK 


13 


THE  LAST  PAGE 


On  Sale  Today 


"What  happened  to  the  cigar  box 
filled  with  scissors,  paste  and  crayons?" 


In  The  Bleachers 


Bob  enters  the  wrong  data  into  his  computer- 
ized exercise  bike. 


(  ■  ^  . 

Pottmottar,  if  Undtiivered  Rtturn  to  : 


Toronto  Timtx  -  Sincioir  Uttrt  Club 
P  0.  Box  7274  Sfft.  A 
Toronto,  Ont.,  M5W  1X9 
Conodo 


SINC-LINK