mirror of
https://github.com/pkimpel/retro-b5500.git
synced 2026-02-12 03:07:30 +00:00
Commit additional proofing corrections for ALGOL and ALGOLXEM compiler sources.
This commit is contained in:
@@ -1381,7 +1381,7 @@ INTEGER DA; 01559020
|
||||
SWITCH FILE LIBRARY~CASTA,CASTB,CASTC; 01561050
|
||||
FILE OUT REMOTE 19 (2,10); 01561055
|
||||
SAVE ARRAY CBUF,TBUFF[0:9]; % INPUT BUFFERS. 01561056
|
||||
BOOLEAN REMOTEG; 01561060
|
||||
BOOLEAN REMOTOG; 01561060
|
||||
ARRAY LIBARRAY[0:24]; % LIBARRAY IS USED TO KEEP INFORMATION AS 01561065
|
||||
% TO LAST COMPILED LIBRARY SEQUENCE NUMBERS. 01561070
|
||||
% EACH ENTRY CONSISTS OF THREE WORDS CONTAINING: 01561080
|
||||
@@ -2033,7 +2033,7 @@ PROCEDURE SEARCHLIB(DOLLAR); VALUE DOLLAR; BOOLEAN DOLLAR; 02013165
|
||||
IF LASTUSED{2 OR LASTUSED=5 THEN GTI1~0 02013526
|
||||
ELSE IF MAXLTLCR.[33:15]-NCR.[33:15]<11 THEN 02013527
|
||||
GTI1~MKABS(LIBRARY[FILEINX](0)) ELSE GTI1~(NCR+2).[33:15]; 02013528
|
||||
LIBARRAY[LIBINDEX+2],NCRLINK~GTI1.[33:15]; COMMENT GTI1=NCR; 02013530
|
||||
LIBARRAY[LIBINDEX+2].NCRLINK~GTI1.[33:15]; COMMENT GTI1=NCR; 02013530
|
||||
IF LASTUSED{2 OR LASTUSED=5 THEN 02013533
|
||||
LIBARRAY[LIBINDEX+2].LCRLINK~0 ELSE 02013534
|
||||
LIBARRAY[LIBINDEX+2].LCRLINK~GTI1.[33:15]+10; 02013535
|
||||
@@ -8592,11 +8592,11 @@ END END END PROGRAM; 09420000
|
||||
NOTICED. HERE A SETUP IS PERFORMED SO THAT THE SCANNER 10206000
|
||||
WILL SCAN INFO. SINCE INFO (UNLIKE I/O BUFFERS) IS NOT 10207000
|
||||
A SAVE ARRAY, WE CAN NOT DIRECTLY SCAN INFO. INSTEAD WE 10208000
|
||||
FOOL READACARD SO TAHT THE ALPHA IS FETCHED FRO INFO AND 10209000
|
||||
FOOL READACARD SO THAT THE ALPHA IS FETCHED FROM INFO AND 10209000
|
||||
PLACED INTO A SMALL SAVE ARRAY (DEFINEARRAY) INSTEAD OF 10210000
|
||||
BEING FETCHED FROM AN I/O DEVICE. NATURALLY WE MUST HAVE 10211000
|
||||
NESTING WHICH IS OBTAINED BY USING DEFINEARRAY AS A SMALL 10212000
|
||||
STACK. THE QUANTITIES SAVE ARE LCR,NCR, AND LASTUSED. 10213000
|
||||
STACK. THE QUANTITIES SAVED ARE LCR,NCR, AND LASTUSED. 10213000
|
||||
LASTUSED DOUBLES AS A DEVICE FOR DIRECTING THE FLOW OF 10214000
|
||||
INFORMATION FROM I/O GEAR AND FROM INFO DURING ANALYSIS OF10215000
|
||||
DEFINES. THIS STACKING IS DONE HERE BY THE TABLE ROUTINE.10216000
|
||||
|
||||
@@ -553,7 +553,7 @@ VALUE 00980000
|
||||
DI:= LOC Q; 01005000=00524000=
|
||||
DI:= DI+5; 01010000=00524000=
|
||||
SKIP 3 DB; 01015000=00525000=
|
||||
(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP SB); 01020000=00525000=
|
||||
9(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP SB); 01020000=00525000=
|
||||
DI:= LOC Q; 01025000=00526000=
|
||||
SI:= Q; 01030000=00526000=
|
||||
DS:= WDS; 01035000=00526000=
|
||||
@@ -600,6 +600,10 @@ ELSE 01220000
|
||||
END; 01240000=00538000=
|
||||
IF EXAMIN(RR11+20) = 12 THEN 01245000=00539000=
|
||||
RR10:= 150; 01250000=00539000=
|
||||
01254900
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%01254920
|
||||
%% INNER BLOCK OF COMPILER %%01254940
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%01254960
|
||||
BEGIN 01255000=01000000=
|
||||
INTEGER 01260000=01000700=
|
||||
NUMSEQUENCEERRORS; 01265000=01000700=
|
||||
@@ -1678,7 +1682,7 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
|
||||
SAVE ARRAY 06605000=01561056=
|
||||
CBUF, TBUFF[0:9]; % INPUT BUFFERS. 06606000
|
||||
BOOLEAN 06610000=01561060=
|
||||
REMOTEG; 06615000=01561060=
|
||||
REMOTOG; 06615000=01561060=
|
||||
ARRAY 06620000=01561065=
|
||||
LIBARRAY[0:24]; % LIBARRAY IS USED TO KEEP INFORMATION AS 06625000=01561065=
|
||||
% TO LAST COMPILED LIBRARY SEQUENCE NUMBERS. 06630000=01561070=
|
||||
@@ -1979,11 +1983,11 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
|
||||
DI:= LOC T3; 08090000=01688030=
|
||||
DI:= DI+5; 08095000=01688040=
|
||||
SKIP 3 DB; 08100000=01688040=
|
||||
(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08105000=01688050=
|
||||
15(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08105000=01688050=
|
||||
SI:= LOC EDOC; 08110000=01688050=
|
||||
DI:= LOC T2; 08115000=01688050=
|
||||
DS:= 5 CHR; 08120000=01688050=
|
||||
(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08125000=01688060=
|
||||
3(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08125000=01688060=
|
||||
DI:= T3; 08130000=01688060=
|
||||
SI:= LOC T2; 08135000=01688060=
|
||||
DS:= WDS; 08140000=01688060=
|
||||
@@ -1992,11 +1996,11 @@ COMMENT THE CONTENTS OF RELATIVE DISK SEGMENT ZERO OF THE CODE FILE ARE:04950000
|
||||
SKIP 3 DB; 08155000=01688070=
|
||||
SI:= LOC TEDOC; 08160000=01688070=
|
||||
SI:= SI+3; 08165000=01688070=
|
||||
(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08170000=01688080=
|
||||
15(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08170000=01688080=
|
||||
SI:= LOC TEDOC; 08175000=01688080=
|
||||
DI:= LOC T1; 08180000=01688090=
|
||||
DS:= 5 CHR; 08185000=01688090=
|
||||
(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08190000=01688090=
|
||||
3(IF SB THEN DS:= 1 SET ELSE DS:= 1 RESET;SKIP 1 SB); 08190000=01688090=
|
||||
DI:= T3; 08195000=01688100=
|
||||
SI:= LOC T1; 08200000=01688100=
|
||||
DS:= WDS 08205000=01688110=
|
||||
@@ -2200,7 +2204,7 @@ COMMENT "BLANKET" BLANKS OUT N+1 WORDS IN "THERE"; 09000000
|
||||
NED; 09180000=01742600=
|
||||
SI:= FCR; 09185000=01742700=
|
||||
TALLY:= 0; 09190000=01742800=
|
||||
(36(IF SC ^= 6" " THEN JUMP OUT 2 TO NED;SI:= SI+1)); 09195000=01742900=
|
||||
2(36(IF SC ^= 6" " THEN JUMP OUT 2 TO NED;SI:= SI+1)); 09195000=01742900=
|
||||
TALLY:= 63; 09200000=01743000=
|
||||
NED: 09205000=01743100=
|
||||
TALLY:= TALLY+1; 09210000=01743100=
|
||||
@@ -2249,18 +2253,16 @@ L: IF SC = 6""" THEN 09400000
|
||||
DI:= LCR; 09415000=01767000=
|
||||
DS:= 1 LIT 6"""; % STOPPER FOR SCAN 09420000=01767000=
|
||||
NCR:= SI; % TEMP, STORAGE. SINCE NCR IS "LOCAL" TO GETVOID. 09425000=01768000=
|
||||
8 (IF SC = 6""" THEN JUMP OUT ELSE BEGIN TALLY:= TALLY+1;SI:= SI+ 09430000=01770000=
|
||||
1 09435000=01770000=
|
||||
END); 09440000=01770000=
|
||||
8(IF SC = 6""" THEN JUMP OUT 09430000=01770000=
|
||||
ELSE BEGIN TALLY:= TALLY+1;SI:= SI+1 END); 09435000=01770000=
|
||||
END 09445000=01772000=
|
||||
ELSE 09450000=01772000=
|
||||
BEGIN 09455000=01772000=
|
||||
NCR:= SI; % TEMP. STORAGE, SINCE NCR IS "LOCAL" TO GETVOID. 09460000=01773000=
|
||||
DI:= LCR; 09465000=01774000=
|
||||
DS:= 1 LIT 6" "; % STOPPER FOR SCAN 09470000=01774000=
|
||||
8 (IF SC = 6" " THEN JUMP OUT ELSE BEGIN TALLY:= TALLY+1;SI:= SI+ 09475000=01776000=
|
||||
1 09480000=01776000=
|
||||
END); 09485000=01776000=
|
||||
8(IF SC = 6" " THEN JUMP OUT 09475000=01776000=
|
||||
ELSE BEGIN TALLY:= TALLY+1;SI:= SI+1 END); 09480000=01776000=
|
||||
END; 09490000=01777000=
|
||||
TRANS: 09495000=01779000=
|
||||
SI:= LOC N; 09500000=01779000=
|
||||
@@ -2306,7 +2308,7 @@ TRANS: 09495000
|
||||
DI:= LOC DATER; 09685000=01825000=
|
||||
SI:= LOC DATE; 09690000=01825000=
|
||||
SI:= SI+2; 09695000=01825000=
|
||||
(DS:= 2 CHR;DS:= LIT 6"/"); 09700000=01826000=
|
||||
2(DS:= 2 CHR;DS:= LIT 6"/"); 09700000=01826000=
|
||||
DS:= 2 CHR; 09705000=01826000=
|
||||
END OF DATER; 09710000=01827000=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%09712000
|
||||
@@ -2553,7 +2555,7 @@ COMMENT LOCAL VARIABLES ARE LOCATED IN REVERSE ORDER FROM THE 10860000
|
||||
DI:= LOC TEMP1; % WE MAY OVERFLOW INTO TEMP2. 10890000=02001868=
|
||||
CNT(IF SC < 6"0" THEN IF SC >= 6"A" THEN IF SC <= 6"F" THEN 10895000=02001870=
|
||||
% WORK HARD. 10900000=02001870=
|
||||
BEGINT1:= SI;T2:= DI;DI:= T1;SI:= T2; % FLIP, MAN. 10905000=02001874=
|
||||
BEGIN T1:= SI;T2:= DI;DI:= T1;SI:= T2; % FLIP, MAN. 10905000=02001874=
|
||||
DS:= 3 RESET;SI:= T1;DI:= T2; % FLIP BACK. 10910000=02001876=
|
||||
DS:= 1 ADD;DI:= DI-1;SKIP 2 DB;DS:= 1 SET;SKIP 3 DB;GO AGIN; 10915000=02001882=
|
||||
END; 10920000=02001882=
|
||||
@@ -2800,7 +2802,7 @@ A LIBRARY CALL IF TRUE, ELSE WE ARE EXITING.; 11410000
|
||||
GTI1:= MKABS(LIBRARY[FILEINX](0)) 12120000=02013528=
|
||||
ELSE 12125000=02013528=
|
||||
GTI1:= (NCR+2).[14:15]; 12130000=02013528=
|
||||
LIBARRAY[LIBINDEX+2], NCRLINK:= GTI1.[14:15]; 12135000=02013530=
|
||||
LIBARRAY[LIBINDEX+2].NCRLINK:= GTI1.[14:15]; 12135000=02013530=
|
||||
COMMENT GTI1=NCR; 12140000=02013530=
|
||||
IF LASTUSED <= 2 OR LASTUSED = 5 THEN 12145000=02013533=
|
||||
LIBARRAY[LIBINDEX+2].LCRLINK:= 0 12150000=02013534=
|
||||
@@ -3110,6 +3112,7 @@ COMMENT MOVE CHARACTERS INTO "ACCUM"; 13645000
|
||||
13675000=02126500=
|
||||
COMMENT RESET "NCR" TO LOCATION OF NEXT CHARACTER TO BE SCANNED; 13680000=02126500=
|
||||
END OF SCAN; 13685000=02127000=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%13686000
|
||||
LABEL 13690000=02127500=
|
||||
L; % 13695000=02127500=
|
||||
L: SCAN(NCR, COUNT, ACCUM[1], 63-COUNT, RESULT, RESULT, COUNT, 0 13700000=02129000=
|
||||
@@ -4124,7 +4127,7 @@ LENGTH4: 18275000
|
||||
DI:= DI+47; 18705000=02449000=
|
||||
SKIP 4 DB; 18710000=02449000=
|
||||
DS:= 2 RESET; 18715000=02449000=
|
||||
(DI:= DI+48;DS:= 8 LIT 6"00#01+0#"; 18720000=02451000=
|
||||
2(DI:= DI+48;DS:= 8 LIT 6"00#01+0#"; 18720000=02451000=
|
||||
END FIX; 18725000=02451000=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%18726000
|
||||
IF GT1:= FEJ(TAPE, 0) = 10 THEN 18730000=02452000=
|
||||
@@ -4932,7 +4935,7 @@ COMMENT SPECIAL HANDLING OF CONSTANTS FOR SAKE OF FOR STATEMENTS; 22470000
|
||||
DS:= LIT 6" "; 22665000=02927260=
|
||||
SI:= LOC N; 22670000=02927270=
|
||||
SI:= SI+6; 22675000=02927270=
|
||||
(DS:= 3 RESET;3(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP SB)); 22680000=02927272=
|
||||
4(DS:= 3 RESET;3(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP SB)); 22680000=02927272=
|
||||
DI:= DI-4; 22685000=02927280=
|
||||
DS:= 3 FILL; 22690000=02927280=
|
||||
DI:= D; 22695000=02927290=
|
||||
@@ -5748,7 +5751,7 @@ COMMENT#################################################################23780000
|
||||
DS:= 4 CHR; 26740000=04132000=
|
||||
DS:= 2 LIT 6" "; 26745000=04133000=
|
||||
SI:= LOC CODE; 26750000=04134000=
|
||||
(DS:= 3 RESET;3(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP 1 SB)); 26755000=04136000=
|
||||
16(DS:= 3 RESET;3(IF SB THEN DS:= SET ELSE DS:= RESET;SKIP 1 SB)); 26755000=04136000=
|
||||
49(DS:= 2 LIT 6" "); 26760000=04137000=
|
||||
END; 26765000=04138000=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%26766000
|
||||
@@ -6222,7 +6225,7 @@ EXIT: 28625000
|
||||
BEGIN 29105000=05024200=
|
||||
SI:= LSTSEQ; 29110000=05024200=
|
||||
DS:= 10 LIT 6"NEAR LINE "; 29115000=05024200=
|
||||
(IF SC > 6"0" THEN JUMP OUT;SI:= SI+1;TALLY:= TALLY+1); 29120000=05024400=
|
||||
7(IF SC > 6"0" THEN JUMP OUT;SI:= SI+1;TALLY:= TALLY+1); 29120000=05024400=
|
||||
RMT:= TALLY; 29125000=05024500=
|
||||
DS:= 8 CHR; 29130000=05024500=
|
||||
DI:= DI-RMT; 29135000=05024500=
|
||||
@@ -6560,9 +6563,8 @@ COMMENT PASSLIST ASSUMES I IS POINTING AT LIST ID; 30260000
|
||||
SI:= SI+4; 30790000=05238500=
|
||||
TALLY:= 4; 30795000=05238500=
|
||||
3(IF SC = 6"0" THEN % DONT PRINT LEADING ZEROES. 30800000=05239000=
|
||||
BEGINSI:= SI+1;TALLY:= TALLY+63 30805000=05239500=
|
||||
ENDELSE 30810000=05239500=
|
||||
JUMP OUT); 30815000=05239500=
|
||||
BEGIN SI:= SI+1;TALLY:= TALLY+63 30805000=05239500=
|
||||
END ELSE JUMP OUT); 30810000=05239500=
|
||||
COUNT:= TALLY; 30820000=05240000=
|
||||
DS:= COUNT CHR; 30825000=05240000=
|
||||
DS:= 31 LIT 6") = SEGMENT DESCRIPTOR, TYPE = "; 30830000=05240500=
|
||||
@@ -15605,8 +15607,8 @@ COMMENT DEFINEPARAM GENERATES EVERYTHING (EXCEPT THE ELBAT 75580000
|
||||
EXIT: 75950000=13019000=
|
||||
END; 75955000=13019000=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%75956000
|
||||
STREAM PROCEDURE 75960000=13020000=
|
||||
ENTERID(IDLOC, FILENO, TYPE, MULFID, FILID, FILID1, N); 75965000=13020000=
|
||||
STREAM PROCEDURE ENTERID 75960000=13020000=
|
||||
(IDLOC, FILENO, TYPE, MULFID, FILID, FILID1, N); 75965000=13020000=
|
||||
VALUE 75970000=13021000=
|
||||
FILENO, 75975000=13021000=
|
||||
TYPE, 75980000=13021000=
|
||||
@@ -19578,7 +19580,7 @@ ENDOFITALL: 95030000
|
||||
OWNTOG(DS:= 4 LIT 6"OWN "); 95795000=17048100=
|
||||
SI:= TYPE; 95800000=17049300=
|
||||
32(IF SC = 6"." THEN JUMP OUT ELSE DS:= CHR); 95805000=17049400=
|
||||
(DS:= 6 LIT 6" -- ";DS:= 4 LIT 6"NAME"; 95810000=17049440=
|
||||
PARAMTOG(DS:= 6 LIT 6" -- ";DS:= 4 LIT 6"NAME"; 95810000=17049440=
|
||||
VALTOG(DI:= DI-4;DS:= 5 LIT 6"VALUE");DS:= 10 LIT 95815000=17049440=
|
||||
6" PARAMETER"); 95820000=17049440=
|
||||
DS:= 26 LIT 6" -- DECLARED IN SEGMENT "; 95825000=17049500=
|
||||
@@ -19594,8 +19596,10 @@ ENDOFITALL: 95030000
|
||||
DS:= 4 LIT 6" AT "; 95875000=17050300=
|
||||
SI:= LOC SEQNO; 95880000=17050400=
|
||||
DS:= 8 DEC; 95885000=17050500=
|
||||
(DS:= 17 LIT 6" -- FORWARD AT ";SI:= LOC FWDSEQNO;DS:= 8 DEC);95890000=17050800=
|
||||
(DS:= 16 LIT 6" -- OCCURS AT ";SI:= LOC FWDSEQNO;DS:= 8 DEC); 95895000=17051100=
|
||||
FWDTOG(DS:= 17 LIT 6" -- FORWARD AT "; 95890000=17050800=
|
||||
SI:= LOC FWDSEQNO;DS:= 8 DEC); 95892000=17050800=
|
||||
LBLTOG(DS:= 16 LIT 6" -- OCCURS AT "; 95895000=17051100=
|
||||
SI:= LOC FWDSEQNO;DS:= 8 DEC); 95896000=17051100=
|
||||
END OF SETUPHEADING; 95900000=17051200=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%95902000
|
||||
STREAM PROCEDURE ADDASEQNO(SEQNO, N, STARS, D); 95905000=17051400=
|
||||
@@ -19611,7 +19615,7 @@ ENDOFITALL: 95030000
|
||||
SI:= LOC SEQNO; 95955000=17052100=
|
||||
DS:= 8 DEC; 95960000=17052200=
|
||||
DS:= LIT 6" "; 95965000=17052300=
|
||||
(DI:= DS-1;DS:= LIT 6"*"); 95970000=17052400=
|
||||
STARS(DI:= DS-1;DS:= LIT 6"*"); 95970000=17052400=
|
||||
END; 95975000=17052500=
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%95976000
|
||||
STREAM PROCEDURE BLANKET(D); 95980000=17052600=
|
||||
|
||||
Reference in New Issue
Block a user