Home » CEEFAX disks » telesoftware7.adl » 20-05-88/KEYPRNT

20-05-88/KEYPRNT

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » CEEFAX disks » telesoftware7.adl
Filename: 20-05-88/KEYPRNT
Read OK:
File size: 1367 bytes
Load address: FFFF1300
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10ONERROR GOTO1030
   20*KEY10 PA.=&1300|MO.|MRUN|M
   30MODE0:VDU19,0,4;0;:CLS:VDU24,0;285;1279;1023;:VDU28,15,31,64,24:DIMA$(10,6),fl$(31),v% 16,u% 32:F%=0:C%=1:R%=1:X%=96:Y%=938:s=1:L%=0:E%=0:R$="":i$=""
   40REPEAT:flag=0:CLS:f=0:PROCm:UNTILf
   50VDU2,1,27,1,64:VDU3:MODE7
   60REM"�Printer�back to NORMAL!
   70*FX151,78,127
   80CALL&D9CD
   90END
  100DEFPROCm:CLS:PRINT"Key 1 to select format"'"Key 2 to save new file"'"Key 3 to load existing file"'"Key 4 to edit text"'"Key 5 to printout Keystrip"'"Key 0 to finish"
  110REPEAT:*FX15,1
  120PRINTTAB(0,6)"PLEASE SELECT ?   ";:A%=GET:UNTILA%>47 ANDA%<54:PRINTTAB(0,6)SPC(40)
  130IFA%=48f=-1:ENDPROC
  140IFA%=49PROCf:ENDPROC
  150IFA%=50PROCn:ENDPROC
  160IFA%=51PROCo:IF flag=1 ENDPROC
  170IFA%=51 AND flag=0 PROCdi(F%):PROCF:ENDPROC
  180IFA%=52PROCe:ENDPROC
  190IFA%=53PROCp(L%):ENDPROC
  200DEFPROCdi(F%):L%=6/F%:CLG:GCOL0,1:VDU5:x=88:x1=1208:a=1023:c=(288+F%*32):b=1023-c:f%=0:s=1:Z%=1:X%=96:Y%=938:C%=1:R%=1
  210FORy=a TOb STEP-c:y1=y-64:y2=y1-(192+F%*32):K%=y-24:MOVEx,y:DRAWx1,y:MOVEx,y1:DRAWx1,y1:FORJ%=184TO1080 STEP224:MOVEJ%,K%:PRINT"f";f%:f%=f%+1:NEXT:FORH%=1 TOF%:MOVEx,y1-(y1-y2)/F%*H%:DRAWx1,y1-(y1-y2)/F%*H%:NEXT
  220FORV%=88TO1208STEP224:MOVEV%,y:DRAWV%,y2:NEXT,:VDU4:ENDPROC
  230DEFPROCp(N%)
  240IFF%=0 CLS:PRINT"format not specified _ cannot print";:PROCd(2):ENDPROC
  250VDU2:PRINT':VDU3:IF ADVAL(-4)<>63 CLS:FORt%=1TO5:PRINTTAB(0,4)"PRINTER not on LINE!!!";:PROCd(1.5):PRINTTAB(0,4)SPC22;:PROCd(0.5):NEXT:ENDPROC
  260CLS:*FX3,10
  270REM"�Disable��VDU�drivers
  280VDU2,27,64:REM"�Printer on & RESET
  290VDU15:REM" �Condensed characters
  300VDU27,51,24:REM"�Line spacing
  310FORT%=1TO10:PRINT"+";STRING$(12,"-");:NEXT:PRINT"+":FORk%=0TO9:PRINT"!";SPC5"f";k%;SPC5;:NEXT:PRINT"!":FORB%=1TO10:PRINT"+";STRING$(12,"-");:NEXT:PRINT"+"
  320IFN%=6PROCP(1,6)
  330IFN%=3PROCP(1,3):PROCP(4,6)
  340IFN%=2PROCP(1,2):PROCP(3,4):PROCP(5,6)
  350FORD%=1TO8:PRINT:NEXT:VDU3
  360*FX3
  370REM"�VDU default setting
  380ENDPROC
  390DEFPROCP(U%,W%):FORR%=U%TOW%:FORC%=1TO10:l=INT((12-LEN(A$(C%,R%)))/2):PRINT"!";SPC(l);A$(C%,R%);SPC(12-(LEN(A$(C%,R%))+l));:NEXT:PRINT"!":NEXT:FORB%=1TO10:PRINT"+";STRING$(12,"-");:NEXT:PRINT"+":ENDPROC
  400DEFPROCo:FORa=1TO10:FORb=1TO6:A$(a,b)="            ":NEXT,
  405CLG:CLS:PROCfs:IF j%=64 OR i$=CHR$13 flag=1:ENDPROC ELSE CLS:f$="K."+f$:fl=OPENIN(f$):INPUT#fl,F%:FORr=1TO6:FORc=1TO10:INPUT#fl,A$(c,r):NEXT,:CLOSE#fl:ENDPROC
  410DEFPROCn:L=0
  420IFF%=0 CLS:PRINT"No data _ cannot open file";:PROCd(2):ENDPROC
  430CLS:PRINT"Enter file title ";:REPEAT:PROCgc(7):UNTIL (i$=CHR$13 AND L>0) ORL>m%-1:f$=inp$:inp$="":f$="K."+f$:fl=OPENOUT(f$):PRINT#fl,F%:FORr=1TO6:FORc=1TO10:PRINT#fl,A$(c,r):NEXT,:CLOSE#fl
  436ENDPROC
  440DEFPROCf:F%=0:R$="":REPEAT:F%=F%+1:IFF%=4 F%=1
  450PROCdi(F%):CLS:PRINT'SPC15"format ";F%:PRINT'''"Please press <RETURN> to select format";:Q%=INKEY(200):UNTILQ%=13:PROCi:PROCc:ENDPROC
  460DEFPROCc
  470IFF%=0 CLS:PRINT"Nothing to edit!";:E%=0:PROCd(2):ENDPROC
  480VDU5:*FX4,1
  490REPEAT:REPEAT:REPEAT:ok=0:PROCcm:UNTIL ok:MOVEX%,Y%:PRINT"*";:PROCin:UNTIL inp$="" ORR$="M" ORR$="m":VDU4:PROCg:UNTILR$="M" ORR$="m":VDU5:MOVEX%,Y%:PRINT"*":VDU4:*FX4,0
  500ENDPROC
  510DEFPROCcm:VDU5:*FX4,1
  520st=0:GCOL3,1:REPEAT:MOVEX%,Y%:PRINT"*":st=st+1:IFst=2 st=0
  530I=INKEY(20):UNTILI>134 ANDI<140
  540IFst=1 MOVEX%,Y%:PRINT"*":st=0
  550IFI=135 ok=-1:ENDPROC
  560IFI=136 ANDX%>96 X%=X%-224:C%=C%-1
  570IFI=137 ANDX%<912 X%=X%+224:C%=C%+1
  580IFI=138 ANDs<12 s=s+1:R%=R%+1:PROCud(0):Y%=Y%-32*Z%:IFZ%=5 R%=R%-6:C%=C%+5
  590IFI=139 ANDs>1 s=s-1:R%=R%-1:PROCud(-1):Y%=Y%+32*Z%:IFZ%=5 R%=R%+6:C%=C%-5
  600Z%=1:ENDPROC
  610DEFPROCin:inp$="":L=0:IFE%=1 MOVEX%,Y%:PRINT"*";A$(C%,R%):A$(C%,R%)="":MOVEX%,Y%:PRINT"*";
  620IFE%=0 ANDA$(C%,R%)<>"" MOVEX%,Y%:PRINT"*":ENDPROC
  630REPEAT:PROCgc(12):UNTILL>12 ORi$=CHR$13
  640IFinp$="" ANDE%=0 MOVEX%,Y%:PRINT"*":ENDPROC
  650inp$=LEFT$(inp$,12):A$(C%,R%)=inp$:MOVEX%,Y%:PRINT"*":ENDPROC
  660DEFPROCud(dir)
  670IFs MOD(7+dir)=0 Z%=5:ENDPROC
  680IF((s=4+dir ORs=10+dir) ANDF%=2) OR((s=3+dir ORs=5+dir ORs=9+dir ORs=11+dir) ANDF%=3) Z%=2:ENDPROC
  690Z%=1:ENDPROC
  700DEFPROCi
  710IFF%=0 CLS:ENDPROC
  720CLS
  730IFE%=1 PRINTSPC12"EDIT MODE"
  740PRINT"Use cursor keys to move around grid."
  750IFE%=1 PRINT"Press <COPY> to DELETE original text"'"now TYPE IN NEW TEXT and RETURN."
  760IFE%=0 PRINT"Press <COPY> then Enter text"'"Press <RETURN> when text ok."
  770PRINT"max. 12 characters/position."
  780IFE%=0 PRINT" To END press <COPY> (if text at cursor posn.)"'"or <COPY> and <RETURN> if no text"
  790ENDPROC
  800DEFPROCF:LOCALx,y,c,r,k,s:VDU5:x=112:y=970:FORk=1TO5:c=k:FORs=1TO12:r=s:PROCud(0)
  810IFs>6 c=k+5:r=s-6
  820y=y-32*Z%:MOVEx,y:PRINTA$(c,r):NEXT:x=x+224:y=970:NEXT:VDU4:ENDPROC
  830DEFPROCd(ti):FORde=1 TOti*1000:NEXT:ENDPROC
  840DEFPROCe:E%=1:R$="M":s=1:Z%=1:X%=96:Y%=938:C%=1:R%=1:PROCi:PROCc:ENDPROC
  850DEFPROCgc(n%):m%=n%:REPEAT:i$="":i$=GET$
  860IFn%=7:UNTILi$>CHR$64 ANDi$<CHR$91 ORi$>CHR$96 ANDi$<CHR$123 ORi$=CHR$13 ORi$=CHR$127 ELSE UNTIL TRUE
  870IFi$=CHR$13 ENDPROC
  880IFi$<>CHR$127 L=L+1
  890IFL>n% ENDPROC
  900IFi$=CHR$127 PROCdc:ENDPROC
  910IFn%=7 i$=CHR$(ASC(i$)OR32)
  920PRINTi$;:inp$=inp$+i$:ENDPROC
  930DEFPROCg
  940IFR$="M" ORR$="m" E%=0:VDU5:MOVEX%,Y%:PRINT"*":VDU4:ENDPROC
  950CLS:PRINT"Press 'C' to continue text entry"''"or 'M' to return to menu.":REPEATR$=GET$:UNTILR$="C" ORR$="M" ORR$="c" ORR$="m"
  960IFR$="C" ORR$="c" PROCi
  970IFR$="M" ORR$="m" VDU5:MOVEX%,Y%:PRINT"*":VDU4
  980ENDPROC
  990DEFPROCdc
 1000L=L-1:IFL<0 L=0:inp$="":ENDPROC
 1010VDU127:inp$=LEFT$(inp$,L):ENDPROC
 1020:
 1030CLOSE#0:*FX4,0
 1040CLS:*DIR$
 1050IF ERR=&DE PRINT"File not found!! ";:PROCd(5):RUN
 1060IF ERR=&C9 PROCer(1):RUN
 1070IF ERR=17 RUN:ELSE IF ERR>&BD AND ERR<&D7 PROCer(2):RUN ELSE REPORT:PRINT" at line ";ERL:END
 1080DEFPROCer(e%)
 1090IF e%=1 REPORT:PRINT'"REMOVE write protect tab"
 1100IF e%=2 REPORT:PRINT'"Insert new disc"
 1110PRINT"and press RETURN"'"to SAVE keystrip";:REPEAT wait=GET:UNTIL wait=13:PROCn:ENDPROC
 1120DEFPROCfs:LOCAL X%,Y%,C%,A%:*DIR K
 1130FORt%=0TO12STEP4:v%!t%=0:NEXT:PROCll:PRINT"Files on disc:-":j%=64:PROCk:*DIR$
 1140ENDPROC
 1150DEFPROCll:v%?1=u% MOD256:v%?2=u% DIV256:v%?5=1:X%=v% MOD256:Y%=v% DIV256:C%=0:A%=8:CALL&FFD1:ENDPROC
 1160DEFPROCk:REPEAT:PROCfz:UNTILv%?5>0:?u%=0:?v%=0
 1170IF j%=64 PRINTTAB(16,0)"None!";:PROCd(5):ENDPROC
 1180IF j%=65 PRINTTAB(0,7)"Only 1 file-please press 'A' ";:ELSE PRINTTAB(0,7)"Which file A to ";CHR$(j%)" ?";
 1190REPEAT:i$=GET$:i$=CHR$(ASC(i$)AND&DF):UNTIL i$>CHR$64 AND i$<CHR$(j%+1) ORi$=CHR$13
 1200IFi$=CHR$13 ENDPROC
 1210k%=ASC(i$)-64:f$=fl$(k%)
 1220ENDPROC
 1230DEFPROCfz
 1240IF v%?5>0 ENDPROC
 1250j%=j%+1:?(u%+1+?u%)=13:n$=$(u%+1):fl$(j%-64)=n$:PRINTCHR$j%" "n$" ";:PROCll:ENDPROC

