diff --git a/SYMBOL/ESPOL.alg_m b/SYMBOL/ESPOL.alg_m
index d92f65a..9e799e1 100644
--- a/SYMBOL/ESPOL.alg_m
+++ b/SYMBOL/ESPOL.alg_m
@@ -731,7 +731,7 @@ COMMENT INFO FORMAT 01028000
OROP =93#, COMMENT 135; 01275000
ANDOP =94#, COMMENT 136; 01276000
RELOP =95#, COMMENT 137; 01277000
- ADDOP =96#, COMMENT 140; 01278000
+ ADOP =96#, COMMENT 140; 01278000
MULOP =97#, COMMENT 141; 01278500
% STRING =99#, COMMENT 143; 01278600
COMMENT SUBCLASSES FOR DECLARATORS (KEPT IN ADDRESS); 01279000
@@ -753,7 +753,7 @@ COMMENT INFO FORMAT 01028000
NAMEV =16#, COMMENT 20; 01295000
FILEV =17#, COMMENT 21; 01296000
STREAMV =18#, COMMENT 22; 01297000
- DEFINEV =19#, COMMENT 23; 01298000
+ DEFINEV =19#; COMMENT 23; 01298000
DEFINE DDES = 8#, 01299000
ADES = 28#, 01299010
PDES = 29#, 01299020
@@ -1101,8 +1101,8 @@ DEFINE PURPT=[4:8]#,SECRET=2#; 01628000
XIT = 71#, COMMENT (0435) 7.4.8.2 EXIT; 01676000
ZP1 = 322#, COMMENT (2411) 7.4.10.8 CONDITIONAL HALT; 01677000
SCI =1003#, COMMENT (7655) SCAN OUT INITIALIZE; 01677050
- SAN =1004#, COMMENT (7661) SYSTEM ATTENTION NEEDED 01677100
- SCS =1019#, COMMENT (7755) SCAN OUT STOP; 01677150
+ SAN =1004#, COMMENT (7661) SYSTEM ATTENTION NEEDED; 01677100
+ SCS =1019#; COMMENT (7755) SCAN OUT STOP; 01677150
COMMENT THESE DEFINES ARE USED BY EMITD; 01678000
DEFINE 01679000
DIA = 45#, COMMENT (XX55) 7.4.7.1 DIAL A; 01680000
@@ -2681,7 +2681,7 @@ PROCEDURE DEBUG(S); VALUE S; REAL S; 04277500
IF DEBUGTOG THEN DEBUG(S); 04297000
L~L+1; 04298000
END ELSE 04299000
- BEGIN ERROR(200); L~1; END; 04300000
+ BEGIN ERR(200); L~1; END; 04300000
COMMENT 200 EMIT - SEGMENT GREATER THAN 4093 SYLLABLES *; 04301000
END EMIT ; 04302000
COMMENT EMITD EMITS THE DIA,DIB,TRB SEQUENCE OF CODE. THE 04305000
@@ -3106,7 +3106,7 @@ IF NOT(STREAMTOG AND (LEVEL>2))THEN 05344400
IF ELCLASS=ADOP 05344550
THEN 05344560
IF ELBAT[I].ADDRESS=SUBOP 05344570
- THEN GS~FZERO ELSE GS~512; 05344580
+ THEN GS~FZERO ELSE GS~512 05344580
ELSE 05344590
BEGIN GS~0;I~I-1 END; 05344600
IF STEPI!LITNO THEN FLAG(51); 05344610
@@ -3212,7 +3212,7 @@ IF NOT(STREAMTOG AND (LEVEL>2))THEN 05344400
BEGIN M~ (U+L) DIV 2; 05441000
NESTSORT(L,M); 05442000
NESTSORT(M+1,U); 05443000
- I~K~L; J~M+1 05444000
+ I~K~L; J~M+1; 05444000
AGAIN: IF I>M THEN GO TO TOP; 05445000
IF J>U THEN GO TO BOTTOM; 05446000
GT1~NESTPRT[SORTPRT[I].[33:15]].LINK; 05447000
@@ -3307,7 +3307,7 @@ IF NOT(STREAMTOG AND (LEVEL>2))THEN 05344400
S ~ S OR COUNT - T2.[11:3] < 0; 06074000
COUNT ~ T2.[14:2]+COUNT-2; 06075000
IF ELCLASS } OPERATOR THEN 06076000
- BEGIN IF T1 ! 0 THEN EMITO(T1); 06077000
+ BEGIN IF T1 ! 0 THEN EMITO(T1) 06077000
ELSE BEGIN 06078000
T1 ~ T2.LINK+2; 06079000
T2 ~ T2.INCR+T1; 06080000
@@ -3323,7 +3323,7 @@ IF NOT(STREAMTOG AND (LEVEL>2))THEN 05344400
(T2~C DIV 6)[36:45:3]&(C-T2|6) 06090000
[39:45:3]) ELSE 06091000
IF T2 = ISOLATE THEN 06092000
- BEGIN T2 + C; 06093000
+ BEGIN T2 ~ C; 06093000
IF STEPI ! LITNO 06094000
THEN BEGIN ERR(500); 06095000
GO TO EXIT END; 06096000
@@ -3440,7 +3440,7 @@ IF NOT(STREAMTOG AND (LEVEL>2))THEN 05344400
BEGIN REAL T1,T2; 06184000
T1 ~ (T2 ~ ELBAT[I]).ADDRESS; 06185000
PANA; 06186000
- IF T1 ! 0 THEN EMITO(T1); 06187000
+ IF T1 ! 0 THEN EMITO(T1) 06187000
ELSE BEGIN 06188000
T1 ~ T2.LINK+T2.INCR+1; 06189000
T2 ~ T2.LINK+2; 06190000
@@ -3619,12 +3619,12 @@ FCR:= (LCR:=MKABS(TBUFF[9]))-9 END; 07025030
BEGIN IF ACLASS = REALID AND 07069000
BOOLEAN(ELBAT[I].FORMAL)THEN BEGIN 07070000
CHECKER (ELBAT[I]); 07070500
- EMITPAIR(ELBAT[I],ADDRESS,LOD); 07071000
+ EMITPAIR(ELBAT[I].ADDRESS,LOD); 07071000
STEPIT; END 07072000
ELSE VARIABLE(FL); 07073000
GO TO COMMON END; 07074000
IF ELCLASS { STRNGCON AND ELCLASS > LABELID 07075000
- THEN BEGIN PRIMARY; GOTO COMMON END; 07076000
+ THEN BEGIN PRIMARY; GO TO COMMON END; 07076000
END; 07077000
EMITO(NOP); EMITO(NOP); 07078000
SCLASS ~ L; 07079000
@@ -3689,7 +3689,7 @@ FCR:= (LCR:=MKABS(TBUFF[9]))-9 END; 07025030
EMITO(MKS); 07408000
IF ELCLASS = LEFTPAREN 07409000
THEN ACTUALPARAPART(FALSE,GIT(HOLE)) 07410000
- ELSE IF FORMALF THEN L ~ L-1; 07411000
+ ELSE IF FORMALF THEN L ~ L-1 07411000
ELSE IF TAKE(GIT(HOLE)).NODIMPART!0 THEN ERR(128); 07412000
EMITV(ADDRESS); 07413000
EXIT: END PROCSTMT; 07425000
@@ -4037,7 +4037,7 @@ L33:L34:L35:L36:L37:L39: 07730000
EXIT: END STMT; 07771000
07991000
PROCEDURE IOSTMT; 07993000
- IF STEPI ! LITNO OR (GT1~ELBAT[I].ADDRESS>15 THEN ERR(98)ELSE 07994000
+ IF STEPI ! LITNO OR (GT1~ELBAT[I].ADDRESS>15) THEN ERR(98)ELSE 07994000
BEGIN EMIT(ELBAT[I-1].ADDRESS>1[41:47:1]>1[36:44:3]); 07995000
STEPIT 07996000
END SCOPE STATEMENT; 07997000
@@ -4496,12 +4496,12 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 09081000
OCT1310441000000002, "3MUL00", %503 09121300
OCT1310441050000002, "3NEQ00", %505 09121400
OCT1310100130000002, "3NOP00", %507 09121500
- OCT0650006550000002, "6SCOPO", "N......."; %509 09121600
+ OCT0650006550000003, "6SCOPO", "N......."; %509 09121600
FILL INFO[2,*] WITH 09121650
- OCT131030000020004, "3RDF00", %512 09121700
+ OCT1310300000020004, "3RDF00", %512 09121700
OCT0000, COMMENT LITC 0; 09121800
OCT2141, COMMENT FXS ; 09121900
- OCT131030000020004, "3RDS00", %516 09122000
+ OCT1310300000020004, "3RDS00", %516 09122000
OCT0004, COMMENT LITC 1; 09122100
OCT2141, COMMENT FXS ; 09122200
OCT1310456000000002, "3RDV00", %520 09122300
@@ -4821,7 +4821,7 @@ STREAM PROCEDURE FIXHDR(F,N); VALUE N; 09393700
OCT0051000000000000, 09395400
OCT0441070001000062; 09395500
Q ~ -1; 09395700
- PUSHEE(SAVEINFO,L,4,5); 09396000
+ PUSHEE(SAVINFO,L,4,5); 09396000
SAVNDX:=L; 09397000
END; 09397100
REWIND(CODISK); 09398000
@@ -4863,7 +4863,7 @@ STREAM PROCEDURE FIXHDR(F,N); VALUE N; 09393700
END; 09417500
MDESC(GT1,SAVINFO[I.LINKR,I.LINKC]); 09418000
END ELSE SAVINFO[I.LINKR,I.LINKC]:=0 UNTIL I:=I+1}PRTIMAX;09419000
- MDESC(0&1[2:47:1],SAVINFO[D,PRTBASE-1]); 09419100
+ MDESC(0&1[2:47:1],SAVINFO[0,PRTBASE-1]); 09419100
SAVNDX ~ 30 | N; 09420000
END; 09420010
I ~ 0; J ~ -1; 09420020
@@ -5083,7 +5083,7 @@ STREAM PROCEDURE FIXHDR(F,N); VALUE N; 09393700
EL~TABLE(NXTELBT); 12112000
NXTELBT~NXTELBT-1; 12113000
IF EL!LEFTPAREN AND EL!LFTBRKET THEN 12114000
- FLAG(141); 12115000
+ FLAG(141) 12115000
ELSE DO BEGIN J~J+1; 12116000
SET(INFO[T.LINKR,T.LINKC],ACCUM[1],K,64|J+12); 12117000
ACCUM[1].[12:6]~K+2; 12118000
@@ -5561,7 +5561,7 @@ INTEGER SGNOO,LOLD,SAVELO,PRTIO,NINFOO; 14030000
BOOLEAN FUNCTOGO,AJUMPO; 14034000
BEGINCTR~BEGINCTR+1; 14035000
IF SOP 14036000
- THEN BEGIN BLKAD~PROADD; 14037000
+ THEN BEGIN BLKAD~PROADO; 14037000
IF LASTENTRY ! 0 14038000
THEN BEGIN GT1~BUMPL; 14039000
CONSTANTCLEAN; 14040000
@@ -5735,8 +5735,8 @@ SWITCHDEC: 14200000
DO 14218000
BEGIN 14219000
IF STEPI!LABELID OR ELBAT[I].LVL!LEVEL THEN FLAG(63); 14220000
- PUTNBUMP(ELBAT[I]);GT1~GT1+1; 14221000
- END; 14222000
+ PUTNBUMP(ELBAT[I]);GT1~GT1+1 14221000
+ END 14222000
COMMENT 14222500
UNTIL STEPI!COMMA; 14223000
14223500
@@ -6014,8 +6014,8 @@ PUT(TAKE(MARK)&NLOC[1:42:6]&L[16:36:12]&P[40:40:8],MARK); 14451200
IF ELCLASS = BEGINV THEN 14479000
BEGIN 14481000
CALLINFO~(CALLX~CALLX+1)+1; 14481100
- NEXTCTR~STACKCTR; 14481200
- BLOCK(TRUE); 14482000
+ NESTCTR~STACKCTR; 14481200
+ BLOCK(TRUE) 14482000
; PURGE(PINFOO); 14483000
IF NESTOG THEN 14483100
BEGIN GT1~TAKE(PROINFO).ADDRESS; 14483200
@@ -6071,7 +6071,7 @@ START:END; 14503000
FUNCTOG~FUNCTOGO; 14599000
IF SOP THEN HTTEOAP(FALSE,FIRSTX,NINFOO,BLKAD) 14600000
ELSE BEGIN IF NESTOG THEN SORTNEST; PURGE(NINFOO); END; 14601000
- SEGMENT((L+3)DIV 4,PROADD); 14602000
+ SEGMENT((L+3)DIV 4,PROADO); 14602000
IF LEVEL>1 THEN RIGHT(L); 14603000
IF LEVEL ~ LEVEL-1 = 0 THEN CONSTANTCLEAN; 14604000
14605000
@@ -6382,7 +6382,7 @@ COMMENT 208 VARIABLE- NUMBER OF SUBSCRIPTS DOES NOT MATCH WITH * 15298000
AEXP; 15307000
EMITD(48-T2,T1,T2) ; 15308000
EMITO(XCH); 15309000
- IF TALL.ADDRESS>1023 THEN EMITI(PRTE); 15310000
+ IF TALL.ADDRESS>1023 THEN EMITO(PRTE); 15310000
EMITO(IF TALL.CLASS MOD 2 = INTARRAYID MOD 2 THEN 15333000
IF P1 = FS THEN ISD ELSE ISN ELSE 15334000
IF P1=FS THEN STD ELSE SND); 15335000
@@ -6660,7 +6660,7 @@ PROCEDURE LABELS; 16156000
BEGIN 16250000
LABEL EXIT; 16251000
IF STEPI !TOV THEN I~I-1 ; 16252000
- IF STEPI ! STLABID THEN ELCLASS { IDMAX THEN 16253000
+ IF STEPI ! STLABID THEN IF ELCLASS { IDMAX THEN 16253000
DECLARELABEL ELSE BEGIN ERR(260); GO TO EXIT END; 16253100
IF(GT2~TAKE(GIT(GT1~ELBAT[I]))).MON=1 16254000
OR GT2.LOC!0 THEN EMITJUMP(GT1) 16255000
@@ -6788,7 +6788,7 @@ PROCEDURE DSS; 16362000
END 16377000
ELSE ADDR ~ 1 ; 16378000
IF Q = "4FILL0" THEN EMITC(ADDR,10) ELSE %E 16378500
- IF ELCLASS = TRNSFER THEN EMITC(ADDR,ELBAT[1].OPCODE) 16379000
+ IF ELCLASS = TRNSFER THEN EMITC(ADDR,ELBAT[I].OPCODE) 16379000
ELSE 16380000
IF ELCLASS = LITV THEN 16381000
BEGIN 16382000
@@ -6854,7 +6854,7 @@ PROCEDURE JUMPS; 16431000
IF JOINFO = 0 THEN 16440000
BEGIN 16441000
JOINFO ~ NEXTINFO ; 16442000
- PUTNBUMP(STACKHEAD[0],LINK&(STLABID|2+1) 16443000
+ PUTNBUMP(STACKHEAD[0].LINK&(STLABID|2+1) 16443000
[2:40:8]&2[27:40:8 ]); 16444000
PUTNBUMP(0&(JOINFO-LASTINFO )[ 4:40:8]); 16445000
PUTNBUMP (0); 16446000
diff --git a/SYMBOL/KERNAL.esp_m b/SYMBOL/KERNAL.esp_m
new file mode 100644
index 0000000..184a9fc
--- /dev/null
+++ b/SYMBOL/KERNAL.esp_m
@@ -0,0 +1,113 @@
+$ SET LIST MCP PRT DEBUG DEBUGN 00000011
+ B-5500 ESSENCE OF MCP : NOV,1968 P.E.G. 00020000
+ COMMENT: * TITLE: B5500/B5700 MARK XVI SYSTEM RELEASE * 00020110
+ * FILE ID: SYMBOL/KERNAL TAPE ID: SYMBOL2/FILE000 * 00020111
+ * THIS MATERIAL IS PROPRIETARY TO BURROUGHS CORPORATION * 00020112
+ * AND IS NOT TO BE REPRODUCED, USED, OR DISCLOSED * 00020113
+ * EXCEPT IN ACCORDANCE WITH PROGRAM LICENSE OR UPON * 00020114
+ * WRITTEN AUTHORIZATION OF THE PATENT DIVISION OF * 00020115
+ * BURROUGHS CORPORATION, DETROIT, MICHIGAN 48232 * 00020116
+ * * 00020117
+ * COPYRIGHT (C) 1971, 1972, 1974 * 00020118
+ * BURROUGHS CORPORATION * 00020119
+ * AA320206 AA386657 AA332366 *; 00020120
+ BEGIN 00030000
+ DEFINE M=MEMORY #, P=POLISH #; 00040000
+ ARRAY DATA [*]; 00050000
+ DEFINE ADDRESS = M[@40] #; 00060000
+ DEFINE BASE = M[0] #; 00070000
+ DEFINE DIRECTOP= M[1] #; 00080000
+ DEFINE DISK = M[@41] #; 00090000
+ DEFINE INDX = M[@42] #; 00100000
+ DEFINE MODS = M[@46] #; 00110000
+ DEFINE NOSYS = M[@43] #; 00120000
+ DEFINE R = M[@44] #; 00130000
+ DEFINE SYSTEM = M[@45] #; 00140000
+ INTEGER PROCVAL = +1; 00150000
+ INTEGER FINDMEM; 00160000
+ LABEL TIMER,START,TOPOCODE; 00170000
+SAVE REAL PROCEDURE EOM; 00180000
+ BEGIN GO TO TIMER END; 00190000
+SAVE REAL PROCEDURE IO (DESC); %THIS FIRES OFF THE IO 00200000
+ VALUE DESC; 00210000
+ REAL DESC; 00220000
+ BEGIN 00230000
+ DO BEGIN 00240000
+ P([DESC],IIO); 00250000
+ R ~ EOM; 00260000
+ IO ~ R.[25:8] 00270000
+ END UNTIL (PROCVAL AND 5)=0; 00280000
+ END; 00290000
+SAVE PROCEDURE DISKREED (DESC); 00300000
+ VALUE DESC; 00310000
+ REAL DESC; 00320000
+ BEGIN STREAM(A ~ BASE + ADDRESS,B:=DESC.[33:15]); 00330000
+ BEGIN SI:=LOC A;DI:=B;DS:=8 DEC; END; 00340000
+ IF M[DESC].[5:1] THEN DESC.[3:5]~12;% 00345000
+ DO R~ IO(DESC) UNTIL R=0; 00350000
+ END; 00360000
+TOPOCODE :@20: GO TO START; % FIRST CODE 00380000
+TIMER :@22: P(INI);IF NOT FINDMEM THEN % TIMER 00390000
+ GO TO START; % SET UP FOR INVD ADDR 00400000
+ : : GO TO TIMER; % SPO 00410000
+ :@25: GO TO TIMER; % LPA 00420000
+ :@26: GO TO TIMER; % LPB 00430000
+ :@27: P(@14,LOD,RTN); % I-O 1 COMPLETE 00440000
+ :@30: P(@15,LOD,RTN); % I-O 2 COMPLETE 00450000
+ :@31: P(@16,LOD,RTN); % I-O 3 COMPLETE 00460000
+ :@32: P(@17,LOD,RTN); % I-O 4 COMPLETE 00470000
+ :@34: GO TO TIMER; % DATA COMM 00480000
+ :@36: GO TO TIMER; % DF #1 USED ON FREE ADDRESS00490000
+ :@37: GO TO TIMER; % DF #2 RETURN 00500000
+ :@61: GO TO START; % P1 INVD ADDRESS 00510000
+START :*: P(@100,STS); % SET STACK TO OCT 100 00530000
+ M[MODS := MODS + @10000] := 0; % FIND MOD TO LOAD MCP 00540000
+ P(INI); % CHECK FOR INVD ADDRESS 00550000
+ IF MODS GTR @70000 THEN 00560000
+ BEGIN MODS := 0; 00570000
+ GO TO START; 00580000
+ END; 00590000
+ FINDMEM := TRUE; 00600000
+ DATA ~[M[ (*P(.EOM))INX 100]] & 1023[8:38:10]; 00610000
+ DISK ~ DATA.[33:15]; 00620000
+ M[DISK] ~ @40; 00630000
+ INDX ~ 13; 00640000
+ IF IO (@140004000000000& DISK [33:33:15]) = 0 THEN 00650000
+ BEGIN 00660000
+ SYSTEM ~ DATA[1].[4:2]; 00670000
+ M[DISK]~ @4060&SYSTEM [30:46:2]; %CLEAR CONTENTION 00680000
+ P(IO(@140000100000000 & DISK[33:33:15]),DEL); %BITS 00690000
+ M[DISK]~ @6060&SYSTEM[30:46:2]; % UNLOCK ADDRESSES 00700000
+ P(IO(@140000100000000 & DISK [33:33:15]),DEL); 00710000
+ INDX ~ INDX + (SYSTEM | 5); 00720000
+ END; 00730000
+ M[DISK] := 0; %SET ADDRESS TO ZERO 00740000
+ DO R~IO(DISK INX @140000040100000 ) UNTIL R=0; 00750000
+ DIRECTOP := DATA [2]; 00760000
+ NOSYS := DATA [1]; 00770000
+ BASE := DATA [INDX]; 00780000
+ IF BASE LEQ DIRECTOP THEN 00790000
+ BEGIN M[@46] := @3145652143312460; %INVALID 00800000
+ M[@47] := @2124245125626260; %ADDRESS 00810000
+ M[@50] := @2646516044234737; %FOR MCP 00820000
+ P(IO(@740000000000046),DEL); 00830000
+ DO UNTIL FALSE; 00840000
+ END; 00850000
+ % BEGIN LOADING MCP (MAX SIZE IS 4080) 00860000
+ ADDRESS ~ 73; 00870000
+ DISKREED (@140000047704235 OR MODS); 00880000
+ ADDRESS ~ 10; 00890000
+ DISKREED (@140000047700473 OR MODS); 00900000
+ ADDRESS ~ 0; 00910000
+ DISKREED (@140000041200017 OR MODS); 00920000
+ % END MCP LOAD 00930000
+ MODS := MODS + @40; 00940000
+ M[@15] ~ @0441023201004441; %CODE TO PULL MCP DOWN 00950000
+ M[@16] ~ @0253010453527705; %THIS MOVES 4042 WDS 00960000
+ M[@17] ~ @3705005101002411; 00970000
+ BASE ~ BASE - 2; 00980000
+ M[0]:=BASE&SYSTEM[16:46:2]&(NOSYS)[14:46:2]; 00990000
+ P(1,STS,0,STF); 01000000
+ GO TO P([M[@15]]); 01010000
+ WHILE TRUE DO; 01020000
+ END OF HALT LOAD CARD..... 01030000
diff --git a/tools/xem/ALGOLXEM.alg_m b/tools/xem/ALGOLXEM.alg_m
index e84c6fa..a972451 100644
--- a/tools/xem/ALGOLXEM.alg_m
+++ b/tools/xem/ALGOLXEM.alg_m
@@ -2,7 +2,7 @@
$SET OMIT LISTOMITTED = LIST 00001000=00000999=
%#######################################################################00002000=00001000=
% 00003000=00001010=
-% B-5700 ALGOL/TSPOL SYMBOLIC 00004000=00001020=
+% B-5700 ALGOL/TSPOL XEM SYMBOLIC 00004000=00001020=
% MARK XVI.0.122 00005000=00001030=
% MAY 9, 1977 00006000=00001040=
% 00007000=00001050=
@@ -85,17 +85,17 @@ ERROR NUMBER ROUTINE:ERROR MESSAGE 00025000
00084000=00059000=
031 LISTDEC: MISSING ( IN LISTDEC. 00085000=00060000=
032 FORMATDEC: MISSING ( IN FORMAT DEC. 00086000=00061000=
- 033 SWITCHDEC: SWITCH DEC DOES NOT HAVE := OR 00087000=00062000=
+ 033 SWITCHDEC: SWITCH DEC DOES NOT HAVE ~ OR 00087000=00062000=
FORWARD AFTER IDENTIFIER. 00088000=00063000=
- 034 SWITCHFILEDEC:MISSING := AFTER FILED. 00089000=00064000=
+ 034 SWITCHFILEDEC:MISSING ~ AFTER FILED. 00089000=00064000=
035 SWITCHFILEDEC:NON FILE ID APPEARING IN DECLARATION 00090000=00065000=
OF SWITCHFILE. 00091000=00066000=
- 036 SUPERFORMATDEC:FORMAT ID NOT FOLLOWED BY := . 00092000=00067000=
+ 036 SUPERFORMATDEC:FORMAT ID NOT FOLLOWED BY ~ . 00092000=00067000=
037 SUPERFORMATDEC:MISSING ( AT START OF FORMATPHRASE . 00093000=00068000=
038 SUPERFORMATDEC:FORMAT SEGMENT >1022 WORDS. 00094000=00069000=
039 BLOCK: NUMBER OF NESTED BLOCKS IS GREATER THAN 31 00095000=00069100=
040 IODEC: PROGRAM PARAMETER BLOCK SIZE EXCEEDED 00096000=00069200=
- 041 HANDLESWLIST: MISSING := AFTER SWITCH LIST ID. 00097000=00069300=
+ 041 HANDLESWLIST: MISSING ~ AFTER SWITCH LIST ID. 00097000=00069300=
042 HANDLESWLIST: ILLEGAL LIST ID APPEARING IN SWITCH LIST. 00098000=00069400=
043 IODEC: MISSING ] AFTER DISK IN FILEDEC. 00099000=00069500=
044 IODEC: MISSING [ AFTER DISK IN FILEDEC. 00100000=00069600=
@@ -110,7 +110,7 @@ ERROR NUMBER ROUTINE:ERROR MESSAGE 00025000
052 SAVEPROC :STATEMENT MAY NOT START WITH THIS KIND OF 00109000=00069933=
IDENTIFIER. 00110000=00069934=
059 ARRAYDEC: IMPROPER ARRAY SIZE. 00111000=00069938=
- 060 FAULTSTMT: MISSING := IN FAULT STATEMENT. 00112000=00069940=
+ 060 FAULTSTMT: MISSING ~ IN FAULT STATEMENT. 00112000=00069940=
061 FAULTDEC: INVALID FAULT TYPE: MUST BE FLAG, EXPOVR, ZERO, 00113000=00069950=
INTOVR, OR INDEX. 00114000=00069960=
070 CASESTMT: MISSING BEGIN. 00115000=00069970=
@@ -232,7 +232,7 @@ ERROR NUMBER ROUTINE:ERROR MESSAGE 00025000
200 EMIT: SEGMENT TOO LARGE ( > 4093SYLLABLES). 00231000=00165000=
201 SIMPLE VARIABLE: PARTIAL WORD DESIGNATOR NOT LEFT-MOST 00232000=00166000=
IN A LEFT PART LIST. 00233000=00167000=
- 202 SIMPLE VARIABLE: MISSING . OR := . 00234000=00168000=
+ 202 SIMPLE VARIABLE: MISSING . OR ~ . 00234000=00168000=
203 SUBSCRIPTED VARIABLE: WRONG NUMBER OF SUBSCRIPTS IN A ROW 00235000=00169000=
DESIGNATOR. 00236000=00170000=
204 SUBSCRIPTED VARIABLE: MISSING ] IN A ROW DESIGNATOR. 00237000=00171000=
@@ -243,16 +243,16 @@ ERROR NUMBER ROUTINE:ERROR MESSAGE 00025000
208 SUBSCRIPTED VARIABLE: WRONG NUMBER OF SUBSCRIPTS. 00242000=00176000=
209 SUBSCRIPTED VARIABLE: PARTIAL WORD DESIGNATOR NOT LEFT- 00243000=00177000=
MOST IN A LEFT PART LIST. 00244000=00178000=
- 210 SUBSCRIPTED VARIABLE: MISSING , OR := . 00245000=00179000=
+ 210 SUBSCRIPTED VARIABLE: MISSING , OR ~ . 00245000=00179000=
211 VARIABLE: PROCEDURE ID USED OUTSIDE OF SCOPE IN LEFT PART.00246000=00180000=
212 VARIABLE: SUB-ARRAY DESIGNATOR PERMITTED AS ACTUAL 00247000=00180100=
PARAMETER ONLY. 00248000=00180200=
250 STREAM STMT:ILLEGAL STREAM STATEMENT. 00249000=00181000=
- 251 ANY STREAM STMT PROCEDURE: MISSING :=. 00250000=00182000=
+ 251 ANY STREAM STMT PROCEDURE: MISSING ~. 00250000=00182000=
252 INDEX: MISSING + OR - . 00251000=00183000=
253 INDEX: MISSING NUMBER OR STREAM VARIABLE. 00252000=00184000=
254 SCANNER: STRING, OCTAL, OR HEX CONSTANT HAS FLAG BIT SET. 00253000=00185000=
- 255 DSS: MISSING STRING IN DS:= LIT STATEMENT. 00254000=00186000=
+ 255 DSS: MISSING STRING IN DS~ LIT STATEMENT. 00254000=00186000=
256 RELEASES: MISSING PARENTHESIS OR FILE IDENTIFIER IS NOT 00255000=00187000=
A FORMAL PARAMETER. 00256000=00188000=
257 GOTOS,LABELS,OR JUMPS: LABEL SPECIFIED IS NOT ON THE SAME 00257000=00189000=
@@ -283,7 +283,7 @@ ERROR NUMBER ROUTINE:ERROR MESSAGE 00025000
286 DBLSTMT: ILLEGAL PARAMETER . 00282000=00211100=
290 FILEATTRIBUTEHANDLER: MISSING . IN FILE ATTRIBUTE PART 00283000=00211510=
291 FILEATTRIBUTEHANDLER: MISSING OR UNDEFINED FILE ATTRIBUTE00284000=00211520=
- 292 FILEATTRIBUTEHANDLER: MISSING := IN FILE ATTR ASSIGN STMT00285000=00211530=
+ 292 FILEATTRIBUTEHANDLER: MISSING ~ IN FILE ATTR ASSIGN STMT 00285000=00211530=
293 FILEATTRIBUTEHANDLER: FILE ATTRIBUTE IS NON ASSIGNABLE 00286000=00211540=
294 PRIMARY: FILE ATTRIBUTE IS NOT TYPE REAL 00287000=00211550=
295 FILEATTRIBUTEHANDLER: FILE ATTRIBUTE MUST BE LEFT MOST 00288000=00211551=
@@ -1051,8 +1051,8 @@ PROCEDURE STREAMTRANSFERWDSQQ(MBASE, SBASE, N); 00805300
IF N = 1 THEN 00806300
SBASE[SREG]:= MBASE[MREG] 00806400
ELSE 00806500
- REPLACE POINTER(SBASE[SREG]) BY 00806600
- POINTER(MBASE[MREG]) FOR N WORDS; 00806700
+ REPLACE POINTER(SBASE[SREG],0) BY 00806600
+ POINTER(MBASE[MREG],0) FOR N WORDS; 00806700
00806800
SREG:= *+N; 00806900
MREG:= *+N; 00807000
@@ -1406,6 +1406,43 @@ BOOLEAN PROCEDURE STREAMCOMPARELSSQQ(MBASE, SBASE, N); 00850400
00853400
STREAMCOMPARELSSQQ:= TFFF; 00853500
END STREAMCOMPARELSS; 00853600
+ 00853700
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00853800
+DEFINE STREAMCOMPARELEQ(N) = 00853900
+ STREAMCOMPARELEQQQ(MBASE, SBASE, N) #; 00854000
+BOOLEAN PROCEDURE STREAMCOMPARELEQQQ(MBASE, SBASE, N); 00854100
+ VALUE N; 00854200
+ ARRAY MBASE, SBASE[0]; 00854300
+ REAL N; 00854400
+ BEGIN COMMENT 00854500
+ COMPARES "N" CHARACTERS BETWEEN SOURCE AND DESTINATION FOR A 00854600
+ LESS-THAN-OR-EQUAL CONDITION. ADVANCES BOTH INDEXES BY "N". 00854700
+ EMULATES CEL. 00854800
+ ; 00854900
+ STREAMADJUSTSICHAR; 00855000
+ STREAMADJUSTDICHAR; 00855100
+ TFFF:= TRUE; 00855200
+ WHILE N > 0 DO 00855300
+ BEGIN 00855400
+ IF STREAMGETSC = STREAMGETDC THEN 00855500
+ BEGIN 00855600
+ STREAMSKIPSI(+1); 00855700
+ STREAMSKIPDI(+1); 00855800
+ N:= *-1; 00855900
+ END 00856000
+ ELSE 00856100
+ BEGIN 00856200
+ IF BICCOLLATE[STREAMGETSC] > BICCOLLATE[STREAMGETDC] THEN 00856300
+ TFFF:= FALSE; 00856400
+ 00856500
+ STREAMSKIPSI(+N); 00856600
+ STREAMSKIPDI(+N); 00856700
+ N:= 0; 00856800
+ END; 00856900
+ END WHILE; 00857000
+ 00857100
+ STREAMCOMPARELEQQQ:= TFFF; 00857200
+ END STREAMCOMPARELEQ; 00857300
00860000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00860100
DEFINE STREAMCOMPAREEQL(N) = 00860200
@@ -1441,6 +1478,41 @@ BOOLEAN PROCEDURE STREAMCOMPAREEQLQQ(MBASE, SBASE, N); 00860400
00863200
STREAMCOMPAREEQLQQ:= TFFF; 00863300
END STREAMCOMPAREEQL; 00863400
+ 00863500
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00863600
+DEFINE STREAMCOMPARENEQ(N) = 00863700
+ STREAMCOMPARENEQQQ(MBASE, SBASE, N) #; 00863800
+BOOLEAN PROCEDURE STREAMCOMPARENEQQQ(MBASE, SBASE, N); 00863900
+ VALUE N; 00864000
+ ARRAY MBASE, SBASE[0]; 00864100
+ REAL N; 00864200
+ BEGIN COMMENT 00864300
+ COMPARES "N" CHARACTERS BETWEEN SOURCE AND DESTINATION FOR A 00864400
+ NOT-EQUAL CONDITION. ADVANCES BOTH INDEXES BY "N". 00864500
+ EMULATES CNE. 00864600
+ ; 00864700
+ STREAMADJUSTSICHAR; 00864800
+ STREAMADJUSTDICHAR; 00864900
+ TFFF:= TRUE; 00865000
+ WHILE N > 0 DO 00865100
+ BEGIN 00865200
+ IF STREAMGETSC ^= STREAMGETDC THEN % COLLATING SEQ IS IMMATERIAL 00865300
+ BEGIN 00865400
+ STREAMSKIPSI(+1); 00865500
+ STREAMSKIPDI(+1); 00865600
+ N:= *-1; 00865700
+ END 00865800
+ ELSE 00865900
+ BEGIN 00866000
+ TFFF:= FALSE; 00866100
+ STREAMSKIPSI(+N); 00866200
+ STREAMSKIPDI(+N); 00866300
+ N:= 0; 00866400
+ END; 00866500
+ END WHILE; 00866600
+ 00866700
+ STREAMCOMPARENEQQQ:= TFFF; 00866800
+ END STREAMCOMPARENEQ; 00866900
00875000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%00875100
DEFINE STREAMCOMPAREGEQ(N) = 00875200
@@ -2360,8 +2432,7 @@ COMMENT INFO FORMAT 02675000
STREAMV = 18 #, COMMENT 22; 04170000=01297000=
DEFINEV = 19 #, COMMENT 23; 04175000=01298000=
AUXMEMV = 20 #, COMMENT 24; 04180000=01298500=
- FIELDV = 21 #; 04185000=01298600=
- COMMENT 25; 04190000=01298600=
+ FIELDV = 21 #; COMMENT 25; 04185000=01298600=
DEFINE 04195000=01299000=
ADES = 0 #, 04200000=01299000=
LDES = 2 #, 04205000=01299000=
@@ -2523,14 +2594,11 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
. E 05010000=01367330=
29 D; 05015000=01367340=
INTEGER 05020000=01368000=
- PDINX; 05025000=01368000=
- COMMENT THIS IS THE INDEX FOR PDPRT; 05030000=01368000=
+ PDINX; COMMENT THIS IS THE INDEX FOR PDPRT; 05025000=01368000=
INTEGER 05035000=01369000=
- SGAVL; 05040000=01369000=
- COMMENT NEXT AVAILABLE SEGMENT NUMBER; 05045000=01369000=
+ SGAVL; COMMENT NEXT AVAILABLE SEGMENT NUMBER; 05040000=01369000=
INTEGER 05050000=01370000=
- SGNO; 05055000=01370000=
- COMMENT THIS IS THE CURRENT SEGMENT NUMBER; 05060000=01370000=
+ SGNO; COMMENT THIS IS THE CURRENT SEGMENT NUMBER; 05055000=01370000=
ARRAY 05065000=01371000=
EDOC[0:7, 0:127], 05070000=01371000=
COP[0:63], 05075000=01371000=
@@ -2615,8 +2683,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
COMMENT ERRORTOG IS TRUE IF MESSAGES ARE CURRENTLY ACCEPTABLE TO THE05470000=01413000=
ERROR ROUTINES. ERRORCOUNT IS THE COUNT OF ERROR MSSGS; 05475000=01414000=
BOOLEAN 05480000=01415000=
- ENDTOG; 05485000=01415000=
- COMMENT ENDTOG TELLS THE TABLE TO ALLOW 05490000=01415000=
+ ENDTOG; COMMENT ENDTOG TELLS THE TABLE TO ALLOW 05485000=01415000=
COMMENT TO BE PASSED BACK TO COMPOUNDTAIL; 05495000=01416000=
BOOLEAN 05500000=01416500=
STREAMTOG; % STREAMTOG IS TRUE IF WE ARE COMPILING A 05505000=01416500=
@@ -2725,8 +2792,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
JOINFO, COMMENT POINTS TO PSEUDO LABEL FOR JUMP OUTS; 06020000=01482000=
LPRT, COMMENT SHOWS LOCATION OF THE LAST LABEL IN THE PRT ; 06025000=01483000=
NESTLEVEL, COMMENT COUNTS NESTING FOR GO TO AND JUMP OUTS; 06030000=01484000=
- JUMPLEVEL; 06035000=01485000=
- COMMENT NUMBER OF LEVELS TO BE JUMPED OUT; 06040000=01485000=
+ JUMPLEVEL; COMMENT NUMBER OF LEVELS TO BE JUMPED OUT; 06035000=01485000=
06045000=01486000=
COMMENT THE REALS ABOVE ARE FOR STREAM STATEMENT; 06050000=01486000=
ARRAY 06055000=01487000=
@@ -2820,7 +2886,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
ARRAY 06605000=01561056=
CBUFF[0:9]; % INPUT BUFFER. 06606000
ARRAY 06608000
- CODEBUFF[0:29]; % CODE FILE RECORD AREA 06608100
+ CODEBUFF[0:127]; % CODE FILE RECORD AREA 06608100
FILE 06640000=01561085=
DSK1(KIND=DISK, MAXRECSIZE=10, BLOCKSIZE=30, FRAMESIZE=48, 06645000=01561085=
AREAS=20, AREASIZE=816); 06645100
@@ -2879,8 +2945,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
SPECTOG, 07420000=01594000=
STOPENTRY, COMMENT THIS MAKES THE ENTRY PROCEDURE ENTER ONLY 07425000=01594000=
ONE ID AND THEN EIXT; 07430000=01595000=
- AJUMP; 07435000=01596000=
- COMMENT TELLS WHETHER A JUMP IS HANGING; 07440000=01596000=
+ AJUMP; COMMENT TELLS WHETHER A JUMP IS HANGING; 07435000=01596000=
BOOLEAN 07445000=01597000=
STOPDEFINE; 07450000=01597000=
REAL 07455000=01597100=
@@ -2892,37 +2957,35 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
FOR THE PROGRAM PARAMETER BLOCK FOR THE OBJECT PROGRAM; 07485000=01601000=
REAL 07490000=01603000=
KLASSF, COMMENT CLASS IN LOW ORDER 7 BITS; 07495000=01603000=
- ADDRSF, COMMENT ADDRESS IN LOW ORDER 11 BITS; 07500000=01604000=
- LEVELF, COMMENT LVL IN LOW ORDER 5 BITS; 07505000=01605000=
- LINKF, COMMENT LINK IN LOW ORDER 13 BITS; 07510000=01606000=
- INCRF, COMMENT INCR CN LOW ORDER 8 BITS; 07515000=01607000=
- PROINFO, COMMENT CONTAINS ELBAT WORD FOR PROCEDURE BEING 07520000=01608000=
+ ADDRSF, COMMENT ADDRESS IN LOW ORDER 11 BITS; 07500000=01604000=
+ LEVELF, COMMENT LVL IN LOW ORDER 5 BITS; 07505000=01605000=
+ LINKF, COMMENT LINK IN LOW ORDER 13 BITS; 07510000=01606000=
+ INCRF, COMMENT INCR CN LOW ORDER 8 BITS; 07515000=01607000=
+ PROINFO, COMMENT CONTAINS ELBAT WORD FOR PROCEDURE BEING 07520000=01608000=
DECLARED; 07525000=01609000=
- G, COMMENT GLOBAL TEMPORARY FOR BLOCK; 07530000=01610000=
- TYPEV, COMMENT USED TO CARRY CLASS OF IDENTIFIER 07535000=01611000=
+ G, COMMENT GLOBAL TEMPORARY FOR BLOCK; 07530000=01610000=
+ TYPEV, COMMENT USED TO CARRY CLASS OF IDENTIFIER 07535000=01611000=
BEING DECLARED; 07540000=01612000=
- PROADO, COMMENT CONTAINS ADDRESS OF PROCEDURE BEING 07545000=01613000=
+ PROADO, COMMENT CONTAINS ADDRESS OF PROCEDURE BEING 07545000=01613000=
DECLARED; 07550000=01614000=
- MARK, COMMENT CONTAINS INDEX INTO INFO WHERE FIRST WORD 07555000=01615000=
+ MARK, COMMENT CONTAINS INDEX INTO INFO WHERE FIRST WORD 07555000=01615000=
OF ADDITIONAL INFO FOR A PROCEDURE ENTRY; 07560000=01616000=
- PJ, COMMENT FORMAL PARAMETER COUNTER; 07565000=01617000=
- J, COMMENT ARRAY COUNTER; 07570000=01618000=
- LASTINFO, COMMENT INDEX TO LAST ENTRY IN INFO; 07575000=01619000=
- NEXTINFO, COMMENT INDEX FOR NEXT ENTRYIN INFO; 07580000=01620000=
- GLOBALNINFOO, 07585000=01620100=
- COMMENT MAINTAINS VALUE OF NINFOO FROM BLOCK ON A 07590000=01620100=
+ PJ, COMMENT FORMAL PARAMETER COUNTER; 07565000=01617000=
+ J, COMMENT ARRAY COUNTER; 07570000=01618000=
+ LASTINFO, COMMENT INDEX TO LAST ENTRY IN INFO; 07575000=01619000=
+ NEXTINFO, COMMENT INDEX FOR NEXT ENTRYIN INFO; 07580000=01620000=
+ GLOBALNINFOO, COMMENT MAINTAINS VALUE OF NINFOO FROM BLOCK ON A 07585000=01620100=
GLOBAL LEVEL SO TAHT THE PROCEDURE "ENTRY" 07595000=01620200=
CAN CHECK FOR DUPLICATE DECLARATIONS; 07600000=01620300=
- OLDNINFOO, COMMENT REMEMBERS OLD VALUE OF GLOBALNINFOO; 07605000=01620400=
- FIRSTX, COMMENT RELATIVE ADD OF FIRST EXECUTABLE CODE 07610000=01621000=
+ OLDNINFOO, COMMENT REMEMBERS OLD VALUE OF GLOBALNINFOO; 07605000=01620400=
+ FIRSTX, COMMENT RELATIVE ADD OF FIRST EXECUTABLE CODE 07610000=01621000=
IN BLOCK,INITIALIZED TO 4095 EACH TIME; 07615000=01622000=
- SAVEL; COMMENT SAVE LOCATION FOR FIXUPS IN BLOCK; 07620000=01623000=
+ SAVEL; COMMENT SAVE LOCATION FOR FIXUPS IN BLOCK; 07620000=01623000=
INTEGER 07625000=01624000=
- NCII; COMMENT THIS CONTAINS THE COUNT OF CONSTANTS 07625100=01624000=
- ENTERED IN INFO AT ANY GIVEN TIME; 07635000=01625000=
+ NCII; COMMENT THIS CONTAINS THE COUNT OF CONSTANTS 07625100=01624000=
+ ENTERED IN INFO AT ANY GIVEN TIME; 07635000=01625000=
REAL 07640000=01625100=
- FILETHING; 07645000=01625100=
- COMMENT HOLDS LINKS FOR STREAM RELEASES ; 07650000=01625100=
+ FILETHING; COMMENT HOLDS LINKS FOR STREAM RELEASES ; 07645000=01625100=
PROCEDURE UNHOOK; 07655000=01626000=
FORWARD; 07660000=01626000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07665000=01626000=
@@ -3018,17 +3081,15 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
; 08051200
INTEGER 08055000=01688020=
I; 08055100
- ARRAY 08055200
- TEMP[0:127]; 08055300
08060000=01688030=
FOR I:= 0 STEP 1 UNTIL 7 DO 08065000=01688030=
BEGIN 08070000=01688030=
- REPLACE POINTER(TEMP,0) BY 08075000=01688030=
+ REPLACE POINTER(CODEBUFF,0) BY 08075000=01688030=
POINTER(EDOC[I,*],0) FOR 128 WORDS; 08075100
REPLACE POINTER(EDOC[I,*],0) BY 08075200
POINTER(TEDOC[I,*],0) FOR 128 WORDS; 08075300
REPLACE POINTER(TEDOC[I,*],0) BY 08075400
- POINTER(TEMP,0) FOR 128 WORDS; 08075500
+ POINTER(CODEBUFF,0) FOR 128 WORDS; 08075500
END FOR; 08075600
END; 08210000=01688110=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%08212000
@@ -3038,8 +3099,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
TLO, 08230000=01689000=
THI; 08235000=01689000=
BOOLEAN 08240000=01690000=
- DPTOG; 08245000=01690000=
- COMMENT THE ABOVE THINGS ARE TEMP STORAGE FOR DOUBLE NOS;08250000=01691000=
+ DPTOG; COMMENT THE ABOVE THINGS ARE TEMP STORAGE FOR DOUBLE NOS;08245000=01690000=
DEFINE 08255000=01692000=
FZERO = 896 #; 08260000=01692000=
REAL 08265000=01693000=
@@ -3051,8 +3111,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
BOOLEAN 08295000=01694000=
STOPGSP; 08300000=01694000=
INTEGER 08305000=01695000=
- BUP; 08310000=01695000=
- COMMENT UNIQUE GLOBAL TEMP FOR BLOCK; 08315000=01696000=
+ BUP; COMMENT UNIQUE GLOBAL TEMP FOR BLOCK; 08310000=01695000=
ARRAY 08320000=01697000=
GTA1[0:10]; 08325000=01697000=
BOOLEAN ARRAY 08330000=01698000=
@@ -3234,7 +3293,7 @@ COMMENT "BLANKET" BLANKS OUT N+1 WORDS IN "THERE"; 09000000
P; 09655200
H:= TIME1 DIV 216000; 09715000=01828000=
MN:= (TIME1 DIV 3600) MOD 60; 09720000=01828000=
- REPLACE P:POINTER(CODEBUFF,8) BY CODE.TITLE; 09725000=01828500=
+ REPLACE P:POINTER(EBCDICBUFF,8) BY CODE.TITLE; 09725000=01828500=
N2:= MIN(OFFSET(P)-1, 118); 09730000=01828500=
WRITE(LINE, 09735000=01829100=
$ SET OMIT = NOT ALGOL 09735100=01829900=
@@ -3251,7 +3310,12 @@ COMMENT "BLANKET" BLANKS OUT N+1 WORDS IN "THERE"; 09000000
12*REAL(Q:=H MOD 12=0)+Q, 09735560
"00" & (MN MOD 10)[3:4] & (MN DIV 10)[11:4], 09735600=01834000=
IF H >= 12 THEN "PM." ELSE "AM.", 09735700=01835000=
- (120-N2) DIV 2, N2, POINTER(CODEBUFF,8), (120-N2) DIV 2, N2);09740000=01835550=
+ (120-N2) DIV 2, N2, POINTER(EBCDICBUFF,8), 09740000=01835550=
+ (120-N2) DIV 2, N2); 09745000
+ REPLACE P:POINTER(EBCDICBUFF,8) BY CARD.TITLE; 09745100
+ N2:= MIN(OFFSET(P)-1, 106); 09745200
+ WRITE(LINE, , 09745300
+ (120-N2) DIV 2, N2, POINTER(EBCDICBUFF,8)); 09745400
NOHEADING:= FALSE; 09760000=01837000=
END OF DATIME; 09765000=01837000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%09770000=01837000=
@@ -4201,6 +4265,7 @@ COMMENT DOLLARCARD HANDLES THE COMPILER CONTROL CARDS. 17235000
SETTING OF ALL OF THE COMPILER-DEFINED OPTIONS, ONE BIT PER 17345000=02304000=
OPTION. 17350000=02305000=
; 17355000=02306000=
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%17356000
BOOLEAN PROCEDURE FINDOPTION(BIT); 17360000=02307000=
VALUE 17365000=02307000=
BIT; 17370000=02307000=
@@ -4226,6 +4291,7 @@ FOUND: 17435000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%17465000=02318000=
PROCEDURE DOLLARCARD; 17470000=02319000=
BEGIN 17475000=02320000=
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%17476000
PROCEDURE SWITCHIT(XBIT); 17480000=02321000=
VALUE 17485000=02321000=
XBIT; 17490000=02321000=
@@ -4573,8 +4639,8 @@ LENGTH6: 19235000
6"CEG ", 6"CGR ", 6"BIS ", 6"BIR ", 6"OCV ", 6"ICV ", 19535000=02558000=
6"CEL ", 6"CLS ", 6"FSU ", 6"FAD ", 6"TRP ", 6"TRN ", 19540000=02558000=
6"TRZ ", 6"TRS "; 19545000=02558000=
- FILL POP[*] WITH 6"ZFN ", 6"ZBN ", 6"ZFD ", 6"ZBD ", 6"ISO " 19550000=02561000=
- , 0, "DIA ", 6"DIB ", 6"TRB ", 6"CFL ", 6"CFE "; 19555000=02562000=
+ FILL POP[*] WITH 6"ZFN ", 6"ZBN ", 6"ZFD ", 6"ZBD ", 6"ISO ", 19550000=02561000=
+ 0, 6"DIA ", 6"DIB ", 6"TRB ", 6"CFL ", 6"CFE "; 19555000=02562000=
END; 19560000=02563000=
GO AGAIN; 19565000=02564000=
END; 19570000=02565000=
@@ -4992,8 +5058,7 @@ COMMENT MIGHT BE FUNNY COMMA - HANDLE HERE; 20940000
RESULT:= 0; 21580000=02820000=
SCANNER; 21585000=02820000=
IF RESULT ^= 3 THEN 21590000=02821000=
- FLAG(47); 21595000=02821000=
- COMMENT NOT A NUMBER; 21600000=02821000=
+ FLAG(47); COMMENT NOT A NUMBER; 21595000=02821000=
Q:= ACCUM[1]; 21605000=02822000=
IF GT1:= T:= (IF T = 6"-" THEN-CONVERT ELSE CONVERT) < -46 OR T 21610000=02824000=
> 69 21615000=02824000=
@@ -5017,8 +5082,7 @@ COMMENT MIGHT BE FUNNY COMMA - HANDLE HERE; 20940000
END 21710000=02837000=
ELSE 21715000=02837000=
BEGIN 21720000=02837000=
- NHI:= FIRSTWORD(DOUBLE(NHI, NLO)*TEN[GT1 MOD 12], NLO) 21725000=02838000=
- ; 21730000=02838000=
+ NHI:= FIRSTWORD(DOUBLE(NHI, NLO)*TEN[GT1 MOD 12], NLO); 21725000=02838000=
FOR GT2:= 12 STEP 12 UNTIL GT1 DO 21735000=02839000=
NHI:= FIRSTWORD(DOUBLE(NHI, NLO)*TEN[12], NLO); 21740000=02840000=
END 21745000=02842000=
@@ -5149,8 +5213,7 @@ COMMENT SETUP FOR DEFINED IDS - SEE DEFINEGEN FOR MORE DETAILS; 22220000
BEGINPRINT; 22375000=02910600=
BSPOINT:= BSPOINT-REAL(BSPOINT > 0); % PREVENT INVALID INDEX 22380000=02910700=
END; 22385000=02910800=
- STOPDEFINE:= FALSE; 22390000=02911000=
- COMMENT ALLOW DEFINES AGAIN; 22395000=02911000=
+ STOPDEFINE:= FALSE; COMMENT ALLOW DEFINES AGAIN; 22390000=02911000=
IF NXTELBT:= NXTELBT+1 > 74 THEN 22400000=02912000=
IF NOT MACROID THEN 22405000=02913000=
BEGIN 22410000=02914000=
@@ -5169,8 +5232,7 @@ COMMENT SPECIAL HANDLING OF CONSTANTS FOR SAKE OF FOR STATEMENTS; 22470000
C:= INFO[0, ELBAT[P].ADDRESS]; 22475000=02923000=
ELBAT[P].CLASS:= TABLE:= NONLITNO 22480000=02925000=
END; 22485000=02925000=
- STOPDEFINE:= FALSE; 22490000=02926000=
- COMMENT ALLOW DEFINE; 22495000=02926000=
+ STOPDEFINE:= FALSE; COMMENT ALLOW DEFINE; 22490000=02926000=
END TABLE; 22500000=02927000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%22505000=02927000=
INTEGER PROCEDURE MOVEANDBLOCK(FROM, SIZE, NAME); 22510000=02927110=
@@ -6241,8 +6303,7 @@ FINISHED: 27380000
DO 27530000=04240000=
IF Q[I] = KEY THEN 27535000=04241000=
GO TO L; 27540000=04241000=
- I:= 0; 27545000=04242000=
- COMMENT ARGUMENT NOT FOUND,SEARCH=Q[1] ; 27550000=04242000=
+ I:= 0; COMMENT ARGUMENT NOT FOUND,SEARCH=Q[1] ; 27545000=04242000=
L: SEARCH:= Q[I+1]; 27555000=04243000=
END SEARCH; 27560000=04244000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%27565000=04244000=
@@ -6260,24 +6321,10 @@ L: SEARCH:= Q[I+1]; 27555000
IS PRECISILY = EDOC[(L DIV 4) DIV 128,(< DIV 4)MOD 128] 27625000=04267000=
SYLLABLE POSITION=(L MOD 4 ), WHERE L IS THE SYLLABLE 27630000=04268000=
NUMBER RELATIVE TO THE BEGINNING OF THE SEGMENT; 27635000=04269000=
- PROCEDURE PACK(WORD, WX, POSITION, SYLLABLE); 27640000=04270000=
- VALUE 27645000=04271000=
- WX, POSITION, SYLLABLE; 27650000=04271000=
- REAL 27650100
- WX, POSITION, SYLLABLE; 27650200
- ARRAY 27650300
- WORD[0]; 27650400
+ DEFINE PACK(WORD, WX, POSITION, SYLLABLE) = 27640000=04270000=
BEGIN 27660000=04272000=
- STREAMLOCALS; 27660100
- STREAMSETDI(WORD, WX); 27665000=04273000=
- STREAMSKIPDI(+POSITION); 27670000=04273000=
- STREAMSKIPDI(+POSITION); 27675000=04273000=
- STREAMSETLOCSI(SYLLABLE); 27680000=04274000=
- STREAMSKIPSI(+6); 27685000=04274000=
- STREAMTRANSFERCHR(2); 27690000=04275000=
- % PERHAPS WE SHOULD JUST DO 27690100
- % WORD[WX]:= * & (SYLLABLE)[47-POSITION*12:12]; 27690200
- END PACK; 27695000=04276000=
+ WORD[(WX)]:= * & (SYLLABLE)[47-(POSITION)*12:12]; 27665000=04273000=
+ END PACK #; 27695000=04276000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%27696000
PROCEDURE DEBUG(S); 27700000=04277000=
VALUE 27705000=04278000=
@@ -6361,8 +6408,7 @@ L: SEARCH:= Q[I+1]; 27555000
ELSE 28085000=04311080=
IF B ^= 33 THEN 28090000=04311080=
GO TO NORMAL; 28095000=04311080=
- EMITO(Q+197); 28100000=04311090=
- COMMENT -- THIS GETS OUT FIXED FIELD; 28105000=04311090=
+ EMITO(Q+197); COMMENT -- THIS GETS OUT FIXED FIELD; 28100000=04311090=
GO TO EXIT; 28110000=04311100=
END; 28115000=04311110=
NORMAL: 28120000=04312000=
@@ -6397,6 +6443,7 @@ EXIT: 28180000
S, 28265000=04502000=
T1, 28270000=04502000=
T2; 28275000=04502000=
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%28276000
PROCEDURE EMIT21(E, B); 28280000=04503000=
VALUE 28285000=04503000=
E, 28290000=04503000=
@@ -6732,8 +6779,7 @@ EXIT: 28625000
ADDRESS; 29920000=05149000=
REAL 29925000=05150000=
ADDRESS; 29930000=05150000=
- BEGIN 29935000=05151000=
- COMMENT PASSMONFILE GENERATES CODE TO PASS THE MONITOR 29940000=05151000=
+ BEGIN COMMENT PASSMONFILE GENERATES CODE TO PASS THE MONITOR 29935000=05151000=
FILE TO PRINTI; 29945000=05152000=
IF ADDRESS < 768 OR ADDRESS > 1023 THEN 29950000=05154000=
EMITL(5); 29955000=05154000=
@@ -6741,17 +6787,14 @@ EXIT: 28625000
END PASSMONFILE; 29965000=05156000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%29970000=05156000=
PROCEDURE PASFILE; 29975000=05157000=
- BEGIN 29980000=05158000=
- COMMENT PASFILE PASSES THE LAST THREE PARAMETERS TO KEN 29985000=05158000=
+ BEGIN COMMENT PASFILE PASSES THE LAST THREE PARAMETERS TO KEN 29980000=05158000=
MEYERS FOR THE LOCK, CLOSE, AND REWIND STATEMENTS; 29990000=05159000=
DEFINE 29995000=05160000=
- ELBATWORD = RR1 #; 30000000=05160000=
- COMMENT ELBATWORD CONTAINS THE 30005000=05160000=
+ ELBATWORD = RR1 #; COMMENT ELBATWORD CONTAINS THE 30000000=05160000=
ELBATWORD FOR THE FILE BEING 30010000=05161000=
OPERATED ON; 30015000=05162000=
DEFINE 30020000=05163000=
- LTEMP = RR2 #; 30025000=05163000=
- COMMENT LTEMP IS USED TO HOLD THE L 30030000=05163000=
+ LTEMP = RR2 #; COMMENT LTEMP IS USED TO HOLD THE L 30025000=05163000=
REGISTER SETTING FOR THE SAVE OR 30035000=05164000=
RELEASE LITERAL THAT GETS PASSED TO 30040000=05165000=
KEN MYERS; 30045000=05166000=
@@ -7024,8 +7067,7 @@ COMMENT PASSLIST ASSUMES I IS POINTING AT LIST ID; 30260000
IF FIRST+SECOND <= 48 THEN 31270000=05282000=
COMMENT IF TESTS ARE PASSED THEN RANGES OF LITERALS ARE O.K.; 31275000=05283000=
GO TO EXIT; 31280000=05284000=
- ERR(114); 31285000=05285000=
- COMMENT ERROR IF SYNTAX OR RANGE FAILS; 31290000=05285000=
+ ERR(114); COMMENT ERROR IF SYNTAX OR RANGE FAILS; 31285000=05285000=
DOTSYNTAX:= TRUE; 31295000=05286000=
EXIT: 31300000=05286000=
END DOTSYNTAX; 31305000=05286000=
@@ -7037,8 +7079,7 @@ EXIT: 31300000
REAL 31335000=05289000=
ELBATCLASS, 31340000=05289000=
ERRORNUMBER; 31345000=05289000=
- BEGIN 31350000=05290000=
- COMMENT CHECK COMPARES ELBATCLASS WITH TABLE(I). IF THEY 31355000=05290000=
+ BEGIN COMMENT CHECK COMPARES ELBATCLASS WITH TABLE(I). IF THEY 31350000=05290000=
ARE NOT EQUAL, CHECK IS SET TRUE AND THE ERROR ROUTINE IS 31360000=05291000=
CALLED PASSING ERRORNUMBER. IF THEY ARE EQUAL CHECK IS SET31365000=05292000=
FALSE; 31370000=05293000=
@@ -7092,8 +7133,7 @@ EXIT: 31300000
INFOINDEX[0]; 31665200
REAL 31665300
IX, SIZE; 31665400
- BEGIN 31670000=05319000=
- COMMENT GETALPHA PICKS ALPHA CHARACTERS OUT OF INFO AND 31675000=05319000=
+ BEGIN COMMENT GETALPHA PICKS ALPHA CHARACTERS OUT OF INFO AND 31670000=05319000=
FORMATS THE ID WORD THAT IS PASSED TO PRINTI. THE FIRST 31680000=05320000=
CHARACTER CONTAINS THE SIZE. THE NEXT CHARACTER CONTAINS THE 31685000=05321000=
ALPHA LEFT JUSTIFIED WITH TRAILING ZEROS; 31690000=05322000=
@@ -7142,6 +7182,7 @@ EXIT: 31300000
XIT, 31870000=05325080=
JUMPOUT; 31871000=05325080=
31871100
+ TALLY:= 0; 31873000
STREAMSETLOCSI(PORS); 31875000=05325090=
STREAMSKIPSI(+3); 31880000=05325090=
STREAMSETDI(LIN, 0); % "PRT" OR "STACK". 31885000=05325090=
@@ -7901,8 +7942,7 @@ EXIT: 35180000
RP, 35505000
LDOT, 35510000
LAMPER; 35515000
- GO TO S[ELCLASS-PROCID]; 35520000=06091000=
- COMMENT GO TO PROPER SYNTAXER; 35525000=06091000=
+ GO TO S[ELCLASS-PROCID]; COMMENT GO TO PROPER SYNTAXER; 35520000=06091000=
IF ELCLASS = UNKNOWNID THEN 35530000=06092000=
ERR(100); 35535000=06092000=
IF ELCLASS = FILEID OR ELCLASS = SUPERFILEID THEN 35540000=06092005=
@@ -8010,8 +8050,7 @@ RP: IF ELCLASS ^= RTPAREN THEN 36025000
END; 36045000=06125000=
STEPIT; 36050000=06126000=
LDOT: 36055000=06127000=
- DOT; 36060000=06127000=
- COMMENT THIS CHECKS FOR PARTIAL WORDS; 36065000=06127000=
+ DOT; COMMENT THIS CHECKS FOR PARTIAL WORDS; 36060000=06127000=
LAMPER: 36070000=06128000=
STACKCT:= STACKCT+1; 36075000=06128000=
WHILE ELCLASS = AMPERSAND DO 36080000=06129000=
@@ -8334,8 +8373,7 @@ FAH: 37635000
COMMENT FINISHED IF EXPRESSION COMPILED WAS DESIGNATIONAL; 37650000=06264000=
IF TYPE = BTYPE THEN 37655000=06265000=
BEGIN 37660000=06265000=
- TD: DOT; 37665000=06266000=
- COMMENT HANDLES PARTIAL WORDS; 37670000=06266000=
+ TD: DOT; COMMENT HANDLES PARTIAL WORDS; 37665000=06266000=
T: STACKCT:= STACKCT+1; 37675000=06267000=
WHILE ELCLASS = AMPERSAND DO 37680000=06267500=
COMMENT HANDLES CONCATENATE; 37685000=06268000=
@@ -8463,8 +8501,7 @@ COMMENT SET UP CODE FOR RELATIONAL OPERATOR TO BE 37990000
STACKCT:= 0; 38285000=06296500=
THENBRANCH:= BUMPL; 38290000=06297000=
COMMENT SAVE L FOR LATER FIXUP; 38295000=06298000=
- IFEXP:= TYPE:= EXPRSS; 38300000=06299000=
- COMMENT COMPILE 1ST EXPRSS; 38305000=06299000=
+ IFEXP:= TYPE:= EXPRSS; COMMENT COMPILE 1ST EXPRSS; 38300000=06299000=
STACKCT:= 0; 38310000=06299500=
ELSEBRANCH:= BUMPL; 38315000=06300000=
EMITB(BFC, THENBRANCH, L); 38320000=06301000=
@@ -8480,8 +8517,7 @@ COMMENT SET UP CODE FOR RELATIONAL OPERATOR TO BE 37990000
DEXP 38370000=06305000=
ELSE 38375000=06305000=
BEXP; 38380000=06305000=
- STACKCT:= 1; 38385000=06305500=
- COMMENT THIS COMPILES PROPER TYPE SECOND EXPRSS; 38390000=06306000=
+ STACKCT:= 1; COMMENT THIS COMPILES PROPER TYPE SECOND EXPRSS; 38385000=06305500=
EMITB(BFW, ELSEBRANCH, L); 38395000=06307000=
EMIT(1); 38400000=06308000=
L:= L-1; 38405000=06308000=
@@ -8866,8 +8902,7 @@ EXIT: 40190000
I:= I-1; 40300000=07008000=
BEGINCTR:= BEGINCTR+1; 40305000=07008000=
ANOTHER: 40310000=07009000=
- ERRORTOG:= TRUE; 40315000=07009000=
- COMMENT ALLOW ERROR MESSAGES; 40320000=07009000=
+ ERRORTOG:= TRUE; COMMENT ALLOW ERROR MESSAGES; 40315000=07009000=
STEPIT; 40325000=07010000=
IF STREAMTOG THEN 40330000=07011000=
STREAMSTMT 40335000=07011000=
@@ -9166,8 +9201,7 @@ ANOTHER: 41195000
IF VBIT THEN 41815000=07124000=
VE: T1:= EXPRSS COMMENT VALUE CALL EXPRESSION; 41820000=07125000=
ELSE 41825000=07126000=
- BEGIN 41830000=07126000=
- COMMENT NAME CALL EXPRESSION; 41835000=07126000=
+ BEGIN COMMENT NAME CALL EXPRESSION; 41830000=07126000=
IF SBIT THEN 41840000=07127000=
BEGIN 41845000=07127000=
FLAG(122); 41850000=07127000=
@@ -9178,8 +9212,7 @@ ANOTHER: 41195000
T3:= PROGDESCBLDR(0, L, 0); 41875000=07130000=
COMMENT BUILD DESCRIPTOR FOR ACCIDENTAL ENTRY AND PREPARE JUMP 41880000=07131000=
AROUND CODE FOR EXPRESSION; 41885000=07132000=
- T1:= EXPRSS; 41890000=07133000=
- COMMENT COMPILE EXPRESSION; 41895000=07133000=
+ T1:= EXPRSS; COMMENT COMPILE EXPRESSION; 41890000=07133000=
STORE: 41900000=07134000=
EMITPAIR(JUNK, STD); 41905000=07134000=
EMITN(JUNK); 41910000=07134000=
@@ -9298,11 +9331,9 @@ ANOTHER: 41195000
ATYPE; 42465000=07204000=
IF ELCLASS = COMMA OR ELCLASS = RTPAREN THEN 42470000=07205000=
COMMENT WE ARE AT END OF PARAMETER; 42475000=07206000=
- IF T6 = 0 THEN 42480000=07207000=
- COMMENT MORE THAN SUBSCRIPTED VARIABLE; 42485000=07207000=
+ IF T6 = 0 THEN COMMENT MORE THAN SUBSCRIPTED VARIABLE; 42480000=07207000=
GO TO STORE 42490000=07208000=
- ELSE 42495000=07208000=
- COMMENT SUBSCRIPTED VARIABLE; 42500000=07208000=
+ ELSE COMMENT SUBSCRIPTED VARIABLE; 42495000=07208000=
GO TO LRTS; 42505000=07209000=
IF T1 = BTYPE THEN 42510000=07210000=
GO TO FINISHBOO; 42515000=07210000=
@@ -9375,15 +9406,13 @@ COMMON: 42800000
END; 42850000=07239000=
IF NOT FBIT THEN 42855000=07240000=
IF TAKE(INDEX).NODIMPART+1 ^= PCTR THEN 42860000=07242000=
- BEGIN 42865000=07242000=
- COMMENT WRONG NUMBER OF PARAMETERS; 42870000=07242000=
+ BEGIN COMMENT WRONG NUMBER OF PARAMETERS; 42865000=07242000=
ERR(128); 42875000=07243000=
GO TO EXIT 42880000=07243000=
END; 42885000=07243000=
STEPIT; 42890000=07244000=
GO TO EXIT; 42895000=07244000=
-L5: 42900000=07246000=
- COMMENT FORMATS; 42905000=07246000=
+L5: COMMENT FORMATS; 42900000=07246000=
I:= I-1; 42910000=07247000=
FGEN: 42915000=07248000=
PASSFORMAT; 42920000=07248000=
@@ -9394,8 +9423,7 @@ FGEN: 42915000
END; 42945000=07249000=
I:= I+1; 42950000=07250000=
GO TO BS; 42955000=07251000=
-L6: 42960000=07253000=
- COMMENT SUPERFORMAT; 42965000=07253000=
+L6: COMMENT SUPERFORMAT; 42960000=07253000=
IF FBIT THEN 42970000=07255000=
BEGIN 42975000=07255000=
EMITV(ADDRSF); 42980000=07255000=
@@ -9449,8 +9477,7 @@ LP: IF T1:= TAKE(WHOLE:= GIT(WHOLE)).[7:8] = 0 THEN 43175000
SCLASS:= SCLASS+4; 43220000=07282000=
I:= I-2; 43225000=07283000=
STEPIT; 43230000=07283000=
- GO TO NORMAL; 43235000=07284000=
- COMMENT WE LET OUT NORMAL MECHANISM FOR 43240000=07284000=
+ GO TO NORMAL; COMMENT WE LET OUT NORMAL MECHANISM FOR 43235000=07284000=
EXPRESSIONS HANDLE THIS CASE; 43245000=07285000=
END THE CASE OF ZERO PARAMETERS; 43250000=07286000=
TB1:= TRUE; 43255000=07287000=
@@ -9487,8 +9514,7 @@ LP: IF T1:= TAKE(WHOLE:= GIT(WHOLE)).[7:8] = 0 THEN 43175000
EMITB(BFW, T5, L); 43410000=07312000=
ADDRSF:= T6 43415000=07312000=
END; 43420000=07312000=
- GO TO LODPOINT; 43425000=07313000=
- COMMENT IN ANY CASE LOAD A DESCRIPTOR; 43430000=07313000=
+ GO TO LODPOINT; COMMENT IN ANY CASE LOAD A DESCRIPTOR; 43425000=07313000=
L11: 43435000=07315000=
COMMENT INTRINSIC PROCEDURE; 43440000=07315000=
43445000=07316000=
@@ -9902,8 +9928,7 @@ EXIT: 45090000
END; 45480000=07510000=
ELBW:= ELBAT[I]; 45485000=07511000=
IF ELBW < 0 THEN 45490000=07513000=
- BEGIN 45495000=07513000=
- COMMENT THIS IS A MONITORED SWITCH; 45500000=07513000=
+ BEGIN COMMENT THIS IS A MONITORED SWITCH; 45495000=07513000=
EMITO(MKS); 45505000=07514000=
PASSALPHA(ELBW); 45510000=07514000=
EMITPAIR(GNAT(CHARI), LOD); 45515000=07515000=
@@ -10115,12 +10140,10 @@ EXIT: 46270000
END; 46545000=07609700=
PUT(-ADDITIONAL & L[11:11:12], INDEX); 46550000=07610000=
IF ELBATWORD < 0 THEN 46555000=07612000=
- BEGIN 46560000=07612000=
- COMMENT THIS LABEL IS EITHER APPEARS IN A DUMP 46565000=07612000=
+ BEGIN COMMENT THIS LABEL IS EITHER APPEARS IN A DUMP 46560000=07612000=
OR MONITOR DECLARATION; 46570000=07613000=
IF RR1:= ADDITIONAL.LABLMONFILE ^= 0 THEN 46575000=07615000=
- BEGIN 46580000=07615000=
- COMMENT THIS CODE IS FOR MONITORED 46585000=07615000=
+ BEGIN COMMENT THIS CODE IS FOR MONITORED 46580000=07615000=
LABELS; 46590000=07616000=
EMITO(MKS); 46595000=07617000=
PASSALPHA(ELBATWORD); 46600000=07617000=
@@ -10130,16 +10153,14 @@ EXIT: 46270000
EMITV(GNAT(PRINTI)); 46620000=07620000=
END; 46625000=07621000=
IF RR1:= ADDITIONAL.DUMPEE ^= 0 THEN 46630000=07623000=
- BEGIN 46635000=07623000=
- COMMENT EMIT CODE TO INCREMENT THE 46640000=07623000=
+ BEGIN COMMENT EMIT CODE TO INCREMENT THE 46635000=07623000=
LABEL COUNTER; 46645000=07624000=
EMITV(RR1); 46650000=07625000=
EMITL(1); 46655000=07625000=
EMITO(ADD); 46660000=07625000=
EMITPAIR(RR1, STD); 46665000=07626000=
IF RR1:= ADDITIONAL.DUMPOR ^= 0 THEN 46670000=07628000=
- BEGIN 46675000=07628000=
- COMMENT EMIT CODE TO CALL 46680000=07628000=
+ BEGIN COMMENT EMIT CODE TO CALL 46675000=07628000=
THE DUMP ROUTINE; 46685000=07629000=
STUFFF(RR1); 46690000=07633000=
EMITO(XCH); 46695000=07634000=
@@ -10909,8 +10930,7 @@ XXX: 50385000
SND 50460000=07923000=
ELSE 50465000=07923000=
STD; 50470000=07923000=
- FAULTOG:= BOOLEAN(1) OR FAULTOG; 50475000=07923100=
- COMMENT TELLS DEXP TO MESS 50480000=07923100=
+ FAULTOG:= BOOLEAN(1) OR FAULTOG; COMMENT TELLS DEXP TO MESS 50475000=07923100=
WITH FAULTLEVEL; 50485000=07923150=
IF STEPI ^= ASSIGNOP THEN 50490000=07924000=
ERR(60) 50495000=07924000=
@@ -10934,8 +10954,7 @@ XXX: 50385000
T; 50585000=07930000=
INTEGER 50590000=07930000=
T; 50595000=07930000=
- BEGIN 50600000=07931000=
- COMMENT KLUDGE HANDLES ARRAY-ROW READS AND WRITES FOR 50605000=07931000=
+ BEGIN COMMENT KLUDGE HANDLES ARRAY-ROW READS AND WRITES FOR 50600000=07931000=
THOSE CASES WHICH DO NOT NEED TO GO THROUGH THE 50610000=07932000=
FORMATTING INTRINSICS. A NEW MCP INTRINSIC IS 50615000=07933000=
USED, TO FURTHER IMPROVE SPEED/DECREASE CORE USE; 50620000=07934000=
@@ -10968,8 +10987,7 @@ XXX: 50385000
GO TO EXIT; 50740000=07943000=
END; 50745000=07943000=
EMITO(XCH); 50750000=07944000=
- IF T < 0 THEN 50755000=07945000=
- COMMENT FROM WRITE...(<0 IS FROM READ); 50760000=07945000=
+ IF T < 0 THEN COMMENT FROM WRITE...(<0 IS FROM READ); 50755000=07945000=
BEGIN 50765000=07946000=
EMITPAIR(JUNK, STD); 50770000=07946000=
EMITO(XCH); 50775000=07946000=
@@ -11294,8 +11312,7 @@ EXIT: 50860000
TEST 52370000=08131000=
END 52375000=08132000=
ELSE 52380000=08132000=
- BEGIN 52385000=08132000=
- COMMENT STEP-WHILE ELEMENT; 52390000=08132000=
+ BEGIN COMMENT STEP-WHILE ELEMENT; 52385000=08132000=
IF ELCLASS ^= WHILEV THEN 52395000=08133000=
BEGIN 52400000=08134000=
ERR(153); 52405000=08134000=
@@ -11484,20 +11501,16 @@ EXIT: 53290000
END FORSTMT; 53300000=08232000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%53305000=08232000=
PROCEDURE HANDLETHETAILENDOFAREADORSPACESTATEMENT; 53310000=08233000=
- BEGIN 53315000=08234000=
- COMMENT THIS ROUTINE CHECK FOR ACTION LABELS IN READ AND 53320000=08234000=
+ BEGIN COMMENT THIS ROUTINE CHECK FOR ACTION LABELS IN READ AND 53315000=08234000=
SPACE STATEMENTS AND GENERATES THE APPROPRIATE CODE; 53325000=08235000=
LABEL 53330000=08236000=
- PASSPARLABL; 53335000=08236000=
- COMMENT WHEN I REACH THIS LABEL A 53340000=08236000=
+ PASSPARLABL; COMMENT WHEN I REACH THIS LABEL A 53335000=08236000=
COLON HAS JUST BEEN DETECTED; 53345000=08237000=
LABEL 53350000=08238000=
- EXIT; 53355000=08238000=
- COMMENT THE LABEL EXIT APPEARS AFTER THE LAST53360000=08238000=
+ EXIT; COMMENT THE LABEL EXIT APPEARS AFTER THE LAST53355000=08238000=
EXECUTABLE STATEMENT IN THIS ROUTINE; 53365000=08239000=
IF STEPI = LFTBRKET THEN 53370000=08241000=
- BEGIN 53375000=08241000=
- COMMENT THIS CODE HANDLES PARITY AND END OF 53380000=08241000=
+ BEGIN COMMENT THIS CODE HANDLES PARITY AND END OF 53375000=08241000=
FILE LABELS; 53385000=08242000=
IF STEPI ^= COLON THEN 53390000=08243000=
DEXP 53395000=08243000=
@@ -11511,14 +11524,12 @@ EXIT: 53290000
DEXP 53435000=08245000=
END; 53440000=08245000=
IF CHECK(RTBRKET, 433) THEN 53445000=08278000=
- GO TO EXIT; 53450000=08278000=
- COMMENT ERROR 433 MEANS MISSING RIGHT BRACKET 53455000=08279000=
+ GO TO EXIT; COMMENT ERROR 433 MEANS MISSING RIGHT BRACKET 53450000=08278000=
IN READ OR SPACE STATEMENT; 53460000=08280000=
STEPIT; 53465000=08281000=
END 53470000=08283000=
ELSE 53475000=08283000=
- BEGIN 53480000=08283000=
- COMMENT THERE ARE NOT ANY ACTION LABELS IN THIS53485000=08283000=
+ BEGIN COMMENT THERE ARE NOT ANY ACTION LABELS IN THIS53480000=08283000=
CASE; 53490000=08284000=
EMITL(0); 53495000=08285000=
EMITL(0); 53500000=08285000=
@@ -11551,8 +11562,7 @@ EXIT: 53560000
EMITO(965) 53635000=08289030=
END #; 53640000=08289030=
PROCEDURE READSTMT; 53645000=08290000=
- BEGIN 53650000=08291000=
- COMMENT READSTMT GENERATES CODE TO CALL INTERPTI)WHICH IS53655000=08291000=
+ BEGIN COMMENT READSTMT GENERATES CODE TO CALL INTERPTI)WHICH IS53650000=08291000=
SHORT FOR INTERPRET INPUT) AN INTRINSIC PROCEDURE ON THE 53660000=08292000=
DRUM, PASSING TO IT PARAMETERS DETERMINED BY THE FORMAT OF53665000=08293000=
THE READ OR SPACE STATEMENT. 53670000=08294000=
@@ -11636,23 +11646,19 @@ EXIT: 53560000
DESCRIPTOR,END OF FILE LABEL,PARITY LABEL) 54060000=08372000=
*********************************************************;54065000=08373000=
DEFINE 54070000=08374000=
- REVERSETOG = RRB1 #; 54075000=08374000=
- COMMENT REVERSETOG IS SET TRUE54080000=08374000=
+ REVERSETOG = RRB1 #; COMMENT REVERSETOG IS SET TRUE54075000=08374000=
IF THE STATEMENT BEING COMPILED54085000=08375000=
IS A READ REVERSE, OTHERWISE IT54090000=08376000=
IS SET FALSE; 54095000=08377000=
LABEL 54100000=08378000=
- EXIT; 54105000=08378000=
- COMMENT EXIT APPEARS AFTER THE LAST 54110000=08378000=
+ EXIT; COMMENT EXIT APPEARS AFTER THE LAST 54105000=08378000=
EXECUTABLE STATEMENT IN READSTMT; 54115000=08379000=
LABEL 54120000=08380000=
- CHKACTIONLABELS; 54125000=08380000=
- COMMENT THE CODE AT THIS LABEL 54130000=08380000=
+ CHKACTIONLABELS; COMMENT THE CODE AT THIS LABEL 54125000=08380000=
ASSUMES I IS POINTING AT THE RIGHT 54135000=08381000=
PARENTHESIS; 54140000=08382000=
LABEL 54145000=08383000=
- PASSLIST; 54150000=08383000=
- COMMENT THE CODE AT PASSLIST EXPECTS I TO54155000=08383000=
+ PASSLIST; COMMENT THE CODE AT PASSLIST EXPECTS I TO54150000=08383000=
BE POINTING AT THE LAST QUANTITY IN THE 54160000=08384000=
SECOND PARAMETER; 54165000=08385000=
LABEL 54170000=08385100=
@@ -11660,23 +11666,19 @@ EXIT: 53560000
REAL 54176000
TVAR; % FOR VARIABLE() NAME PARAM 54177000
INTEGER 54180000=08385500=
- LISTADDRESS; 54185000=08385500=
- COMMENT TEMP TO HOLD LIST ADD DESC; 54190000=08385500=
+ LISTADDRESS; COMMENT TEMP TO HOLD LIST ADD DESC; 54185000=08385500=
BOOLEAN 54195000=08385600=
SEEKTOG, 54200000=08385600=
LOCKTOG, 54205000=08385600=
GRABTOG; % 54210000=08385600=
BOOLEAN 54215000=08385700=
- MAYI; 54220000=08385700=
- COMMENT TRUE IF "FILE" IS ARRAY ROW; 54225000=08385700=
+ MAYI; COMMENT TRUE IF "FILE" IS ARRAY ROW; 54220000=08385700=
INTEGER 54230000=08385800=
- HOLD; 54235000=08385800=
- COMMENT L MAY GET CUT BACK TO HERE; 54240000=08385800=
+ HOLD; COMMENT L MAY GET CUT BACK TO HERE; 54235000=08385800=
IF STEPI = LEFTPAREN THEN 54245000=08387000=
REVERSETOG:= SEEKTOG:= FALSE 54250000=08387000=
ELSE 54255000=08388000=
- BEGIN 54260000=08388000=
- COMMENT THIS HAD BETTER SAY REVERSE; 54265000=08388000=
+ BEGIN COMMENT THIS HAD BETTER SAY REVERSE; 54260000=08388000=
REVERSETOG:= ACCUM[1] = 6"7REVER"; 54270000=08389000=
LOCKTOG:= ELCLASS = LOCKV; 54275000=08390000=
SEEKTOG:= ACCUM[1] = 6"4SEEK0"; 54280000=08390500=
@@ -11688,8 +11690,7 @@ EXIT: 53560000
GO TO EXIT; 54310000=08393000=
END; 54315000=08394000=
IF CHECK(LEFTPAREN, 421) THEN 54320000=08395000=
- GO TO EXIT; 54325000=08396000=
- COMMENT ERROR 421 MEANS MISSING LEFT 54330000=08397000=
+ GO TO EXIT; COMMENT ERROR 421 MEANS MISSING LEFT 54325000=08396000=
PARENTHESIS IN READ REVERSE STATEMENT; 54335000=08398000=
END; 54340000=08399000=
EMITO(MKS); 54345000=08400000=
@@ -11716,8 +11717,7 @@ EXIT: 53560000
BEGIN 54445000=08401090=
EMITPAIR(GNAT(POWERSOFTEN), LOD); 54450000=08402000=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 54455000=08404000=
- BEGIN 54460000=08404000=
- COMMENT ERROR 422 MEANS MISSING FILE IN READ 54465000=08404000=
+ BEGIN COMMENT ERROR 422 MEANS MISSING FILE IN READ 54460000=08404000=
STATEMENT; 54470000=08405000=
ERR(422); 54475000=08406000=
GO TO EXIT; 54480000=08406000=
@@ -11873,8 +11873,7 @@ EXIT: 53560000
EMITO(CHS); 55230000=08421000=
END; 55235000=08421500=
IF ELCLASS = RTPAREN THEN 55240000=08423000=
- BEGIN 55245000=08423000=
- COMMENT NO FORMAT,NO LIST CASE; 55250000=08423000=
+ BEGIN COMMENT NO FORMAT,NO LIST CASE; 55245000=08423000=
EMITL(0); 55255000=08424000=
EMITL(0); 55260000=08424000=
EMITL(0); 55265000=08424000=
@@ -11886,15 +11885,13 @@ EXIT: 53560000
COMMENT ERROR 424 MEANS IMPROPER FILE DELIMITER IN READ 55295000=08429000=
STATEMENT; 55300000=08430000=
IF STEPI = FACTOP THEN 55305000=08432000=
- BEGIN 55310000=08432000=
- COMMENT *,LIST CASE; 55315000=08432000=
+ BEGIN COMMENT *,LIST CASE; 55310000=08432000=
EMITL(0); 55320000=08433000=
EMITL(0); 55325000=08433000=
GO PASSLIST; 55330000=08433000=
END; 55335000=08434000=
IF ELCLASS = MULOP THEN 55340000=08436000=
- BEGIN 55345000=08436000=
- COMMENT FREE FIELD FORMAT CASE; 55350000=08436000=
+ BEGIN COMMENT FREE FIELD FORMAT CASE; 55345000=08436000=
IF STEPI = MULOP THEN 55355000=08437000=
EMITL(2) 55360000=08437000=
ELSE 55365000=08437000=
@@ -11906,16 +11903,14 @@ EXIT: 53560000
GO TO PASSLIST; 55395000=08437075=
END; 55400000=08438000=
IF RANGE(FRMTID, SUPERFRMTID) THEN 55405000=08440000=
- BEGIN 55410000=08440000=
- COMMENT THE SECOND PARAMETER IS A FORMAT; 55415000=08440000=
+ BEGIN COMMENT THE SECOND PARAMETER IS A FORMAT; 55410000=08440000=
PASSFORMAT; 55420000=08441000=
READXFORM: 55425000=08442000=
IF TABLE(I+1) = COMMA THEN 55430000=08443000=
GO PASSLIST; 55435000=08443000=
STEPIT; 55440000=08444000=
IF CHECK(RTPAREN, 425) THEN 55445000=08446000=
- GO TO EXIT; 55450000=08446000=
- COMMENT ERROR 425 MEANS IMPROPER FORMAT 55455000=08447000=
+ GO TO EXIT; COMMENT ERROR 425 MEANS IMPROPER FORMAT 55450000=08446000=
DELIMITER IN READ STATEMENT; 55460000=08448000=
EMITL(0); 55465000=08449000=
GO CHKACTIONLABELS; 55470000=08449000=
@@ -11972,8 +11967,7 @@ PASSLIST: 55685000
END; 55740000=08484000=
CHECKER(ELBAT[I]); 55745000=08484500=
IF ELCLASS = SUPERLISTID THEN 55750000=08485000=
- BEGIN 55755000=08486000=
- COMMENT SUBSCRIPTED SWITCH LIST ID; 55760000=08486000=
+ BEGIN COMMENT SUBSCRIPTED SWITCH LIST ID; 55755000=08486000=
LISTADDRESS:= ELBAT[I].ADDRESS; 55765000=08488000=
BANA; 55770000=08489000=
EMITV(LISTADDRESS); 55775000=08489500=
@@ -11983,8 +11977,7 @@ PASSLIST: 55685000
I:= I-1 55795000=08489520=
END 55800000=08489530=
ELSE 55805000=08489530=
- BEGIN 55810000=08489530=
- COMMENT A COMMON LIST; 55815000=08489530=
+ BEGIN COMMENT A COMMON LIST; 55810000=08489530=
EMITPAIR(ELBAT[I].ADDRESS, LOD); 55820000=08489550=
END; 55825000=08489560=
STEPIT; 55830000=08489570=
@@ -12168,15 +12161,13 @@ EXIT: 56725000
END OF FILEATTRIBUTEHANDLER; 56730000=08493930=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%56735000=08493930=
PROCEDURE SPACESTMT; 56740000=08494000=
- BEGIN 56745000=08495000=
- COMMENT THE SPACE STATEMENT IS BEST THOUGHT OF AS A 56750000=08495000=
+ BEGIN COMMENT THE SPACE STATEMENT IS BEST THOUGHT OF AS A 56745000=08495000=
SUBSET OF THE READ STATEMENT WHERE ZERO WORDS ARE READ. 56755000=08496000=
FOR THE EXACT SYNTAX FOR THE SPACE STATEMENT AND THE 56760000=08497000=
PARAMETERS PASSED TO THE INTERPTI ROUTINE SEE THE COMMENTS56765000=08498000=
FOR THE READ STATEMENT; 56770000=08499000=
LABEL 56775000=08500000=
- EXIT; 56780000=08500000=
- COMMENT EXIT APPEARS AFTER THE LAST 56785000=08500000=
+ EXIT; COMMENT EXIT APPEARS AFTER THE LAST 56780000=08500000=
EXECUTABLE STATEMENT IN SPACESTMT; 56790000=08501000=
STEPIT; 56795000=08502000=
IF CHECK(LEFTPAREN, 434) THEN 56800000=08504000=
@@ -12185,8 +12176,7 @@ EXIT: 56725000
SPACE STATEMENT; 56815000=08506000=
STEPIT; 56820000=08507000=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 56825000=08509000=
- BEGIN 56830000=08509000=
- COMMENT ERROR 435 MEANS IMPROPER FILE 56835000=08509000=
+ BEGIN COMMENT ERROR 435 MEANS IMPROPER FILE 56830000=08509000=
IDENTIFIER IN SPACE STATEMENT; 56840000=08510000=
ERROR(435); 56845000=08511000=
GO TO EXIT; 56850000=08511000=
@@ -12213,8 +12203,7 @@ EXIT: 56945000
END SPACESTMT; 56955000=08527000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%56960000=08527000=
PROCEDURE WRITESTMT; 56965000=08528000=
- BEGIN 56970000=08529000=
- COMMENT WRITESTMT GENERATES CODE TO CALL INTERPTO, AN 56975000=08529000=
+ BEGIN COMMENT WRITESTMT GENERATES CODE TO CALL INTERPTO, AN 56970000=08529000=
INTRINSIC PROCEDURE ON THE DRUM, PASSING TO IT PARAMETERS 56980000=08530000=
DETERMINED BY THE FORMAT OF THE WRITE STATEMENT. 56985000=08531000=
I HAVE LISTED BELOW THE VARIOUS CASES CONSIDERED BY THE 56990000=08532000=
@@ -12323,8 +12312,7 @@ EXIT: 56945000
ELSE 57520000=08597900=
BEGIN 57525000=08597900=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 57530000=08599000=
- BEGIN 57535000=08599000=
- COMMENT ERROR 439 MEANS IMPROPER FILE 57540000=08599000=
+ BEGIN COMMENT ERROR 439 MEANS IMPROPER FILE 57535000=08599000=
IDENTIFIER IN A WRITE STATEMENT; 57545000=08600000=
ERR(439); 57550000=08601000=
GO TO EXIT; 57555000=08601000=
@@ -12333,8 +12321,7 @@ EXIT: 56945000
PASSFILE; 57570000=08605000=
END; 57575000=08605500=
IF (RRB1:= ELCLASS = COMMA) OR ELCLASS = RTPAREN THEN 57580000=08607000=
- BEGIN 57585000=08607000=
- COMMENT STANDARD CARRIAGE CONTROL CASE; 57590000=08607000=
+ BEGIN COMMENT STANDARD CARRIAGE CONTROL CASE; 57585000=08607000=
EMITL(0); 57595000=08608000=
EMITL(1); 57600000=08608000=
IF RRB1 THEN 57605000=08610000=
@@ -12473,13 +12460,11 @@ CHKRTPAREN: 58235000
CHKSECOND: 58270000=08643000=
STEPIT; 58275000=08643000=
IF RANGE(FRMTID, SUPERFRMTID) THEN 58280000=08645000=
- BEGIN 58285000=08645000=
- COMMENT THIS IS THE FORMAT FORM OF THE WRITE; 58290000=08645000=
+ BEGIN COMMENT THIS IS THE FORMAT FORM OF THE WRITE; 58285000=08645000=
PASSFORMAT; 58295000=08646000=
WRITXFORM: 58300000=08647000=
IF STEPI = RTPAREN THEN 58305000=08648000=
- BEGIN 58310000=08648000=
- COMMENT THIS IS THE TWO PARAMETER 58315000=08648000=
+ BEGIN COMMENT THIS IS THE TWO PARAMETER 58310000=08648000=
CASE OF THE WRITE; 58320000=08649000=
STEPIT; 58325000=08650000=
EMITL(0); 58330000=08650000=
@@ -12533,8 +12518,7 @@ CHKSECOND: 58270000
GO TO PASSLIST; 58570000=08653230=
END OF SCANNING FOR FREE FIELD FORMAT; 58575000=08653240=
IF ELCLASS = FACTOP THEN 58580000=08655000=
- BEGIN 58585000=08655000=
- COMMENT THIS IS THE ASTERISK FORM OF THE WRITE;58590000=08655000=
+ BEGIN COMMENT THIS IS THE ASTERISK FORM OF THE WRITE;58585000=08655000=
EMITL(0); 58595000=08656000=
EMITL(0); 58600000=08656000=
STEPIT; 58605000=08656000=
@@ -12592,20 +12576,17 @@ PASSLIST: 58835000
END; 58880000=08688000=
CHECKER(ELBAT[I]); 58885000=08688500=
IF ELCLASS = SUPERLISTID THEN 58890000=08689000=
- BEGIN 58895000=08690000=
- COMMENT SUBSCRIPTED SWITCH LIST ID; 58900000=08690000=
+ BEGIN COMMENT SUBSCRIPTED SWITCH LIST ID; 58895000=08690000=
LISTADDRESS:= ELBAT[I].ADDRESS; 58905000=08692000=
BANA; 58910000=08693000=
EMITV(LISTADDRESS); 58915000=08694000=
IF LISTADDRESS > 1023 THEN 58920000=08694500=
EMITO(PRTE); 58925000=08694500=
EMITO(LOD); 58930000=08695000=
- I:= I-1; 58935000=08695500=
- COMMENT STEP DOWN THE&I FROM BANA; 58940000=08695500=
+ I:= I-1; COMMENT STEP DOWN THE&I FROM BANA; 58935000=08695500=
END 58945000=08696500=
ELSE 58950000=08696500=
- BEGIN 58955000=08696500=
- COMMENT A COMMON LIST ID; 58960000=08696500=
+ BEGIN COMMENT A COMMON LIST ID; 58955000=08696500=
EMITPAIR(ELBAT[I].ADDRESS, LOD); 58965000=08696520=
END; 58970000=08696530=
STEPIT; 58975000=08696540=
@@ -12651,8 +12632,7 @@ EXIT: 59165000
END WRITESTMT; 59175000=08700000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%59180000=08700000=
PROCEDURE LOCKSTMT; 59185000=08701000=
- BEGIN 59190000=08702000=
- COMMENT THE LOCK STATEMENT ROUTINE GENERATES CODE THAT 59195000=08702000=
+ BEGIN COMMENT THE LOCK STATEMENT ROUTINE GENERATES CODE THAT 59190000=08702000=
CALLS ON THE FILE CONTROL ROUTINE PASSING TO IT THE 59200000=08703000=
FOLLOWING PARAMETERS FOR THE CORRESPONDING CASES. 59205000=08704000=
**********************************************************59210000=08705000=
@@ -12664,16 +12644,13 @@ EXIT: 59165000
- - - - - - - - - - - - - - 59240000=08711000=
(6,0,FILE,4); 59245000=08712000=
LABEL 59250000=08713000=
- EXIT; 59255000=08713000=
- COMMENT THE LABEL EXIT APPEARS AFTER THE LAST59260000=08713000=
+ EXIT; COMMENT THE LABEL EXIT APPEARS AFTER THE LAST59255000=08713000=
EXECUTABLE STATEMENT IN THE LOCK ROUTINE; 59265000=08714000=
DEFINE 59270000=08715000=
- THISL = RR1 #; 59275000=08715000=
- COMMENT THISL IS A TEMP CELL 59280000=08715000=
+ THISL = RR1 #; COMMENT THISL IS A TEMP CELL 59275000=08715000=
FOR THE CURRENT L REGISTER; 59285000=08716000=
DEFINE 59290000=08717000=
- LTEMP = RR2 #; 59295000=08717000=
- COMMENT LTEMP CONTAINS THE 59300000=08717000=
+ LTEMP = RR2 #; COMMENT LTEMP CONTAINS THE 59295000=08717000=
L REGISTER SETTING FOR THE 59305000=08718000=
SAVE OR RELEASE LITERAL THAT 59310000=08719000=
GETS PASSED TO KEN MEYERS; 59315000=08720000=
@@ -12686,8 +12663,7 @@ EXIT: 59165000
IN A LOCK STATEMENT; 59340000=08725000=
STEPIT; 59345000=08726000=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 59350000=08728000=
- BEGIN 59355000=08728000=
- COMMENT MUST BE READ-ONLY ARRAY TYPE LOCK; 59360000=08728000=
+ BEGIN COMMENT MUST BE READ-ONLY ARRAY TYPE LOCK; 59355000=08728000=
IF NOT RANGE(BOOARRAYID, INTARRAYID) THEN 59365000=08728100=
BEGIN 59370000=08728200=
ERR(451); 59375000=08728200=
@@ -12725,8 +12701,7 @@ EXIT: 59165000
THEN 59530000=08740000=
EMITL(IF RRB1 THEN 6 ELSE IF ELCLASS = FACTOP THEN 8 ELSE 2) 59535000=08743000=
ELSE 59540000=08743000=
- BEGIN 59545000=08743000=
- COMMENT ERROR 453 MEANS IMPROPER UNIT 59550000=08743000=
+ BEGIN COMMENT ERROR 453 MEANS IMPROPER UNIT 59545000=08743000=
DISPOSITION PART; 59555000=08744000=
ERROR(453); 59560000=08745000=
GO TO EXIT; 59565000=08745000=
@@ -12743,8 +12718,7 @@ EXIT: 59610000
END LOCKSTMT; 59620000=08755000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%59625000=08755000=
PROCEDURE CLOSESTMT; 59630000=08756000=
- BEGIN 59635000=08757000=
- COMMENT THE CLOSE STATEMENT ROUTINE GENERATES CODE THAT 59640000=08757000=
+ BEGIN COMMENT THE CLOSE STATEMENT ROUTINE GENERATES CODE THAT 59635000=08757000=
CALLS ON THE FILE CONTROL ROUTINE PASSING TO IT THE 59645000=08758000=
FOLLOWING PARAMETERS FOR THE CORRESPONDING CASES. 59650000=08759000=
**********************************************************59655000=08760000=
@@ -12764,22 +12738,18 @@ EXIT: 59610000
(4,0,FILE,4) 59725000=08771300=
** ** ** ** ** ** *** ** ** ** ** ** ; 59730000=08771400=
LABEL 59735000=08772000=
- EXIT; 59740000=08772000=
- COMMENT THE LABEL EXIT APPEARS AFTER THE LAST 59745000=08772000=
+ EXIT; COMMENT THE LABEL EXIT APPEARS AFTER THE LAST 59740000=08772000=
EXECUTABLE STATEMENT IN THE CLOSESTMT ROUTINE; 59750000=08773000=
DEFINE 59755000=08774000=
- THISL = RR1 #; 59760000=08774000=
- COMMENT THISL IS A TEMP CELL 59765000=08774000=
+ THISL = RR1 #; COMMENT THISL IS A TEMP CELL 59760000=08774000=
FOR THE CURRENT LREGISTER; 59770000=08775000=
DEFINE 59775000=08776000=
- LTEMP = RR2 #; 59780000=08776000=
- COMMENT LTEMP CONTAINS THE 59785000=08776000=
+ LTEMP = RR2 #; COMMENT LTEMP CONTAINS THE 59780000=08776000=
L REGISTER SETTING FOR THE 59790000=08777000=
SAVE OR RELEASE LITERAL THAT 59795000=08778000=
GETS PASSED TO KEN MEYERS; 59800000=08779000=
LABEL 59805000=08780000=
- EMITREST; 59810000=08780000=
- COMMENT I IS POINTING AT THE UNIT 59815000=08780000=
+ EMITREST; COMMENT I IS POINTING AT THE UNIT 59810000=08780000=
DISPOTION PART AND CODE FOR THE LAST THREE59820000=08781000=
PARAMETERS TO THE FILE CONTROL ROUTINE 59825000=08782000=
MUST NOW BE GENERATED; 59830000=08783000=
@@ -12790,8 +12760,7 @@ EXIT: 59610000
CLOSE STATEMENT; 59855000=08788000=
STEPIT; 59860000=08789000=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 59865000=08791000=
- BEGIN 59870000=08791000=
- COMMENT ERROR 456 MEANS IMPROPER FILE PART IN A59875000=08791000=
+ BEGIN COMMENT ERROR 456 MEANS IMPROPER FILE PART IN A59870000=08791000=
CLOSE STATEMENT; 59880000=08792000=
ERROR(456); 59885000=08793000=
GO TO EXIT; 59890000=08793000=
@@ -12807,26 +12776,22 @@ EXIT: 59610000
THISL:= L; 59940000=08800000=
L:= LTEMP; 59945000=08800000=
IF STEPI = RELEASEV THEN 59950000=08802000=
- BEGIN 59955000=08802000=
- COMMENT RELEASE UNIT DISPOSITION PART CASE; 59960000=08802000=
+ BEGIN COMMENT RELEASE UNIT DISPOSITION PART CASE; 59955000=08802000=
EMITL(7); 59965000=08803000=
GO EMITREST; 59970000=08803000=
END; 59975000=08804000=
IF ELCLASS = FACTOP THEN 59980000=08806000=
- BEGIN 59985000=08806000=
- COMMENT ASTERISK UNTI DISPOSITION PART CASE; 59990000=08806000=
+ BEGIN COMMENT ASTERISK UNTI DISPOSITION PART CASE; 59985000=08806000=
EMITL(1); 59995000=08807000=
GO EMITREST; 60000000=08807000=
END; 60005000=08808000=
IF ELCLASS = DECLARATORS AND ELBAT[I].ADDRESS = SAVEV THEN 60010000=08810000=
- BEGIN 60015000=08810000=
- COMMENT SAVE UNIT DISPOSITION PART CASE; 60020000=08810000=
+ BEGIN COMMENT SAVE UNIT DISPOSITION PART CASE; 60015000=08810000=
EMITL(3); 60025000=08811000=
GO EMITREST; 60030000=08811000=
END; 60035000=08812000=
IF ACCUM[1] = 6"5PURGE" THEN 60040000=08812100=
- BEGIN 60045000=08812100=
- COMMENT FILE PURGE; 60050000=08812100=
+ BEGIN COMMENT FILE PURGE; 60045000=08812100=
EMITL(4); 60055000=08812200=
GO EMITREST; 60060000=08812200=
END; 60065000=08812300=
@@ -12847,8 +12812,7 @@ EXIT: 60130000
END CLOSESTMT; 60140000=08824000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%60145000=08824000=
PROCEDURE RWNDSTMT; 60150000=08825000=
- BEGIN 60155000=08826000=
- COMMENT THE REWIND STATEMENT ROUTINE GENERATES CODE THAT 60160000=08826000=
+ BEGIN COMMENT THE REWIND STATEMENT ROUTINE GENERATES CODE THAT 60155000=08826000=
CALLS ON THE FILE CONTROL ROUTINE PASSING TO IT THE 60165000=08827000=
FOLLOWING PARAMETERS. 60170000=08828000=
**********************************************************60175000=08829000=
@@ -12856,16 +12820,13 @@ EXIT: 60130000
- - - - - - - - - - - - - - 60185000=08831000=
(0,0,FILE,4); 60190000=08832000=
LABEL 60195000=08833000=
- EXIT; 60200000=08833000=
- COMMENT THE LABEL EXIT APPEARS AFTER THE LAST60205000=08833000=
+ EXIT; COMMENT THE LABEL EXIT APPEARS AFTER THE LAST60200000=08833000=
EXECUTABLE STATEMENT IN THE REWIND ROUTINE; 60210000=08834000=
DEFINE 60215000=08835000=
- THISL = RR1 #; 60220000=08835000=
- COMMENT THISL IS A TEMP CELL 60225000=08835000=
+ THISL = RR1 #; COMMENT THISL IS A TEMP CELL 60220000=08835000=
FOR THE CURRENT L REGISTER; 60230000=08836000=
DEFINE 60235000=08837000=
- LTEMP = RR2 #; 60240000=08837000=
- COMMENT LTEMP SETTING FOR THE60245000=08837000=
+ LTEMP = RR2 #; COMMENT LTEMP SETTING FOR THE60240000=08837000=
L REGISTER SETTING FOR THE 60250000=08838000=
SAVE OR RELEASE LITERAL THAT 60255000=08839000=
GETS PASSED TO KEN MEYERS; 60260000=08840000=
@@ -12876,8 +12837,7 @@ EXIT: 60130000
REWIND STATEMENT; 60285000=08845000=
STEPIT; 60290000=08846000=
IF NOT RANGE(FILEID, SUPERFILEID) THEN 60295000=08848000=
- BEGIN 60300000=08848000=
- COMMENT ERROR 461 MEANS IMPROPER FILE PART IN A60305000=08848000=
+ BEGIN COMMENT ERROR 461 MEANS IMPROPER FILE PART IN A60300000=08848000=
REWIND STATEMENT; 60310000=08849000=
ERROR(461); 60315000=08850000=
GO TO EXIT; 60320000=08850000=
@@ -13802,6 +13762,7 @@ COMMENT IF THE POWERS-OF-TEN TABLE HAS BEEN USED, IT IS WRITTEN OUT 64825000
SEGMENT(-69, SGNO, 0); 64865000=09315000=
BUILDLINE:= BUILDLINE.[1:1]; 64870000=09315100=
END; 64875000=09316000=
+ 64876000
BEGIN 64880000=09317000=
ARRAY 64885000=09317000=
PRT[0:7, 0:127], 64890000=09317000=
@@ -14466,11 +14427,11 @@ EXIT: 67690000
BEGIN 68165000=10229000=
OWN INTEGER 68170000=10230000=
CHARCOUNT, 68175000=10230000=
- REMCOUNT; 68180000=10230000=
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%68182000
+ REMCOUNT; 68180000=10230000=
COMMENT CHARCOUNT CONTAINS NUMBER OFCHARACTORS OF THE DEFINE THAT WE68185000=10231000=
HAVE PUT INTO INFO. REMCOUNT CONTAINS NUMBER OF CHARACT- 68190000=10232000=
ORS REMAINING IN THIS ROW OF INFO; 68195000=10233000=
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%68196000
PROCEDURE PUTOGETHER(CHAR, CX); 68200000=10234000=
VALUE 68200100
CX; 68200200
@@ -14659,8 +14620,7 @@ EXIT: 68955000
FORSTMT COMMENT FORCLAUSE; 69060000=10294000=
ELSE 69065000=10295000=
IF ELCLASS = LFTBRKET THEN 69070000=10296000=
- BEGIN 69075000=10296000=
- COMMENT GORUP OF LIST ELEMENTS; 69080000=10296000=
+ BEGIN COMMENT GORUP OF LIST ELEMENTS; 69075000=10296000=
DO BEGIN 69085000=10297000=
STEPIT; 69090000=10297000=
LISTELEMENT 69095000=10297000=
@@ -14672,19 +14632,14 @@ EXIT: 68955000
ERR(158) 69125000=10298000=
END 69130000=10299000=
ELSE 69135000=10299000=
- BEGIN 69140000=10299000=
- COMMENT THE MEAT OF THE MATTER: 69145000=10299000=
+ BEGIN COMMENT THE MEAT OF THE MATTER: 69140000=10299000=
VARIABLES AND EXPRESSIONS; 69150000=10300000=
- L:= (T1:= L)+1; 69155000=10301000=
- COMMENT SAVE L FOR LATER FIXUP; 69160000=10301000=
- EMITPAIR(LSTRTN, STD); 69165000=10302000=
- COMMENT PREPARE LSTRTN FOR 69170000=10302000=
+ L:= (T1:= L)+1; COMMENT SAVE L FOR LATER FIXUP; 69155000=10301000=
+ EMITPAIR(LSTRTN, STD); COMMENT PREPARE LSTRTN FOR 69165000=10302000=
NEXT TIME AROUND; 69175000=10303000=
IF (GT1:= TABLE(I+1) = COMMA OR GT1 = RTPAREN OR GT1 = RTBRKET) 69180000=10307000=
- AND ELCLASS >= BOOID AND ELCLASS <= INTID 69185000=10308000=
- THEN 69190000=10308000=
- BEGIN 69195000=10308000=
- COMMENT SIMPLE VARIABLES; 69200000=10308000=
+ AND ELCLASS >= BOOID AND ELCLASS <= INTID THEN 69185000=10308000=
+ BEGIN COMMENT SIMPLE VARIABLES; 69195000=10308000=
CHECKER(ELBAT[I]); 69205000=10308100=
EMITN(ELBAT[I].ADDRESS); 69210000=10309000=
STEPIT 69215000=10309000=
@@ -14692,8 +14647,7 @@ EXIT: 68955000
ELSE 69225000=10310000=
BEGIN 69230000=10310000=
IF ELCLASS >= BOOARRAYID AND ELCLASS <= INTARRAYID THEN 69235000=10312000=
- BEGIN 69240000=10312000=
- COMMENT IS EITHER A SUBCRIPTED VARIABLE 69245000=10312000=
+ BEGIN COMMENT IS EITHER A SUBCRIPTED VARIABLE 69240000=10312000=
OR THE BEGINNING OF AN EXPRESSION. THIS69250000=10313000=
SITUATION IS VERY SIMILAR TO THAT IN 69255000=10314000=
ACTUALPARAPART (SEE COMMENTS THERE FOR 69260000=10315000=
@@ -14788,8 +14742,7 @@ EXIT: 68955000
END LISTGEN; 69705000=10369000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%69710000=10369000=
BOOLEAN PROCEDURE MERRIMAC; 69715000=10370000=
- BEGIN 69720000=10371000=
- COMMENT THIS TIME THE MERRIMAC WILL HANDLE THE MONITOR. 69725000=10371000=
+ BEGIN COMMENT THIS TIME THE MERRIMAC WILL HANDLE THE MONITOR. 69720000=10371000=
03 JULY 1963 69730000=10372000=
THERE ARE SIX TYPES OF MONITOR LIST ELEMENTS. THEY ARE 69735000=10373000=
LABELS, SWITCHES, SIMPLE VARIABLES, SUBSCRIPTED VARIABLES,69740000=10374000=
@@ -14924,97 +14877,81 @@ EXIT: 68955000
ADDITIONAL INFO. I WILL HAVE A DEFINE 70385000=10503000=
FUNCMONFILE = [20:11]#; 70390000=10504000=
DEFINE 70395000=10505000=
- FILEIDENT = RR7 #; 70400000=10505000=
- COMMENT FILEIDENT CONTAINS THE 70405000=10505000=
+ FILEIDENT = RR7 #; COMMENT FILEIDENT CONTAINS THE 70400000=10505000=
ADDRESS OF THE MONITOR FILE; 70410000=10506000=
DEFINE 70415000=10507000=
- SUBSCRIPT = RR1 #; 70420000=10507000=
- COMMENT SUBSCRIPT IS USED TO 70425000=10507000=
+ SUBSCRIPT = RR1 #; COMMENT SUBSCRIPT IS USED TO 70420000=10507000=
SAVE THE ADDRESS OR VALUE OF A 70430000=10508000=
SUBSCRIPT. ONE ADDITIONAL BIT IS70435000=10509000=
USED TO TELL WHETHER TO EMIT AN 70440000=10510000=
OPDC OR A LITC ON THIS ADDRESS OR70445000=10511000=
VALUE; 70450000=10512000=
DEFINE 70455000=10513000=
- NODIM = RR2 #; 70460000=10513000=
- COMMENT NODIM CONTAINS THE NUMBER OF70465000=10513000=
+ NODIM = RR2 #; COMMENT NODIM CONTAINS THE NUMBER OF70460000=10513000=
DIMENSIONS OF AN ARRAY OR SUBSCRIPTED70470000=10514000=
VARIABLE APPEARING IN A MONITOR LIST;70475000=10515000=
DEFINE 70480000=10516000=
- INC = RR3 #; 70485000=10516000=
- COMMENT INC CONTAINS THE LINK TO 70490000=10516000=
+ INC = RR3 #; COMMENT INC CONTAINS THE LINK TO 70485000=10516000=
ADDITIONAL INFO AND IS USED WHEN MAKING70495000=10517000=
A NEW ENTRY IN INFO FOR ARRAYS; 70500000=10518000=
DEFINE 70505000=10519000=
- ELBATWORD = RR4 #; 70510000=10519000=
- COMMENT ELBATWORD CONTAINS THE 70515000=10519000=
+ ELBATWORD = RR4 #; COMMENT ELBATWORD CONTAINS THE 70510000=10519000=
ELBAT WORD FOR A MONITOR LIST 70520000=10520000=
ELEMENT; 70525000=10521000=
DEFINE 70530000=10522000=
- OPLIT = RR4 #; 70535000=10522000=
- COMMENT OPLIT IS USED FOR MARKING70540000=10522000=
+ OPLIT = RR4 #; COMMENT OPLIT IS USED FOR MARKING70535000=10522000=
SUBSCRIPTED VARIABLES TO TELL ME 70545000=10523000=
WHETHER TO EMIT AN OPDC OR A LITC.70550000=10524000=
0 IS USED FOR OPDC, 1 FOR LITC; 70555000=10525000=
DEFINE 70560000=10526000=
- TESTVARB = RR5 #; 70565000=10526000=
- COMMENT TESTVARB CONTAINS A LINK 70570000=10526000=
+ TESTVARB = RR5 #; COMMENT TESTVARB CONTAINS A LINK 70565000=10526000=
POINTING AT THE END OF ADDITIONAL 70575000=10527000=
INFO AND IS USED TO TELL WHEN TO 70580000=10528000=
STOP MOVING INFO FOR THE NEW ENTRY70585000=10529000=
FOR MONITORED ARRAYS; 70590000=10530000=
DEFINE 70595000=10531000=
- NXTINFOTEMP = RR6 #; 70600000=10531000=
- COMMENT NXTINFOTEMP CONTAINS A70605000=10531000=
+ NXTINFOTEMP = RR6 #; COMMENT NXTINFOTEMP CONTAINS A70600000=10531000=
LINK POINTING AT THE FIRST 70610000=10532000=
ADDITIONAL WORD OF INFO FOR 70615000=10533000=
MONITORED ARRAYS; 70620000=10534000=
DEFINE 70625000=10535000=
- INSERTFILE = 20:10:11 #; 70630000=10535000=
- COMMENT INSERTFILE IS THE 70635000=10535000=
+ INSERTFILE = 20:10:11 #; COMMENT INSERTFILE IS THE 70630000=10535000=
CONCATENATE DEFINE FOR 70640000=10536000=
STUFFING THE MONITOR FILE 70645000=10537000=
ADDRESS INTO THE FIRST 70650000=10538000=
ADDITIONAL INFO WORD FOR 70655000=10539000=
ARRAYS AND FUNCTIONS; 70660000=10540000=
DEFINE 70665000=10541000=
- NOPARPART = NODIMPART #; 70670000=10541000=
- COMMENT NOPARPART IS A 70675000=10541000=
+ NOPARPART = NODIMPART #; COMMENT NOPARPART IS A 70670000=10541000=
PARTIAL WORD DESIGNATOR [4070680000=10542000=
:8] USED TO EXTRACT THE 70685000=10543000=
NUMBER OF PARAMETERS FOR A 70690000=10544000=
GIVEN PROCEDURE FROM INFO; 70695000=10545000=
DEFINE 70700000=10546000=
- NOPAR = NODIM #; 70705000=10546000=
- COMMENT NOPAR CONTAINS THE NUMBER 70710000=10546000=
+ NOPAR = NODIM #; COMMENT NOPAR CONTAINS THE NUMBER 70705000=10546000=
OF PARAMETERS FOR A FUNCTION 70715000=10547000=
DESIGNATOR APPEARING IN A MONITOR 70720000=10548000=
LIST; 70725000=10549000=
LABEL 70730000=10550000=
- START; 70735000=10550000=
- COMMENT WHEN START IS REACHED, I MUST BE 70740000=10550000=
+ START; COMMENT WHEN START IS REACHED, I MUST BE 70735000=10550000=
POINTING AT THE FILE IDENTIFIER IN THE 70745000=10551000=
MONITOR DECLARATION; 70750000=10552000=
LABEL 70755000=10553000=
- MARKMONITORED; 70760000=10553000=
- COMMENT THE CODE AT MARKMONITORED 70765000=10553000=
+ MARKMONITORED; COMMENT THE CODE AT MARKMONITORED 70760000=10553000=
TURNS ON THE MONITOR BIT OF THE ELBAT70770000=10554000=
WORD IN THE MONITOR LIST AND STORES 70775000=10555000=
IT IN ACCUM[0] FOR THE E ROUTINE; 70780000=10556000=
LABEL 70785000=10557000=
- STORESUBS; 70790000=10557000=
- COMMENT STORESUBS IS THE CODE THAT 70795000=10557000=
+ STORESUBS; COMMENT STORESUBS IS THE CODE THAT 70790000=10557000=
REMEMBERS ALL THAT IS NECESSARY ABOUT 70800000=10558000=
EACH SUBSCRIPT EXPRESSION; 70805000=10559000=
LABEL 70810000=10560000=
- CHKCOMMA; 70815000=10560000=
- COMMENT CHKCOMMA REQUIRES THAT I BE 70820000=10560000=
+ CHKCOMMA; COMMENT CHKCOMMA REQUIRES THAT I BE 70815000=10560000=
POINTING THE LAST LOGICAL QUANTITY OF THE 70825000=10561000=
MONITOR LIST ELEMENT THAT HAS JUST BEEN 70830000=10562000=
PROCESSED; 70835000=10563000=
LABEL 70840000=10564000=
- EXIT; 70845000=10564000=
- COMMENT EXIT EXITS THE MERRIMAC PROCEDURE; 70850000=10564000=
+ EXIT; COMMENT EXIT EXITS THE MERRIMAC PROCEDURE; 70845000=10564000=
START: 70855000=10565000=
IF ELCLASS ^= FILEID THEN 70860000=10565000=
BEGIN 70865000=10565100=
@@ -15036,15 +14973,13 @@ MARKMONITORED: 70940000
STEPIT; 70945000=10573000=
ACCUM[0]:= -ABS(ELBAT[I]); 70950000=10573000=
IF RANGE(BOOID, INTID) THEN 70955000=10575000=
- BEGIN 70960000=10575000=
- COMMENT THIS CODE HANDLES SIMPLE VARIABLES; 70965000=10575000=
+ BEGIN COMMENT THIS CODE HANDLES SIMPLE VARIABLES; 70960000=10575000=
E; 70970000=10576000=
PUTNBUMP(FILEIDENT); 70975000=10576000=
GO CHKCOMMA; 70980000=10577000=
END; 70985000=10578000=
IF RANGE(BOOARRAYID, INTARRAYID) THEN 70990000=10580000=
- BEGIN 70995000=10580000=
- COMMENT THIS CODE HANDLES ARRAYS AND 71000000=10580000=
+ BEGIN COMMENT THIS CODE HANDLES ARRAYS AND 70995000=10580000=
SUBSCRIPTED VARIABLES; 71005000=10581000=
E; 71010000=10582000=
NXTINFOTEMP:= NEXTINFO; 71015000=10582000=
@@ -15062,8 +14997,7 @@ MARKMONITORED: 70940000
IF (RR3:= TABLE(I+2) = COMMA OR RR3 = RTBRKET) AND STEPI ^= 71075000=10593000=
NONLITNO 71080000=10594000=
THEN 71085000=10594000=
- BEGIN 71090000=10594000=
- COMMENT THIS IS THE SIMPLE CASE OF 71095000=10594000=
+ BEGIN COMMENT THIS IS THE SIMPLE CASE OF 71090000=10594000=
SUBSCRIPTED VARIABLES. EITHER A LITC 71100000=10595000=
OR AN OPDC ON A VARIABLE IS ALL THAT 71105000=10596000=
IS NEEDED TO CALL THE SUBSCRIPT; 71110000=10597000=
@@ -15072,16 +15006,13 @@ MARKMONITORED: 70940000
IF NOT RANGE(INTRNSICPROCID, INTID) THEN 71125000=10600000=
IF CHECK(LITNO, 402) THEN 71130000=10601000=
GO TO EXIT 71135000=10602000=
- ELSE 71140000=10602000=
- COMMENT MARK FOR LITC; 71145000=10602000=
- OPLIT:= 1; 71150000=10603000=
- COMMENT ERROR 402 IS BAD 71155000=10604000=
+ ELSE COMMENT MARK FOR LITC; 71140000=10602000=
+ OPLIT:= 1; COMMENT ERROR 402 IS BAD 71150000=10603000=
SUBSCRIPT IN MONITOR DECLARATION;71160000=10605000=
STEPIT; 71165000=10606000=
END 71170000=10608000=
ELSE 71175000=10608000=
- BEGIN 71180000=10608000=
- COMMENT THIS IS THE SPECIAL CASE OF 71185000=10608000=
+ BEGIN COMMENT THIS IS THE SPECIAL CASE OF 71180000=10608000=
SUBSCRIPTED VARIABLES. CODE FOR THIS 71190000=10609000=
SUBSCRIPT EXPRESSION MUST BE GENERATED71195000=10610000=
AND JUMPED AROUND, AN ACCIDENTAL ENTRY71200000=10611000=
@@ -15095,8 +15026,7 @@ MARKMONITORED: 70940000
JUMPCHKX; 71240000=10616500=
OPLIT:= 0; 71245000=10617000=
IF MODE > 0 THEN 71250000=10619000=
- BEGIN 71255000=10619000=
- COMMENT STUFF F AT THIS 71260000=10619000=
+ BEGIN COMMENT STUFF F AT THIS 71255000=10619000=
POINT IF MODE > 0; 71265000=10620000=
STUFFF(SUBSCRIPT); 71270000=10621000=
EMITPAIR(SUBSCRIPT, STD); 71275000=10622000=
@@ -15107,12 +15037,10 @@ MARKMONITORED: 70940000
IF ELCLASS = COMMA THEN 71300000=10629000=
GO TO STORESUBS; 71305000=10629000=
IF CHECK(RTBRKET, 403) THEN 71310000=10631000=
- GO TO EXIT; 71315000=10631000=
- COMMENT ERROR 403 IS IMPROPER SUBSCRIPT 71320000=10632000=
+ GO TO EXIT; COMMENT ERROR 403 IS IMPROPER SUBSCRIPT 71315000=10631000=
EXPRESSION DELIMITER IN MONITOR LIST ELEMENT; 71325000=10633000=
IF NXTINFOTEMP ^= TESTVARB THEN 71330000=10635000=
- BEGIN 71335000=10635000=
- COMMENT ERROR 404 MONITOR LIST 71340000=10635000=
+ BEGIN COMMENT ERROR 404 MONITOR LIST 71335000=10635000=
ELEMENT HAS IMPROPER NUMBER OF 71345000=10636000=
SUBSCRIPTS; 71350000=10637000=
I:= I-1; 71355000=10638000=
@@ -15122,11 +15050,9 @@ MARKMONITORED: 70940000
GO CHKCOMMA; 71375000=10640000=
END; 71380000=10641000=
IF ELCLASS = LABELID OR ELCLASS = SWITCHID THEN 71385000=10643000=
- BEGIN 71390000=10643000=
- COMMENT THIS CODE HANDLES LABELS AND SWITCHES; 71395000=10643000=
+ BEGIN COMMENT THIS CODE HANDLES LABELS AND SWITCHES; 71390000=10643000=
IF (ELBATWORD:= ELBAT[I]).LVL ^= LEVEL THEN 71400000=10645000=
- BEGIN 71405000=10645000=
- COMMENT ERROR 405 MEANS LABEL OR 71410000=10645000=
+ BEGIN COMMENT ERROR 405 MEANS LABEL OR 71405000=10645000=
SWITCH MONITORED AT IMPROPER LEVEL; 71415000=10646000=
ERROR(405); 71420000=10647000=
GO TO EXIT; 71425000=10647000=
@@ -15136,8 +15062,7 @@ MARKMONITORED: 70940000
GO CHKCOMMA; 71445000=10652000=
END; 71450000=10653000=
IF RANGE(BOOPROCID, INTPROCID) THEN 71455000=10655000=
- BEGIN 71460000=10655000=
- COMMENT THIS CODE HANDLES FUNCTIONS; 71465000=10655000=
+ BEGIN COMMENT THIS CODE HANDLES FUNCTIONS; 71460000=10655000=
E; % 71470000=10656000=
IF LEVEL = (RR2:= ELBAT[I]).LVL THEN 71475000=10656010=
BEGIN 71480000=10656011=
@@ -15177,8 +15102,7 @@ EXIT: 71640000
END MERRIMAC; 71650000=10680000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%71655000=10680000=
PROCEDURE DMUP; 71660000=10681000=
- BEGIN 71665000=10682000=
- COMMENT 15 JULY 1963 71670000=10682000=
+ BEGIN COMMENT 15 JULY 1963 71665000=10682000=
THERE ARE FOUR TYPES OF DUMP LIST ELEMENTS. THERE 71675000=10683000=
ARE LABELS, SIMPLE VARIABLES, SUBSCRIPTED VARIABLES, AND 71680000=10684000=
ARRAYS. 71685000=10685000=
@@ -15398,8 +15322,7 @@ STARTCALL: 72530000
GO TO SUBSLOOP; COMMENT ERROR 412 MEANS DUMP LIST 72900000
ELEMENT HAS WRONG NUMBER OF SUBSCRIPTS72910000=10859000=
; 72915000=10860000=
- END; 72920000=10861000=
- COMMENT THIS CODE HANDLES ARRAYS; 72925000=10862000=
+ END; COMMENT THIS CODE HANDLES ARRAYS; 72920000=10861000=
IF ELCLASS ^= COMMA AND ELCLASS ^= RTPAREN THEN 72930000=10864000=
BEGIN COMMENT ERROR 413 MEANS IMPROPER 72935000
ARRAY DUMP LIST ELEMENT; 72945000=10865000=
@@ -15505,8 +15428,7 @@ ELSE DUMPETEMP)[DUMPE], GIT(ELBATWORD)); 73295000
GO TO START; 73470000=10933000=
END; 73475000=10934000=
IF CHECK(SEMICOLON, 419) THEN 73480000=10936000=
- ; 73485000=10936000=
- COMMENT ERROR 419 MEANS IMPROPER DUMP DEC DELIMITER; 73490000=10937000=
+ ; COMMENT ERROR 419 MEANS IMPROPER DUMP DEC DELIMITER; 73485000=10936000=
EXIT: 73495000=10938000=
; 73500000=10938000=
END DMUP; 73505000=10939000=
@@ -16315,8 +16237,7 @@ START: 77375000
IF SPECTOG THEN 77425000=13196370=
GO TO OVER; 77430000=13196370=
IF ELCLASS ^= ASSIGNOP THEN 77435000=13196380=
- FLAG(41); 77440000=13196380=
- COMMENT MISSING :=; 77445000=13196390=
+ FLAG(41); COMMENT MISSING :=; 77440000=13196380=
EMITO(MKS); 77450000=13196400=
CHECKDISJOINT(ADDRSF); 77455000=13196410=
G:= L; 77460000=13196420=
@@ -16324,8 +16245,7 @@ START: 77375000
EMITL(1); 77470000=13196430=
EMITL(1); 77475000=13196440=
EMITL(1); 77480000=13196450=
- EMITV(5); 77485000=13196460=
- COMMENT CREATE AN ARRAY TO HOLD 77490000=13196460=
+ EMITV(5); COMMENT CREATE AN ARRAY TO HOLD 77485000=13196460=
LIST DESCRIPTORS FOR SWITCH LIST; 77495000=13196470=
COMMENT USED TO USE EMITN(XITR), DOESN"T ANYMORE; 77500000=13196480=
J:= -1; 77505000=13196490=
@@ -16339,8 +16259,7 @@ START: 77375000
PASSLIST; 77545000=13196540=
EMITL(J:= J+1); 77550000=13196550=
EMITN(ADDRSF); 77555000=13196560=
- EMITO(STD); 77560000=13196570=
- COMMENT STORE LIST DESC IN ARRAY;77565000=13196570=
+ EMITO(STD); COMMENT STORE LIST DESC IN ARRAY;77560000=13196570=
END 77570000=13196590=
UNTIL ELCLASS ^= COMMA; 77575000=13196590=
GT2:= L; 77580000=13196600=
@@ -16500,7 +16419,7 @@ COMMENT 78320000
BEGIN 78350000=13300000=
REAL 78355000=13301000=
WORDCOUNT, 78360000=13301000=
- RINX; 78365000=13301000=
+ RINX; 78365000=13301000=
IF RINX:= (NEXTINFO+WORDCOUNT:= (COUNT+18) DIV 8).LINKR ^= NEXTINFO.78370000=13303000=
LINKR 78375000=13304000=
THEN 78380000=13304000=
@@ -16591,8 +16510,8 @@ COMMENT 78620000
IF LEVELF = LEVEL THEN % DUPLICATE DECLARATION 78805000=13339500=
FLAG(1); 78810000=13340000=
VONF:= P2; 78815000=13341000=
- IF((FORMALF:= PTOG) OR(STREAMTOG AND NOT STOPGSP)) AND NOT P278820000=13343000=
- THEN 78825000=13343000=
+ IF((FORMALF:= PTOG) OR(STREAMTOG AND NOT STOPGSP)) AND NOT 78820000=13343000=
+ P2 THEN 78825000=13343000=
ADDRSF:= PJ:= PJ+1 78830000=13344000=
ELSE 78835000=13344000=
IF STOPGSP THEN 78840000=13344000=
@@ -16601,8 +16520,7 @@ COMMENT 78620000
ADDRSF:= GETSPACE(P2, 1); % ID IN ACCUM[1]. 78855000=13345000=
IF TYPE <= INTARRAYID AND TYPE >= BOOARRAYID THEN 78860000=13347000=
IF P2 THEN 78865000=13347000=
- BEGIN 78870000=13347000=
- COMMENT OWN ARRAY; 78875000=13347000=
+ BEGIN COMMENT OWN ARRAY; 78870000=13347000=
EMITL(ADDRSF); 78880000=13347500=
EMITN(10); 78885000=13347500=
END 78890000=13347520=
@@ -16629,8 +16547,8 @@ COMMENT 78975000
BEGIN 78995000=13358000=
REAL 79000000=13359000=
LINKT, 79005000=13359000=
- A, 79010000=13359000=
- LINKP; 79015000=13359000=
+ A, 79010000=13359000=
+ LINKP; 79015000=13359000=
LABEL 79020000=13360000=
L; 79025000=13360000=
LINKT:= STACKHEAD[SCRAM]; 79030000=13361000=
@@ -16733,28 +16651,28 @@ COMMENT 79160000
BEGIN 79515000=13448000=
REAL 79520000=13449000=
T1, 79525000=13449000=
- T2, 79530000=13449000=
- T3, 79535000=13449000=
- K, 79540000=13449000=
- LBJ, 79545000=13449000=
- ARPROGS, 79550000=13449000=
- SAVEDIM, 79555000=13449000=
- T, 79560000=13449000=
- T4, 79565000=13449000=
- SAVEINFO, 79570000=13449000=
- SAVEINFO2; 79575000=13449000=
+ T2, 79530000=13449000=
+ T3, 79535000=13449000=
+ K, 79540000=13449000=
+ LBJ, 79545000=13449000=
+ ARPROGS, 79550000=13449000=
+ SAVEDIM, 79555000=13449000=
+ T, 79560000=13449000=
+ T4, 79565000=13449000=
+ SAVEINFO, 79570000=13449000=
+ SAVEINFO2; 79575000=13449000=
BOOLEAN 79580000=13450000=
LLITOG, 79585000=13450000=
- ULITOG; 79590000=13450000=
+ ULITOG; 79590000=13450000=
REAL 79595000=13451000=
ADDCON; 79600000=13451000=
LABEL 79605000=13452000=
CSZ, 79610000=13452000=
- BETA1, 79615000=13452000=
- TWO, 79620000=13452000=
- START, 79625000=13452000=
- SLB, 79630000=13452000=
- BETA2; 79635000=13452000=
+ BETA1, 79615000=13452000=
+ TWO, 79620000=13452000=
+ START, 79625000=13452000=
+ SLB, 79630000=13452000=
+ BETA2; 79635000=13452000=
ARRAYFLAG:= TRUE; 79640000=13452100=
TYPEV:= REALARRAYID; 79645000=13453000=
IF T1:= GTA1[J:= J-1] = 0 THEN 79650000=13454000=
@@ -17070,21 +16988,21 @@ COMMENT JUMPCHKNX DETERMINES WHETHER ANY EXECUTABLE CODE HAS BEEN 80760000
PROCEDURE HTTEOAP(GOTSTORAGE, RELAD, STOPPER, PRTAD); 81205000=13731000=
VALUE 81210000=13732000=
GOTSTORAGE, 81215000=13732000=
- RELAD, 81220000=13732000=
- STOPPER, 81225000=13732000=
- PRTAD; 81230000=13732000=
+ RELAD, 81220000=13732000=
+ STOPPER, 81225000=13732000=
+ PRTAD; 81230000=13732000=
BOOLEAN 81235000=13733000=
GOTSTORAGE; 81240000=13733000=
REAL 81245000=13734000=
RELAD, 81250000=13734000=
- STOPPER, 81255000=13734000=
- PRTAD; 81260000=13734000=
+ STOPPER, 81255000=13734000=
+ PRTAD; 81260000=13734000=
BEGIN 81265000=13735000=
BOOLEAN 81270000=13736000=
BT; 81275000=13736000=
REAL 81280000=13737000=
K, 81285000=13737000=
- LS; 81290000=13737000=
+ LS; 81290000=13737000=
LS:= RELAD; 81295000=13738000=
BT:= JUMPCTR = LEVEL; 81300000=13739000=
IF FUNCTOG THEN 81305000=13741000=
@@ -17256,8 +17174,7 @@ L: GT1:= (2*SGAVL-1) & 2[43:1:2]; 81620000
BEGIN 82135000=13911100=
IF TABLE(I+1) = ASSIGNOP THEN 82140000=13911100=
BEGIN 82145000=13911200=
- STEPIT; 82150000=13911200=
- COMMENT OVER THE :=; 82155000=13911200=
+ STEPIT; COMMENT OVER THE :=; 82150000=13911200=
IF GT1:= STEPI > IDMAX AND GT1 < FAULTID THEN 82160000=13911300=
ERR(3); 82165000=13911300=
LEVELF:= ELBAT[I].LVL; 82170000=13911400=
@@ -17278,8 +17195,7 @@ L: GT1:= (2*SGAVL-1) & 2[43:1:2]; 81620000
EMITPAIR(ADDRSF, STD); 82245000=13915000=
END; 82250000=13915000=
EMITN(ADDRSF); 82255000=13915000=
- EMIT(3"74"6"E"); 82260000=13916000=
- COMMENT C-TO-F; 82265000=13916000=
+ EMIT(3"74"6"E"); COMMENT C-TO-F; 82260000=13916000=
MAKEUPACCUM; 82270000=13917000=
E; 82275000=13917000=
STEPIT 82280000=13918000=
@@ -17311,52 +17227,52 @@ COMMENT SOP IS TRUE IF THE BLOCK WAS CALLED BY ITSELF THROUGH THE 82370000
BEGIN 82410000=14012000=
LABEL 82415000=14013000=
OWNERR, 82420000=14013000=
- SAVERR, 82425000=14013000=
- BOOLEANDEC, 82430000=14013000=
- REALDEC, 82435000=14013000=
- ALPHADEC, 82440000=14013000=
- INTEGERDEC, 82445000=14014000=
- LABELDEC, 82450000=14014000=
- DUMPDEC, 82455000=14014000=
- LISTDEC, 82460000=14014000=
- OUTDEC, 82465000=14014000=
- INDEC, 82470000=14014000=
- MONITORDEC, 82475000=14015000=
- SWITCHDEC, 82480000=14015000=
- PROCEDUREDEC, 82485000=14015000=
- ARRAYDEC, 82490000=14015000=
- FORMATDEC, 82495000=14015000=
- FILEDEC, 82500000=14016000=
- GOTSCHK, 82505000=14016000=
- FIELDDEC, 82510000=14016000=
- AUXMEMERR, 82515000=14017000=
- STREAMERR, 82520000=14017000=
- DEFINEDEC, 82525000=14017000=
- CALLSTATEMENT, 82530000=14017000=
- HF, 82535000=14017000=
- START; 82540000=14017000=
+ SAVERR, 82425000=14013000=
+ BOOLEANDEC, 82430000=14013000=
+ REALDEC, 82435000=14013000=
+ ALPHADEC, 82440000=14013000=
+ INTEGERDEC, 82445000=14014000=
+ LABELDEC, 82450000=14014000=
+ DUMPDEC, 82455000=14014000=
+ LISTDEC, 82460000=14014000=
+ OUTDEC, 82465000=14014000=
+ INDEC, 82470000=14014000=
+ MONITORDEC, 82475000=14015000=
+ SWITCHDEC, 82480000=14015000=
+ PROCEDUREDEC, 82485000=14015000=
+ ARRAYDEC, 82490000=14015000=
+ FORMATDEC, 82495000=14015000=
+ FILEDEC, 82500000=14016000=
+ GOTSCHK, 82505000=14016000=
+ FIELDDEC, 82510000=14016000=
+ AUXMEMERR, 82515000=14017000=
+ STREAMERR, 82520000=14017000=
+ DEFINEDEC, 82525000=14017000=
+ CALLSTATEMENT, 82530000=14017000=
+ HF, 82535000=14017000=
+ START; 82540000=14017000=
SWITCH 82545000=14018000=
DECLSW:= OWNERR, 82550000=14018000=
- SAVERR, 82555000=14018000=
- BOOLEANDEC, 82560000=14018000=
- REALDEC, 82565000=14018000=
- ALPHADEC, 82570000=14018000=
- INTEGERDEC, 82575000=14019000=
- LABELDEC, 82580000=14019000=
- DUMPDEC, 82585000=14019000=
- LISTDEC, 82590000=14019000=
- OUTDEC, 82595000=14019000=
- INDEC, 82600000=14019000=
- MONITORDEC, 82605000=14020000=
- SWITCHDEC, 82610000=14020000=
- PROCEDUREDEC, 82615000=14020000=
- ARRAYDEC, 82620000=14020000=
- FORMATDEC, 82625000=14020000=
- FILEDEC, 82630000=14021000=
- STREAMERR, 82635000=14021000=
- DEFINEDEC, 82640000=14021000=
- AUXMEMERR, 82645000=14021000=
- FIELDDEC; 82650000=14021000=
+ SAVERR, 82555000=14018000=
+ BOOLEANDEC, 82560000=14018000=
+ REALDEC, 82565000=14018000=
+ ALPHADEC, 82570000=14018000=
+ INTEGERDEC, 82575000=14019000=
+ LABELDEC, 82580000=14019000=
+ DUMPDEC, 82585000=14019000=
+ LISTDEC, 82590000=14019000=
+ OUTDEC, 82595000=14019000=
+ INDEC, 82600000=14019000=
+ MONITORDEC, 82605000=14020000=
+ SWITCHDEC, 82610000=14020000=
+ PROCEDUREDEC, 82615000=14020000=
+ ARRAYDEC, 82620000=14020000=
+ FORMATDEC, 82625000=14020000=
+ FILEDEC, 82630000=14021000=
+ STREAMERR, 82635000=14021000=
+ DEFINEDEC, 82640000=14021000=
+ AUXMEMERR, 82645000=14021000=
+ FIELDDEC; 82650000=14021000=
DEFINE 82655000=14022000=
NLOCS = 10 #, 82660000=14022000=
LOCBEGIN = PRTI #, 82665000=14023000=
@@ -17377,8 +17293,7 @@ COMMENT SOP IS TRUE IF THE BLOCK WAS CALLED BY ITSELF THROUGH THE 82370000
BOOLEAN 82740000=14025000=
GOTSTORAGE; 82745000=14025000=
BOOLEAN 82750000=14025100=
- FWDTOG; 82755000=14025100=
- COMMENT PREVIOUS FORWARD DECLARATION INDICATOR; 82760000=14025100=
+ FWDTOG; COMMENT PREVIOUS FORWARD DECLARATION INDICATOR; 82755000=14025100=
INTEGER 82765000=14026000=
PINFOO, 82770000=14026000=
BLKAD; 82775000=14026000=
@@ -17515,8 +17430,7 @@ START: 83180000
G.ADDRESS:= F:= F+1; 83430000=14115000=
PUT(G, BUP); 83435000=14116000=
G.INCR:= GT1; 83440000=14116000=
- IF FWDTOG THEN 83445000=14116100=
- COMMENT CHECK CORRESPONDENCE W/ FWD; 83450000=14116100=
+ IF FWDTOG THEN COMMENT CHECK CORRESPONDENCE W/ FWD; 83445000=14116100=
BEGIN 83455000=14116200=
IF (GT1:= TAKE(MARK+PJ)).CLASS ^= G.CLASS 83460000=14116400=
COMMENT CLASS ERROR; 83465000=14116400=
@@ -17581,8 +17495,7 @@ INTEGERDEC: 83745000
GO TO START; 83760000=14141000=
MONITORDEC: 83765000=14142000=
IF SPECTOG THEN 83770000=14143000=
- BEGIN 83775000=14143000=
- COMMENT ERROR 463 MEANS THAT A MONITOR 83780000=14143000=
+ BEGIN COMMENT ERROR 463 MEANS THAT A MONITOR 83775000=14143000=
DECLARATION APPEARS IN THE SPECIFICATION 83785000=14144000=
PART OF A PROCEDURE; 83790000=14145000=
FLAG(463); 83795000=14146000=
@@ -17595,8 +17508,7 @@ MONITORDEC: 83765000
GO START; 83830000=14148000=
DUMPDEC: 83835000=14149000=
IF SPECTOG THEN 83840000=14150000=
- BEGIN 83845000=14150000=
- COMMENT ERROR 464 MEANS A DUMP DECLARATION 83850000=14150000=
+ BEGIN COMMENT ERROR 464 MEANS A DUMP DECLARATION 83845000=14150000=
APPEARS IN THE SPECIFICATION PART OF A 83855000=14151000=
PROCEDURE; 83860000=14152000=
FLAG(464); 83865000=14153000=
@@ -17762,10 +17674,10 @@ DEFINEDEC: 84650000
START; 84665000=14254050=
REAL 84670000=14254100=
J, 84675000=14254100=
- K, 84680000=14254100=
- DINFO, 84685000=14254100=
- LINKA, 84690000=14254100=
- LINKB; 84695000=14254100=
+ K, 84680000=14254100=
+ DINFO, 84685000=14254100=
+ LINKA, 84690000=14254100=
+ LINKB; 84695000=14254100=
STOPENTRY:= STOPGSP:= TRUE; 84700000=14255000=
I:= I-1; 84705000=14255000=
DEFINING:= BOOLEAN(REAL(DEFINING) & 1[0:0:1]); 84710000=14255500=
@@ -17816,8 +17728,7 @@ DEFINEDEC: 84650000
END; 84935000=14259160=
IF ELCLASS ^= RELOP OR ACCUM[1] ^= 6"1=0000" THEN 84940000=14261000=
BEGIN 84945000=14262000=
- FLAG(45); 84950000=14263000=
- COMMENT ERROR 45 IS NO = FOLLOWING DEFINE ID; 84955000=14263100=
+ FLAG(45); COMMENT ERROR 45 IS NO = FOLLOWING DEFINE ID; 84950000=14263000=
I:= I-1; 84960000=14264000=
END; 84965000=14265000=
MACROID:= TRUE; 84970000=14265900=
@@ -17902,10 +17813,10 @@ PROCEDUREDEC: 85360000
BEGIN 85365000=14271000=
LABEL 85370000=14272000=
START, 85375000=14272000=
- START1; 85380000=14272000=
+ START1; 85380000=14272000=
LABEL 85385000=14273000=
START2, 85390000=14273000=
- DOITANYWAY; 85395000=14273000=
+ DOITANYWAY; 85395000=14273000=
COMMENT FWDTOG NOW GLOBAL TO BLOCK; 85400000=14274000=
IF NOT SPECTOG THEN 85405000=14275000=
FUNCTOG:= FALSE; 85410000=14275000=
@@ -18385,8 +18296,7 @@ CALLSTATEMENT: 87135000
ADJUST; 87785000=14600000=
G:= PROGDESCBLDR(LDES, L, ADDRSF); 87790000=14601000=
IF ELCLASS = FACTOP THEN 87795000=14601100=
- BEGIN 87800000=14601200=
- COMMENT SPECIAL CASE FOR COBOL ONLY; 87805000=14601200=
+ BEGIN COMMENT SPECIAL CASE FOR COBOL ONLY; 87800000=14601200=
STEPIT; 87810000=14601700=
END; 87815000=14601800=
END; 87820000=14602000=
@@ -18416,8 +18326,7 @@ CALLSTATEMENT: 87135000
ELBATWORD; 87940000=15003000=
BOOLEAN 87945000=15003010=
TYPEDPROC; 87950000=15003010=
- BEGIN 87955000=15004000=
- COMMENT CALL SIMPLE MONITOR IS USED TO CALL PRINTI FOR 87960000=15004000=
+ BEGIN COMMENT CALL SIMPLE MONITOR IS USED TO CALL PRINTI FOR 87955000=15004000=
SIMPLE VARIABLES. SEE THE MERRIMAC ROUTINE FOR A 87965000=15005000=
DESCRIPTION OF PRINTI; 87970000=15006000=
EMITPAIR(JUNK, SND); 87975000=15007000=
@@ -18449,21 +18358,17 @@ CALLSTATEMENT: 87135000
ELBATWORD; 88105000=15021000=
REAL 88110000=15022000=
ELBATWORD; 88115000=15022000=
- BEGIN 88120000=15023000=
- COMMENT PASSALPHA GENERATES CODE THAT PASSES THE ID 88125000=15023000=
+ BEGIN COMMENT PASSALPHA GENERATES CODE THAT PASSES THE ID 88120000=15023000=
PARAMETER TO PRINTI; 88130000=15024000=
DEFINE 88135000=15025000=
- SIZEALPHA = RR9 #; 88140000=15025000=
- COMMENT SIZEALPHA CONTAINS THE 88145000=15025000=
+ SIZEALPHA = RR9 #; COMMENT SIZEALPHA CONTAINS THE 88140000=15025000=
LENGTH OF THE ALPHA FOR THE 88150000=15026000=
VARIABLE DESCRIBED BY ELBATWORD; 88155000=15027000=
DEFINE 88160000=15028000=
- INDEX = RR10 #; 88165000=15028000=
- COMMENT INDEX CONTAINS THE INDEX 88170000=15028000=
+ INDEX = RR10 #; COMMENT INDEX CONTAINS THE INDEX 88165000=15028000=
INTO INFO FOR ID. INFO[INDEX] = ID; 88175000=15029000=
DEFINE 88180000=15030000=
- LTEMP = RR11 #; 88185000=15030000=
- COMMENT LTEMP IS A TEMP FOR L; 88190000=15030000=
+ LTEMP = RR11 #; COMMENT LTEMP IS A TEMP FOR L; 88185000=15030000=
EMITV(IF BOOLEAN(L.[1:1]) THEN CPLUS2 ELSE CPLUS1); 88195000=15033000=
LTEMP:= BUMPL; 88200000=15033000=
EMITWORD(GETALPHA( 88205000=15037000=
@@ -18511,8 +18416,7 @@ CALLSTATEMENT: 87135000
TALL, COMMENT ELBAT WORD FOR VARIABLE; 88415000=15072000=
T1, COMMENT 1ST INTEGER OF PARTIAL WORD SYNTAX; 88420000
T2, COMMENT 2ND INTEGER OF PARTIAL WORD SYNTAX; 88425000
- J; 88430000
- COMMENT SUBSCRIPT COUNTER ; 88435000=15075000=
+ J; COMMENT SUBSCRIPT COUNTER ; 88430000
REAL 88440000=15075500=
X, 88445000=15075500=
Z; 88450000
@@ -18541,7 +18445,7 @@ COMMENT 211 VARIABLE-FUNCTION IDENTIFIER USED OUTSIDE OF ITS SCOPE*; 88530000
BEGIN 88560000=15087000=
LABEL 88565000=15088000=
L1, 88570000=15088000=
- EXIT; 88575000=15088000=
+ EXIT; 88575000=15088000=
DEFINE 88580000=15089000=
FORMALNAME = [38:2] = 2 #; 88585000=15089000=
J:= ELCLASS; 88590000=15089010=
@@ -18680,53 +18584,45 @@ COMMENT 201 VARIABLE- A PARTIAL WORD DESIGNATOR IS NOT THE * 88950000
BEGIN 89255000=15183000=
LABEL 89260000=15184000=
EXIT, 89265000=15184000=
- LAST, 89270000=15184000=
- NEXT; 89275000=15184000=
+ LAST, 89270000=15184000=
+ NEXT; 89275000=15184000=
INTEGER 89280000=15184100=
THENUMBEROFDECLAREDDIMENSIONS; 89285000=15184100=
DEFINE 89290000=15185000=
- NODIM = RR1 #; 89295000=15185000=
- COMMENT NODIM CONTAINS THE NUMBER OF89300000=15185000=
+ NODIM = RR1 #; COMMENT NODIM CONTAINS THE NUMBER OF89295000=15185000=
DIMENSIONS OF A MONITORED SUBSCRIPTED 89305000=15186000=
VARIABLE; 89310000=15187000=
DEFINE 89315000=15188000=
- TESTVARB = RR2 #; 89320000=15188000=
- COMMENT TESTVARB CONTAINS THE 89325000=15188000=
+ TESTVARB = RR2 #; COMMENT TESTVARB CONTAINS THE 89320000=15188000=
INDEX OF THE LAST ENTRY IN INFO 89330000=15189000=
FOR A MONITORED SUBSCRIPTED 89335000=15190000=
VARIABLE; 89340000=15191000=
DEFINE 89345000=15192000=
- INC = RR3 #; 89350000=15192000=
- COMMENT INC IS A COUNTER USED TO INDEX89355000=15192000=
+ INC = RR3 #; COMMENT INC IS A COUNTER USED TO INDEX89350000=15192000=
INTO INFO TO PICK OUT SPECIAL MONITOR 89360000=15193000=
INFORMATION; 89365000=15194000=
DEFINE 89370000=15195000=
- SPMON = [36:12] #; 89375000=15195000=
- COMMENT SPMON DESIGNATES THE BIT89380000=15195000=
+ SPMON = [36:12] #; COMMENT SPMON DESIGNATES THE BIT89375000=15195000=
POSITION OF THE SPECIAL MONITOR 89385000=15196000=
INFORMATION FOR SUBSCRIPTED 89390000=15197000=
VARIABLES; 89395000=15198000=
DEFINE 89400000=15199000=
- OPBIT = [36:1] #; 89405000=15199000=
- COMMENT OPBIT TELLS WHETHER TO 89410000=15199000=
+ OPBIT = [36:1] #; COMMENT OPBIT TELLS WHETHER TO 89405000=15199000=
EMIT AN OPDC OR LITC FOR PASSING 89415000=15200000=
THE SUBSCRIPTS FOR MONITORED 89420000=15201000=
SUBSCRIPTED VARIABLES.1 MEANS 89425000=15202000=
LITC, 0 MEANS OPDC; 89430000=15203000=
DEFINE 89435000=15204000=
- LWRBND = RR4 #; 89440000=15204000=
- COMMENT LWRBND HOLDS THE LOWER 89445000=15204000=
+ LWRBND = RR4 #; COMMENT LWRBND HOLDS THE LOWER 89440000=15204000=
BOUND WORD FROM INFO FOR MONITORED 89450000=15205000=
SUBSCRIPTED VARIABLES; 89455000=15206000=
DEFINE 89460000=15207000=
- SPMONADR = [35:11] #; 89465000=15207000=
- COMMENT SPMONADR CONTAINS 89470000=15207000=
+ SPMONADR = [35:11] #; COMMENT SPMONADR CONTAINS 89465000=15207000=
THE ADDRESS THAT WILL BE 89475000=15208000=
EMITTED IN AN OPDC OR LITC 89480000=15209000=
DEPENDING ON OPBIT; 89485000=15210000=
BOOLEAN 89490000=15211000=
- SPCLMON; 89495000=15211000=
- COMMENT SPCLMON IS A BOOLEAN THAT89500000=15211000=
+ SPCLMON; COMMENT SPCLMON IS A BOOLEAN THAT89495000=15211000=
IS SET TRUE IF THE VARIABLE IN 89505000=15212000=
TALL IS SPECIAL MONITORED. 89510000=15213000=
; 89515000=15214000=
@@ -18740,23 +18636,19 @@ COMMENT 201 VARIABLE- A PARTIAL WORD DESIGNATOR IS NOT THE * 88950000
BEGIN 89555000=15217500=
STACKCT:= 1; 89560000=15217500=
IF J = 1 THEN 89565000=15219000=
- BEGIN 89570000=15219000=
- COMMENT FIRST TIME AROUND; 89575000=15219000=
+ BEGIN COMMENT FIRST TIME AROUND; 89570000=15219000=
IF TALL < 0 THEN 89580000=15221000=
- BEGIN 89585000=15221000=
- COMMENT TALL IS MONITORED; 89590000=15221000=
+ BEGIN COMMENT TALL IS MONITORED; 89585000=15221000=
EMITV(JUNK); 89595000=15222000=
EMITO(XCH); 89600000=15222000=
END; 89605000=15223000=
EMITN(TALL.ADDRESS) 89610000=15225000=
END 89615000=15226000=
ELSE 89620000=15226000=
- BEGIN 89625000=15226000=
- COMMENT NOT THE FIRST TIME AROUND; 89630000=15226000=
+ BEGIN COMMENT NOT THE FIRST TIME AROUND; 89625000=15226000=
EMITO(CDC); 89635000=15227000=
IF TALL < 0 THEN 89640000=15229000=
- BEGIN 89645000=15229000=
- COMMENT CALL SUBSCRIPT; 89650000=15229000=
+ BEGIN COMMENT CALL SUBSCRIPT; 89645000=15229000=
EMITV(JUNK); 89655000=15230000=
EMITO(XCH); 89660000=15230000=
END; 89665000=15231000=
@@ -18779,13 +18671,11 @@ COMMENT 207 VARIABLE-MISSING LEFTBRACKET ON SUBSCRIPTED VARIABLE *; 89730000
IF TALL < 0 THEN 89750000=15237000=
89755000=15238000=
COMMENT **** MONITOR FUNCTION M1 GOES HERE ; 89760000=15238000=
- BEGIN 89765000=15239000=
- COMMENT THIS MAY BE A MONITORED SUBSCRIPTED 89770000=15239000=
+ BEGIN COMMENT THIS MAY BE A MONITORED SUBSCRIPTED 89765000=15239000=
VARIABLE; 89775000=15240000=
EMITO(MKS); 89780000=15241000=
IF SPCLMON:= TAKE(GIT(TALL)+1).SPMON ^= 0 THEN 89785000=15243000=
- BEGIN 89790000=15243000=
- COMMENT THIS IS SPECIAL MONITORED; 89795000=15243000=
+ BEGIN COMMENT THIS IS SPECIAL MONITORED; 89790000=15243000=
TESTVARB:= (NODIM:= TAKE(INC:= GIT(TALL)).NODIMPART)+INC; 89800000=15245000=
DO 89805000=15246000=
IF BOOLEAN(LWRBND:= TAKE(INC:= INC+1)).OPBIT THEN 89810000=15248000=
@@ -18845,8 +18735,7 @@ COMMENT 205 VARIABLE- A ROW DESIGNATER APPEARS OUTSIDE OF A FILL * 90060000
90080000=15268000=
COMMENT ***** MONITOR FUNCTION M2 GOES HERE ; 90085000=15268000=
IF TALL < 0 THEN 90090000=15269000=
- BEGIN 90095000=15270000=
- COMMENT DO NOT MONITOR AFTER ALL; 90100000=15270000=
+ BEGIN COMMENT DO NOT MONITOR AFTER ALL; 90095000=15270000=
EMITNUM(5 & CARDNUMBER[46:43:44]); 90105000=15271000=
EMITN(GNAT(PRINTI)); 90110000=15271100=
END; 90115000=15272000=
@@ -18982,8 +18871,7 @@ COMMENT ***** MONITOR FUNCTION M6 GOES BEFORE EMITO(XCH); 90530000
ELSE 90770000=15347000=
90775000=15347000=
COMMENT ***** MONITOR FUNCTION M10 GOES HERE ; 90780000=15347000=
- BEGIN 90785000=15348000=
- COMMENT MONITOR FUNCTION M10; 90790000=15348000=
+ BEGIN COMMENT MONITOR FUNCTION M10; 90785000=15348000=
SPCLMON:= P1 = FP OR ELCLASS >= AMPERSAND; 90795000=15349000=
IF J = 1 THEN 90800000=15351000=
IF SPCLMON THEN 90805000=15352000=
@@ -18993,8 +18881,7 @@ COMMENT ***** MONITOR FUNCTION M10 GOES HERE ; 90780000
ELSE 90825000=15354000=
EMITO(IF SPCLMON THEN COC ELSE CDC); 90830000=15356000=
IF TALL < 0 THEN 90835000=15358000=
- BEGIN 90840000=15358000=
- COMMENT DO NOT MONITOR AFTER ALL; 90845000=15358000=
+ BEGIN COMMENT DO NOT MONITOR AFTER ALL; 90840000=15358000=
EMITNUM(5 & CARDNUMBER[46:43:44]); 90850000=15359000=
IF SPCLMON THEN 90855000=15361000=
EMITV(GNAT(PRINTI)) 90860000=15362000=
@@ -19028,8 +18915,7 @@ COMMENT 210 VARIABLE-MISSING LEFT ARROW OR PERIOD. *;90940000
91000000=15371000=
COMMENT ***** MONITOR FUNCTION M9 ; 91005000=15371000=
IF TALL < 0 THEN 91010000=15373000=
- BEGIN 91015000=15373000=
- COMMENT MONITOR FUNCTION M9; 91020000=15373000=
+ BEGIN COMMENT MONITOR FUNCTION M9; 91015000=15373000=
EMITNUM(5 & CARDNUMBER[46:43:44]); 91025000=15374000=
EMITV(GNAT(PRINTI)); 91030000=15374100=
END; 91035000=15375000=
@@ -19053,40 +18939,23 @@ COMMENT THIS SECTION GENERATES CODE FOR STREAM PROCEDURES; 91075000
LEVEL = LVL #, 91125000=16005000=
ADDOP = ADOP #; 91130000=16005000=
DEFINE 91135000=16007000=
- JFW = 39 #, 91140000=16007000=
- COMMENT 7.5.5.1 JUMP FORWARD UNCONDITIONAL ; 91145000=16007000=
- RCA = 40 #, 91150000=16008000=
- COMMENT 7.5.7.6 RECALL CONTROL ADDRESS ; 91155000=16008000=
- JRV = 47 #, 91160000=16009000=
- COMMENT 7.5.5.2 JUMP REVERSE UNCONDITIONAL ; 91165000=16009000=
- CRF = 35 #, 91170000=16010000=
- COMMENT 7.5.10.6 CALL REPEAT FIELD ; 91175000=16010000=
- BNS = 42 #, 91180000=16011000=
- COMMENT 7.5.5.5 BEGIN LOOP ; 91185000=16011000=
- NOP = 1 #, 91190000=16012000=
- COMMENT ; 91195000=16012000=
- ENS = 41 #, 91200000=16013000=
- COMMENT 7.5.5.6 END LOOP ; 91205000=16013000=
- TAN = 30 #, 91210000=16014000=
- COMMENT 7.5.3.7 TEST FOR ALPHAMERIC ; 91215000=16014000=
- BIT = 31 #, 91220000=16015000=
- COMMENT 7.5.3.8 TEST BIT ; 91225000=16015000=
- JFC = 37 #, 91230000=16016000=
- COMMENT 7.5.5.3 JUMP FORWARD CONDITIONAL ; 91235000=16016000=
- SED = 06 #, 91240000=16017000=
- COMMENT 7.5.7.8 SET DESTINATION ADDRESS ; 91245000=16017000=
- RSA = 43 #, 91250000=16018000=
- COMMENT 7.5.7.4 RECALL SOURCE ADDRESS ; 91255000=16018000=
- TRP = 60 #, 91260000=16019000=
- COMMENT 7.5.2.2 TRANSFER PROGRAM CHARACTERS ; 91265000=16019000=
- BSS = 3 #, 91270000=16020000=
- COMMENT 7.5.6.6 SKIP SOURCE BIT ; 91275000=16020000=
- BSD = 2 #, 91280000=16021000=
- COMMENT 7.5.6.5 SKIP DESTINATION BITS ; 91285000=16021000=
- SEC = 34 #, 91290000=16022000=
- COMMENT 7.5.10.1 SET COUNT ; 91295000=16022000=
- JNS = 38 #; 91300000=16023000=
- COMMENT 7.5.5.7 JUMP OUT LOOP ; 91305000=16023000=
+ JFW = 39 #, COMMENT 7.5.5.1 JUMP FORWARD UNCONDITIONAL ; 91140000=16007000=
+ RCA = 40 #, COMMENT 7.5.7.6 RECALL CONTROL ADDRESS ; 91150000=16008000=
+ JRV = 47 #, COMMENT 7.5.5.2 JUMP REVERSE UNCONDITIONAL ; 91160000=16009000=
+ CRF = 35 #, COMMENT 7.5.10.6 CALL REPEAT FIELD ; 91170000=16010000=
+ BNS = 42 #, COMMENT 7.5.5.5 BEGIN LOOP ; 91180000=16011000=
+ NOP = 1 #, COMMENT ; 91190000=16012000=
+ ENS = 41 #, COMMENT 7.5.5.6 END LOOP ; 91200000=16013000=
+ TAN = 30 #, COMMENT 7.5.3.7 TEST FOR ALPHAMERIC ; 91210000=16014000=
+ BIT = 31 #, COMMENT 7.5.3.8 TEST BIT ; 91220000=16015000=
+ JFC = 37 #, COMMENT 7.5.5.3 JUMP FORWARD CONDITIONAL ; 91230000=16016000=
+ SED = 06 #, COMMENT 7.5.7.8 SET DESTINATION ADDRESS ; 91240000=16017000=
+ RSA = 43 #, COMMENT 7.5.7.4 RECALL SOURCE ADDRESS ; 91250000=16018000=
+ TRP = 60 #, COMMENT 7.5.2.2 TRANSFER PROGRAM CHARACTERS ; 91260000=16019000=
+ BSS = 3 #, COMMENT 7.5.6.6 SKIP SOURCE BIT ; 91270000=16020000=
+ BSD = 2 #, COMMENT 7.5.6.5 SKIP DESTINATION BITS ; 91280000=16021000=
+ SEC = 34 #, COMMENT 7.5.10.1 SET COUNT ; 91290000=16022000=
+ JNS = 38 #; COMMENT 7.5.5.7 JUMP OUT LOOP ; 91300000=16023000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%91310000=16024000=
COMMENT FIXC EMITS BASICLY FORWARD JUMPS. HOWEVER IN THE CASE 91315000=16024000=
OF INSTRUCTIONS INTERPTED AS JUMPS BECAUSE OF A CRF ON 91320000=16025000=
@@ -19772,34 +19641,34 @@ COMMENT THIS SECTION GENERATES CODE FOR STREAM PROCEDURES; 91075000
THE SEMICOLON ,END OR ) IN SYNTACICALLY CORRECT PROGRAMS; 94665000=16474000=
LABEL 94670000=16475000=
L, 94675000=16475000=
- L1, 94680000=16475000=
- L2, 94685000=16475000=
- L3, 94690000=16475000=
- L4, 94695000=16475000=
- L5, 94700000=16475000=
- L6, 94705000=16475000=
- L7, 94710000=16475000=
- L8, 94715000=16475000=
- L9, 94720000=16475000=
- L10, 94725000=16475000=
- EXIT, 94730000=16475000=
- FINI, 94735000=16475000=
- START; 94740000=16475000=
+ L1, 94680000=16475000=
+ L2, 94685000=16475000=
+ L3, 94690000=16475000=
+ L4, 94695000=16475000=
+ L5, 94700000=16475000=
+ L6, 94705000=16475000=
+ L7, 94710000=16475000=
+ L8, 94715000=16475000=
+ L9, 94720000=16475000=
+ L10, 94725000=16475000=
+ EXIT, 94730000=16475000=
+ FINI, 94735000=16475000=
+ START; 94740000=16475000=
SWITCH 94745000=16476000=
TYPE:= FINI, 94750000=16476000=
- L, 94755000=16476000=
- FINI, 94760000=16476000=
- L3, 94765000=16476000=
- L4, 94770000=16476000=
- L5, 94775000=16476000=
- L6, 94780000=16476000=
- L7, 94785000=16476000=
- L7, 94790000=16476000=
- L7, 94795000=16476000=
- L7, 94800000=16476000=
- L8, 94805000=16476000=
- L9, 94810000=16476000=
- L10; 94815000=16476000=
+ L, 94755000=16476000=
+ FINI, 94760000=16476000=
+ L3, 94765000=16476000=
+ L4, 94770000=16476000=
+ L5, 94775000=16476000=
+ L6, 94780000=16476000=
+ L7, 94785000=16476000=
+ L7, 94790000=16476000=
+ L7, 94795000=16476000=
+ L7, 94800000=16476000=
+ L8, 94805000=16476000=
+ L9, 94810000=16476000=
+ L10; 94815000=16476000=
START: 94820000=16477000=
GO TO TYPE[ELCLASS-ENDV+1]; 94825000=16477000=
IF ELCLASS = RTPAREN THEN 94830000=16478000=
diff --git a/tools/xem/ESPOLXEM.alg_m b/tools/xem/ESPOLXEM.alg_m
index e268aca..911d0e5 100644
--- a/tools/xem/ESPOLXEM.alg_m
+++ b/tools/xem/ESPOLXEM.alg_m
@@ -1,6 +1,7 @@
+$ RESET LIST 00000009120821PK
%#######################################################################00005000=00001000=
% 00010000=00001010=
-% B-5700 ESPOL COMPILER 00015000=00001020=
+% B-5700 ESPOLXEM COMPILER 00015000
% MARK XVI.0.00 00020000=00001030=
% OCT 1, 1974 00025000=00001040=
% 00030000=00001050=
@@ -409,7 +410,7 @@ BOOLEAN 02017100
ARRAY 02018100
STREAMTEMPS[0:15], % STREAM TEMP SOURCE 02018200
STREAMTEMPD[0:15], % STREAM TEMP DESTINATION 02018300
- EBCDICBUFF[0:21]; % EBCDIC I/O BUFFER 02018400
+ EBCDICBUFF[0:29]; % EBCDIC I/O & TEMP BUFFER 02018400
02030000
VALUE ARRAY 02030100
BICCOLLATE ( % INDEX BY INTERNAL CODE TO GET COLLATION VALUE 02030200
@@ -1298,6 +1299,43 @@ BOOLEAN PROCEDURE STREAMCOMPARELSSQQ(MBASE, SBASE, N); 02150400
02153400
STREAMCOMPARELSSQQ:= TFFF; 02153500
END STREAMCOMPARELSS; 02153600
+ 02153700
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%02153800
+DEFINE STREAMCOMPARELEQ(N) = 02153900
+ STREAMCOMPARELEQQQ(MBASE, SBASE, N) #; 02154000
+BOOLEAN PROCEDURE STREAMCOMPARELEQQQ(MBASE, SBASE, N); 02154100
+ VALUE N; 02154200
+ ARRAY MBASE, SBASE[0]; 02154300
+ REAL N; 02154400
+ BEGIN COMMENT 02154500
+ COMPARES "N" CHARACTERS BETWEEN SOURCE AND DESTINATION FOR A 02154600
+ LESS-THAN-OR-EQUAL CONDITION. ADVANCES BOTH INDEXES BY "N". 02154700
+ EMULATES CEL. 02154800
+ ; 02154900
+ STREAMADJUSTSICHAR; 02155000
+ STREAMADJUSTDICHAR; 02155100
+ TFFF:= TRUE; 02155200
+ WHILE N > 0 DO 02155300
+ BEGIN 02155400
+ IF STREAMGETSC = STREAMGETDC THEN 02155500
+ BEGIN 02155600
+ STREAMSKIPSI(+1); 02155700
+ STREAMSKIPDI(+1); 02155800
+ N:= *-1; 02155900
+ END 02156000
+ ELSE 02156100
+ BEGIN 02156200
+ IF BICCOLLATE[STREAMGETSC] > BICCOLLATE[STREAMGETDC] THEN 02156300
+ TFFF:= FALSE; 02156400
+ 02156500
+ STREAMSKIPSI(+N); 02156600
+ STREAMSKIPDI(+N); 02156700
+ N:= 0; 02156800
+ END; 02156900
+ END WHILE; 02157000
+ 02157100
+ STREAMCOMPARELEQQQ:= TFFF; 02157200
+ END STREAMCOMPARELEQ; 02157300
02160000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%02160100
DEFINE STREAMCOMPAREEQL(N) = 02160200
@@ -1333,6 +1371,41 @@ BOOLEAN PROCEDURE STREAMCOMPAREEQLQQ(MBASE, SBASE, N); 02160400
02163200
STREAMCOMPAREEQLQQ:= TFFF; 02163300
END STREAMCOMPAREEQL; 02163400
+ 02163500
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%02163600
+DEFINE STREAMCOMPARENEQ(N) = 02163700
+ STREAMCOMPARENEQQQ(MBASE, SBASE, N) #; 02163800
+BOOLEAN PROCEDURE STREAMCOMPARENEQQQ(MBASE, SBASE, N); 02163900
+ VALUE N; 02164000
+ ARRAY MBASE, SBASE[0]; 02164100
+ REAL N; 02164200
+ BEGIN COMMENT 02164300
+ COMPARES "N" CHARACTERS BETWEEN SOURCE AND DESTINATION FOR A 02164400
+ NOT-EQUAL CONDITION. ADVANCES BOTH INDEXES BY "N". 02164500
+ EMULATES CNE. 02164600
+ ; 02164700
+ STREAMADJUSTSICHAR; 02164800
+ STREAMADJUSTDICHAR; 02164900
+ TFFF:= TRUE; 02165000
+ WHILE N > 0 DO 02165100
+ BEGIN 02165200
+ IF STREAMGETSC ^= STREAMGETDC THEN % COLLATING SEQ IS IMMATERIAL 02165300
+ BEGIN 02165400
+ STREAMSKIPSI(+1); 02165500
+ STREAMSKIPDI(+1); 02165600
+ N:= *-1; 02165700
+ END 02165800
+ ELSE 02165900
+ BEGIN 02166000
+ TFFF:= FALSE; 02166100
+ STREAMSKIPSI(+N); 02166200
+ STREAMSKIPDI(+N); 02166300
+ N:= 0; 02166400
+ END; 02166500
+ END WHILE; 02166600
+ 02166700
+ STREAMCOMPARENEQQQ:= TFFF; 02166800
+ END STREAMCOMPARENEQ; 02166900
02175000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%02175100
DEFINE STREAMCOMPAREGEQ(N) = 02175200
@@ -1697,7 +1770,7 @@ COMMENT IF A NEW COMPILER-DEFINED OPTION IS ADDED, CHANGE USEROPINX 02495000
LISTPTOG = OPTIONWORD.[LISTPBIT:1] #, 02550000=01001290=
MCPTOG = OPTIONWORD.[MCPBIT:1] #, 02555000=01001300=
MERGETOG = OPTIONWORD.[MERGEBIT:1] #, 02560000=01001310=
- NESTOG = OPTIONWORD.[NESTBIT:1] #, 02565000=01001320=
+ %% NESTOG = OPTIONWORD.[NESTBIT:1] #, % DUP DECL, NOT USED 02565000=01001320=
NEWTOG = OPTIONWORD.[NEWBIT:1] #, 02570000=01001330=
NEWINCL = OPTIONWORD.[NEWINCLBIT:1] #, 02575000=01001340=
OMITTING = OPTIONWORD.[OMITBIT:1] #, 02580000=01001350=
@@ -2021,7 +2094,7 @@ COMMENT INFO FORMAT 02910000
OROP = 93 #, COMMENT 135; 04190000=01275000=
ANDOP = 94 #, COMMENT 136; 04195000=01276000=
RELOP = 95 #, COMMENT 137; 04200000=01277000=
- ADDOP = 96 #, COMMENT 140; 04205000=01278000=
+ ADOP = 96 #, COMMENT 140; 04205000=01278000=
MULOP = 97 #, COMMENT 141; 04210000=01278500=
% STRING =99#, COMMENT 143; 04215000=01278600=
COMMENT SUBCLASSES FOR DECLARATORS (KEPT IN ADDRESS); 04220000=01279000=
@@ -2043,8 +2116,9 @@ COMMENT INFO FORMAT 02910000
NAMEV = 16 #, COMMENT 20; 04300000=01295000=
FILEV = 17 #, COMMENT 21; 04305000=01296000=
STREAMV = 18 #, COMMENT 22; 04310000=01297000=
- DEFINEV = 19 #, COMMENT 23; 04315000=01298000=
- DEFINEDDES = 8 #, 04320000=01299010=
+ DEFINEV = 19 #; COMMENT 23; 04315000=01298000=
+ DEFINE 04320000=01299010=
+ DDES = 8 #, 04322000
ADES = 28 #, 04325000=01299020=
PDES = 29 #, 04330000=01299030=
LDES = 30 #, 04335000=01299040=
@@ -2052,8 +2126,7 @@ COMMENT INFO FORMAT 02910000
FACTOP = ASTRISK #, 04345000=01299200=
OPERATORS = HEXOP #, 04350000=01299300=
FILEID = 0 #, 04355000=01299400=
- MAXINTRINSIC = 150 #, 04360000=01299400=
- % USED IN BUILDING INTABLE @ 09414120 04365000=01299400=
+ MAXINTRINSIC = 150 #, % USED IN BUILDING INTABLE @ 09414120 04360000=01299400=
INTRINSICADR = (MAXINTRINSIC DIV 30) #; % RESERVES SEG FOR INTABLE04370000=01299500=
REAL 04375000=01300000=
TIME1; 04380000=01300000=
@@ -2334,7 +2407,7 @@ COMMENT INFO FORMAT 02910000
DEFINE 05845000=01556500=
SUBOP = 48 #; 05850000=01556500=
ARRAY 05855000=01556900=
- CODEBUFF[0:1023]; % CODE BUFFER (WAS A FILE) 05860000=01556900=
+ CODE[0:1023]; % CODE BUFFER (WAS A FILE) 05860000=01556900=
FILE 05865000=01557000=
CARD(KIND=DISK, DEPENDENTSPECS, FILEUSE=IN); 05870000=01557000=
FILE 05875000=01558000=
@@ -2491,8 +2564,8 @@ COMMENT ESPOL CODE FILES ARE UNIQUELY TYPED IN THEIR FILE 05975000
XIT = 71#, COMMENT (0435) 7.4.8.2 EXIT; 06625000=01676000=
ZP1 = 322#, COMMENT (2411) 7.4.10.8 CONDITIONAL HALT; 06630000=01677000=
SCI =1003#, COMMENT (7655) SCAN OUT INITIALIZE; 06635000=01677050=
- SAN =1004#, COMMENT (7661) SYSTEM ATTENTION NEEDED 06640000=01677100=
- SCS =1019#, COMMENT (7755) SCAN OUT STOP; 06645000=01677150=
+ SAN =1004#, COMMENT (7661) SYSTEM ATTENTION NEEDED; 06640000=01677100=
+ SCS =1019#; COMMENT (7755) SCAN OUT STOP; 06645000=01677150=
COMMENT THESE DEFINES ARE USED BY EMITD; 06650000=01678000=
DEFINE 06655000=01679000=
DIA = 45#, COMMENT (XX55) 7.4.7.1 DIAL A; 06660000=01680000=
@@ -2563,10 +2636,11 @@ COMMENT ESPOL CODE FILES ARE UNIQUELY TYPED IN THEIR FILE 05975000
CPLUS2 = 770 #; 07000000=01714000=
COMMENT CPLUS1 AND CPLUS2 ARE EXPLICIT CONSTANTS 07005000=01714000=
USED IN THE GENERATION OF C-RELATIVE CODE; 07010000=01715000=
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07012000
PROCEDURE FLAG(ERRNUM); 07015000=01716000=
VALUE 07020000=01716000=
ERRNUM; 07025000=01716000=
- INTEGER 07030000=01716000=
+ REAL 07030000=01716000=
ERRNUM; 07035000=01716000=
FORWARD; 07040000=01716000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07045000=01716000=
@@ -2580,7 +2654,7 @@ COMMENT ESPOL CODE FILES ARE UNIQUELY TYPED IN THEIR FILE 05975000
REAL PROCEDURE TAKE(W); 07085000=01717700=
VALUE 07090000=01717700=
W; 07095000=01717700=
- INTEGER 07100000=01717700=
+ REAL 07100000=01717700=
W; 07105000=01717700=
FORWARD; 07110000=01717700=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07115000=01717700=
@@ -2668,7 +2742,7 @@ COMMENT "BLANKET" BLANKS OUT N+1 WORDS IN "THERE"; 07315000
REPLACE P:POINTER(EBCDICBUFF,8) BY DISK.TITLE; 07790000=01828500=
N2:= MIN(OFFSET(P)-1, 118); 07795000=01828500=
WRITE(LINE, 07800000=01835500=
- , 07808000
@@ -2680,6 +2754,10 @@ COMMENT "BLANKET" BLANKS OUT N+1 WORDS IN "THERE"; 07315000
IF H >= 12 THEN "PM." ELSE "AM.", 07820000=01835000=
(120-N2) DIV 2, N2, POINTER(EBCDICBUFF,8), 07825000=01835550=
(120-N2) DIV 2, N2); 07826000
+ REPLACE P:POINTER(EBCDICBUFF,8) BY CARD.TITLE; 07826100
+ N2:= MIN(OFFSET(P)-1, 106); 07826200
+ WRITE(LINE, , 07826300
+ (107-N2) DIV 2, N2, POINTER(EBCDICBUFF,8)); 07826400
NOHEADING:= FALSE; 07830000=01836000=
END OF DATIME; 07835000=01837000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07840000=01837000=
@@ -2700,7 +2778,7 @@ COMMENT OCTIZE REFORMATS ACCUM FOR OCTAL CONSTANTS; 07865000
STREAMLOCALS; 07886000
TALLY:= 0; 07888000
STREAMSETSI(S, SX); 07890000=02001842=
- STREAMSKIPSI(+3); 07892000=02001842=
+ STREAMSKIPSI(+4); 07892000=02001842=
STREAMSETDI(D, DX); 07894000=02001842=
THRU SKP DO 07896000=02001842=
STREAMSETDB(3, 0); % RIGHT JUSTIFY. 07898000
@@ -2724,9 +2802,17 @@ COMMENT OCTIZE REFORMATS ACCUM FOR OCTAL CONSTANTS; 07865000
STREAMSKIPSB(1); 07934000
END; 07936000
END THRU; 07938000
- 07940000=02001850=
- OCTIZE:= BOOLEAN(TALLY); % "1" = NON OCTAL CHARACTER. 07942000=02001852=
- END OCTIZE; 07970000=02001854=
+ 07940000
+ STREAMSETSI(D, DX); 07942000=02001848=
+ IF STREAMTESTSB THEN 07944000=02001848=
+ BEGIN 07946000=02001850=
+ TALLY:= 1; 07948000=02001850=
+ STREAMSETDI(D, DX); 07950000=02001850=
+ STREAMSETDB(1, 0) 07952000=02001850=
+ END; % PREVENT FLAG BIT 07954000=02001850=
+ 07965000=02001850=
+ OCTIZE:= BOOLEAN(TALLY); % "1" = NON OCTAL CHARACTER OR FLAG BIT. 07970000=02001852=
+ END OCTIZE; 07975000=02001854=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%07976000
COMMENT HEXIZE REFORMATS ACCUM FOR HEXADECIMAL CONSTANTS; 07980000=02001856=
BOOLEAN PROCEDURE HEXIZE(S, SX, D, DX, SKP, CNT); 07985000=02001858=
@@ -3153,7 +3239,7 @@ L: SCNN(SBUFF, NCR, COUNT, ACCUM, 1, 63-COUNT, RESULT, RESULT, COUNT, 09710000
STREAMSMEARLIT(1, 6":"); 09930000=02185750=
STREAMSETLOCSI(L); 09935000=02186000=
STREAMTRANSFERDEC(1); 09940000=02186000=
- STREAMSMEARLIT(1, 6" "); 09945000=02186250=
+ STREAMSMEARLIT(6, 6" "); 09945000=02186250=
THRU REAL(OMIT) DO 09950000=02186750=
BEGIN 09951000
STREAMSKIPDI(-12); 09952000
@@ -3833,7 +3919,7 @@ LENGTH6: 13625000
IF DEBUGTOG THEN 13730000=02533000=
IF WOP[0] = 0 THEN 13735000=02534000=
BEGIN 13740000=02535000=
- FILL WOP[*] WITH "LITC", 6" ", "OPDC", 6"DESC", 13745000=02536100=
+ FILL WOP[*] WITH 6"LITC", 6" ", 6"OPDC", 6"DESC", 13745000
11,6"NOP ", 12,6"PRT ", 13,6"DEL ", 16,6"ADD ", 18,6"PRL ", 19,6"LNG ",13760000=02539000=
21,6"GEQ ", 22,6"BBC ", 24,6"INX ", 35,6"LOR ", 37,6"GTR ", 38,6"BFC ",13765000=02540000=
39,6"RTN ", 40,6"COC ", 48,6"SUB ", 64,6"MUL ", 67,6"LND ", 68,6"STD ",13770000=02541000=
@@ -4038,12 +4124,14 @@ COMMENT INCR FIELD OF SPECIAL CHARACTER IS NON-ZERO FOR SPECIAL 14655000
SCANNER; % SCAN PAST "@". 14775000=02684000=
IF COUNT > 17 THEN 14780000=02685000=
GO ARGH; % 16 CHARS, + "@". 14785000=02685000=
- IF OCTIZE(ACCUM, 1, C, 17-COUNT, COUNT-1) THEN 14790000=02686000=
+ EBCDICBUFF[0]:= C; 14789000
+ IF OCTIZE(ACCUM, 1, EBCDICBUFF, 0, 17-COUNT, COUNT-1) THEN 14790000=02686000=
BEGIN 14795000=02686500=
Q:= ACCUM[1]; 14800000=02686500=
FLAG(521); 14805000=02686500=
GO SCANAGAIN 14810000=02686500=
END; 14815000=02686500=
+ C:= EBCDICBUFF[0]; 14816000
GO NUMBEREND; 14820000=02687000=
14825000=02689000=
COMMENT DOT AND ATSIGN ENTER NUMBER CONVERSION AT CORRECT SPOT; 14830000=02689000=
@@ -4108,6 +4196,8 @@ COMMENT CROSSHATCH HANDLES TWO SITUATIONS: 15020000
GT2:= 0 & (T:= DEFINEARRAY[DEFINEINDEX:= DEFINEINDEX-3])[14:29:15]15100000=02721000=
; 15105000=02721000=
LASTUSED:= T.[14:15]; 15110000=02722000=
+ IF DEFINEINDEX <= 0 THEN 15110100
+ SBUFF:= CBUFF; % REVERT BACK TO CARD BUFFER 15110200
FOR GT1:= 1 STEP 1 UNTIL GT2 DO 15115000=02723000=
BEGIN 15120000=02723500=
STACKHEAD[(T:= TAKE(LASTINFO+1)).[35:36] MOD 125]:= 15125000=02725000=
@@ -4161,7 +4251,8 @@ COMMENT MIGHT BE FUNNY COMMA - HANDLE HERE; 15225000
C:= CONVERT; 15365000=02758000=
% RESULT:=7; SCANNER; % DEBLANK. 15370000=02759000=
% IF DEFINECTR=0 THEN 15375000=02760000=
-% IF (C=3 OR C=4) AND EXAMIN(NCR)=""" THEN %OCTAL OR HEX STRING.15380000=02761000=
+% IF (C=3 OR C=4) AND EXAMIN(SUBFF, NCR)=""" THEN 15380000=02761000=
+% %OCTAL OR HEX STRING.15380100
% BEGIN INTEGER SIZ; 15385000=02762000=
% RESULT:=5; SCANNER; % SKIP QUOTE. 15390000=02763000=
% COUNT:=0; 15395000=02764000=
@@ -4169,19 +4260,19 @@ COMMENT MIGHT BE FUNNY COMMA - HANDLE HERE; 15225000
% RESULT:=5; SCANNER; 15405000=02766000=
% IF COUNT > SIZ:=48 DIV C THEN % > 1 WORD LONG. 15410000=02767000=
% BEGIN ERR(520); GO SCANAGAIN END; 15415000=02768000=
-% END UNTIL EXAMIN(NCR)="""; 15420000=02769000=
+% END UNTIL EXAMIN(SBUFF, NCR)="""; 15420000=02769000=
% Q:=ACCUM[1]; RESULT:=5; SCANNER; COUNT:=COUNT-1; 15425000=02770000=
% IF C=3 THEN % OCTAL STRING. 15430000=02771000=
-% IF OCTIZE(ACCUM[1],ACCUM[4],16-COUNT,COUNT) THEN 15435000=02772000=
+% IF OCTIZE(ACCUM,1,ACCUM,4,16-COUNT,COUNT) THEN 15435000=02772000=
% FLAG(521) % NON OCTAL CHARACTER IN STRING. 15440000=02773000=
-% ELSE ELSE IF HEXIZE(ACCUM[1],ACCUM[4],12-COUNT,COUNT) THEN 15445000=02774000=
+% ELSE ELSE IF HEXIZE(ACCUM,1,ACCUM,4,12-COUNT,COUNT) THEN 15445000=02774000=
% FLAG(521); % NON CHARACTER IN HEX STRING. 15450000=02775000=
% IF COUNT < SIZ THEN 15455000=02776000=
% BEGIN 15460000=02777000=
% C:=ACCUM[4]; GO FINISHNUMBER; 15465000=02778000=
% END; 15470000=02779000=
% T.INCR:=COUNT:=8; T.CLASS:=STRING; 15475000=02780000=
-% MOVECHARACTERS(8,ACCUM[4],0,ACCUM[1],3); 15480000=02781000=
+% MOVECHARACTERS(8,ACCUM,4,0,ACCUM,1,3); 15480000=02781000=
% GO COMPLETE; 15485000=02782000=
% END OCTAL OR HEX STRING; 15490000=02783000=
IF DPTOG THEN 15495000=02784000=
@@ -4618,7 +4709,7 @@ COMMENT#################################################################17045000
FORWARD; 17660000=03037000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%17665000=03037000=
PROCEDURE VARIABLE(FROM); 17670000=03038000=
- INTEGER 17675000=03038000=
+ REAL 17675000=03038000=
FROM; 17680000=03038000=
FORWARD; 17685000=03038000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%17690000=03038000=
@@ -4701,13 +4792,6 @@ COMMENT#################################################################17045000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%18075000=03051001=
PROCEDURE FORSTMT; 18080000=03052000=
FORWARD; 18085000=03052000=
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%18090000=03052000=
- REAL PROCEDURE TAKE(INDEX); 18095000=03053000=
- VALUE 18100000=03053000=
- INDEX; 18105000=03053000=
- INTEGER 18110000=03053000=
- INDEX; 18115000=03053000=
- FORWARD; 18120000=03053000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%18125000=03053000=
PROCEDURE E; 18130000=03054000=
FORWARD; 18135000=03054000=
@@ -5174,7 +5258,7 @@ COMMENT DEBUG PRINTS OUT OBJECT CODE IF "DEBUGN" IS SET; 20165000
END 20360000=04300000=
ELSE 20365000=04300000=
BEGIN 20370000=04300000=
- ERROR(200); 20375000=04300000=
+ ERR(200); 20375000=04300000=
L:= 1; 20380000=04300000=
END; 20385000=04300000=
COMMENT 200 EMIT - SEGMENT GREATER THAN 4093 SYLLABLES *; 20390000=04301000=
@@ -5331,7 +5415,7 @@ EXIT: 21070000
REAL PROCEDURE TAKE(INDEX); 21145000=05005000=
VALUE 21150000=05005000=
INDEX; 21155000=05005000=
- INTEGER 21160000=05005000=
+ REAL % B5500 DIDN'T INTEGERIZE PARAM ON CALL? 21160000=05005000=
INDEX; 21165000=05005000=
TAKE:= INFO[INDEX.LINKR, INDEX.LINKC]; 21170000=05006000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%21175000=05006000=
@@ -5373,7 +5457,7 @@ EXIT: 21070000
STREAMSETSI(LSTSEQ, QX); 21330000=05020000=
STREAMSKIPSI(-8); 21335000=05020000=
STREAMTRANSFERWDS(1); 21340000=05020000=
- STREAMSETSILINE, 0); 21345000=05021000=
+ STREAMSETSI(LINE, 0); 21345000=05021000=
STREAMTRANSFERWDS(2); 21350000=05021000=
STREAMSMEARLIT(4*2, 6"X"); COMMENT SET RIGHT MARGIN FLAG; 21355000=05022000=
STREAMSETSI(LSTSEQ, QX); 21365000=05023000=
@@ -5383,7 +5467,7 @@ EXIT: 21070000
STREAMSETDI(LINE, 0); 21385000=05024000=
STREAMSKIPDI(+8); COMMENT INDENT MESSAGE; 21390000=05024000=
STREAMTRANSFERLIT(6, 6"ERROR "); 21400000=05025000=
- STREAMTRANSFERLIT(6, 6"NUMBER "); 21402000
+ STREAMTRANSFERLIT(7, 6"NUMBER "); 21402000
STREAMSETLOCSI(ERRNUM); 21405000=05026000=
STREAMTRANSFERDEC(3); COMMENT CONVERT ERRNUM; 21410000=05026000=
STREAMTRANSFERLIT(4, 6" -- "); 21420000=05027000=
@@ -5400,7 +5484,7 @@ EXIT: 21070000
ERRORCOUNT:= ERRORCOUNT+1; COMMENT COUNT ERRORS; 21470000=05035000=
IF NOT LISTER THEN 21480000=05036000=
BEGIN 21485000=05037000=
- EDITLINE(LIN, SBUFF, FCR, L DIV 4, L.[1:2], MEDIUM, 0); 21490000=05038000=
+ EDITLINE(LIN, SBUFF, FCR, L DIV 4, L.[1:2], MEDIUM, FALSE); 21490000=05038000=
MOVE(1, INFO[LASTSEQROW,*], LASTSEQUENCE, LIN, 12); 21495000=05039500=
IF NOHEADING THEN 21500000=05039600=
DATIME; 21505000=05039600=
@@ -5698,6 +5782,7 @@ EXIT: 23235000
XIT, 23645000=05325080=
JUMPOUT; 23646000
23648000
+ TALLY:= 0; 23649000
STREAMSETLOCSI(PORS); 23650000=05325090=
STREAMSKIPSI(+3); 23655000=05325090=
STREAMSETDI(LIN, 0); % "PRT" OR "STACK". 23660000=05325090=
@@ -5885,7 +5970,8 @@ EXIT: 23235000
IF ELBAT[I].ADDRESS = SUBOP THEN 24365000=05344580=
GS:= FZERO 24370000=05344580=
ELSE 24375000=05344580=
- GS:= 512; 24380000=05344580=
+ GS:= 512 24380000
+ ELSE 24381000
BEGIN 24385000=05344600=
GS:= 0; 24390000=05344600=
I:= I-1 24395000=05344600=
@@ -6112,9 +6198,10 @@ EXIT: 24705000
NESTSORT(L, M); 25425000=05442000=
NESTSORT(M+1, U); 25430000=05443000=
I:= K:= L; 25435000=05444000=
- J:= M+1 AGAIN: 25440000=05445000=
- IF I > M THEN 25445000=05445000=
- GO TO TOP; 25450000=05445000=
+ J:= M+1; 25440000=05445000=
+ AGAIN: 25442000
+ IF I > M THEN 25445000=05445000=
+ GO TO TOP; 25450000=05445000=
IF J > U THEN 25455000=05446000=
GO TO BOTTOM; 25460000=05446000=
GT1:= NESTPRT[SORTPRT[I].[14:15]].LINK; 25465000=05447000=
@@ -6295,7 +6382,8 @@ EXIT: 24705000
IF ELCLASS >= OPERATOR THEN 26310000=06076000=
BEGIN 26315000=06077000=
IF T1 ^= 0 THEN 26320000=06077000=
- EMITO(T1); 26325000=06077000=
+ EMITO(T1) 26325000=06077000=
+ ELSE 26327000
BEGIN 26330000=06078000=
T1:= T2.LINK+2; 26335000=06079000=
T2:= T2.INCR+T1; 26340000=06080000=
@@ -6319,7 +6407,7 @@ EXIT: 24705000
ELSE 26430000=06091000=
IF T2 = ISOLATE THEN 26435000=06092000=
BEGIN 26440000=06093000=
- T2+C; 26445000=06093000=
+ T2:= C; 26445000=06093000=
IF STEPI ^= LITNO THEN 26450000=06095000=
BEGIN 26455000=06095000=
ERR(500); 26460000=06095000=
@@ -6613,7 +6701,7 @@ EXIT: 27805000
T1:= (T2:= ELBAT[I]).ADDRESS; 27845000=06185000=
PANA; 27850000=06186000=
IF T1 ^= 0 THEN 27855000=06187000=
- EMITO(T1); 27860000=06187000=
+ EMITO(T1) 27860000=06187000=
ELSE 27865000=06188000=
BEGIN 27870000=06188000=
T1:= T2.LINK+T2.INCR+1; 27875000=06189000=
@@ -6948,7 +7036,7 @@ ANOTHER: 29240000
IF ACLASS = REALID AND BOOLEAN(ELBAT[I].FORMAL) THEN 29465000=07070000=
BEGIN 29470000=07070000=
CHECKER(ELBAT[I]); 29475000=07070500=
- EMITPAIR(ELBAT[I], ADDRESS, LOD); 29480000=07071000=
+ EMITPAIR(ELBAT[I].ADDRESS, LOD); 29480000=07071000=
STEPIT; 29485000=07072000=
END 29490000=07073000=
ELSE 29495000=07073000=
@@ -6961,7 +7049,7 @@ ANOTHER: 29240000
IF ELCLASS <= STRNGCON AND ELCLASS > LABELID THEN 29515000=07076000=
BEGIN 29520000=07076000=
PRIMARY; 29525000=07076000=
- GOTO COMMON 29530000=07076000=
+ GO TO COMMON 29530000=07076000=
END; 29535000=07076000=
END; 29540000=07077000=
EMITO(NOP); 29545000=07078000=
@@ -7066,10 +7154,10 @@ EXIT: 29785000
ACTUALPARAPART(FALSE, GIT(HOLE)) 30030000=07411000=
ELSE 30035000=07411000=
IF FORMALF THEN 30040000=07411000=
- L:= L-1; 30045000=07411000=
- ELSE 30050000=07412000=
- IF TAKE(GIT(HOLE)).NODIMPART ^= 0 THEN 30055000=07412000=
- ERR(128); 30060000=07412000=
+ L:= L-1 30045000=07411000=
+ ELSE 30050000=07412000=
+ IF TAKE(GIT(HOLE)).NODIMPART ^= 0 THEN 30055000=07412000=
+ ERR(128); 30060000=07412000=
EMITV(ADDRESS); 30065000=07413000=
EXIT: 30070000=07425000=
END PROCSTMT; 30075000=07425000=
@@ -7176,7 +7264,7 @@ EXIT: 30070000
ELBW; 30580000=07503000=
LABEL 30585000=07504000=
GOMCP, 30590000=07504000=
- EXIT; 30595000=07504000=
+ EXIT; 30595000=07504000=
IF STEPI = TOV THEN 30600000=07505000=
STEPIT; 30605000=07505000=
IF ELCLASS = LABELID THEN 30610000=07506000=
@@ -7282,7 +7370,7 @@ EXIT: 31070000
BEGIN 31110000=07562000=
REAL 31115000=07562000=
T1, 31120000=07562000=
- T2; 31125000=07562000=
+ T2; 31125000=07562000=
LABEL 31130000=07562000=
EXIT; 31135000=07562000=
IFCLAUSE; 31140000=07563000=
@@ -7483,6 +7571,7 @@ COMMENT "COCT" PERFORMS THE OCTAL CONVERT FOR THE FILL STATEMENT. 32030000
ACC, CD[0]; 32108000
BEGIN 32110000=07654000=
STREAMLOCALS; 32112000
+ TALLY:= 0; 32114000
STREAMSETSI(ACC, AX); 32115000=07654500=
STREAMSKIPSI(+6); 32120000=07654500=
STREAMSETDI(CD, CX); 32125000=07654500=
@@ -7498,7 +7587,7 @@ COMMENT "COCT" PERFORMS THE OCTAL CONVERT FOR THE FILL STATEMENT. 32030000
THRU 3 DO 32155000=07656000=
BEGIN 32155500
IF STREAMTESTSB THEN 32156000
- STREAMSETDB(1) 32156500
+ STREAMSETDB(1, 1) 32156500
ELSE 32157000
STREAMSKIPDB(1); 32157500
STREAMSKIPSB(1); 32158000
@@ -7830,7 +7919,7 @@ EXIT: 33765000
END STMT; 33770000=07771000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%33775000=07771000=
PROCEDURE IOSTMT; 33780000=07993000=
- IF(GT1:= ELBAT[I].ADDRESS > 15 THEN ERR(98) 33785000=07994000=
+ IF(GT1:= ELBAT[I].ADDRESS) > 15 THEN ERR(98) 33785000=07994000=
ELSE 33790000=07994000=
BEGIN 33795000=07995000=
EMIT(ELBAT[I-1].ADDRESS & GT1[6:0:1] & GT1[11:3:3]); 33800000=07995000=
@@ -8318,7 +8407,7 @@ EOF: 36210000
I, 36260000=08999500=
J; 36265000=08999500=
I:= (L+7) DIV 4; 36270000=08999525=
- EBCDICBUF[0]:= I; 36275000=08999550=
+ EBCDICBUFF[0]:= I; 36275000=08999550=
REPLACE POINTER(EBCDICBUFF[1],0) BY POINTER(CODE[0],0) 36280000=08999575=
FOR (J:=29) WORDS; 36280100
WRITE(CODISK, 30, EBCDICBUFF); 36285000=08999600=
@@ -8543,12 +8632,12 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
3"1310441000000002", 6"3MUL00", %503 37410000=09121300=
3"1310441050000002", 6"3NEQ00", %505 37415000=09121400=
3"1310100130000002", 6"3NOP00", %507 37420000=09121500=
- 3"0650006550000002", 6"6SCOPO", 6"N......."; %509 37425000=09121600=
+ 3"0650006550000003", 6"6SCOPO", 6"N......."; %509 37425000=09121600=
FILL INFO[2, *] WITH 37430000=09121700=
- 3"131030000020004", 6"3RDF00", %512 37432000
+ 3"1310300000020004", 6"3RDF00", %512 37432000
3"0000", COMMENT LITC 0; 37435000=09121800=
3"2141", COMMENT FXS ; 37440000=09121900=
- 3"131030000020004", 6"3RDS00", %516 37450000=09122000=
+ 3"1310300000020004", 6"3RDS00", %516 37450000=09122000=
3"0004", COMMENT LITC 1; 37455000=09122100=
3"2141", COMMENT FXS ; 37460000=09122200=
3"1310456000000002", 6"3RDV00", %520 37470000=09122300=
@@ -8607,12 +8696,12 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
3"0030000000040003", 6"2LB000", 6"[# ", %621 37755000=09127500=
3"0030000000040003", 6"2RB000", 6"]# ", %624 37760000=09127600=
3"0030000000040003", 6"3GTR00", 6"># ", %627 37765000=09127700=
- 3"0030000000040003", 6"3GEQ00", 6"}# ", %630 37770000=09127800=
+ 3"0030000000040003", 6"3GEQ00", 3"17"6"# ", %630 37770000=09127800=
3"0030000000040003", 6"3EQL00", 6"=# ", %633 37775000=09127900=
- 3"0030000000040003", 6"3NEQ00", 6"!# ", %636 37780000=09128000=
- 3"0030000000040003", 6"3LEQ00", 6"{# ", %639 37785000=09128100=
+ 3"0030000000040003", 6"3NEQ00", 3"74"6"# ", %636 37780000=09128000=
+ 3"0030000000040003", 6"3LEQ00", 3"57"6"# ", %639 37785000=09128100=
3"0030000000040003", 6"3LSS00", 6"<# ", %642 37790000=09128200=
- 3"0030000000040003", 6"5TIMES", 6"|# ", %645 37795000=09128300=
+ 3"0030000000040003", 6"5TIMES", 3"40"6"# ", %645 37795000=09128300=
3"1310117530000002", 6"3SCI00", %688 37800000=09128400=
3"1310117540000002", 6"3SAN00", %650 37805000=09128500=
3"1310157730000002", 6"3SCS00", %652 37810000=09128600=
@@ -8789,7 +8878,7 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
VALUE 38590000=09378000=
LX, N, SX; 38595000=09378000=
ARRAY 38596000
- LINE[0]; 38597000
+ LINE, SEQ[0]; 38597000
REAL 38598000
LX, N, SX; 38599000
BEGIN 38600000=09379000=
@@ -8949,7 +9038,7 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
3"0051000000000000", 39302000=09395500=
3"0441070001000062"; 39305000=09395500=
Q:= -1; 39310000=09395700=
- PUSHEE(SAVEINFO, L, 4, 5); 39315000=09396000=
+ PUSHEE(SAVINFO, L, 4, 5); 39315000=09396000=
SAVNDX:= L; 39320000=09397000=
END; 39325000=09397100=
REWIND(CODISK); 39330000=09398000=
@@ -9011,7 +9100,7 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
ELSE 39615000=09419000=
SAVINFO[I.LINKR, I.LINKC]:= 0 39620000=09419000=
UNTIL I:= I+1 >= PRTIMAX; 39625000=09419000=
- MDESC(0 & 1[45:0:1], SAVINFO[D, PRTBASE-1]); 39630000=09419100=
+ MDESC(0 & 1[45:0:1], SAVINFO[0, PRTBASE-1]); 39630000=09419100=
SAVNDX:= 30*N; 39635000=09420000=
END; 39640000=09420010=
I:= 0; 39645000=09420020=
@@ -9153,10 +9242,11 @@ COMMENT THIS IS THE FILL FOR THE SECOND ROW OF INFO: 36760000
VALUE 40255000=10257100=
DX, SX, Q, N, J; 40260000=10257100=
ARRAY 40262000
- D, A[0]; 40264000
+ D, S[0]; 40264000
REAL 40266000
DX, SX, Q, N, J; 40268000
BEGIN 40275000=10257200=
+ STREAMLOCALS; 40277000
STREAMSETDI(D, DX); 40280000=10257200=
STREAMSKIPDI(+11); 40285000=10257200=
STREAMSETSI(S, SX); 40290000=10257200=
@@ -9427,7 +9517,7 @@ EXIT: 40870000
EL:= TABLE(NXTELBT); 41535000=12112000=
NXTELBT:= NXTELBT-1; 41540000=12113000=
IF EL ^= LEFTPAREN AND EL ^= LFTBRKET THEN 41545000=12114000=
- FLAG(141); 41550000=12115000=
+ FLAG(141) 41550000=12115000=
ELSE 41555000=12116000=
DO BEGIN 41560000=12116000=
J:= J+1; 41565000=12116000=
@@ -9856,7 +9946,7 @@ COMMENT JUMPCHKNX DETERMINES WHETHER ANY EXECUTABLE CODE HAS BEEN 43420000
STREAMTRANSFERDEC(5); 43605000=13642000=
END PRINT; 43610000=13643000=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%43612000
- CODE[0]:= SAVECODE; 43615000=13651000=
+ CODE[0]:= REAL(SAVECODE); 43615000=13651000=
IF SAVECODE AND INTOG AND NOT DECKTOG THEN 43620000=13651100=
FLAG(57); 43625000=13651100=
IF LISTER OR SEGSTOG THEN 43630000=13652000=
@@ -9887,7 +9977,7 @@ COMMENT JUMPCHKNX DETERMINES WHETHER ANY EXECUTABLE CODE HAS BEEN 43420000
BEGIN 43730000=13663000=
STREAMLOCALS; 43732000
STREAMSETDI(FIEL, 0); 43735000=13665000=
- STREAMTRANSFERLIT(8, 6" "); 43740000=13665000=
+ STREAMSMEARLIT(8, 6" "); 43740000=13665000=
STREAMSETSI(FIEL, 0); 43745000=13667000=
STREAMTRANSFERWDS(14); 43750000=13667000=
STREAMSKIPDI(-16); 43755000=13668000=
@@ -9923,7 +10013,7 @@ COMMENT JUMPCHKNX DETERMINES WHETHER ANY EXECUTABLE CODE HAS BEEN 43420000
N:= STREAMTEMPD[0]; 43882000
STREAMSETDI(S, SX); 43885000=13673350=
STREAMSETLOCSI(F); 43890000=13673350=
- STREAMKIPSI(+7); 43895000=13673350=
+ STREAMSKIPSI(+7); 43895000=13673350=
STREAMTRANSFERCHR(1); 43900000=13673350=
STREAMSETLOCSI(C); 43905000=13673350=
STREAMTRANSFERDEC(3); 43910000=13673400=
@@ -9948,7 +10038,7 @@ COMMENT JUMPCHKNX DETERMINES WHETHER ANY EXECUTABLE CODE HAS BEEN 43420000
IF FR > 1024 THEN 44000000=13677250=
FR:= FR-1024; 44005000=13677250=
DOIT(KLASSF, FR, INFO[PROINFO.LINKR,*], PROINFO.LINKC, 44010000=13677400=
- TWXA, 0, SAF, SIZE); 44015000=13677400=
+ TWXA, 0, REAL(SAF), SIZE); 44015000=13677400=
WRITE(STUFF, 10, TWXA[*]); 44020000=13677500=
END; 44025000=13677600=
IF SIZE > SEGSIZEMAX THEN 44030000=13678000=
@@ -10212,7 +10302,7 @@ COMMENT SOP IS TRUE IF THE BLOCK WAS CALLED BY ITSELF THROUGH THE 45040000
BEGINCTR:= BEGINCTR+1; 45490000=14035000=
IF SOP THEN 45495000=14037000=
BEGIN 45500000=14037000=
- BLKAD:= PROADD; 45505000=14037000=
+ BLKAD:= PROADO; 45505000=14037000=
IF LASTENTRY ^= 0 THEN 45510000=14039000=
BEGIN 45515000=14039000=
GT1:= BUMPL; 45520000=14039000=
@@ -10433,11 +10523,10 @@ SWITCHDEC: 46505000
IF STEPI ^= LABELID OR ELBAT[I].LVL ^= LEVEL THEN 46605000=14220000=
FLAG(63); 46610000=14220000=
PUTNBUMP(ELBAT[I]); 46615000=14221000=
- GT1:= GT1+1; 46620000=14221000=
- END; 46625000=14222000=
- ; COMMENT 46630000=14222500=
- UNTIL STEPI^=COMMA; 46635000=14223000=
-PUT(GT1, GT2); 46640000=14224000=
+ GT1:= GT1+1 46620000=14221000=
+ END COMMENT 46625000=14222000=
+ UNTIL STEPI^=COMMA; 46635000=14223000=
+ PUT(GT1, GT2); 46640000=14224000=
STOPENTRY:= STOPGSP:= FALSE; 46645000=14251000=
END SWITCHDEC; 46650000=14252000=
GO TO START; 46655000=14253000=
@@ -10458,6 +10547,7 @@ DEFINEDEC: 46660000
SX, K, J; 46718000
BEGIN 46720000=14254300=
STREAMLOCALS; 46722000
+ TALLY:= 0; 46724000
STREAMSETSI(S, SX); 46725000=14254300=
STREAMSKIPSI(+2); 46730000=14254300=
STREAMSETDI(D, 0); 46735000=14254300=
@@ -10468,7 +10558,7 @@ DEFINEDEC: 46660000
STREAMSKIPDI(+7); 46755000=14254500=
IF STREAMCOMPARENEQ(1) THEN 46760000=14254600=
TALLY:= 1; 46765000=14254600=
- PARM:= TALLY; 46770000=14254700=
+ PARM:= BOOLEAN(TALLY); 46770000=14254700=
END; 46775000=14254800=
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%46776000
STOPENTRY:= STOPGSP:= TRUE; 46780000=14255000=
@@ -10814,9 +10904,8 @@ HF: BEGIN 47785000
IF ELCLASS = BEGINV THEN 48485000=14479000=
BEGIN 48490000=14481000=
CALLINFO:= (CALLX:= CALLX+1)+1; 48495000=14481100=
- NEXTCTR:= STACKCTR; 48500000=14481200=
+ NESTCTR:= STACKCTR; 48500000=14481200=
BLOCK(TRUE); 48505000=14482000=
- ; 48510000=14483000=
PURGE(PINFOO); 48515000=14483000=
IF NESTOG THEN 48520000=14483100=
BEGIN 48525000=14483200=
@@ -10888,7 +10977,7 @@ CALLSTATEMENT: 48680000
SORTNEST; 48855000=14601000=
PURGE(NINFOO); 48860000=14601000=
END; 48865000=14601000=
- SEGMENT((L+3) DIV 4, PROADD); 48870000=14602000=
+ SEGMENT((L+3) DIV 4, PROADO); 48870000=14602000=
IF LEVEL > 1 THEN 48875000=14603000=
RIGHT(L); 48880000=14603000=
IF LEVEL:= LEVEL-1 = 0 THEN 48885000=14604000=
@@ -11275,7 +11364,7 @@ COMMENT 208 VARIABLE- NUMBER OF SUBSCRIPTS DOES NOT MATCH WITH * 50680000
EMITD(48-T2, T1, T2); 50795000=15308000=
EMITO(XCH); 50800000=15309000=
IF TALL.ADDRESS > 1023 THEN 50805000=15310000=
- EMITI(PRTE); 50810000=15310000=
+ EMITO(PRTE); 50810000=15310000=
EMITO(IF TALL.CLASS MOD 2 = INTARRAYID MOD 2 THEN IF P1 = FS 50815000=15335000=
THEN ISD ELSE ISN ELSE IF P1 = FS THEN STD ELSE SND); 50820000=15335000=
STACKCT:= 0; 50825000=15335500=
@@ -11700,12 +11789,13 @@ EXIT: 52305000
IF STEPI ^= TOV THEN 52385000=16252000=
I:= I-1; 52390000=16252000=
IF STEPI ^= STLABID THEN 52395000=16253000=
- ELCLASS <= IDMAX 52400000=16253000=
- DECLARELABEL ELSE 52405000=16253100=
- BEGIN 52410000=16253100=
- ERR(260); 52415000=16253100=
- GO TO EXIT 52420000=16253100=
- END; 52425000=16253100=
+ IF ELCLASS <= IDMAX THEN 52400000=16253000=
+ DECLARELABEL 52405000=16253100=
+ ELSE 52407000
+ BEGIN 52410000=16253100=
+ ERR(260); 52415000=16253100=
+ GO TO EXIT 52420000=16253100=
+ END; 52425000=16253100=
IF (GT2:= TAKE(GIT(GT1:= ELBAT[I]))).MON = 1 OR GT2.LOC ^= 0 THEN 52430000=16255000=
EMITJUMP(GT1) 52435000=16256000=
ELSE 52440000=16256000=
@@ -11869,7 +11959,7 @@ EXIT: 53005000
EMITC(ADDR, 10) 53220000=16378500=
ELSE %E 53225000=16378500=
IF ELCLASS = TRNSFER THEN 53230000=16379000=
- EMITC(ADDR, ELBAT[1].OPCODE) 53235000=16380000=
+ EMITC(ADDR, ELBAT[I].OPCODE) 53235000=16380000=
ELSE 53240000=16380000=
IF ELCLASS = LITV THEN 53245000=16381000=
BEGIN 53250000=16382000=
@@ -11961,7 +12051,7 @@ EXIT: 53360000
BEGIN 53655000=16441000=
JOINFO:= NEXTINFO; 53660000=16442000=
PUTNBUMP 53665000=16444000=
- (STACKHEAD[0], LINK & (STLABID*2+1)[45:7:8] & 2[20:7:8]); 53670000=16444000=
+ (STACKHEAD[0].LINK & (STLABID*2+1)[45:7:8] & 2[20:7:8]); 53670000=16444000=
PUTNBUMP(0 & (JOINFO-LASTINFO)[43:7:8]); 53675000=16445000=
PUTNBUMP(0); 53680000=16446000=
LASTINFO:= JOINFO; 53685000=16447000=