image of READY prompt

Wang2200.org

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