home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C128Software / LABELER+_S (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  18KB  |  503 lines

  1. 0 X$="XX":FORI=.TO3:X$=X$+X$:NEXT
  2. 1 X$=X$+"XXXXXXX":GOTO1502
  3. 2 *********************************
  4. 3 *  THE DISK LABELER+/SP1000     *
  5. 4 *  BY FRED LAYBERGER--NOV 1986  *
  6. 5 *  SEIKOSHA MODIFICATIONS       *
  7. 6 *  BY JUDY TOLAR--OCT 1986      *
  8. 7 *  OKAY TO USE BUT NOT TO SELL  *
  9. 8 *********************************
  10. 10 PRINT"[147]"CY$S2$BL$R$S1$:POKE53281,11
  11. 11 GOSUB60:Y=24:X=.:GOSUB20:PRINTBL$S1$CY$S3$;:POKE2023,160:POKE56295,3:RETURN
  12. 20 PRINTLEFT$("",Y)TAB(X);:RETURN
  13. 30 GOSUB47:Y=24:X=47:GOSUB20:PRINTR$CY$"  PRESS ' ^ ' TO RETURN    ";:I$=""
  14. 31 Y=24:X=20-LEN(P$)/2:GOSUB20:PRINTW$P$;:FORI=1TO200:NEXT
  15. 32 A=A+1AND1:POKE199,A:GETI$:IFI$=""THEN31
  16. 33 RETURN
  17. 45 Y=24:X=.:GOSUB20:PRINTBL$S3$R$" "O$;
  18. 46 Y=24:X=20-LEN(P$)/2:GOSUB20:PRINTP$;:RETURN
  19. 47 Y=24:X=40:GOSUB20:PRINTCY$S3$W$;:RETURN
  20. 48 GOSUB60:GOSUB45:GOSUB47:RETURN
  21. 50 Y=22:X=8:GOSUB20:PRINTR$W$"INSERT "P$" DISKETTE ";:RETURN
  22. 60 Y=3:X=.:GOSUB20:FORI=3TO23:PRINT"[155]                                      [146]"
  23. 61 NEXT:RETURN
  24. 75 POKE808,225:A1=PEEK(55):A2=PEEK(56):POKE55,PEEK(51):POKE56,PEEK(52):RETURN
  25. 77 A=FRE(.):POKE55,A1:POKE56,A2:POKE808,237:IFA=>3000THENRETURN
  26. 80 Y=10:X=11:GOSUB20:PRINT"[158]PROGRAM MAY PAUSE"
  27. 81 Y=11:X=9:GOSUB20:PRINT"[158]FOR GARBAGE COLLECTION":Z=FRE(.)
  28. 82 Y=10:X=11:GOSUB20:PRINT"[155]                  "
  29. 84 Y=11:X=9:GOSUB20:PRINT"[155]                      ":RETURN
  30. 90 REM ** ERR HANDLING
  31. 91 INPUT#15,ER,ER$,T,S:RETURN
  32. 92 GOSUB60:Y=22:X=9:GOSUB20:POKE53281,2:PRINTER;ER$;T;S:P$=S6$:GOSUB30:RETURN
  33. 93 P$=P1$:GOSUB48:CLOSE15:OPEN15,DD,15,"I"+MID$(STR$(DR),2,1)+":":GOSUB91:RETURN
  34. 94 GOSUB92:X=PEEK(152):FORI=1TOX:CLOSEPEEK(601):NEXT:RETURN
  35. 100 REM ** CHANGE
  36. 102 Y=24:X=47:GOSUB20:PRINTR$CY$"PRESS 'RETURN' TO CONTINUE";:IFUTHENRETURN
  37. 104 X=21-LEN(P$):GOSUB20:PRINTW$P$;:Y=24:X=21
  38. 106 GOSUB75
  39. 108 A$=J$+RIGHT$(A$,J-I):GOSUB20:PRINTR$A$;:GOSUB20:PRINTR$J$;:IFI<JTHENPRINT"[166]";
  40. 110 WAIT198,1:GETI$:POKE198,.:IFI$=CHR$(13)THEN134
  41. 112 IFI$=CHR$(19)ORI$=CHR$(34)ORI$=""ORI$=CHR$(131)ORI$=CHR$(147)ORI$=CHR$(141)THEN108
  42. 114 IFI<=1THENIFI$=CHR$(20)ORI$=CHR$(157)THENI=.:J$="":GOTO108
  43. 116 IFI$=CHR$(29)ANDI<JTHENI=I+1:J$=LEFT$(A$,I):GOTO108
  44. 118 IFI$=CHR$(148)THEN108
  45. 120 IFI$=CHR$(20)ORI$=CHR$(157)THENJ$=LEFT$(J$,LEN(J$)-1):I=I-1:GOTO108
  46. 122 IFI$=CHR$(17)THENPRINT"[145]":J$=LEFT$(J$,LEN(J$)):GOTO108
  47. 124 IFI$=CHR$(145)THENPRINT"[145]":J$=LEFT$(J$,LEN(J$)):GOTO108
  48. 126 IFKTHENIFI$="*"THEN130
  49. 128 IFSL<>1THENIFI$="*"THENJ=I+1:GOTO132
  50. 130 IFI=JTHENIFI$<>CHR$(13)THEN108
  51. 132 J$=J$+I$:I=I+1:GOTO108
  52. 134 GOSUB77:RETURN
  53. 200 REM *** PRINTER CODES
  54. 202 DEFFNR(X)=INT((IP/CL-INT(IP/CL))*CL+.5):SA=0:Z=.:IP=N
  55. 204 C3$=CHR$(14):C4$=CHR$(15)
  56. 206 H1$=E$+CHR$(120)+CHR$(0):H2$=E$+CHR$(120)+CHR$(1)
  57. 208 T1$=E$+"S"+CHR$(1)+E$+"3"+CHR$(18):T2$=E$+"T"+E$+"3"+CHR$(36)
  58. 210 A=2:ONPCGOTO212,214,216,218,220,221,222,224,226,228,230,232,234
  59. 212 E=1:B=.:C=1:D=.:CL=3:PL=1:RETURN
  60. 214 E=1:B=2:C=.:D=1:CL=3:PL=10:RETURN
  61. 216 E=1:B=2:C=.:D=1:CL=3:PL=16:RETURN
  62. 218 E=1:B=2:C=2:D=9:CL=3:PL=16:RETURN
  63. 220 E=8:B=4:C=.:D=1:CL=4:PL=28:RETURN
  64. 221 A=10:E=6:B=2:C=.:D=1:CL=3:PL=34:RETURN
  65. 222 E=1:B=2:C=.:D=1:CL=3:PL=14:RETURN
  66. 224 E=7:B=1:C=.:D=2:CL=4:PL=22:RETURN
  67. 226 E=7:B=1:C=.:D=1:CL=4:PL=28:RETURN
  68. 228 E=10:B=4:C=1:D=3:CL=4:PL=36:RETURN
  69. 230 E=19:B=8:C=1:D=1:CL=5:PL=30:GOTO238
  70. 232 E=19:B=8:C=1:D=1:CL=5:PL=30:T1$=E$+"G":T2$=E$+"H":GOTO238
  71. 234 A=2:E=19:B=6:C=1:D=1:CL=3:PL=48:P$=" * * * * * * * * * *"
  72. 236 SA=.:T1$=E$+CHR$(120)+CHR$(0):T2$=E$+CHR$(120)+CHR$(1)
  73. 238 X=INT(IP/CL):R=FNR(X):IFR>.THENIFR<=CLTHENX=X+1
  74. 240 RETURN
  75. 300 REM *** Y/N
  76. 302 U=3:Y=20:X=17-LEN(P$)/2:GOSUB20:PRINTP$:X=X+LEN(P$)+2
  77. 304 GOSUB20:PRINTW$"NO ":Y=Y+1:GOSUB20:PRINTR$"YES"
  78. 306 GOSUB952:IFI$="^"THENRETURN
  79. 308 I$="N":IFC=1THENI$="Y":POKES+B,160
  80. 310 RETURN
  81. 400 REM ** LOAD FILES
  82. 402 F$=":\*":U=1:GOSUB602:IFERTHENN=.:GOSUB430:RETURN
  83. 404 IFI$<>"^"THENIFNF<.THENP$=P7$:GOSUB30:RETURN
  84. 406 F$=V$(B/40+BB):GOSUB430:IFI$="^"THENRETURN
  85. 408 GOSUB93:OPEN1,DD,.,MID$(STR$(DR),2,1)+":"+F$+",S,R"
  86. 410 GOSUB91:IFERTHEN94
  87. 412 GOSUB75:INPUT#1,N:INPUT#1,DT$:INPUT#1,ID$:INPUT#1,BK$:INPUT#1,P
  88. 414 GOSUB2060:IFMATHEND$=ID$:ID$="\\"
  89. 416 F$=D$+ID$:I$="":Y=5:X=5:GOSUB20:PRINTW$R$"LOADING..."
  90. 418 Y=6:GOSUB20:PRINTNTAB(10)DT$"  "ID$
  91. 420 POKE850,76:POKE851,88:POKE852,3:POKE952,21
  92. 422 FORI=1TON:SYSDL:T$(I)=LEFT$(X$,20)
  93. 424 Y=7:GOSUB20:PRINTR$ITAB(10)T$(I):NEXT
  94. 426 GOSUB77:GOSUB91:IFERTHEN94
  95. 428 CLOSE1:BK$=RIGHT$("    "+BK$,4):RETURN
  96. 430 GOSUB75:FORI=1TONF:V$(I)="":NEXT:GOSUB77:RETURN
  97. 500 REM ** SAVE FILES
  98. 502 P$=S9$:GOSUB50:P$=S6$:GOSUB30:IFI$="^"THENRETURN
  99. 504 GOSUB93:F$="\"+LEFT$(DT$,15)
  100. 506 OPEN1,DD,8,MID$(STR$(DR),2,1)+":"+F$+",S,W"
  101. 508 GOSUB91:IFER=63THENP$=S5$:GOTO528
  102. 510 IFERTHEN94
  103. 512 Y=5:X=5:GOSUB20:PRINTW$R$"SAVING"N"[157] PROGRAMS"
  104. 514 GOSUB2060:IFMATHENID$=D$
  105. 516 PRINT#1,N:PRINT#1,DT$:PRINT#1,ID$:PRINT#1,BK$:PRINT#1,P
  106. 518 GOSUB2060:IFMATHENID$="\\"
  107. 520 FORI=1TON:PRINT#1,T$(I)
  108. 522 Y=7:GOSUB20:PRINTI;TAB(10)T$(I)
  109. 524 NEXT:GOSUB91:IFERTHEN94
  110. 526 CLOSE1:U=10:RETURN
  111. 528 CLOSE1:GOSUB48:GETI$
  112. 530 IFI$="Y"THENP$=P1$:GOSUB45:PRINT#15,"S"+MID$(STR$(DR),2,1)+":"+F$:GOTO504
  113. 532 IFI$<>"N"THEN528
  114. 534 Y=2:X=60-LEN(H$)/2:GOSUB20:PRINTR$W$H$;:RETURN
  115. 600 REM ** READ DIRECTORY
  116. 602 IFN<1THEN616
  117. 604 Y=10:X=12:GOSUB20:PRINTR$"[158]CAUTION..."W$
  118. 606 PRINTR$"ENTRIES CURRENTLY IN THE    "
  119. 608 PRINTR$"COMPUTER'S MEMORY ARE LOST  "
  120. 610 PRINTR$"WHEN A FILE IS LOADED UNLESS"
  121. 612 PRINTR$"IT HAS BEEN SAVED PRIOR TO  "
  122. 614 PRINTR$"LOADING THE NEW FILE.       "
  123. 616 P$=S8$:IFU>.THENP$=S9$
  124. 618 GOSUB50:P$=S6$:GOSUB30:IFI$="^"THENRETURN
  125. 620 IFU>.THENGOSUB93:GOTO624
  126. 622 P$=P1$:GOSUB48:CLOSE15:OPEN15,SD,15,"I"+MID$(STR$(SR),2,1)+":":P$=S8$
  127. 624 POKE850,32:POKE851,228:POKE852,255:POKE952,29
  128. 626 IFU>.THENOPEN1,DD,.,"$"+MID$(STR$(DR),2,1)+F$:GOTO630
  129. 628 OPEN1,SD,.,"$"+MID$(STR$(SR),2,1)+F$
  130. 630 GOSUB91:IFERTHEN94
  131. 632 IFN>1THENGOSUB75:FORI=.TON:T$(I)="":NEXT:GOSUB77:N=.:Z=FRE(.)
  132. 634 SYSDL:DT$=MID$(X$,7,16):ID$=MID$(X$,25,2)
  133. 636 H$=DT$+ID$:GOSUB534
  134. 638 REM ** SYS DIR READ
  135. 640 NF=-1:POKE850,76:POKE851,100:POKE852,3:POKE952,24:GOSUB75
  136. 642 SYSDL:B$=LEFT$(X$,1):C$=MID$(X$,2,1):S$=STR$(ASC(C$)*256+ASC(B$))
  137. 644 S$=RIGHT$("    "+S$,4):IFSTTHEN652
  138. 646 Y=5:X=9:GOSUB20:PRINTW$R$MID$(X$,3,19)S$
  139. 648 NF=NF+1:V$(NF)=MID$(X$,3,16)+MID$(X$,20,2)+S$
  140. 650 GOTO642
  141. 652 GOSUB77:GOSUB91:IFERTHEN94
  142. 654 BK$=S$:IFI$="^"THENN=.
  143. 656 CLOSE1:IFNF<.THENRETURN
  144. 658 H$=H$+BK$+" BKS FREE":GOSUB534
  145. 700 REM ** FILE SELECTION
  146. 702 GOSUB60:PRINTP4$P5$;:IFU=1THENY=25:X=.:GOSUB20:PRINT S0$;
  147. 704 S=1145:B=.:FORK=.TONFSTEP38
  148. 706 Y=4:X=2:FORJ=.TO18
  149. 708 SL=13:X=2:GOSUB766:Y=Y+1:IFY=23THENY=4
  150. 710 PRINT:IFJ+K=NFTHENJ=37
  151. 712 NEXT:X=2
  152. 714 POKES+B,62:POKE198,.:WAIT198,1:GETI$
  153. 716 IFI$="[145]"THENB=B-40:POKES+B+40,160:IFB=-40THENPOKES+B,160:B=18*40:GOTO722
  154. 718 IFI$=""THENB=B+40:POKES+B-40,160:IFB=19*40THENPOKES+B,160:B=.:GOTO722
  155. 720 POKES+B-40,160:IFI$<>""THEN726
  156. 722 IFS=1164THENPOKES+B,160:S=S-19:X=2:GOTO726
  157. 724 IFS=1145THENPOKES+B,160:S=S+19:X=22
  158. 726 IFU=1THENIFI$="E"ORI$="^"THENK=NF:NEXT:GOSUB776:U=.:RETURN
  159. 728 IFU=2THENIFI$="^"THENK=NF:NEXT:GOSUB776:U=.:RETURN
  160. 730 IFI$="E"THEN752
  161. 732 IFI$="S"THENIFU<>1THENGOSUB774:POKES+B,160:GOTO706
  162. 734 IFI$="^"THENK=NF:NEXT:GOSUB776:RETURN
  163. 736 IFNF>37THENIFI$="N"THENGOSUB60:B=.:S=1145:NEXT:GOTO702
  164. 738 IFI$="P"THENIFK>.THENK=K-38:B=.:S=1145:GOSUB60:GOTO706
  165. 740 IFI$<>CHR$(13)THEN714
  166. 742 BB=K:POKE198,.:Y=B/40+4:GOSUB20:IFS=1164THENBB=K+19:X=21
  167. 744 IFU=1THENIFV$(B/40+BB)>""THENRETURN
  168. 746 IFX(B/40+BB)=1THENX(B/40+BB)=.:PRINTO$;:GOTO750
  169. 748 IFX(B/40+BB)=.THENX(B/40+BB)=1:PRINTR$;
  170. 750 GOSUB20:GOSUB764:PRINT:GOTO714
  171. 752 P$=W$+P2$:GOSUB45:GOSUB47:GETI$:IFI$="Y"THENU=9:GOTO758
  172. 754 IFI$<>"N"THEN752
  173. 756 Y=24:X=.:GOSUB20:PRINTP4$P5$;:X=2:Y=Y-1:GOTO714
  174. 758 GOSUB75:P$=P1$:GOSUB48
  175. 760 N=1:FORI=.TONF:IFX(I)=1THENT$(N)=LEFT$(V$(I),17)+RIGHT$(V$(I),3):X(I)=.:N=N+1
  176. 762 V$(I)="":NEXT:GOSUB77:N=N-1:P=1:RETURN
  177. 764 PRINTW$LEFT$(V$(B/40+BB),SL)MID$(V$(B/40+BB),SL+4,1)RIGHT$(V$(B/40+BB),3);:RETURN
  178. 766 GOSUB20:IFX(K+J)=1THENPRINTR$;
  179. 768 PRINTW$LEFT$(V$(K+J),SL)MID$(V$(K+J),SL+4,1)RIGHT$(V$(K+J),3)O$;
  180. 770 IFX(K+J+19)=1THENPRINTR$;
  181. 772 PRINT""LEFT$(V$(K+J+19),SL)MID$(V$(K+J+19),SL+4,1)RIGHT$(V$(K+J+19),3):RETURN
  182. 774 FORI=.TONF:X(I)=X(I)+1AND1:NEXT:RETURN
  183. 776 P$=P1$:GOSUB48:FORI=.TONF:X(I)=.:V$(I)="":NEXT:RETURN
  184. 800 REM ** SORT
  185. 802 POKE1023,.:P$="SORTING"+STR$(N)+" FILES":GOSUB48:SYSML,T$(.):P=.
  186. 804 POKE1015,SD:POKE1016,DD:POKE1017,SR:POKE1018,DR:POKE1019,SA:RETURN
  187. 900 REM ** ADD/SEARCH
  188. 902 U=1:G=N+1:T$(G)=" BLANK RECORD   ? 00":GOSUB918:N=N+1:RETURN
  189. 904 P$="PROGRAM NAME?":J=15:A$="               ":J$="":I=.:GOSUB102:IFJ$=""THENRETURN
  190. 906 G=1:P$=P1$:GOSUB48
  191. 908 IFRIGHT$(J$,1)="*"THENJ$=LEFT$(J$,J-1)
  192. 910 J=LEN(J$):IFJ$=LEFT$(T$(G),J)THEN918
  193. 912 G=G+1:IFG=N+1THENGOSUB60:P$="FILE NOT FOUND":GOSUB30:RETURN
  194. 914 GOTO908
  195. 916 REM ** CHANGE ROUTINE
  196. 918 P$=BL$:GOSUB48:Y=15:X=10:GOSUB20:IFJ$="D"THEN940
  197. 920 PRINTR$W$P8$:PRINTTAB(X)T$(G)
  198. 922 Y=13:X=10:GOSUB20:PRINTR$"[152]CHANGE[146]FROMTO"
  199. 924 A$=T$(G)
  200. 926 P$=BL$:GOSUB45:GOSUB47
  201. 928 U=1:J$="":I=.:GOSUB102:U=.:PRINTW$;
  202. 930 I=.:J=20:J$="":Y=17:X=10:GOSUB106:J$=A$:I$=""
  203. 932 PRINT"[158]";:P$=LEFT$(P2$,12)+"?" :GOSUB302:IFI$="N"THEN918
  204. 934 IFK=2THENIFI$="^"THENRETURN
  205. 936 IFI$="^"THENN=N-1:RETURN
  206. 938 T$(G)=J$:P=1:RETURN
  207. 940 P$=P1$:GOSUB45:GOSUB75:FORI=GTON:T$(I)=T$(I+1):NEXT:GOSUB77:N=N-1:J$="":RETURN
  208. 950 REM *** CURSOR SELECT ROUTINE
  209. 952 B=.:S=1152:Y=24:X=8:GOSUB20:PRINTW$R$".....CRSR=MOVEMENT....."SPC(9)S0$;:C=N
  210. 954 IFU=1THENB=40*G:C=14:S=1193
  211. 956 IFU=2THENC=12:S=1267:IFPCTHENB=40*(PC-1)
  212. 958 IFU=3THENC=1:S=1784+18+LEN(P$)/2
  213. 960 IFI$="D"THENJ$="D"
  214. 962 :POKES+B,62:POKE198,.
  215. 964 GETI$:IFI$=""ORI$=""THENIFB+40=760ORB/40=>CTHENPOKES+B,160:B=-40
  216. 966 IFI$=""ORI$=""THENB=B+40:POKES+B,62:POKES+B-40,160
  217. 968 IFI$="[145]"ORI$="[157]"THENIFB-40=-40THENPOKES+B,160:B=760:IFC<19THENB=C*40+40
  218. 970 IFI$="[145]"ORI$="[157]"THENPOKES+B,160:B=B-40:POKES+B,62
  219. 972 IFI$="N"ORI$="P"ORI$="E"ORI$="S"ORI$="^"THENRETURN
  220. 974 IFUTHENIFI$=CHR$(13)THENC=B/40:U=.:RETURN
  221. 976 IFI$<>CHR$(13)THEN964
  222. 978 IFN<19THENC=B/40:GOTO982
  223. 980 C=J-18+B/40:IFC<.THENC=N-ABS(C)+1
  224. 982 IFCTHENG=C:K=2:GOSUB918:C=G
  225. 984 J=C-1:IFN<19THENJ=-1
  226. 986 GOSUB10:RETURN
  227. 1000 REM ** MASTER FILE
  228. 1002 POKE53280,13:F$=":\*":U=2:GOSUB602:IFERTHENN=.
  229. 1004 IFI$="^"OR ER THENRETURN
  230. 1006 IFNF<.THENP$=P7$:GOSUB30:N=.:RETURN
  231. 1008 IFT$(1)=""THENRETURN
  232. 1010 DT$="\MASTER         ":ID$="\\":MA=1
  233. 1012 I=.:FORK=1TON:OPEN1,DD,.,MID$(STR$(DR),2,1)+":"+T$(K)+",S,R"
  234. 1014 INPUT#1,J:I=I+J:CLOSE1:NEXT
  235. 1016 BK$=RIGHT$("    "+STR$(I),4):RETURN
  236. 1020 REM ** PRINT MASTER
  237. 1022 IFP=2THEN1052
  238. 1024 P$=BL$:GOSUB48:P$="SET/RESET OPTIONS?":GOSUB302:IFI$="^"THENRETURN
  239. 1026 IFI$="Y"THENGOSUB1152
  240. 1028 P$=BL$:GOSUB48:V$(.)=DT$+ID$+BK$+STR$(P):P$=P1$:GOSUB45
  241. 1030 GOSUB75:FORK=1TON:V$(K)=T$(K):T$(K)="":NEXT:GOSUB77:M=N
  242. 1032 P$=S9$:GOSUB50:P$=S6$:GOSUB30:IFI$="^"THEN1042
  243. 1034 FORK=1TOM:F$=V$(K):GOSUB408:IFERTHENK=M:GOTO1040
  244. 1036 GOSUB60:GOSUB1206:IFI$="^"THENK=M
  245. 1038 GOSUB75:FORI=1TON:T$(I)="":NEXT:GOSUB77
  246. 1040 NEXT
  247. 1042 P$=P1$:GOSUB48:DT$=LEFT$(V$(.),16):ID$=MID$(V$(.),17,2):BK$=MID$(V$(.),19,4)
  248. 1044 P=VAL(RIGHT$(V$(.),1))
  249. 1046 GOSUB75:FORK=1TOM:T$(K)=V$(K):V$(K)="":NEXT:N=M:CLOSE15:GOSUB77:RETURN
  250. 1050 REM *** PRINT/ALPHABETIZE MASTER
  251. 1052 IFVAL(BK$)<1201THEN1058
  252. 1054 P$=BL$:GOSUB48:Y=20:X=4:GOSUB20:PRINTR$"[158]TOO MANY RECORDS - 1200 MAXIMUM!"
  253. 1056 P$=S6$:GOSUB30:RETURN
  254. 1058 PRINT"[158]";:P$="HAVE YOU SAVED[153] MASTER [158]FILE?":GOSUB302:IFI$="N"ORI$="^"THENRETURN
  255. 1060 POKE1015,SD:POKE1016,DD:POKE1017,SR:POKE1018,DR:POKE1019,SA:POKE49152,.:POKE53281,15
  256. 1062 PRINT"[147]LOAD"CHR$(34)"DISK LAB.MSORT/S"CHR$(34)","DD:PRINT"RUN"
  257. 1064 PRINT"[151]";:POKE198,8:FORI=1TO7:POKE630+I,13:NEXT:STOP
  258. 1100 REM ** PRINT TO SCREEN
  259. 1102 J=-1:GOSUB60:GOSUB2060
  260. 1104 P$=DT$+ID$+STR$(N)+" PROGRAMS":IFN<1ORI$="^"THENRETURN
  261. 1106 Y=2:X=60-LEN(P$)/2:GOSUB20:PRINTW$R$P$:GOTO1116
  262. 1108 P$=P6$:G=1:IFLEFT$(DT$,3)="\MA"THENP$=MID$(P6$,19):G=.
  263. 1110 GOSUB45:GOSUB30:IFI$="^"THENRETURN
  264. 1112 IFGTHENIFI$="C"ORI$="D"THENP$=BL$:GOSUB45:GOSUB952:GOTO1104
  265. 1114 IFN<19THEN1110
  266. 1116 GOSUB60:X=.:Y=4:GOSUB20
  267. 1118 IFI$<>"P"THENJ=J+1:GOTO1122
  268. 1120 J=J-37:IFJ<.THENJ=N-ABS(J)+1:IFJ<.THENJ=.
  269. 1122 IFJ>NTHENJ=.
  270. 1124 IFJ=.THEN1132
  271. 1126 PRINTTAB(9)W$T$(J):IFN<19THENIFJ=NTHEN1108
  272. 1128 IFPEEK(214)<22THENJ=J+1:GOTO1122
  273. 1130 GOTO1108
  274. 1132 PRINTW$R$""P8$
  275. 1134 GOTO1128
  276. 1150 REM ** PRINT OPTIONS
  277. 1152 P$=BL$:GOSUB48:P$="PRINT OPTIONS":Y=4:X=13:GOSUB20:PRINTCY$P$
  278. 1154 PRINTTAB(6)"VERTICAL X HORIZONTAL SIZE"
  279. 1156 X=4:Y=7:FORI=1TO13:GOSUB20:PRINTR$W$MID$(STR$(I)+"  ",2,2)O$PC$(I):Y=Y+1:NEXT
  280. 1158 U=2:GOSUB952:IFI$="^"THENRETURN
  281. 1160 PC=C+1:P$=BL$:GOSUB48
  282. 1162 P$="COMMENT/DATE/ETC...":J=17:A$=LEFT$("                 ",J-LEN(D$))
  283. 1164 GOSUB45:J$=D$:I=LEN(D$)
  284. 1166 Y=22:X=5:GOSUB20:PRINT"[159]NO COMMAS,SEMICOLONS OR COLONS":GOSUB102:D$=J$
  285. 1168 RETURN
  286. 1200 REM ** PRINT TO PRINTER
  287. 1202 P$=BL$:GOSUB48:P$="SET/RESET OPTIONS?":GOSUB302:IFI$="^"THENRETURN
  288. 1204 IFI$="Y"THENGOSUB1152
  289. 1206 IFK>1THEN1212
  290. 1208 P$=BL$:GOSUB48:Y=18:X=4:GOSUB20:PRINTR$"[158]PREPARE PRINTER & POSITION LABELS"
  291. 1209 OPEN10,4,10:PRINT#10:CLOSE10
  292. 1210 P$=S6$:GOSUB30:IFI$="^"THENRETURN
  293. 1212 P$=T3$:E$=CHR$(27):S=4:CLOSES:OPENS,S,SA:GOSUB202:IFMTHENIFPC>10THENGOSUB1328
  294. 1214 IFK>1THENP$=""
  295. 1216 PG=PL:PRINT#S,E$"U"CHR$(0)SPC((A/2)-1);:FORI=1TOCL:PRINT#S,P$SPC(B/A);:NEXT:PRINT#S
  296. 1218 IFK>1THEN1224
  297. 1220 P$="TEST ALIGNMENT AGAIN?":GOSUB302:S=4:P$=T3$:GOSUB202:IFI$="^"THENCLOSES:RETURN
  298. 1222 IFI$="Y"THENLN=.:GOTO1212
  299. 1224 PRINT#S,H2$;:IFCTHENFORI=1TOC:PRINT#S:NEXT
  300. 1226 P$=S4$:GOSUB48:Y=4:X=5:GOSUB20:IFPC>1THEN1234
  301. 1228 PRINT#S,C3$SPC(E)DT$C4$:GETI$:IFI$="^"THEN1326
  302. 1230 PRINT#S,C3$SPC(E)ID$" "MID$(STR$(VAL(BK$)),2)" BLKS FREE"C4$
  303. 1232 PRINT#S,""SPC(E*3)D$H2$:PRINT#S:GOTO1326
  304. 1234 PRINT#S,C3$SPC(E/2)DT$ID$C4$:GETI$:IFI$THEN1326
  305. 1236 PRINT#S,""SPC(E)MID$(STR$(VAL(BK$)),2)" BLKS FREE - "D$H2$;
  306. 1238 X=INT(IP/CL):IFN>PG*CLTHENX=PL:IP=PG*CL
  307. 1239 OPEN13,4,13:PRINT#13:CLOSE13:REM **CONDENSED PRINT MODE
  308. 1240 C3=2*X:C4=3*X:C5=4*X:R=FNR(X):IFR>.THENIFR<=CLTHENX=X+1
  309. 1242 C3=2*X:C4=3*X:C5=4*X:ONCLGOTO1244,1246,1250,1258,1268
  310. 1244 C3=IP:C4=IP:C5=IP:GOTO1278
  311. 1246 IFRTHENC3=2*X-1
  312. 1248 GOTO1278
  313. 1250 ONRGOTO1254,1256:REM **CL=3
  314. 1252 GOTO1278
  315. 1254 C3=X:C4=2*X-1:GOTO1278
  316. 1256 C4=3*X-1:GOTO1278
  317. 1258 ONRGOTO1262,1264,1266:REM **CL=4
  318. 1260 GOTO1278
  319. 1262 C3=2*X-1:C4=3*X-2:GOTO1278
  320. 1264 C4=3*X-1:GOTO1278
  321. 1266 GOTO1278
  322. 1268 ONRGOTO1272,1274,1276:REM **CL=5
  323. 1270 GOTO1278
  324. 1272 C3=2*X-1:C4=3*X-2:C5=4*X-3:GOTO1278
  325. 1274 C4=3*X-1:C5=4*X-2:GOTO1278
  326. 1276 C5=4*X-1
  327. 1278 CLOSES:OPENS,4,SA:PRINT#S,T1$
  328. 1280 IFDTHENFORI=1TOD:PRINT#S:NEXT
  329. 1282 PRINT#S,""SPC(A-2);:FORI=1TOCL-1:PRINT#S,P9$SPC(B);:NEXT:PRINT#S,P9$
  330. 1284 IFPC<11THENIFX<PL-1THENFORI=1TOINT((PL-X)/2):PRINT#S:NEXT
  331. 1286 IFZ>.THENC3=C3+Z:C4=C4+Z:C5=C5+Z:IFN<=PG*CLTHENIP=IP+Z
  332. 1288 FORI=1TOX:GETI$:IFI$="^"THENI=X:NEXT:GOTO1326
  333. 1290 PRINT#S,""SPC(A-2)T$(I+Z)SPC(B);
  334. 1292 IFC3=>I+X+ZTHENPRINT#S,T$(I+X+Z)SPC(B);
  335. 1294 IFI+C3>IPTHENPRINT#S:GOTO1306
  336. 1296 IFC4=>I+C3THENPRINT#S,T$(I+C3)SPC(B);
  337. 1298 IFI+C4>IPTHENPRINT#S:GOTO1306
  338. 1300 IFC5=>I+C4THENPRINT#S,T$(I+C4)SPC(B);
  339. 1302 IFI+C5>IPTHENPRINT#S:GOTO1306
  340. 1304 IFC5+X=>I+C5THENPRINT#S,T$(I+C5)
  341. 1306 NEXT:IFPC<11THENIFX<PL-1THENFORI=1TOINT((PL-X)/2):PRINT#S:NEXT
  342. 1308 IFPC<11THENIFXAND1THENPRINT#S
  343. 1310 PRINT#S,""SPC(A-2):FORI=1TOCL-1:PRINT#S,P9$SPC(B);:NEXT:IFN<=PG*CLTHENPRINT#S,P9$:GOTO1314
  344. 1312 PRINT#S,"-----CONTINUED------"
  345. 1314 IFPC=7ORPC=8THENFORI=1TO5:PRINT#S:NEXT
  346. 1316 IFN<=PG*CLTHEN1326
  347. 1318 CLOSES:OPENS,4:PRINT#S,T2$;H1$
  348. 1320 IFCTHENFORI=1TOC:PRINT#S:NEXT
  349. 1322 PRINT#S,""SPC(A-2)DT$ID$" CONTINUED...":PRINT#S,SPC(A-2)"PAGE#"(PG/PL)+1" - "D$H2$;
  350. 1324 Z=PG*CL:IP=N-(PG*CL):PG=PG+PL:GOTO1238
  351. 1326 CLOSES:OPENS,4:PRINT#S,T2$;:CLOSES:RETURN
  352. 1328 J=66:JJ=7:IFPC=11THENJ=132:JJ=10
  353. 1330 IFX+JJ<J-LNTHEN1336
  354. 1332 IFPC=11THENPRINT#S,E$"3"CHR$(18);
  355. 1334 FORI=1TOJ-LN:PRINT#S:NEXT:LN=.:IFPC=11THENPRINT#S,E$"3"CHR$(36);
  356. 1336 LN=LN+JJ+X:IFLN=>JTHENLN=.
  357. 1338 RETURN
  358. 1400 REM ** EQUIP SETUP OPTIONS
  359. 1402 GOSUB48:Z=.:U=.:I=.:P$=R$+"[155]   [157][157][157][157][157]"+O$+W$
  360. 1404 SD=SD+I:GOSUB1438:Y=7:X=4:GOSUB20:PRINTW$"SOURCE DEVICE #:",P$SD:IFUTHENRETURN
  361. 1406 DD=DD+I:GOSUB1438:Y=9:GOSUB20:PRINT"MASTER DEVICE #:",P$DD:IFUTHENRETURN
  362. 1408 SR=SR+I:GOSUB1438:Y=11:GOSUB20:PRINT"SOURCE DRIVE #:",,P$SR:IFUTHENRETURN
  363. 1410 DR=DR+I:GOSUB1438:Y=13:GOSUB20:PRINT"MASTER DRIVE #:",,P$DR:IFUTHENRETURN
  364. 1412 SA=SA+I:Y=15:GOSUB20:PRINT"SECONDARY ADDRESS:",P$SA:IFUTHENRETURN
  365. 1414 Y=19:GOSUB20:PRINTR$"USE CURSOR KEYS TO SELECT"
  366. 1416 Y=21:GOSUB20:PRINTW$R$"USE +/- KEYS TO CHANGE"
  367. 1418 GOSUB47:Y=24:X=47:GOSUB20:PRINTR$CY$"  PRESS ' ^ ' TO RETURN    ";:IFZ=1THENRETURN
  368. 1420 Y=7:U=1
  369. 1422 I=.:X=28:GOSUB20:PRINTR$W$">>":X=4:GETI$:IFI$="-"THENI=I-1:GOSUB1434
  370. 1424 IFI$="+"THENI=I+1:GOSUB1434
  371. 1426 IFI$=""ORI$=""THENX=25:GOSUB20:PRINTP$:Y=Y+2:U=U+1:X=28:I=.:IFY>15THENY=7:U=1
  372. 1428 IFI$="[145]"ORI$="[157]"THENX=25:GOSUB20:PRINTP$:Y=Y-2:U=U-1:X=28:I=.:IFY<7THENY=15:U=5
  373. 1430 IFI$="^"ORI$=CHR$(13)THEN1456
  374. 1432 GOTO1422
  375. 1434 ONUGOSUB1404,1406,1408,1410,1412
  376. 1436 RETURN
  377. 1438 IFSD<8THENSD=15
  378. 1440 IFSD>15THENSD=8
  379. 1442 IFDD<8THENDD=15
  380. 1444 IFDD>15THENDD=8
  381. 1446 IFSR<.THENSR=1
  382. 1448 IFSR>1THENSR=.
  383. 1450 IFDR<.THENDR=1
  384. 1452 IFDR>1THENDR=.
  385. 1454 RETURN
  386. 1456 IFSD=8ANDDD=8THENRETURN
  387. 1458 P$=BL$:GOSUB48:P$="CHANGE DEVICE #?":GOSUB302:IFI$="N"ORI$="^"THENRETURN
  388. 1460 P$=BL$:GOSUB48:Y=17:X=7:GOSUB20:PRINTR$"[158]TURN OFF ALL DRIVES EXCEPT"
  389. 1462 Y=Y+1:GOSUB20:PRINTR$"  THE ONE TO BE CHANGED.  "
  390. 1464 P$="OLD DEVICE # ":J=2:A$="  ":J$="8":I=1:GOSUB102:IFJ$=""THENRETURN
  391. 1466 OD=VAL(J$):IFOD<8OROD>15THEN1464
  392. 1468 P$="NEW DEVICE # ":J=2:A$="  ":J$="9":I=1:GOSUB102:IFJ$=""THENRETURN
  393. 1470 ND=VAL(J$):IFND<8ORND>15THEN1468
  394. 1472 CLOSE15:OPEN15,OD,15
  395. 1474 PRINT#15,"M-W"CHR$(119)CHR$(.)CHR$(2)CHR$(ND+32)CHR$(ND+64):P$=BL$:GOSUB48
  396. 1476 Y=20:X=10:GOSUB20:PRINTR$"[158]TURN ON OTHER DRIVE!":P$=S6$:GOSUB30:CLOSE15:RETURN
  397. 1500 REM ** INITILIZE VARIABLES
  398. 1502 PRINTCHR$(142):ML=PEEK(45)+256*PEEK(46)-262-3
  399. 1504 RESTORE:R$="":O$="[146]":BL$="":CY$="[159]":W$="":POKE53280,7:POKE53281,11
  400. 1506 DIMV$(152),T$(152),M$(15),PC$(13):DL=830:SD=8:DD=8:SA=.:CL=3
  401. 1508 IFPEEK(1015)<>.THENSD=PEEK(1015):DD=PEEK(1016):SR=PEEK(1017):DR=PEEK(1018):SA=PEEK(1019)
  402. 1510 DIMX(152)
  403. 1512 READM$(.):FORI=1TO15:READM$(I):M$(I)=LEFT$(M$(I)+"                  ",18):NEXT
  404. 1514 FORI=1TO13:READPC$(I):NEXT:D$="DISK LABELER+"
  405. 1516 S1$="                                        [146]"
  406. 1518 S2$="[159]         THE DISK LABELER+/SP1000       [146]"
  407. 1520 S3$="                                       [146]"
  408. 1522 S4$="PRESS & HOLD '^' TO STOP PRINTING"
  409. 1524 S5$="[158]REPLACE EXISTING FILE (Y/N)?
  410. 1526 S6$[178]"PRESS A KEY TO CONTINUE"
  411. 1528 S7$[178]"SELECT ONE"
  412. 1530 S8$[178]"SYSSOURCE"
  413. 1532 S9$[178]"SYSMASTER"
  414. 1534 P1$[178]"WORKING"
  415. 1536 P2$[178]"SELECTION OK (Y/N)?"
  416. 1538 P3$[178]"NO FILES AVAILABLE!"
  417. 1540 P4$[178]"CRSR=MOVEMENT  N=NEXT  P=PREVIOUSWAIT"
  418. 1542 P5$[178]"RETURN=SELECT S=SWAP E=END ^=MENUWAIT"
  419. 1544 S0$[178]"      RETURN=SELECT  ^=MENU      WAIT"
  420. 1546 P6$[178]"C=CHANGE D=DELETE P=PREVIOUS OTHERS=NEXT"
  421. 1548 P7$[178]"NO DISK LABELER FILES FOUND"
  422. 1550 P8$[178]"FILENAME        T SZ"
  423. 1552 P9$[178]"--------------------"
  424. 1554 T3$[178]" * * * * * *"
  425. 1556 [141]10:Y[178]3:X[178]2:[141]20:[153]W$R$" MODIFIED/C64/1541/SEIKOSHA SP1000VC"
  426. 1558 [135]P$:Y[178]5:X[178]4:[141]20:[153]"SYS"R$P$:X[178]2
  427. 1560 [129]Y[178]7[164]13:[135]P$:[141]20:[153]W$R$P$:[130]
  428. 1562 [129]Y[178]16[164]22:[135]P$:X[178]20[171][195](P$)[173]2:[141]20:[153]P$:[130]
  429. 1564 [139][194](DL)[178]160[167]1568
  430. 1566 [159]1,8,.,"0:DISK LAB.DIR,S,R":[129]I[178]DL[164]DL[170]148:[132]1,A:[151]I,A:[130]:[160]1
  431. 1568 Z[178][184](.):I$[178]"":P$[178]" INSTRUCTIONS (Y/N)? ":[151]198,.:[141]30:[139]I$[179][177]"Y"[167]2000
  432. 1570 [139]C[167]P$[178]S9$:[141]50:P$[178]S6$:[141]30:[139]I$[178]"^"[167][142]
  433. 1572 [160]1:[159]15,DD,15:S[178]3:[159]1,DD,.,[202]([196](DR),2,1)[170]":DISK LAB.INST,S,R"
  434. 1574 [141]91:[139]ER[167][141]94:[141]10:[137]1568
  435. 1576 [141]60:X[178].:Y[178]4:[141]20:[139]S[178]4[167][152]S
  436. 1578 [132]1,P$:[139]P$[178]"END"[167]P$[178]S6$:[141]30:[137]1590
  437. 1580 [139]I$[178]"^"[167]1590
  438. 1582 [153]R$"LIST"P$:[139]S[178]4[167][152]S,P$
  439. 1584 [139][194](214)[179]22[167]1578
  440. 1586 P$[178]S6$:[141]30:[139]I$[178]"P"[167]S[178]4:[160]S:[159]S,4,SA
  441. 1588 [137]1576
  442. 1590 [160]1:[160]S:[139]U[178]1[167][142]
  443. 2000 [143] ** MAIN MENU
  444. 2002 [141]2060:[141]10:X[178][194](152):[129]I[178]1[164]X:[160][194](601):[130]:P0$[178]"SORTED"
  445. 2004 G[178]2:[139]U[177]8[167]G[178]4:[139]U[178]10[167]G[178].
  446. 2006 [151]198,.:K[178].:M[178].:LN[178].:J$[178]"":F$[178]DT$
  447. 2008 [139]N[179]1[167]N[178].:DT$[178]"NO FILE NAME   ":ID$[178]"?":BK$[178]"00":P[178]1:G[178].
  448. 2010 Y[178]4:X[178]10:[141]20:[153]M$(.):Y[178]5:[139]BK$[178]""[167]BK$[178]" ?"
  449. 2012 [129]I[178]1[164]15:P$[178]R$:[139]N[179]1[167][139]I[178]3[176]I[178]4[176]I[178]5[176]I[178]6[176]I[178]8[167]P$[178]O$
  450. 2014 [139]I[178]6[167][139]P[178].[167]P$[178]O$
  451. 2016 [139]I[178]7[176]I[178]8[167][139]MA[167]P$[178]O$
  452. 2018 [139]I[178]11[167][139]P[178]2[167]P$[178]O$
  453. 2020 [139]I[178]10[176]I[178]11[167][139]MA[178].[167]P$[178]O$
  454. 2022 [141]20:[153]W$P$[201]("  "[170][196](I),2)W$;
  455. 2024 [153]O$M$(I):Y[178]Y[170]1:[130]:[139]P[167]P0$[178]"UNSORTED":[139]P[178]2[167]P0$[178]"ALPHABETIZED"
  456. 2026 P$[178]DT$:[139]N[177].[167]P$[178]P$[170]ID$[170]BK$[170]" BKS FREE"
  457. 2028 Y[178]21:X[178]20[171][195](P$)[173]2:[141]20:[153]W$P$:P$[178][196](N)[170]" PROGRAMS : "[170]P0$
  458. 2030 Y[178]22:X[178]20[171][195](P$)[173]2:[141]20:[153]R$P$
  459. 2032 F$[178]""::U[178]1:[141]952:G[178]C:[139]U[167]2050
  460. 2034 C[178]C[170]1:[139]C[178]1[176]C[178]2[176]C[178]7[176]C[178]9[176]C[178]12[176]C[178]13[176]C[178]14[176]C[178]15[167]2042
  461. 2036 [139]C[178]6[167][139]P[178].[167][151]S[170]B,160:[137]2032
  462. 2038 [139]C[178]10[176]C[178]11[167][139]MA[178].[167][151]S[170]B,160:[137]2032
  463. 2040 [139]N[179]1[167][151]S[170]B,160:[137]2032
  464. 2042 [139]C[178]7[176]C[178]8[167][139]MA[167][151]S[170]B,160:[137]2032
  465. 2044 [139]C[178]11[167][139]P[178]2[167][151]S[170]B,160:[137]2032
  466. 2046 P$[178]BL$:[141]48:[151]53280,7:[139]C[177]2[167][141]2060
  467. 2048 [145]C[141]602,402,1102,1202,502,802,902,904,1002,1022,1052,1150,1402,1570,2052
  468. 2050 [141]2060:[137]2002
  469. 2052 [139]N[178].[167]2058
  470. 2054 [153]"SYS";:P$[178]"HAVE YOU SAVED CURRENT SYSFILE?"
  471. 2056 [141]302:[139]I$[178]"N"[176]I$[178]"^"[167][142]
  472. 2058 [153]"LOADHAPPY COMPUTING!!":[156]:[128]
  473. 2060 [139][200](DT$,7)[178]"\MASTER"[167][151]53280,13:MA[178]1:[142]
  474. 2062 MA[178].:[151]53280,7:[142]
  475. 5000 [143] ** MENU CHOICES
  476. 5002 [131]"SYS     MAIN MENU      ","CREATE A NEW FILE","LOAD A FILE"
  477. 5004 [131]"VIEW/EDIT ENTRIES","PRINT ENTRIES","SAVE ENTRIES"
  478. 5006 [131]"SORT ENTRIES","ADD A SINGLE ITEM","SEARCH BY NAME"
  479. 5008 [131]"CREATE MASTER FILE","PRINT MASTER FILE","ALPHABETIZE MASTER"
  480. 5010 [131]"PRINT OPTIONS","EQUIPMENT SETUP","INSTRUCTIONS","EXIT TO BASIC"
  481. 5012 [143] ** PRINT OPTIONS
  482. 5014 [131]"  15/16 X 3 1/2  HEADER INFO ONLY"
  483. 5016 [131]"1  7/16 X 4      MAILING LABEL","1 15/16 X 4      MAILING LABEL"
  484. 5018 [131]"2 15/16 X 4     SHIPPING LABEL","2 15/16 X 5 3/4 SHIPPING LABEL"
  485. 5019 [131]"3  1/2  X 4 1/2 SHIPPING LABEL"
  486. 5020 [131]"2  1/16 X 4  ROTARY FILE CARD","3 X 5        ROTARY FILE CARD"
  487. 5022 [131]"3 X 5        FILE CARD","4 X 6        FILE CARD"
  488. 5024 [131]"5/SUP ACROSS PAGE","5/CON ACROSS PAGE","3/REG ACROSS PAGE"
  489. 5026 [131]"**** USER SUPPORTED SOFTWARE ****"
  490. 5028 [131]"YOU ARE ENCOURAGED TO COPY AND SHARE"
  491. 5030 [131]"THIS PROGRAM WITH OTHER USERS ON THE"
  492. 5032 [131]"CONDITIONS THAT THE PROGRAM IS NOT  "
  493. 5034 [131]"DISTRIBUTED IN MODIFIED FORM, THAT  "
  494. 5036 [131]"NO FEE OR CONSIDERATION IS CHARGED, "
  495. 5038 [131]"AND THAT THIS NOTICE IS NOT BYPASSED"
  496. 5040 [131]"OR REMOVED.                         "
  497. 5042 [131]" IF YOU FIND THIS PROGRAM TO BE   "
  498. 5044 [131]" OF VALUE, A CONTRIBUTION TO THE  "
  499. 5046 [131]"   AUTHOR WILL BE APPRECIATED.    ":[131]"
  500. 5048 DATA"FREDIE J. LAYBERGER"
  501. 5050 DATA"14524 'N' STREET   "
  502. 5052 DATA"OMAHA, NE 68137    "
  503.