Listing of file='@INSTALL' on disk='vmedia/701-2294P.wvd.zip'
# Sector 267, program filename = '@INSTALL' 0010 REM "@INSTALL" 06/04/81 A NP REV 11/29/81 A FOR 512 RELEASE 0020 REM Program function = @INSTALL will move all the system files from the s ource platter to the destination platter.The operator has to KEY-IN the s ource disk address and the destination disk address. 0030 REM A1$ = input disk address; A2$ = output disk address; C1$ input file n ame; C2$ = output file name 0040 REM K = Total number of file to be moved,X = is the pointer with in the d ata statement,I3= Size of the input catalogue area,I2 = Total number of f ree sectors with in the input file 0050 REM I5 = Sector address of the next available sector in the output catalo gue area : REM I6 = 1st sector beyond the catalogue area : REM I7 = size of the output catalogue area,O3 = size of the output file 0060 LOAD T"@MOVE1"0,60BEG 70 0070 COM A1$3,A2$3,D$8 0080 DIM C1$8,C2$8,I$20,A$1,D1$8,B$1,G$10,H$22 0090 DIM S$(16,2)8,S$3,N$8,N3$8,P1$1,Q$1,L$2,E$49,S1$3,S2$3,N1$8,N2$8,N4$8,N5$ 8,N6$8,Q6$2 0100 S$(),C1$,C2$=ALL(00) : A1$="D11" : A2$="D10" : A=6 : E$=HEX(0E)&"ERROR" : STR(E$,12)="at address" : A9=0 : R$="ERROR:" : I$="Invaild disk address" : G$="Installing" 0110 REM % KEYIN SOURCE DISK ADDR.& DEST. DISK ADDR. 0120 PRINT HEX(020402000F);HEX(030D0E);HEX(06),AT(0,10);"*** SYSTEM SOFTWARE I NSTALLATION UTILITY ***" 0125 PRINT AT(23,0);"** Press 'FN' or 'TAB' to return to menu. **"; 0130 PRINT AT(4,0); : LINPUT "Input address ="-A1$ 0140 GOSUB '100(A1$) 0150 IF Q$=" "THEN 160 : PRINT HEX(0706); : GOTO 130 0160 E=0 : GOSUB '105(1,A1$,0) : IF E>0 THEN 130 0170 PRINT AT(4,40); : LINPUT "Output address ="-A2$ : IF A1$<>A2$ THEN 180 : PRINT AT(22,0,79);HEX(070E);"Error: The destination disk address is the s ame as the source disk address!!!" : GOTO 170 0180 PRINT AT(22,0,79) : GOSUB '100(A2$) 0190 IF Q$=" "THEN 200 : PRINT HEX(0607); : GOTO 170 0200 E=0 : GOSUB '105(2,A2$,0) : IF E>0 THEN 170 0220 IF Q$<>" "THEN 200 0230 K=0 : D1$="@SYSMVPB" : GOSUB '20(D1$) : IF T<=0THEN 240 : C3=5 0240 D1$="@SYSVPB" : GOSUB '20(D1$) 0250 IF K=2THEN 290 : IF T<=0THEN 260 : C3=3 0260 D1$="@COBOL" : GOSUB '20(D1$) 0270 IF K=2THEN 290 : IF K=0THEN 280 : IF T<=0THEN 370 : C3=1 : GOTO 370 0280 PRINT HEX(070E06);AT(22,0,79);R$;" @COBOL,@VP,@MVP are not on the input p latter." : GOTO 130 0290 PRINT AT(8,40);HEX(0E06);"(@COBOL(C),@VP-BASIC(V),@MVP-BASIC(M))" : PRINT AT(8,0);HEX(0E06); : LINPUT "Install which system "-B$ : C3=POS("CcVvMm"=B$) : IF C3<>0THEN 300 : PRINT HEX(07) : GOTO 290 0300 IF C3>2THEN 310 : D1$="@COBOL" : GOTO 330 0310 IF C3>4THEN 320 : D1$="@SYSVPB" : GOTO 330 0320 D1$="@SYSMVPB" 0330 C1$=D1$ 0340 K=0 : GOSUB '20(D1$) : IF T>0THEN 370 0350 IF T<0THEN 540 0360 T=99999 : GOTO 550 0370 PRINT AT(21,0,79) : GOSUB 900 0380 PRINT HEX(0E06);AT(6,0,79);G$;H$ 0460 REM GET TOTAL # OF INPUT FILE 0470 READ K : X=X+1 : GOSUB '10("START",2) : IF T>0 THEN K=K-1 : GOSUB '10(".STARTD",2) : IF T>0THEN K=K-1 : IF C3=3 OR C3 = 4 THEN 490 : GOSUB '10("@SYSFILE",2) : IF T>0 THEN K=K-1 0490 READ C1$ : X=X+1 0500 IF C1$="END"THEN 700 : IF C1$="FF" THEN 940 0505 GOSUB '10(C1$,2) : IF C1$="START" AND T>0 THEN 490 : IF C1$=".STARTD"AND T>0THEN 490 : GOSUB '10(C1$,2) : IF C1$="@SYSFILE" AND T>0 THEN 490 : IF C1$ <> "@SYSFILE" THEN 510 0510 GOSUB '10(C1$,1) 0520 IF T=0THEN 550 0530 IF T>0THEN 560 0540 PRINT HEX(070E06);AT(21,10,((17-22)+1)*79);R$;" ";C1$;" Is scratched on t he input platter!!" : GOTO 700 0550 PRINT HEX(070E06);AT(21,0,((17-22)+1)*79);R$;" ";C1$;" Does not exist on the input platter"; : IF T=0 THEN 555 : PRINT "." : PRINT : GOTO 290 0555 PRINT ", @INSTALL is terminated." : STOP # : GOTO 550 0560 C=C+1 : I3=E1-B+1 : I2=I3-U 0570 GOSUB '105(2,A2$,0) 0580 IF Q$=" "THEN 590 : GOSUB 900 : GOTO 570 0590 PRINT HEX(0E06);AT(17,10,79);"Moving file ";C;" of ";K;" ";C1$ 0600 I5=VAL(STR(S$(),3,2),2) 0610 I6=VAL(STR(S$(),5,2),2) 0620 I7=I6-I5 0630 C2$=C1$ 0640 LIMITS T#2,C2$,B,E1,U,T 0650 IF T=0THEN GOTO 680 0660 IF I3<=((E1-B)+1) THEN 730 0670 REM COMP. SIZ OF INPUT FILE TO SIZ OF OUTPUT CAT.AREA 0680 IF I3<I7THEN 730 0690 PRINT HEX(070E06);AT(20,10,79);R$;"The output disk is full, @INSTALL is t erminated!!" : STOP # : GOTO 690 0700 PRINT HEX(070E06);AT(21,10,79);"Completed software installation." 0710 KEYIN K$,710,711 : GOTO 710 0711 IF K$ <> HEX(7E) AND K$ <> HEX(7F) THEN 710 : LOAD RUN 0730 GOSUB '255(C1$,A1$,0,I2,C2$,A2$,0) 0740 IF Q$=" "THEN 490 0750 IF Q$=" F"THEN PRINT HEX(070E06);AT(20,10,79);R$;"Span error!!" : GOTO 700 0760 IF Q$="I"THEN 130 0770 DEFFN'10 (C1$,D) : LIMITS T#D,C1$,B,E1,U,T : RETURN 0810 DEFFN'20(D$) 0820 LIMITS T#1,D$,B,E1,U,T : IF T<=0THEN 830 : K=K+1 : C1$=D$ 0830 RETURN 0840 DATA 4,"@@","@GENPART","@D","@FORMAT","END" 0850 DATA 23,"@SYSVPB","@VP","FF" 0860 DATA 26,"@SYSFILE","@GENPART","@SYSMVPB","@PSTAT","@MVP","FF" 0900 IF C3>2THEN 910 : RESTORE LINE840,X+1 : H$=" BASEBOL" : RETURN 0910 IF C3>4THEN 920 : RESTORE LINE850,X+1 : H$=" Basic-2 (Single user)" : RETURN 0920 RESTORE LINE860,X+1 : H$=" Basic-2 (Multi user)" : RETURN 0930 DATA "@DAVFU","@BACKUP","@FORMAT","@MENU","@MOVE1","@MOVEFIL","@RECOVER", "START","@INSTALL","@@","@P","@MRTIAN","@A","@BOOT","@B","@C","@D","@DG", ".STARTD","@\","@E","END" 0940 X=0 : RESTORE LINE 930 : GOTO 490 0950 DEFFN'126 0960 DEFFN'127 0970 LOAD RUN