Listing of file='HLDA010B' on disk='vmedia/letter_editor.wvd.zip'
# Sector 66, program filename = 'HLDA010B' 0010 REM ***** HLDA010B - REVISED 1540 08/18/76 ***** COPYRIGHT WANG LABS, 197 6 0030 DIM Q$64,Q1$64,Q2$64,B1$2,B2$2,B$(80)1,F$8,A$2,Z$1,N$(16),E$(1)2,G$(1)10 : INIT(00)A$ : PRINT HEX(03),,"I N I T I A L I Z E V O L U M E" 0110 GOSUB '32("MOUNT THE APPROPRIATE DISK AND PRESS RETURN (EXEC).",0) 0112 DATA LOAD BA T#2,(0,A)N$() : B1$=HEX(03EF) : ADDC(STR(N$(1),3,2),B1$) : IF STR(N$(1),3,2)<=STR(N$(1),5,2)THEN 120 : GOSUB '34("DISK IS FULL. MOUNT ANOTHER DISK.") : GOTO 112 0120 GOSUB '32("ENTER THE VOLUME NAME.",8) 0130 IF Q$="STOP"THEN 410 : IF Q$="stop"THEN 410 : GOSUB 5120 : IF I=0THEN 180 : GOSUB '34("VOL. NAME IS ALREADY CATALOGED.") : GOTO 130 0180 DATA SAVE DC OPEN T#2,1007,Q$ : DATA LOAD DC OPEN T#2,Q$ : DSKIP #2,1005S : DATA SAVE DC #2,END : LIMITS T#2,Q$,U,B,C : A=U : FOR I=1TO 199 : BIN(T$(I))=I+1 : NEXT I : T$(200)=HEX(00) : MAT COPY T$()TO N$() : STR(N$(13),9)=HEX(01C8) : GOSUB '32("ENTER LINE LENGTH (CRT SIZE) FOR VOLUME - 64 OR 80",2) 0293 IF Q$="64"THEN 297 : IF Q$="80"THEN 297 : GOSUB '34("INVALID LINE LENGTH.") : GOTO 293 0297 CONVERT Q$TO I : BIN(STR(N$(13),11))=I : DATA SAVE BA T#2,(A,A)N$() : INIT(20)N$() : FOR I=1TO 4 : DATA SAVE BA T#2,(A,A)N$() : NEXT I : GOSUB '32("DO YOU WISH TO INITIALIZE MORE VOLUMES? (Y/N)",1) 0360 IF Q$="Y"THEN 110 : IF Q$="y"THEN 110 : IF Q$="N"THEN 410 : IF Q$="n"THEN 410 : GOSUB '34("INVALID REPLY.") : GOTO 360 0400 DEFFN'15 0410 LOAD DC T#1,"HLDA010A" 4710 DEFFN'32(Q1$,N) : GOSUB 4875 4720 PRINT HEX(010A);Q1$ : INIT(2D)Q$ : $GIO/005(40204020A000402F400D,I0$)Q$<1,N> : Q$=" " : D=1 : PRINT "? "; 4760 KEYIN D$,4765,4760 : GOTO 4760 4765 IF D$=HEX(0D)THEN 4825 : IF D$=HEX(08)THEN 4800 : IF D$=HEX(A1)THEN 4796 : IF D>NTHEN 4760 : IF D$=HEX(84)THEN 4832 : STR(Q$,D,1)=D$ 4785 PRINT D$; : D=D+1 : GOTO 4760 4796 PRINT HEX(0D0909); : D=1 : GOTO 4760 4800 IF D=1THEN 4760 : D=D-1 : STR(Q$,D,1)=" " : PRINT HEX(082008); : GOTO 4760 4825 PRINT HEX(0D0A) : RETURN 4832 OR (STR(Q$,D,1),80) : D$=STR(Q$,D,1) : GOTO 4785 4845 DEFFN'34(Q2$) : GOSUB 4875 : PRINT HEX(010A0A0A);Q2$ : GOTO 4720 4875 PRINT HEX(010A); : GOSUB 4890 : GOSUB 4890 4890 $GIO/005(400DA000400A,I$)B$()<1,W> : RETURN 5120 B1$,B2$=A$ : DATA LOAD BA T#2,(B1$,B1$)N$() : I=0 : STR(B2$,2)=STR(N$(1),2) 5160 D=9 5170 MAT SEARCHN$()<D,257-D>,=STR(Q$,1,8)TO E$()STEP 16 : IF E$(1)>A$THEN 5220 : IF B1$>=B2$THEN 5250 : DATA LOAD BA T#2,(B1$,B1$)N$() : GOTO 5160 5220 D=D+VAL(STR(E$(1),2))-8 : I=(D+15)/16 : IF STR(N$(I),1,1)<>HEX(10)THEN 5170 5250 RETURN 5710 MAT COPY T$()TO N$()<1,200> : BIN(STR(N$(13),9))=F : BIN(STR(N$(13),10))=F0 : DATA SAVE BA T#2,(0,A)N$() : RETURN