� �TFD
*KEY10 PA.=&1300|MO.|MRUN|M
��0:�19,0,4;0;:�:�24,0;285;1279;1023;:�28,15,31,64,24:�A$(10,6),fl$(31),v% 16,u% 32:F%=0:C%=1:R%=1:X%=96:Y%=938:s=1:L%=0:E%=0:R$="":i$=""
(�:flag=0:�:f=0:�m:�f
2�2,1,27,1,64:�3:�7
<�"�Printer�back to NORMAL!
F*FX151,78,127
P
�&D9CD
Z�
d���m:�:�"Key 1 to select format"'"Key 2 to save new file"'"Key 3 to load existing file"'"Key 4 to edit text"'"Key 5 to printout Keystrip"'"Key 0 to finish"
n
�:*FX15,1
x>�0,6)"PLEASE SELECT ?   ";:A%=�:�A%>47 �A%<54:�0,6)�(40)
��A%=48f=-1:�
��A%=49�f:�
��A%=50�n:�
��A%=51�o:� flag=1 �
� �A%=51 � flag=0 �di(F%):�F:�
��A%=52�e:�
��A%=53�p(L%):�
�n��di(F%):L%=6/F%:�:�0,1:�5:x=88:x1=1208:a=1023:c=(288+F%*32):b=1023-c:f%=0:s=1:Z%=1:X%=96:Y%=938:C%=1:R%=1
ҩ�y=a �b �-c:y1=y-64:y2=y1-(192+F%*32):K%=y-24:�x,y:�x1,y:�x,y1:�x1,y1:�J%=184�1080 �224:�J%,K%:�"f";f%:f%=f%+1:�:�H%=1 �F%:�x,y1-(y1-y2)/F%*H%:�x1,y1-(y1-y2)/F%*H%:�
�(�V%=88�1208�224:�V%,y:�V%,y2:�,:�4:�
���p(N%)
�;�F%=0 �:�"format not specified _ cannot print";:�d(2):�
�a�2:�':�3:� �(-4)<>63 �:�t%=1�5:�0,4)"PRINTER not on LINE!!!";:�d(1.5):�0,4)�22;:�d(0.5):�:�

�:*FX3,10
�"�Disable��VDU�drivers
"�2,27,64:�"�Printer on & RESET
" �15:�" �Condensed characters
,�27,51,24:�"�Line spacing
6b�T%=1�10:�"+";�12,"-");:�:�"+":�k%=0�9:�"!";�5"f";k%;�5;:�:�"!":�B%=1�10:�"+";�12,"-");:�:�"+"
@�N%=6�P(1,6)
J�N%=3�P(1,3):�P(4,6)
T �N%=2�P(1,2):�P(3,4):�P(5,6)
^�D%=1�8:�:�:�3
h*FX3
r�"�VDU default setting
|�
����P(U%,W%):�R%=U%�W%:�C%=1�10:l=�((12-�(A$(C%,R%)))/2):�"!";�(l);A$(C%,R%);�(12-(�(A$(C%,R%))+l));:�:�"!":�:�B%=1�10:�"+";�12,"-");:�:�"+":�
�0��o:�a=1�10:�b=1�6:A$(a,b)="            ":�,
�k�:�:�fs:� j%=64 � i$=�13 flag=1:� � �:f$="K."+f$:fl=�(f$):�#fl,F%:�r=1�6:�c=1�10:�#fl,A$(c,r):�,:�#fl:�
���n:L=0
�2�F%=0 �:�"No data _ cannot open file";:�d(2):�
���:�"Enter file title ";:�:�gc(7):� (i$=�13 � L>0) �L>m%-1:f$=inp$:inp$="":f$="K."+f$:fl=�(f$):�#fl,F%:�r=1�6:�c=1�10:�#fl,A$(c,r):�,:�#fl
��
�'��f:F%=0:R$="":�:F%=F%+1:�F%=4 F%=1
�f�di(F%):�:�'�15"format ";F%:�'''"Please press <RETURN> to select format";:Q%=�(200):�Q%=13:�i:�c:�
���c
�-�F%=0 �:�"Nothing to edit!";:E%=0:�d(2):�
�
�5:*FX4,1
�q�:�:�:ok=0:�cm:� ok:�X%,Y%:�"*";:�in:� inp$="" �R$="M" �R$="m":�4:�g:�R$="M" �R$="m":�5:�X%,Y%:�"*":�4:*FX4,0
��
���cm:�5:*FX4,1
.st=0:�3,1:�:�X%,Y%:�"*":st=st+1:�st=2 st=0
I=�(20):�I>134 �I<140
�st=1 �X%,Y%:�"*":st=0
&�I=135 ok=-1:�
0#�I=136 �X%>96 X%=X%-224:C%=C%-1
:$�I=137 �X%<912 X%=X%+224:C%=C%+1
DG�I=138 �s<12 s=s+1:R%=R%+1:�ud(0):Y%=Y%-32*Z%:�Z%=5 R%=R%-6:C%=C%+5
NG�I=139 �s>1 s=s-1:R%=R%-1:�ud(-1):Y%=Y%+32*Z%:�Z%=5 R%=R%+6:C%=C%-5
X
Z%=1:�
bJ��in:inp$="":L=0:�E%=1 �X%,Y%:�"*";A$(C%,R%):A$(C%,R%)="":�X%,Y%:�"*";
l&�E%=0 �A$(C%,R%)<>"" �X%,Y%:�"*":�
v�:�gc(12):�L>12 �i$=�13
� �inp$="" �E%=0 �X%,Y%:�"*":�
�/inp$=�inp$,12):A$(C%,R%)=inp$:�X%,Y%:�"*":�
�
��ud(dir)
��s �(7+dir)=0 Z%=5:�
�V�((s=4+dir �s=10+dir) �F%=2) �((s=3+dir �s=5+dir �s=9+dir �s=11+dir) �F%=3) Z%=2:�
�
Z%=1:�
���i
�
�F%=0 �:�
��
��E%=1 �12"EDIT MODE"
�+�"Use cursor keys to move around grid."
�T�E%=1 �"Press <COPY> to DELETE original text"'"now TYPE IN NEW TEXT and RETURN."
�H�E%=0 �"Press <COPY> then Enter text"'"Press <RETURN> when text ok."
#�"max. 12 characters/position."
_�E%=0 �" To END press <COPY> (if text at cursor posn.)"'"or <COPY> and <RETURN> if no text"
�
 A��F:�x,y,c,r,k,s:�5:x=112:y=970:�k=1�5:c=k:�s=1�12:r=s:�ud(0)
