Listing of file='SYNTAX' on disk='vmedia/701-2047D.wvd.zip'
# Sector 65, program filename = 'SYNTAX'
0010 REM SYNTAX,00-00(02/18/76),12003A - COPYRIGHT WANG LABS. INC., 1976
0020 REM . SYSTEM NAME = WCS IPL-DIAGNOSTIC
0030 REM . PROGRAAM NAME = SYNTAX VERIFICATION PROGRAM
0040 REM . DATE WRITTEN = 05/30/75
0050 REM . VERIABLE LIST
0051 REM . I. SCRATCH ALPH-ARRAY
0052 REM . A$(),A0$(),X$(),X0$()
0054 REM . II. SCRATCH NUM-ARRAY
0055 REM . X(),X0()
0056 REM . III. SCRATCH ALPHA VERIABLE
0057 REM . A$,B$,M1$
0058 REM . IV. SCRATCH NUMERIC VERIABLE
0059 REM . B,F,H,H1,H2,I,J,J0,K,T,X0,Y1
0100 COM A$(2,2)4,A0$(2)6,M1$1,X0$(1,1)1,X$(2)4,L$2,X0(2),X(1),X1,Y,A$64
0110 LOAD DC T#0,"SYNTAX1"
0120 REM . 'ADD & ADDC' (P #1)
0130 ADD(A$,F0)
0140 ADDC(STR(A$,I,J),02)
0150 ADD(STR(B$,I),M1$)
0160 ADDC(STR(A$(I,I),J),STR(B$,B,2))
0170 ADD(STR(A$(I,J),H),B$)
0180 ADDC(STR(A$(J,K),M,F),7F)
0190 ADD(L$,STR(A$(H1,H2),J,2))
0200 ADDC(STR(X0$(J,L),J,1),STR(A$(J,H),H,1))
0210 REM . 'BIN & VAL' (P #2)
0220 BIN(STR(A$(I,J),H)) = INT(RND(1)*255/2)
0230 BIN(STR(A0$(I),3,1)) = Y^(COS(T)*10-8)
0240 BIN(STR(A$,I*J+2,1)) = 255
0250 X = VAL(STR(B$,9))*256+VAL(STR(A$(I,J),J))*16+VAL(STR(A0$(G),3))
0260 Y = VAL("A")+VAL("X")-VAL("$")
0270 REM . 'CONVERT' (P #3)
0280 CONVERT STR(A$,1,8) TO X
0290 CONVERT X*2/F TO A$,(+#.##^^^^)
0300 CONVERT SIN(T) TO STR(A0$(J),H,K),(#.#####)
0310 CONVERT STR(A$(I,J),G,NUM(A$)) TO X(I)
0320 CONVERT X0(K) TO STR(A$,J,J*I),(-#.########)
0330 REM . 'PACK & UNPACK' (P #4)
0340 PACK(####) STR(A$,I,J) FROM X,X0,X(G)
0350 PACK(#.###) M1$ FROM X0(B)
0360 PACK(-#.##^^^^)STR(A$(I,J),K,J) FROM X,X0,X(I),X0(K)
0370 UNPACK(######)STR(A0$(K),J) TO X,X0,X(H)
0380 UNPACK(+#.####^^^^) A$() TO X0()
0390 UNPACK(#.###) STR(A$,1,J) TO X,X0,X(I),X0()
0400 REM . 'AND,OR,XOR & BOOL' (P #5)
0410 AND (STR(A$(I,J),J,X),7F)
0420 OR (STR(A0$(K),J),M1$)
0430 XOR (STR(A$(I,J),L,5),STR(B$,G,1))
0440 BOOLF(STR(A$,I,2),0F)
0450 AND (STR(A$(I,J),J),STR(A$(J,I),J))
0460 BOOL9(STR(A$(H,1),I,3),STR(A$,I,1))
0470 REM . 'NUM' (P #6)
0480 Y = NUM(A$)*NUM(A$(I,J))+NUM(A0$(G))
0490 IF NUM(X0$(K,K)) = Y*V+2 THEN 1570
0500 REM . 'POS' (P #7)
0510 Y0 = POS(B$ > "$")+POS(A$ = "#")+POS(X$(I) >= 0D)
0520 IF POS(B$ < FD)+POS(A$(I,J) <= 3F)*POS(STR(A$,J0) <> 20) > 256 THEN 1
570
0530 REM . 'LEN' (P #8)
0540 X0 = (LEN(A0$(J))+LEN(B$))*LEN(X0$(H,N))
0550 IF LEN(C$)/LEN(X$(U)) > LEN(A$(I,J)) THEN 1570
0560 REM . 'LET' (P #9)
0570 LET X(3),X0(1),Z = T+TAN(T)*T
0580 REM . 'PLOT' (P #10)
0590 PLOT K<(X+Y)/2,(X-Y)/2,"*">,<,10,".">,<-100,-100,STR(A$,I,2)>
0600 PLOT N<RND(1)*X,,U>,<,RND(1)*Y,D>,<,,R>
0610 PLOT <15,,C>,<10,20,S>,<,,>
0620 REM . 'ROTATE' (P #11)
0630 ROTATE(STR(A$(I,J),J),7)
0640 ROTATE(B$,4)
0650 ROTATE(STR(X$(H),3),3)
0660 REM . 'TRACE' (P #12)
0670 TRACE
0680 TRACE OFF
0690 REM . 'RESTORE' (P #13)
0700 RESTORE (X*Y)/2-T
0710 RESTORE
0720 REM . 'RETURN' (P #14)
0730 RETURN
0740 REM . 'REWIND' (P #15)
0750 REWIND #3
0760 REWIND /10E
0770 REWIND
0780 REM . 'SKIP' (P #16)
0790 SKIP END
0800 SKIP #5,INT(RND(1)*10)F
0810 SKIP /10F,10
0820 REM . 'SELECT' (P #17)
0830 SELECT CO 008,CI 517
0840 SELECT CO 212(80)
0850 SELECT DISK 350,CI 001
0860 SELECT TAPE 10F,#3 07B,#1 310,#2 320,#4 B10,#5 B20,#6 330
0870 SELECT #5 10A,#110B,#210F,#310C,#410D,#610E
0880 SELECT PRINT 215
0890 SELECT INPUT 517
0900 SELECT PLOT 413,PLOT 414
0910 SELECT P9
0920 SELECT D
0930 SELECT R
0940 SELECT G
0950 REM . 'READ' (P #18)
0960 READ A$,A$(I,J),STR(A$,J,I),X(J),X0(K)
0970 REM . 'PRINT, HEXPRINT, PRINTUSING' (P #19)
0980 PRINT "X= ";X,3.141592,X(1),A$(I,J);TAB(F*12);1-COS(T)*RND(1)
0990 PRINT STR(A$,J,K);
1000 HEXPRINT STR(A$,B,J),STR(A$(I,J),J),X0$()
1010 PRINTUSING 1450,X,Y1,STR(A$,I,J),"GOTO",12.35
1020 REM . 'HEX' (P #20)
1030 A$ = HEX(0102030405060708090A0B0C0D0E0F00)
1040 STR(B$,I,9) = HEX(101112131415161817FF)
1050 IF HEX(C0) > STR(A$,J,1) THEN 1570
1060 REM . 'ON' (P #21)
1070 ON (M*TAN(T)^2) GOTO 10,100,110,100,130,220,340,130,280
1080 ON LEN(A$) GOSUB 510,570,630,700
1090 REM . 'BACKSPACE' (P #22)
1100 BACKSPACE /10C,BEG
1110 BACKSPACE #5,(A*B-C)F
1120 BACKSPACE A-INT(RND(1)*10)
1130 REM . 'DATALOAD' (P #23)
1140 DATA LOAD #6,"DATA"
1150 DATA LOAD /10A,A,A1,A$,STR(A$(I,J),J)
1160 DATA LOAD X(),X0()
1170 DATA LOAD /517,A$(),A0$(),STR(A$,J)
1180 DATA LOAD /618,X(),X0()
1190 DATA LOAD /41D,X,STR(M1$,2)
1200 REM . 'DATALOAD BT' (P #24)
1210 DATA LOAD BT#6,A$()
1220 DATA LOAD BT(N=100)#3,X$()
1230 DATA LOAD BT/10F,X0$()
1240 DATA LOAD BT(N=40,L=FF,S=99)/517,A$()
1250 DATA LOAD BTR(N=200,L=FD,S=STR(A$,J))/618,A0$()
1260 DATA LOAD BT(N=20,L=FE,S=C0)/41E,A$()
1270 DATA LOAD BT(N=42)#1,A0$()
1280 REM . 'DATASAVE' (P #25)
1290 DATA SAVE #3,OPEN "ABCD00"
1300 DATA SAVE STR(A$(J,I),J,I),HEX(000FFF),"FILE",X(),RND(1)
1310 DATA SAVE /10F,END
1320 DATA SAVE Y,X,X0,X$(),X(),X0()
1330 DATA SAVE /41F, OPEN "TYTE"
1340 DATA SAVE /41D,STR(A$,A,1),X$()
1350 REM . 'DATASAVE BT' (P #26)
1360 DATA SAVE BTR(N=100) A$()
1370 DATA SAVE BT(N=100,H) #6,X$()
1380 DATA SAVE BT/41F, STR(M1$,1,1)
1390 REM . 'INPUT & KEYIN' (P #27)
1400 INPUT "ENTER THE DATA",STR(A$(I,J),J,I),X,X0(I),X(U),STR(C$,I,L)
1410 KEYIN A$,830,1360
1420 KEYIN STR(X0$(J,I),J),830,1360
1430 REM . 'IMAGE' (P #28)
1440 %ORDER NO. = ######, DATE = ##/##/##, NAME = ###########
1450 %+####.####### GOTO LINE #### THEN STOP TO PRINT -#.####^^^^, END OF
BLOCK./
1460 REM . 'GOSUB' (P #29)
1470 Y=X+V
1480 GOSUB 1570
1490 GOSUB '30("BOB",STR(A$,I,J),Y^2/COS(T),X$(1),2.375,-1.25,FNB(C)^2)
1500 GOSUB '255
1510 REM . 'DEFFN & DEFFN'X ' (P #30)
1520 DEFFN'245"SELECT CO 215 : HEX\A0A$() : SELECT CO005"
1530 DEFFN'30(Z$,Z1$,Z,Z2$,Z1,Z2,Z3)
1540 DEFFNB(C) = 3*A+FNA(2*A-B)
1550 DEFFNA(C) = X^2-2*B*C-SQR(B*B-C*C)
1560 DEFFN5(A) = FNB(3)-FNA(2)+X^2
1570 STOP
1580 REM . END OF 'SYNTAX' PART 1