image of READY prompt

Wang2200.org

Listing of file='ATOM030B' on disk='vmedia/701-2110C.wvd.zip'

# Sector 45, program filename = 'ATOM030B'
0010 REM ATOM030B, 02-01, (04/23/79), COPYRIGHT WANG LABORATORIES, INC. 1979
0230 DIM C$(4)62,C0$(1)1
   : DIM D$(16)16,D0$(1)2
   : DIM E$(4)64,E1$(1)2,E2$(1)11,E9$(124)16
   : C,D=0
   : INIT(20)C$(),C0$(),D$(),D0$(),E$()
   : IF E9$(1)<>" "THEN 440
   : DATA LOAD DC OPEN T#1,"ATOMF010"
   : DATA LOAD DC #1,E9$()
0370 PRINT HEX(010A);"MOUNT INPUT AND OUTPUT DISK",TAB(64)
   : GOSUB '254
   : GOSUB '248(0,0,4)
   : PRINT "LINE BEING PROCESSED"
0440 GOSUB 1380
   : IF D=-1THEN 900
   : E1$=HEX(23D724EA25D844B747DB50D952B62020)
   : $TRAN(E$(),E1$)R
0530 E1$=HEX(7F)
   : MAT SEARCHE$(),>E1$TO E1$()
   : IF E1$(1)=HEX(0000)THEN 830
   : E1=VAL(STR(E1$(1),2,1))
   : MAT COPY E$()<E1,1>TO E1$()
   : IF STR(E1$(1),1,1)=HEX(FF)THEN 730
   : E2=VAL(E1$(1))-127
   : E2$(1)=STR(E9$(E2),2,10)
   : E=E+LEN(E2$(1))-1
0680 MAT COPY -E$()<E1,258-E1-LEN(E2$(1))>TO -E$()<E1+1,256-E1>
   : MAT COPY E2$()TO E$()<E1,LEN(E2$(1))>
   : GOTO 530
0730 MAT COPY E$()<E1+1,2>TO E1$()
   : UNPACK(####)E1$(1)TO E4
   : CONVERT E4TO E2$(1),(####)
   : MAT COPY -E$()<E1,256-E1>TO -E$()<E1,257-E1>
   : MAT COPY E2$()<1,4>TO E$()<E1,4>
   : E=E+1
   : GOTO 530
0830 IF E<244THEN 835
   : E=244
0835 $GIO/005(4001400AA200400D400A,A$)E$(1)
   : $GIO/005(A200400D400A,A$)E$(2)
   : $GIO/005(A200400D400A,A$)E$(3)
   : $GIO/005(A2004001400A,A$)E$(4)
   : GOSUB 990
   : GOTO 440
0900 C=-1
   : GOSUB 990
0920 DEFFN'31
   : PRINT HEX(030A);"REMOUNT SYSTEM DISK IF REMOVED."
   : GOSUB '254
   : COM CLEAR E$
   : LOAD DC T#1,"MENU010A"
0990 IF C=0THEN 1100
   : IF C=-1THEN 1260
   : IF C+E+1>248THEN 1200
   : BIN(C0$(1))=E
   : MAT COPY C0$()<1,1>TO C$()<C,1>
   : MAT COPY E$()TO C$()<C+1,E>
   : C=C+E+1
   : BIN(STR(C$(1),2,1))=C
   : RETURN
1100 GOSUB '228(3,E$,50)
   : IF R2$="0"THEN 1150
   : PRINT HEX(03);"ERROR - RETURN CODE FROM ALLOCATE DATA FILE SPACE = ";R2$
   : STOP
   : END
1150 C$(1)=HEX(0003)
   : C=3
   : GOTO 990
1200 DATA SAVE DC #3,C$()
   : C=3
   : INIT(20)C$()
   : C$(1)=HEX(0002)
   : GOTO 990
1260 STR(C$(1),1,1)=HEX(F0)
   : DATA SAVE DC #3,C$()
   : DATA SAVE DC #3,END
   : GOSUB '227(3,E$,2)
   : IF R2$="0"THEN 1340
   : PRINT HEX(03);"ERROR - RETURN CODE FROM FREE UNUSED SECTORS = ";R2$
   : STOP
   : END
1340 RETURN
1380 IF D=0THEN 1490
1390 MAT COPY D$()<D,1>TO D0$()
   : IF STR(D0$(1),1,1)=HEX(FD)THEN 1530
   : D0$=HEX(0D)
   : MAT SEARCHD$()<D,256-D>,=D0$TO D0$()
   : E=VAL(STR(D0$(1),2,1))-1
   : MAT COPY D$()<D,E>TO E$()
   : D=D+E+3
   : RETURN
1490 LIMITS T#2,E$,D2,D3,D4
   : DATA LOAD BA T#2,(D2,D2)D$()
1530 IF STR(D$(1),1,1)=HEX(20)THEN 1600
   : DATA LOAD BA T#2,(D2,D2)D$()
   : D1$=HEX(FDFE2020)
   : $TRAN(D$(),D1$)R
   : AND (STR(D$(1),1,1),E0)
   : D=2
   : GOTO 1390
1600 D=-1
   : RETURN