*�s>6 c=k+5:r=s-6
42y=y-32*Z%:�x,y:�A$(c,r):�:x=x+224:y=970:�:�4:�
>��d(ti):�de=1 �ti*1000:�:�
H;��e:E%=1:R$="M":s=1:Z%=1:X%=96:Y%=938:C%=1:R%=1:�i:�c:�
R��gc(n%):m%=n%:�:i$="":i$=�
\A�n%=7:�i$>�64 �i$<�91 �i$>�96 �i$<�123 �i$=�13 �i$=�127 � � �
f
�i$=�13 �
p�i$<>�127 L=L+1
z�L>n% �
��i$=�127 �dc:�
��n%=7 i$=�(�(i$)�32)
��i$;:inp$=inp$+i$:�
���g
�,�R$="M" �R$="m" E%=0:�5:�X%,Y%:�"*":�4:�
�l�:�"Press 'C' to continue text entry"''"or 'M' to return to menu.":�R$=�:�R$="C" �R$="M" �R$="c" �R$="m"
��R$="C" �R$="c" �i
�%�R$="M" �R$="m" �5:�X%,Y%:�"*":�4
��
���dc
�L=L-1:�L<0 L=0:inp$="":�
��127:inp$=�inp$,L):�
�:
�#0:*FX4,0
�:*DIR$
)� �=&DE �"File not found!! ";:�d(5):�
$� �=&C9 �er(1):�
.<� �=17 �:� � �>&BD � �<&D7 �er(2):� � �:�" at line ";�:�
8��er(e%)
B)� e%=1 �:�'"REMOVE write protect tab"
L � e%=2 �:�'"Insert new disc"
VC�"and press RETURN"'"to SAVE keystrip";:� wait=�:� wait=13:�n:�
`��fs:� X%,Y%,C%,A%:*DIR K
j>�t%=0�12�4:v%!t%=0:�:�ll:�"Files on disc:-":j%=64:�k:*DIR$
t�
~R��ll:v%?1=u% �256:v%?2=u% �256:v%?5=1:X%=v% �256:Y%=v% �256:C%=0:A%=8:�&FFD1:�
�!��k:�:�fz:�v%?5>0:?u%=0:?v%=0
�#� j%=64 �16,0)"None!";:�d(5):�
�X� j%=65 �0,7)"Only 1 file-please press 'A' ";:� �0,7)"Which file A to ";�(j%)" ?";
�8�:i$=�:i$=�(�(i$)�&DF):� i$>�64 � i$<�(j%+1) �i$=�13
�
�i$=�13 �
�k%=�(i$)-64:f$=fl$(k%)
��
���fz
�� v%?5>0 �
�Gj%=j%+1:?(u%+1+?u%)=13:n$=$(u%+1):fl$(j%-64)=n$:�j%" "n$" ";:�ll:�
�
00000000  0d 00 0a 0c ee 85 20 e5  8d 54 46 44 0d 00 14 1f  |...... ..TFD....|
00000010  2a 4b 45 59 31 30 20 50  41 2e 3d 26 31 33 30 30  |*KEY10 PA.=&1300|
00000020  7c 4d 4f 2e 7c 4d 52 55  4e 7c 4d 0d 00 1e 8c eb  ||MO.|MRUN|M.....|
00000030  30 3a ef 31 39 2c 30 2c  34 3b 30 3b 3a db 3a ef  |0:.19,0,4;0;:.:.|
00000040  32 34 2c 30 3b 32 38 35  3b 31 32 37 39 3b 31 30  |24,0;285;1279;10|
00000050  32 33 3b 3a ef 32 38 2c  31 35 2c 33 31 2c 36 34  |23;:.28,15,31,64|
00000060  2c 32 34 3a de 41 24 28  31 30 2c 36 29 2c 66 6c  |,24:.A$(10,6),fl|
00000070  24 28 33 31 29 2c 76 25  20 31 36 2c 75 25 20 33  |$(31),v% 16,u% 3|
00000080  32 3a 46 25 3d 30 3a 43  25 3d 31 3a 52 25 3d 31  |2:F%=0:C%=1:R%=1|
00000090  3a 58 25 3d 39 36 3a 59  25 3d 39 33 38 3a 73 3d  |:X%=96:Y%=938:s=|
000000a0  31 3a 4c 25 3d 30 3a 45  25 3d 30 3a 52 24 3d 22  |1:L%=0:E%=0:R$="|
000000b0  22 3a 69 24 3d 22 22 0d  00 28 18 f5 3a 66 6c 61  |":i$=""..(..:fla|
000000c0  67 3d 30 3a db 3a 66 3d  30 3a f2 6d 3a fd 66 0d  |g=0:.:f=0:.m:.f.|
000000d0  00 32 16 ef 32 2c 31 2c  32 37 2c 31 2c 36 34 3a  |.2..2,1,27,1,64:|
000000e0  ef 33 3a eb 37 0d 00 3c  1e f4 22 81 50 72 69 6e  |.3:.7..<..".Prin|
000000f0  74 65 72 89 62 61 63 6b  20 74 6f 20 4e 4f 52 4d  |ter.back to NORM|
00000100  41 4c 21 0d 00 46 11 2a  46 58 31 35 31 2c 37 38  |AL!..F.*FX151,78|
00000110  2c 31 32 37 0d 00 50 0a  d6 26 44 39 43 44 0d 00  |,127..P..&D9CD..|
00000120  5a 05 e0 0d 00 64 9e dd  f2 6d 3a db 3a f1 22 4b  |Z....d...m:.:."K|
00000130  65 79 20 31 20 74 6f 20  73 65 6c 65 63 74 20 66  |ey 1 to select f|
00000140  6f 72 6d 61 74 22 27 22  4b 65 79 20 32 20 74 6f  |ormat"'"Key 2 to|
00000150  20 73 61 76 65 20 6e 65  77 20 66 69 6c 65 22 27  | save new file"'|
00000160  22 4b 65 79 20 33 20 74  6f 20 6c 6f 61 64 20 65  |"Key 3 to load e|
00000170  78 69 73 74 69 6e 67 20  66 69 6c 65 22 27 22 4b  |xisting file"'"K|
00000180  65 79 20 34 20 74 6f 20  65 64 69 74 20 74 65 78  |ey 4 to edit tex|
00000190  74 22 27 22 4b 65 79 20  35 20 74 6f 20 70 72 69  |t"'"Key 5 to pri|
000001a0  6e 74 6f 75 74 20 4b 65  79 73 74 72 69 70 22 27  |ntout Keystrip"'|
000001b0  22 4b 65 79 20 30 20 74  6f 20 66 69 6e 69 73 68  |"Key 0 to finish|
000001c0  22 0d 00 6e 0d f5 3a 2a  46 58 31 35 2c 31 0d 00  |"..n..:*FX15,1..|
000001d0  78 3e f1 8a 30 2c 36 29  22 50 4c 45 41 53 45 20  |x>..0,6)"PLEASE |
000001e0  53 45 4c 45 43 54 20 3f  20 20 20 22 3b 3a 41 25  |SELECT ?   ";:A%|
000001f0  3d a5 3a fd 41 25 3e 34  37 20 80 41 25 3c 35 34  |=.:.A%>47 .A%<54|
00000200  3a f1 8a 30 2c 36 29 89  28 34 30 29 0d 00 82 10  |:..0,6).(40)....|
00000210  e7 41 25 3d 34 38 66 3d  2d 31 3a e1 0d 00 8c 0e  |.A%=48f=-1:.....|
00000220  e7 41 25 3d 34 39 f2 66  3a e1 0d 00 96 0e e7 41  |.A%=49.f:......A|
00000230  25 3d 35 30 f2 6e 3a e1  0d 00 a0 17 e7 41 25 3d  |%=50.n:......A%=|
00000240  35 31 f2 6f 3a e7 20 66  6c 61 67 3d 31 20 e1 0d  |51.o:. flag=1 ..|
00000250  00 aa 20 e7 41 25 3d 35  31 20 80 20 66 6c 61 67  |.. .A%=51 . flag|
00000260  3d 30 20 f2 64 69 28 46  25 29 3a f2 46 3a e1 0d  |=0 .di(F%):.F:..|
00000270  00 b4 0e e7 41 25 3d 35  32 f2 65 3a e1 0d 00 be  |....A%=52.e:....|
00000280  12 e7 41 25 3d 35 33 f2  70 28 4c 25 29 3a e1 0d  |..A%=53.p(L%):..|
00000290  00 c8 6e dd f2 64 69 28  46 25 29 3a 4c 25 3d 36  |..n..di(F%):L%=6|
000002a0  2f 46 25 3a da 3a e6 30  2c 31 3a ef 35 3a 78 3d  |/F%:.:.0,1:.5:x=|
000002b0  38 38 3a 78 31 3d 31 32  30 38 3a 61 3d 31 30 32  |88:x1=1208:a=102|
000002c0  33 3a 63 3d 28 32 38 38  2b 46 25 2a 33 32 29 3a  |3:c=(288+F%*32):|
000002d0  62 3d 31 30 32 33 2d 63  3a 66 25 3d 30 3a 73 3d  |b=1023-c:f%=0:s=|
000002e0  31 3a 5a 25 3d 31 3a 58  25 3d 39 36 3a 59 25 3d  |1:Z%=1:X%=96:Y%=|
000002f0  39 33 38 3a 43 25 3d 31  3a 52 25 3d 31 0d 00 d2  |938:C%=1:R%=1...|
00000300  a9 e3 79 3d 61 20 b8 62  20 88 2d 63 3a 79 31 3d  |..y=a .b .-c:y1=|
00000310  79 2d 36 34 3a 79 32 3d  79 31 2d 28 31 39 32 2b  |y-64:y2=y1-(192+|
00000320  46 25 2a 33 32 29 3a 4b  25 3d 79 2d 32 34 3a ec  |F%*32):K%=y-24:.|
00000330  78 2c 79 3a df 78 31 2c  79 3a ec 78 2c 79 31 3a  |x,y:.x1,y:.x,y1:|
00000340  df 78 31 2c 79 31 3a e3  4a 25 3d 31 38 34 b8 31  |.x1,y1:.J%=184.1|
00000350  30 38 30 20 88 32 32 34  3a ec 4a 25 2c 4b 25 3a  |080 .224:.J%,K%:|
00000360  f1 22 66 22 3b 66 25 3a  66 25 3d 66 25 2b 31 3a  |."f";f%:f%=f%+1:|
00000370  ed 3a e3 48 25 3d 31 20  b8 46 25 3a ec 78 2c 79  |.:.H%=1 .F%:.x,y|
00000380  31 2d 28 79 31 2d 79 32  29 2f 46 25 2a 48 25 3a  |1-(y1-y2)/F%*H%:|
00000390  df 78 31 2c 79 31 2d 28  79 31 2d 79 32 29 2f 46  |.x1,y1-(y1-y2)/F|
000003a0  25 2a 48 25 3a ed 0d 00  dc 28 e3 56 25 3d 38 38  |%*H%:....(.V%=88|
000003b0  b8 31 32 30 38 88 32 32  34 3a ec 56 25 2c 79 3a  |.1208.224:.V%,y:|
000003c0  df 56 25 2c 79 32 3a ed  2c 3a ef 34 3a e1 0d 00  |.V%,y2:.,:.4:...|
000003d0  e6 0b dd f2 70 28 4e 25  29 0d 00 f0 3b e7 46 25  |....p(N%)...;.F%|
000003e0  3d 30 20 db 3a f1 22 66  6f 72 6d 61 74 20 6e 6f  |=0 .:."format no|
000003f0  74 20 73 70 65 63 69 66  69 65 64 20 5f 20 63 61  |t specified _ ca|
00000400  6e 6e 6f 74 20 70 72 69  6e 74 22 3b 3a f2 64 28  |nnot print";:.d(|
00000410  32 29 3a e1 0d 00 fa 61  ef 32 3a f1 27 3a ef 33  |2):....a.2:.':.3|
00000420  3a e7 20 96 28 2d 34 29  3c 3e 36 33 20 db 3a e3  |:. .(-4)<>63 .:.|
00000430  74 25 3d 31 b8 35 3a f1  8a 30 2c 34 29 22 50 52  |t%=1.5:..0,4)"PR|
00000440  49 4e 54 45 52 20 6e 6f  74 20 6f 6e 20 4c 49 4e  |INTER not on LIN|
00000450  45 21 21 21 22 3b 3a f2  64 28 31 2e 35 29 3a f1  |E!!!";:.d(1.5):.|
00000460  8a 30 2c 34 29 89 32 32  3b 3a f2 64 28 30 2e 35  |.0,4).22;:.d(0.5|
00000470  29 3a ed 3a e1 0d 01 04  0d db 3a 2a 46 58 33 2c  |):.:......:*FX3,|
00000480  31 30 0d 01 0e 1b f4 22  88 44 69 73 61 62 6c 65  |10.....".Disable|
00000490  89 86 56 44 55 87 64 72  69 76 65 72 73 0d 01 18  |..VDU.drivers...|
000004a0  22 ef 32 2c 32 37 2c 36  34 3a f4 22 85 50 72 69  |".2,27,64:.".Pri|
000004b0  6e 74 65 72 20 6f 6e 20  26 20 52 45 53 45 54 0d  |nter on & RESET.|
000004c0  01 22 20 ef 31 35 3a f4  22 20 82 43 6f 6e 64 65  |." .15:." .Conde|
000004d0  6e 73 65 64 20 63 68 61  72 61 63 74 65 72 73 0d  |nsed characters.|
000004e0  01 2c 1d ef 32 37 2c 35  31 2c 32 34 3a f4 22 82  |.,..27,51,24:.".|
000004f0  4c 69 6e 65 20 73 70 61  63 69 6e 67 0d 01 36 62  |Line spacing..6b|
00000500  e3 54 25 3d 31 b8 31 30  3a f1 22 2b 22 3b c4 31  |.T%=1.10:."+";.1|
00000510  32 2c 22 2d 22 29 3b 3a  ed 3a f1 22 2b 22 3a e3  |2,"-");:.:."+":.|
00000520  6b 25 3d 30 b8 39 3a f1  22 21 22 3b 89 35 22 66  |k%=0.9:."!";.5"f|
00000530  22 3b 6b 25 3b 89 35 3b  3a ed 3a f1 22 21 22 3a  |";k%;.5;:.:."!":|
00000540  e3 42 25 3d 31 b8 31 30  3a f1 22 2b 22 3b c4 31  |.B%=1.10:."+";.1|
00000550  32 2c 22 2d 22 29 3b 3a  ed 3a f1 22 2b 22 0d 01  |2,"-");:.:."+"..|
00000560  40 10 e7 4e 25 3d 36 f2  50 28 31 2c 36 29 0d 01  |@..N%=6.P(1,6)..|
00000570  4a 18 e7 4e 25 3d 33 f2  50 28 31 2c 33 29 3a f2  |J..N%=3.P(1,3):.|
00000580  50 28 34 2c 36 29 0d 01  54 20 e7 4e 25 3d 32 f2  |P(4,6)..T .N%=2.|
00000590  50 28 31 2c 32 29 3a f2  50 28 33 2c 34 29 3a f2  |P(1,2):.P(3,4):.|
000005a0  50 28 35 2c 36 29 0d 01  5e 12 e3 44 25 3d 31 b8  |P(5,6)..^..D%=1.|
000005b0  38 3a f1 3a ed 3a ef 33  0d 01 68 08 2a 46 58 33  |8:.:.:.3..h.*FX3|
000005c0  0d 01 72 1a f4 22 82 56  44 55 20 64 65 66 61 75  |..r..".VDU defau|
000005d0  6c 74 20 73 65 74 74 69  6e 67 0d 01 7c 05 e1 0d  |lt setting..|...|
000005e0  01 86 90 dd f2 50 28 55  25 2c 57 25 29 3a e3 52  |.....P(U%,W%):.R|
000005f0  25 3d 55 25 b8 57 25 3a  e3 43 25 3d 31 b8 31 30  |%=U%.W%:.C%=1.10|
00000600  3a 6c 3d a8 28 28 31 32  2d a9 28 41 24 28 43 25  |:l=.((12-.(A$(C%|
00000610  2c 52 25 29 29 29 2f 32  29 3a f1 22 21 22 3b 89  |,R%)))/2):."!";.|
00000620  28 6c 29 3b 41 24 28 43  25 2c 52 25 29 3b 89 28  |(l);A$(C%,R%);.(|
00000630  31 32 2d 28 a9 28 41 24  28 43 25 2c 52 25 29 29  |12-(.(A$(C%,R%))|
00000640  2b 6c 29 29 3b 3a ed 3a  f1 22 21 22 3a ed 3a e3  |+l));:.:."!":.:.|
00000650  42 25 3d 31 b8 31 30 3a  f1 22 2b 22 3b c4 31 32  |B%=1.10:."+";.12|
00000660  2c 22 2d 22 29 3b 3a ed  3a f1 22 2b 22 3a e1 0d  |,"-");:.:."+":..|
00000670  01 90 30 dd f2 6f 3a e3  61 3d 31 b8 31 30 3a e3  |..0..o:.a=1.10:.|
00000680  62 3d 31 b8 36 3a 41 24  28 61 2c 62 29 3d 22 20  |b=1.6:A$(a,b)=" |
00000690  20 20 20 20 20 20 20 20  20 20 20 22 3a ed 2c 0d  |           ":.,.|
000006a0  01 95 6b da 3a db 3a f2  66 73 3a e7 20 6a 25 3d  |..k.:.:.fs:. j%=|
000006b0  36 34 20 84 20 69 24 3d  bd 31 33 20 66 6c 61 67  |64 . i$=.13 flag|
000006c0  3d 31 3a e1 20 8b 20 db  3a 66 24 3d 22 4b 2e 22  |=1:. . .:f$="K."|
000006d0  2b 66 24 3a 66 6c 3d 8e  28 66 24 29 3a e8 23 66  |+f$:fl=.(f$):.#f|
000006e0  6c 2c 46 25 3a e3 72 3d  31 b8 36 3a e3 63 3d 31  |l,F%:.r=1.6:.c=1|
000006f0  b8 31 30 3a e8 23 66 6c  2c 41 24 28 63 2c 72 29  |.10:.#fl,A$(c,r)|
00000700  3a ed 2c 3a d9 23 66 6c  3a e1 0d 01 9a 0b dd f2  |:.,:.#fl:.......|
00000710  6e 3a 4c 3d 30 0d 01 a4  32 e7 46 25 3d 30 20 db  |n:L=0...2.F%=0 .|
00000720  3a f1 22 4e 6f 20 64 61  74 61 20 5f 20 63 61 6e  |:."No data _ can|
00000730  6e 6f 74 20 6f 70 65 6e  20 66 69 6c 65 22 3b 3a  |not open file";:|
00000740  f2 64 28 32 29 3a e1 0d  01 ae 8d db 3a f1 22 45  |.d(2):......:."E|
00000750  6e 74 65 72 20 66 69 6c  65 20 74 69 74 6c 65 20  |nter file title |
00000760  22 3b 3a f5 3a f2 67 63  28 37 29 3a fd 20 28 69  |";:.:.gc(7):. (i|
00000770  24 3d bd 31 33 20 80 20  4c 3e 30 29 20 84 4c 3e  |$=.13 . L>0) .L>|
00000780  6d 25 2d 31 3a 66 24 3d  69 6e 70 24 3a 69 6e 70  |m%-1:f$=inp$:inp|
00000790  24 3d 22 22 3a 66 24 3d  22 4b 2e 22 2b 66 24 3a  |$="":f$="K."+f$:|
000007a0  66 6c 3d ae 28 66 24 29  3a f1 23 66 6c 2c 46 25  |fl=.(f$):.#fl,F%|
000007b0  3a e3 72 3d 31 b8 36 3a  e3 63 3d 31 b8 31 30 3a  |:.r=1.6:.c=1.10:|
000007c0  f1 23 66 6c 2c 41 24 28  63 2c 72 29 3a ed 2c 3a  |.#fl,A$(c,r):.,:|
000007d0  d9 23 66 6c 0d 01 b4 05  e1 0d 01 b8 27 dd f2 66  |.#fl........'..f|
000007e0  3a 46 25 3d 30 3a 52 24  3d 22 22 3a f5 3a 46 25  |:F%=0:R$="":.:F%|
000007f0  3d 46 25 2b 31 3a e7 46  25 3d 34 20 46 25 3d 31  |=F%+1:.F%=4 F%=1|
00000800  0d 01 c2 66 f2 64 69 28  46 25 29 3a db 3a f1 27  |...f.di(F%):.:.'|
00000810  89 31 35 22 66 6f 72 6d  61 74 20 22 3b 46 25 3a  |.15"format ";F%:|
00000820  f1 27 27 27 22 50 6c 65  61 73 65 20 70 72 65 73  |.'''"Please pres|
00000830  73 20 3c 52 45 54 55 52  4e 3e 20 74 6f 20 73 65  |s <RETURN> to se|
00000840  6c 65 63 74 20 66 6f 72  6d 61 74 22 3b 3a 51 25  |lect format";:Q%|
00000850  3d a6 28 32 30 30 29 3a  fd 51 25 3d 31 33 3a f2  |=.(200):.Q%=13:.|
00000860  69 3a f2 63 3a e1 0d 01  cc 07 dd f2 63 0d 01 d6  |i:.c:.......c...|
00000870  2d e7 46 25 3d 30 20 db  3a f1 22 4e 6f 74 68 69  |-.F%=0 .:."Nothi|
00000880  6e 67 20 74 6f 20 65 64  69 74 21 22 3b 3a 45 25  |ng to edit!";:E%|
00000890  3d 30 3a f2 64 28 32 29  3a e1 0d 01 e0 0d ef 35  |=0:.d(2):......5|
000008a0  3a 2a 46 58 34 2c 31 0d  01 ea 71 f5 3a f5 3a f5  |:*FX4,1...q.:.:.|
000008b0  3a 6f 6b 3d 30 3a f2 63  6d 3a fd 20 6f 6b 3a ec  |:ok=0:.cm:. ok:.|
000008c0  58 25 2c 59 25 3a f1 22  2a 22 3b 3a f2 69 6e 3a  |X%,Y%:."*";:.in:|
000008d0  fd 20 69 6e 70 24 3d 22  22 20 84 52 24 3d 22 4d  |. inp$="" .R$="M|
000008e0  22 20 84 52 24 3d 22 6d  22 3a ef 34 3a f2 67 3a  |" .R$="m":.4:.g:|
000008f0  fd 52 24 3d 22 4d 22 20  84 52 24 3d 22 6d 22 3a  |.R$="M" .R$="m":|
00000900  ef 35 3a ec 58 25 2c 59  25 3a f1 22 2a 22 3a ef  |.5:.X%,Y%:."*":.|
00000910  34 3a 2a 46 58 34 2c 30  0d 01 f4 05 e1 0d 01 fe  |4:*FX4,0........|
00000920  12 dd f2 63 6d 3a ef 35  3a 2a 46 58 34 2c 31 0d  |...cm:.5:*FX4,1.|
00000930  02 08 2e 73 74 3d 30 3a  e6 33 2c 31 3a f5 3a ec  |...st=0:.3,1:.:.|
00000940  58 25 2c 59 25 3a f1 22  2a 22 3a 73 74 3d 73 74  |X%,Y%:."*":st=st|
00000950  2b 31 3a e7 73 74 3d 32  20 73 74 3d 30 0d 02 12  |+1:.st=2 st=0...|
00000960  19 49 3d a6 28 32 30 29  3a fd 49 3e 31 33 34 20  |.I=.(20):.I>134 |
00000970  80 49 3c 31 34 30 0d 02  1c 1a e7 73 74 3d 31 20  |.I<140.....st=1 |
00000980  ec 58 25 2c 59 25 3a f1  22 2a 22 3a 73 74 3d 30  |.X%,Y%:."*":st=0|
00000990  0d 02 26 12 e7 49 3d 31  33 35 20 6f 6b 3d 2d 31  |..&..I=135 ok=-1|
000009a0  3a e1 0d 02 30 23 e7 49  3d 31 33 36 20 80 58 25  |:...0#.I=136 .X%|
000009b0  3e 39 36 20 58 25 3d 58  25 2d 32 32 34 3a 43 25  |>96 X%=X%-224:C%|
000009c0  3d 43 25 2d 31 0d 02 3a  24 e7 49 3d 31 33 37 20  |=C%-1..:$.I=137 |
000009d0  80 58 25 3c 39 31 32 20  58 25 3d 58 25 2b 32 32  |.X%<912 X%=X%+22|
000009e0  34 3a 43 25 3d 43 25 2b  31 0d 02 44 47 e7 49 3d  |4:C%=C%+1..DG.I=|
000009f0  31 33 38 20 80 73 3c 31  32 20 73 3d 73 2b 31 3a  |138 .s<12 s=s+1:|
00000a00  52 25 3d 52 25 2b 31 3a  f2 75 64 28 30 29 3a 59  |R%=R%+1:.ud(0):Y|
00000a10  25 3d 59 25 2d 33 32 2a  5a 25 3a e7 5a 25 3d 35  |%=Y%-32*Z%:.Z%=5|
00000a20  20 52 25 3d 52 25 2d 36  3a 43 25 3d 43 25 2b 35  | R%=R%-6:C%=C%+5|
00000a30  0d 02 4e 47 e7 49 3d 31  33 39 20 80 73 3e 31 20  |..NG.I=139 .s>1 |
00000a40  73 3d 73 2d 31 3a 52 25  3d 52 25 2d 31 3a f2 75  |s=s-1:R%=R%-1:.u|
00000a50  64 28 2d 31 29 3a 59 25  3d 59 25 2b 33 32 2a 5a  |d(-1):Y%=Y%+32*Z|
00000a60  25 3a e7 5a 25 3d 35 20  52 25 3d 52 25 2b 36 3a  |%:.Z%=5 R%=R%+6:|
00000a70  43 25 3d 43 25 2d 35 0d  02 58 0a 5a 25 3d 31 3a  |C%=C%-5..X.Z%=1:|
00000a80  e1 0d 02 62 4a dd f2 69  6e 3a 69 6e 70 24 3d 22  |...bJ..in:inp$="|
00000a90  22 3a 4c 3d 30 3a e7 45  25 3d 31 20 ec 58 25 2c  |":L=0:.E%=1 .X%,|
00000aa0  59 25 3a f1 22 2a 22 3b  41 24 28 43 25 2c 52 25  |Y%:."*";A$(C%,R%|
00000ab0  29 3a 41 24 28 43 25 2c  52 25 29 3d 22 22 3a ec  |):A$(C%,R%)="":.|
00000ac0  58 25 2c 59 25 3a f1 22  2a 22 3b 0d 02 6c 26 e7  |X%,Y%:."*";..l&.|
00000ad0  45 25 3d 30 20 80 41 24  28 43 25 2c 52 25 29 3c  |E%=0 .A$(C%,R%)<|
00000ae0  3e 22 22 20 ec 58 25 2c  59 25 3a f1 22 2a 22 3a  |>"" .X%,Y%:."*":|
00000af0  e1 0d 02 76 1b f5 3a f2  67 63 28 31 32 29 3a fd  |...v..:.gc(12):.|
00000b00  4c 3e 31 32 20 84 69 24  3d bd 31 33 0d 02 80 20  |L>12 .i$=.13... |
00000b10  e7 69 6e 70 24 3d 22 22  20 80 45 25 3d 30 20 ec  |.inp$="" .E%=0 .|
00000b20  58 25 2c 59 25 3a f1 22  2a 22 3a e1 0d 02 8a 2f  |X%,Y%:."*":..../|
00000b30  69 6e 70 24 3d c0 69 6e  70 24 2c 31 32 29 3a 41  |inp$=.inp$,12):A|
00000b40  24 28 43 25 2c 52 25 29  3d 69 6e 70 24 3a ec 58  |$(C%,R%)=inp$:.X|
00000b50  25 2c 59 25 3a f1 22 2a  22 3a e1 0d 02 94 0d dd  |%,Y%:."*":......|
00000b60  f2 75 64 28 64 69 72 29  0d 02 9e 18 e7 73 20 83  |.ud(dir).....s .|
00000b70  28 37 2b 64 69 72 29 3d  30 20 5a 25 3d 35 3a e1  |(7+dir)=0 Z%=5:.|
00000b80  0d 02 a8 56 e7 28 28 73  3d 34 2b 64 69 72 20 84  |...V.((s=4+dir .|
00000b90  73 3d 31 30 2b 64 69 72  29 20 80 46 25 3d 32 29  |s=10+dir) .F%=2)|
00000ba0  20 84 28 28 73 3d 33 2b  64 69 72 20 84 73 3d 35  | .((s=3+dir .s=5|
00000bb0  2b 64 69 72 20 84 73 3d  39 2b 64 69 72 20 84 73  |+dir .s=9+dir .s|
00000bc0  3d 31 31 2b 64 69 72 29  20 80 46 25 3d 33 29 20  |=11+dir) .F%=3) |
00000bd0  5a 25 3d 32 3a e1 0d 02  b2 0a 5a 25 3d 31 3a e1  |Z%=2:.....Z%=1:.|
00000be0  0d 02 bc 07 dd f2 69 0d  02 c6 0d e7 46 25 3d 30  |......i.....F%=0|
00000bf0  20 db 3a e1 0d 02 d0 05  db 0d 02 da 19 e7 45 25  | .:...........E%|
00000c00  3d 31 20 f1 89 31 32 22  45 44 49 54 20 4d 4f 44  |=1 ..12"EDIT MOD|
00000c10  45 22 0d 02 e4 2b f1 22  55 73 65 20 63 75 72 73  |E"...+."Use curs|
00000c20  6f 72 20 6b 65 79 73 20  74 6f 20 6d 6f 76 65 20  |or keys to move |
00000c30  61 72 6f 75 6e 64 20 67  72 69 64 2e 22 0d 02 ee  |around grid."...|
00000c40  54 e7 45 25 3d 31 20 f1  22 50 72 65 73 73 20 3c  |T.E%=1 ."Press <|
00000c50  43 4f 50 59 3e 20 74 6f  20 44 45 4c 45 54 45 20  |COPY> to DELETE |
00000c60  6f 72 69 67 69 6e 61 6c  20 74 65 78 74 22 27 22  |original text"'"|
00000c70  6e 6f 77 20 54 59 50 45  20 49 4e 20 4e 45 57 20  |now TYPE IN NEW |
00000c80  54 45 58 54 20 61 6e 64  20 52 45 54 55 52 4e 2e  |TEXT and RETURN.|
00000c90  22 0d 02 f8 48 e7 45 25  3d 30 20 f1 22 50 72 65  |"...H.E%=0 ."Pre|
00000ca0  73 73 20 3c 43 4f 50 59  3e 20 74 68 65 6e 20 45  |ss <COPY> then E|
00000cb0  6e 74 65 72 20 74 65 78  74 22 27 22 50 72 65 73  |nter text"'"Pres|
00000cc0  73 20 3c 52 45 54 55 52  4e 3e 20 77 68 65 6e 20  |s <RETURN> when |
00000cd0  74 65 78 74 20 6f 6b 2e  22 0d 03 02 23 f1 22 6d  |text ok."...#."m|
00000ce0  61 78 2e 20 31 32 20 63  68 61 72 61 63 74 65 72  |ax. 12 character|
00000cf0  73 2f 70 6f 73 69 74 69  6f 6e 2e 22 0d 03 0c 5f  |s/position."..._|
00000d00  e7 45 25 3d 30 20 f1 22  20 54 6f 20 45 4e 44 20  |.E%=0 ." To END |
00000d10  70 72 65 73 73 20 3c 43  4f 50 59 3e 20 28 69 66  |press <COPY> (if|
00000d20  20 74 65 78 74 20 61 74  20 63 75 72 73 6f 72 20  | text at cursor |
00000d30  70 6f 73 6e 2e 29 22 27  22 6f 72 20 3c 43 4f 50  |posn.)"'"or <COP|
00000d40  59 3e 20 61 6e 64 20 3c  52 45 54 55 52 4e 3e 20  |Y> and <RETURN> |
00000d50  69 66 20 6e 6f 20 74 65  78 74 22 0d 03 16 05 e1  |if no text".....|
00000d60  0d 03 20 41 dd f2 46 3a  ea 78 2c 79 2c 63 2c 72  |.. A..F:.x,y,c,r|
00000d70  2c 6b 2c 73 3a ef 35 3a  78 3d 31 31 32 3a 79 3d  |,k,s:.5:x=112:y=|
00000d80  39 37 30 3a e3 6b 3d 31  b8 35 3a 63 3d 6b 3a e3  |970:.k=1.5:c=k:.|
00000d90  73 3d 31 b8 31 32 3a 72  3d 73 3a f2 75 64 28 30  |s=1.12:r=s:.ud(0|
00000da0  29 0d 03 2a 14 e7 73 3e  36 20 63 3d 6b 2b 35 3a  |)..*..s>6 c=k+5:|
00000db0  72 3d 73 2d 36 0d 03 34  32 79 3d 79 2d 33 32 2a  |r=s-6..42y=y-32*|
00000dc0  5a 25 3a ec 78 2c 79 3a  f1 41 24 28 63 2c 72 29  |Z%:.x,y:.A$(c,r)|
00000dd0  3a ed 3a 78 3d 78 2b 32  32 34 3a 79 3d 39 37 30  |:.:x=x+224:y=970|
00000de0  3a ed 3a ef 34 3a e1 0d  03 3e 1e dd f2 64 28 74  |:.:.4:...>...d(t|
00000df0  69 29 3a e3 64 65 3d 31  20 b8 74 69 2a 31 30 30  |i):.de=1 .ti*100|
00000e00  30 3a ed 3a e1 0d 03 48  3b dd f2 65 3a 45 25 3d  |0:.:...H;..e:E%=|
00000e10  31 3a 52 24 3d 22 4d 22  3a 73 3d 31 3a 5a 25 3d  |1:R$="M":s=1:Z%=|
00000e20  31 3a 58 25 3d 39 36 3a  59 25 3d 39 33 38 3a 43  |1:X%=96:Y%=938:C|
00000e30  25 3d 31 3a 52 25 3d 31  3a f2 69 3a f2 63 3a e1  |%=1:R%=1:.i:.c:.|
00000e40  0d 03 52 1f dd f2 67 63  28 6e 25 29 3a 6d 25 3d  |..R...gc(n%):m%=|
00000e50  6e 25 3a f5 3a 69 24 3d  22 22 3a 69 24 3d be 0d  |n%:.:i$="":i$=..|
00000e60  03 5c 41 e7 6e 25 3d 37  3a fd 69 24 3e bd 36 34  |.\A.n%=7:.i$>.64|
00000e70  20 80 69 24 3c bd 39 31  20 84 69 24 3e bd 39 36  | .i$<.91 .i$>.96|
00000e80  20 80 69 24 3c bd 31 32  33 20 84 69 24 3d bd 31  | .i$<.123 .i$=.1|
00000e90  33 20 84 69 24 3d bd 31  32 37 20 8b 20 fd 20 b9  |3 .i$=.127 . . .|
00000ea0  0d 03 66 0d e7 69 24 3d  bd 31 33 20 e1 0d 03 70  |..f..i$=.13 ...p|
00000eb0  13 e7 69 24 3c 3e bd 31  32 37 20 4c 3d 4c 2b 31  |..i$<>.127 L=L+1|
00000ec0  0d 03 7a 0b e7 4c 3e 6e  25 20 e1 0d 03 84 12 e7  |..z..L>n% ......|
00000ed0  69 24 3d bd 31 32 37 20  f2 64 63 3a e1 0d 03 8e  |i$=.127 .dc:....|
00000ee0  18 e7 6e 25 3d 37 20 69  24 3d bd 28 97 28 69 24  |..n%=7 i$=.(.(i$|
00000ef0  29 84 33 32 29 0d 03 98  17 f1 69 24 3b 3a 69 6e  |).32).....i$;:in|
00000f00  70 24 3d 69 6e 70 24 2b  69 24 3a e1 0d 03 a2 07  |p$=inp$+i$:.....|
00000f10  dd f2 67 0d 03 ac 2c e7  52 24 3d 22 4d 22 20 84  |..g...,.R$="M" .|
00000f20  52 24 3d 22 6d 22 20 45  25 3d 30 3a ef 35 3a ec  |R$="m" E%=0:.5:.|
00000f30  58 25 2c 59 25 3a f1 22  2a 22 3a ef 34 3a e1 0d  |X%,Y%:."*":.4:..|
00000f40  03 b6 6c db 3a f1 22 50  72 65 73 73 20 27 43 27  |..l.:."Press 'C'|
00000f50  20 74 6f 20 63 6f 6e 74  69 6e 75 65 20 74 65 78  | to continue tex|
00000f60  74 20 65 6e 74 72 79 22  27 27 22 6f 72 20 27 4d  |t entry"''"or 'M|
00000f70  27 20 74 6f 20 72 65 74  75 72 6e 20 74 6f 20 6d  |' to return to m|
00000f80  65 6e 75 2e 22 3a f5 52  24 3d be 3a fd 52 24 3d  |enu.":.R$=.:.R$=|
00000f90  22 43 22 20 84 52 24 3d  22 4d 22 20 84 52 24 3d  |"C" .R$="M" .R$=|
00000fa0  22 63 22 20 84 52 24 3d  22 6d 22 0d 03 c0 16 e7  |"c" .R$="m".....|
00000fb0  52 24 3d 22 43 22 20 84  52 24 3d 22 63 22 20 f2  |R$="C" .R$="c" .|
00000fc0  69 0d 03 ca 25 e7 52 24  3d 22 4d 22 20 84 52 24  |i...%.R$="M" .R$|
00000fd0  3d 22 6d 22 20 ef 35 3a  ec 58 25 2c 59 25 3a f1  |="m" .5:.X%,Y%:.|
00000fe0  22 2a 22 3a ef 34 0d 03  d4 05 e1 0d 03 de 08 dd  |"*":.4..........|
00000ff0  f2 64 63 0d 03 e8 1c 4c  3d 4c 2d 31 3a e7 4c 3c  |.dc....L=L-1:.L<|
00001000  30 20 4c 3d 30 3a 69 6e  70 24 3d 22 22 3a e1 0d  |0 L=0:inp$="":..|
00001010  03 f2 18 ef 31 32 37 3a  69 6e 70 24 3d c0 69 6e  |....127:inp$=.in|
00001020  70 24 2c 4c 29 3a e1 0d  03 fc 05 3a 0d 04 06 0e  |p$,L):.....:....|
00001030  d9 23 30 3a 2a 46 58 34  2c 30 0d 04 10 0b db 3a  |.#0:*FX4,0.....:|
00001040  2a 44 49 52 24 0d 04 1a  29 e7 20 9f 3d 26 44 45  |*DIR$...). .=&DE|
00001050  20 f1 22 46 69 6c 65 20  6e 6f 74 20 66 6f 75 6e  | ."File not foun|
00001060  64 21 21 20 22 3b 3a f2  64 28 35 29 3a f9 0d 04  |d!! ";:.d(5):...|
00001070  24 14 e7 20 9f 3d 26 43  39 20 f2 65 72 28 31 29  |$.. .=&C9 .er(1)|
00001080  3a f9 0d 04 2e 3c e7 20  9f 3d 31 37 20 f9 3a 8b  |:....<. .=17 .:.|
00001090  20 e7 20 9f 3e 26 42 44  20 80 20 9f 3c 26 44 37  | . .>&BD . .<&D7|
000010a0  20 f2 65 72 28 32 29 3a  f9 20 8b 20 f6 3a f1 22  | .er(2):. . .:."|
000010b0  20 61 74 20 6c 69 6e 65  20 22 3b 9e 3a e0 0d 04  | at line ";.:...|
000010c0  38 0c dd f2 65 72 28 65  25 29 0d 04 42 29 e7 20  |8...er(e%)..B). |
000010d0  65 25 3d 31 20 f6 3a f1  27 22 52 45 4d 4f 56 45  |e%=1 .:.'"REMOVE|
000010e0  20 77 72 69 74 65 20 70  72 6f 74 65 63 74 20 74  | write protect t|
000010f0  61 62 22 0d 04 4c 20 e7  20 65 25 3d 32 20 f6 3a  |ab"..L . e%=2 .:|
00001100  f1 27 22 49 6e 73 65 72  74 20 6e 65 77 20 64 69  |.'"Insert new di|
00001110  73 63 22 0d 04 56 43 f1  22 61 6e 64 20 70 72 65  |sc"..VC."and pre|
00001120  73 73 20 52 45 54 55 52  4e 22 27 22 74 6f 20 53  |ss RETURN"'"to S|
00001130  41 56 45 20 6b 65 79 73  74 72 69 70 22 3b 3a f5  |AVE keystrip";:.|
00001140  20 77 61 69 74 3d a5 3a  fd 20 77 61 69 74 3d 31  | wait=.:. wait=1|
00001150  33 3a f2 6e 3a e1 0d 04  60 1d dd f2 66 73 3a ea  |3:.n:...`...fs:.|
00001160  20 58 25 2c 59 25 2c 43  25 2c 41 25 3a 2a 44 49  | X%,Y%,C%,A%:*DI|
00001170  52 20 4b 0d 04 6a 3e e3  74 25 3d 30 b8 31 32 88  |R K..j>.t%=0.12.|
00001180  34 3a 76 25 21 74 25 3d  30 3a ed 3a f2 6c 6c 3a  |4:v%!t%=0:.:.ll:|
00001190  f1 22 46 69 6c 65 73 20  6f 6e 20 64 69 73 63 3a  |."Files on disc:|
000011a0  2d 22 3a 6a 25 3d 36 34  3a f2 6b 3a 2a 44 49 52  |-":j%=64:.k:*DIR|
000011b0  24 0d 04 74 05 e1 0d 04  7e 52 dd f2 6c 6c 3a 76  |$..t....~R..ll:v|
000011c0  25 3f 31 3d 75 25 20 83  32 35 36 3a 76 25 3f 32  |%?1=u% .256:v%?2|
000011d0  3d 75 25 20 81 32 35 36  3a 76 25 3f 35 3d 31 3a  |=u% .256:v%?5=1:|
000011e0  58 25 3d 76 25 20 83 32  35 36 3a 59 25 3d 76 25  |X%=v% .256:Y%=v%|
000011f0  20 81 32 35 36 3a 43 25  3d 30 3a 41 25 3d 38 3a  | .256:C%=0:A%=8:|
00001200  d6 26 46 46 44 31 3a e1  0d 04 88 21 dd f2 6b 3a  |.&FFD1:....!..k:|
00001210  f5 3a f2 66 7a 3a fd 76  25 3f 35 3e 30 3a 3f 75  |.:.fz:.v%?5>0:?u|
00001220  25 3d 30 3a 3f 76 25 3d  30 0d 04 92 23 e7 20 6a  |%=0:?v%=0...#. j|
00001230  25 3d 36 34 20 f1 8a 31  36 2c 30 29 22 4e 6f 6e  |%=64 ..16,0)"Non|
00001240  65 21 22 3b 3a f2 64 28  35 29 3a e1 0d 04 9c 58  |e!";:.d(5):....X|
00001250  e7 20 6a 25 3d 36 35 20  f1 8a 30 2c 37 29 22 4f  |. j%=65 ..0,7)"O|
00001260  6e 6c 79 20 31 20 66 69  6c 65 2d 70 6c 65 61 73  |nly 1 file-pleas|
00001270  65 20 70 72 65 73 73 20  27 41 27 20 22 3b 3a 8b  |e press 'A' ";:.|
00001280  20 f1 8a 30 2c 37 29 22  57 68 69 63 68 20 66 69  | ..0,7)"Which fi|
00001290  6c 65 20 41 20 74 6f 20  22 3b bd 28 6a 25 29 22  |le A to ";.(j%)"|
000012a0  20 3f 22 3b 0d 04 a6 38  f5 3a 69 24 3d be 3a 69  | ?";...8.:i$=.:i|
000012b0  24 3d bd 28 97 28 69 24  29 80 26 44 46 29 3a fd  |$=.(.(i$).&DF):.|
000012c0  20 69 24 3e bd 36 34 20  80 20 69 24 3c bd 28 6a  | i$>.64 . i$<.(j|
000012d0  25 2b 31 29 20 84 69 24  3d bd 31 33 0d 04 b0 0d  |%+1) .i$=.13....|
000012e0  e7 69 24 3d bd 31 33 20  e1 0d 04 ba 1a 6b 25 3d  |.i$=.13 .....k%=|
000012f0  97 28 69 24 29 2d 36 34  3a 66 24 3d 66 6c 24 28  |.(i$)-64:f$=fl$(|
00001300  6b 25 29 0d 04 c4 05 e1  0d 04 ce 08 dd f2 66 7a  |k%)...........fz|
00001310  0d 04 d8 0e e7 20 76 25  3f 35 3e 30 20 e1 0d 04  |..... v%?5>0 ...|
00001320  e2 47 6a 25 3d 6a 25 2b  31 3a 3f 28 75 25 2b 31  |.Gj%=j%+1:?(u%+1|
00001330  2b 3f 75 25 29 3d 31 33  3a 6e 24 3d 24 28 75 25  |+?u%)=13:n$=$(u%|
00001340  2b 31 29 3a 66 6c 24 28  6a 25 2d 36 34 29 3d 6e  |+1):fl$(j%-64)=n|
00001350  24 3a f1 bd 6a 25 22 20  22 6e 24 22 20 22 3b 3a  |$:..j%" "n$" ";:|
00001360  f2 6c 6c 3a e1 0d ff                              |.ll:...|
00001367
20-05-88/KEYPRNT.m0
20-05-88/KEYPRNT.m1
20-05-88/KEYPRNT.m2
20-05-88/KEYPRNT.m4
20-05-88/KEYPRNT.m5