1AST
2************* FORTRAN II SECTION SIX ************************F6D00010
3FORTRAN 2 RECORD 98 - EOUIV-DIMENSION. F6D00011
4 F6D00012
5CONTROL ENTERS THIS RECORD AT LOCATION 40O (OCTAL). F6D00013
6 F6D00014
7ENTER TRANSFER VECTOR INTO DEV TABLE F6D00020
00210 8 EDEV SYN136 F6D00030
00240 9 NXT SYN160 F6000040
00265 10 LOC15 SYN181 F6000050
00266 11 UP02 SYN182 F6D00060
00350 12 UP03 SYN232 F6D00070
00361 13 ETL SYN241 F6D00000
00363 14 N SYN243 F6D00090
00366 15 VSZ SYN246 F6D00100
00367 16 J SYN247 F6D00110
00370 17 ETN SYN248 F6D00120
00400 18ORG256 F6D00130
00400 0 50000 0 00171 19CLALCTR SAVE UPPER BREAK F6D00140
00401 0 60100 0 00175 20STOL3 IN L3 F6D00150
00402 0 76200 0 00303 21RDR3 SELECT DRUM 3 F6D00160
T00403−0 75400 0 00000 22 A27 PXD0 F6D00170
00404 0 46000 0 00403 23LDAA27 LOCATE TRANSFER VECTOR TABLE (CLOSUB) F6D00180
00405 0 70000 0 72605 24CPYUPPER−2 F6D00190
00406 0 70000 0 72605 25CPYUPPER−2 LOAD INDEX REG 1 WITH WORD COUNT OF F6D00200
00407−0 53400 1 72605 26 A23 LXDUPPER−2,1 TRANSFER VECTOR TABLE. F6D00210
D00410−3 00000 1 00452 27TXLA28,1 IF NO TRANS VECTOR, GO TO ASSIGN EQUIV AND F6D00220
00411 0 53400 2 00265 28LXALOC15,2 DIMENSION STORAGE. F6D00230
00412 0 76200 0 00303 29 X1 RDR3 IF THERE IS A TRANSFER VECTOR, F6D00240
T00413−0 75400 0 00002 30 A29 PXD2 READ IT INTO UPPER -3 ETC. F6D00250
00414 0 46000 0 00413 31LDAA29 F6D00260
00415−0 70000 1 72605 32 A30 CADUPPER−2,1 F6D00270
00416 2 00001 1 00415 33TIXA30,1,1 F6D00280
00417 0 70000 0 00625 34CPYSUM F6D00290
00420 0 76000 0 00006 35COM F6D00300
00421−0 70000 0 00625 36CADSUM TO TEST CHECK SUM F6D00310
00422 0 76000 0 00006 37COM F6D00320
00423 0 10000 0 00426 38TZEA25 CHECK SUM OKAY. GO TO ENTER TRANS. VECTOR INTO F6D00330
39 DEV TABLE, F6D00331
00424 2 00001 2 00412 40TIXX1,2,1 IF CHECK SUM ERROR, TRY AGAIN F6D00340
00425 0 07400 4 00004 41TSX4,4 F6D00350
00426 0 50000 0 72605 42 A25 CLAUPPER−2 REDUCE WD COUNT OF TRANSFER VECTOR BY ONE F6D00360
00427 0 40200 0 00626 43SUBC2 AND STORE RESULT IN DECR OF A24. F6D00370
00430 0 62200 0 00450 44STDA24 F6D00380
00431−0 53400 1 00164 45LXDADDR,1 SET COUNTER FOR WORDS PROCESSED TO ZERO. F6D00390
00432 0 50000 0 00166 46CLAL1 F6D00400
00433 0 60100 0 00174 47 A42 STOEA STORE PROGRAM COUNTER IN EA. F6D00410
00434 0 50000 1 72604 48CLAUPPER−3,1 SELECT A TRANSFER VECTOR NAME. F6D00420
00435−0 63400 1 00627 49SXDLIB1,1 F6D00430
00436 0 07400 4 00142 50TSXSDEV,4 TO SEE IF NAME SELECTED IS IN DEV TABLE. YES, F6D00440
51 ERROR. F6D00441
00437 0 07400 4 00210 52TSXEDEV,4 ENTER NAME IN DEV TABLE. F6D00450
00440 0 02000 0 00442 53TRAA40 EXIT FROM EDEV. F6D00460
00441 0 07400 4 00004 54 A41 TSX4,4 IF NAME LOCATED IN DEV TABLE, ERROR F6D00470
00442 0 50000 0 00166 55 A40 CLAL1 STORE PROGRAM COUNTER IN PROG BREAK. F6D00480
00443 0 60100 0 00167 56STOL2 F6D00490
00444 0 40000 0 00162 57ADDONE INCREASE PROGRAM COUNTER BY 1. F6D00500
00445 0 60100 0 00166 58STOL1 F6D00510
00446−0 53400 1 00627 59LXDLIB1,1 F6D00520
00447 1 00001 1 00450 60TXIA24,1,1 F6D00530
00450 3 00450 1 00452 61 A24 TXHA28,1,* TRANSFER TO ASSIGN EQUIV. IF ALL TRANS VECTOR F6D00540
62 NAMES ENTERED F6D00541
00451 0 02000 0 00433 63TRAA42 F6D00550
64ASSIGN EQUIV AOTHERW1SE, SELECT NEST TRANS. VEC. NAME AND F6D00560
65 ENTER IN DEV F6D00561
00452 0 76400 0 00202 66 A28 BST2 TO POSITION TAPE 2 AT BEGINNING OF SUBDEF TABL F6D00570
00453 0 76400 0 00202 67BST2 F6D00580
00454 0 53400 1 00461 68LXAA1,1 SET READ ERROR COUNTER F6D00590
00455 0 02000 0 00462 69TRAA2 F6000600
00456 0 76400 0 00202 70 A3 BST2 READ ERROR PROCE0URE F6D00610
00457 2 00001 1 00462 71TIXA2,1,1 F6D00620
00460 0 07400 4 00004 72TSX4,4 F6D00630
00461 0 42000 0 00005 73 A1 HPR5 SELECT TAPE TWO F6D00640
00462 0 76200 0 00222 74 A2 RTB2 TO READ SUB DEF, TABLE. F6D00650
00463−0 53400 4 00164 75LXDADDR,4 SET COUNTER=0, F6D00660
00464 0 70000 4 72606 76 A4 CPYUPPER−1,4 ANO READ SUBDEF TABLE. F6D00670
00465 1 00001 4 00464 77TXIA4,4,1 INTO UPPER-1, ETC, F6D00680
00466 0 02000 0 00624 78TRAEOF1 END-OF-FILE IS ERROR HERE, F6D00690
00467 0 77100 0 00377 79ARS255 F6D00700
00470 0 77100 0 00377 80ARS255 F6D00710
00471−0 76000 0 00012 81RTT F6D00720
00472 0 02000 0 00456 82TRAA3 IF RTT ERROR. F6D00730
00473 0 77200 0 00202 83REW2 WHEN RECORD HAS BEEN READ, REWIND TABLE-TAPE. F6000740
00474 0 50000 0 00370 84CLAETN ETN HAS WORD COUNT OF EQUIV. TABLE F6D00750
00475 0 10000 0 00556 85TZEDIM IF NO EQUIV. ENTRIES, GO TO ASSIGN DIMENSION F6D00760
00476 0 50000 0 00163 86CLATWO F6D00770
00477 0 60100 0 00361 87STOETL STORE WD CT OF EQUIV TABLE+2 IN ETL F6000780
00500 0 07400 4 00240 88 A5 TSXNXT,4 TO READ AN EQU1V SENTENCE INTO ECS-1,--, I-1,--F6000790
00501 0 50000 0 72605 89 A6 CLAUPPER−2 LEAVES WD CT. OF SENT. IN XR1. F6D00800
00502 0 40200 0 00626 90SUBC2 TEST WORD COUNT OF SUBDEF TABLE. F6D00810
00503 0 10000 0 00530 91TZEME30 IF NO ARGUMENTS, GO TO SEARCH DEV TABLE F6000820
00504−0 12000 0 00530 92TMIME30 F6D00830
00505 2 00001 1 00506 93TIXCH4,1,1 F6D00840
00506−0 63400 1 00535 94 CH4 SXDA14,1 SAVE XR1 IN DECR. OF A14 F6D00850
00507 0 40200 0 00626 95SUBC2 F6000860
00510 0 62200 0 00520 96STDA12 F6D00870
00511−0 53400 1 00164 97LXDADDR,1 F6D00880
00512−0 53400 2 00164 98 A8 LXDADDR,2 SET XRS 1+2=0 F6D00890
00513 0 50000 1 71456 99 A9 CLAECS−1,1 COMPARE A WORD OF EQUIV SENTENCE F6D00900
00514 0 34000 2 72603 100CASUPPER−4,2 WITH LIST OF ARGUMENTS IN SUBDEF TABLE. F6D00910
00515 0 02000 0 00517 101TRAA10 F6D00920
00516 0 02000 0 00542 102TRAA11 IN SUB DEF TABLE, I.E. EQUIV. VARIABLE IS A SUBF6D00930
103 ROUTINE ARGUMENT F6D00931
00517 1 00001 2 00520 104 A10 TXIA12,2,1 INCREASE ARGUMENT COUNTER AND REPEAT COMPARISONF6000940
00520 3 00000 2 00644 105 A12 TXHDPCH3,2,** F6D00950
00521 0 02000 0 00513 106TRAA9 F6D00960
00522 0 07400 4 00142 107 A13 TSXSDEV,4 F6D00970
00523−0 53400 1 00646 108LXDSVIT,1 F6D00980
00524 1 00001 1 00535 109TXIA14,1,1 F6D00990
00525 0 07400 4 00350 110TSXUP03,4 IF WORD FOUND IN DEV SEARCH, GO TO MODIFY DRUM F6D01000
111 ADDRESS F6D01001
00526 0 02000 0 00500 112TRAA5 OF EQUIV TABLE. READ IN NEXT EQUIV. SENTENCE F6D01010
00527 0 02000 0 00556 113TRADIM EXIT HERE FROM UP03 IF END OF EQUIV TABLE REACHF6D01020
00530 0 50000 0 71456 114 ME30 CLAECS−1 SEARCH DEV TABLE FOR AN EQUIV. NAME. F6D01030
00531 0 07400 4 00142 115TSXSDEV,4 F6D01040
00532 0 02000 0 00537 116TRAA7 NOT IN DEV TABLE. GO TO ASSIGN EQUIV STORAGE F6D01050
00533 0 76100 0 00000 117NOP F6D01060
00534 0 02000 0 00525 118TRAA13+3 RETURNS HERE IF SEARCH SUCCESSFUL F6D01070
00535 3 00535 1 00537 119 A14 TXHA7,1,* (WD COUNT OF SENT. IN DECREMENT). TRANSF. TO A7F6D01080
00536 0 02000 0 00512 120TRAA8 IF END OF EQUIV SENTENCE. F6D01090
00537 0 07400 4 00266 121 A7 TSXUP02,4 NOT SUB DEF SO NORMAL EQUIV ASSIGNMENT. F6D01100
00540 0 02000 0 00500 122TRAA5 IF NOT END OF EQUIV TABLE, GO TO READ IN NEXT F6D01110
123 SENTENCE F6D01111
00541 0 02000 0 00556 124TRADIM END OF EQUIV. GO TO ASSIGN DIMENSION STORAGE F6D01120
00542 0 60000 0 00174 125 A11 STZEA EQUIV. VARIABLE IS A SUBROUTINE ARGUMENT F6D01130
00543−0 53400 1 00363 126LXDN,1 SET COUNTER FOR NO. OF WORDS IN SENT. F6D01140
00544−0 63400 1 00367 127 A21 SXDJ,1 SAVE NO. OF WORDS IN EQUIV SENT. F6D01150
00545 0 50000 1 71457 128CLAECS,1 STORE EQUIV VARIABLE IN DEV AND F6D01160
00546 0 07400 4 00142 129TSXSDEV,4 STORE LOCATION AS ZERO. F6D01170
00547 0 07400 4 00210 130TSXEDEV,4 EQUIV ENTRIES F6D01180
00550 0 02000 0 00551 131TRAA22 F6D01190
00551−0 53400 1 00367 132 A22 LXDJ,1 RESTORE COUNTER FOR NO. OF WDS LEFT IN EQUIV F6D01200
133 SENTENCE. F6D01201
00552 2 00001 1 00544 134TIXA21,1,1 IF MORE WORDS IN SENT, GO TO STORE LOCATION AS F6D01210
135 ZERO, F6D01211
00553 0 07400 4 00350 136TSXUP03,4 SENTENCE FINISHED. GO COMPUTE NEW DRUM ADD. + F6D01220
137 TEST FOR END. F6D01221
00554 0 02000 0 00500 138TRAA5 IF NOT END OF EQUIV TABLE, REPEAT WITH NEXT F6D01230
139 SENTENCE. F6D01231
00555 0 02000 0 00556 140TRADIM END OF EQUIV TABLE. F6D01240
141ADD SYMBOLS FROM DIMENSION SENTENCES F6D01250
00556 0 53400 1 00366 142 DIM LXAVSZ,1 SET COUNTER WITH WD CT OF ARRAY NAME TABLE F6D01260
D00557−3 00000 1 00622 143TXLENDA,1 IF NO SIZE TABLE, GO TO READ LOADER F6D01270
00560 0 02000 0 00631 144 SZYES TRADPCH1 F6D01280
00561 0 62200 0 00604 145STDA18 F6D01290
00562 0 50000 0 00171 146CLALCTR STORE LCTR IN EA. F6D01300
00563 0 60100 0 00174 147 SEA STOEA F6D01310
00564 0 50000 1 75055 148 DDS CLASTS,1 F6D01320
00565−0 63400 1 00363 149SXDN,1 SAVE COUNTER FOR ARRAY NAME TABLE F6D01330
00566 0 07400 4 00142 150TSXSDEV,4 GO TO SEARCH DEV TABLE FOR ARRAY NAME F6D01340
00567 0 02000 0 00574 151TRAA15 IF NOT IN TABLE, GO SEE IF THAT ARRAY NAME IS AF6001350
152 SUBROUTINE ARGUMENT F6D01351
00570 0 76100 0 00000 153NOP0 F6D01360
00571−0 53400 1 00363 154LXDN,1 IF IN TABLE, GO TO NEXT ARRAY NAME SEARCH. F6D01370
00572 2 00001 1 00564 155TIXDDS,1,1 F6D01380
00573 0 02000 0 00622 156TRAENDA F6D01390
00574−0 63400 2 00630 157 A15 SXDIR2,2 SAVE XR2 F6D01400
00575−0 53400 2 00164 158LXDADDR,2 SET COUNTER=0 F6D01410
00576 0 02000 0 00637 159TRADPCH2 F6D01420
00577 0 50000 1 75055 160 A20 CLASTS,1 TO SEE IF ARRAY NAME IS A SUBROUTINE ARG. F6D01430
00600 0 34000 2 72603 161CASUPPER−4,2 F6D01440
00601 0 02000 0 00603 162TRAA16 NOT A SUBROUTINE ARGUMENT F6D01450
00602 0 02000 0 00616 163TRAA17 IF IT IS A SUB ARG, GO T0 A17 F6D01460
00603 1 00001 2 00604 164 A16 TXIA18,2,1 F6D01470
00604 3 00604 2 00606 165 A18 TXHA19,2,* IF NO MORE ARGU1ENT NAMES TO COMPARE GO T0 A19.F6D01480
00605 0 02000 0 00577 166TRAA20 F6D01490
00606−0 53400 2 00630 167 A19 LXDIR2,2 ARRAY NAME NOT A SUBROUTINE ARGUMENT F6D01500
00607 0 07400 4 00210 168TSXEDEV,4 ENTER ARRAY NAME IN DEV TABLE. STORE LOCATION F6D01510
169 IN DEA F6D01511
00610−0 53400 1 00363 170 SLC LXDN,1 RESTORE ARRAY NAME COUNTER. F6D01520
00611 0 50000 0 00171 171CLALCTR SUBTRACT LENGTH OF ARRAY FROM LCTR AND STORE INF6D01530
172 LCTR. F6D01531
00612 0 40200 1 76173 173SUBL,1 F6D01540
00613 0 60100 0 00171 174STOLCTR F6D01550
00614 2 00001 1 00563 175TIXSEA,1,1 UPDATE ARRAY NAME TABLE COUNTER AND G0 SEE IF F6D01560
176 IN DEV. F6D01561
00615 0 02000 0 00622 177TRAENDA F6D01570
00616−0 53400 1 00363 178 A17 LXDN,1 RESTORE ARRAY NAME COUNTER F6D01580
00617 0 50000 0 00171 179CLALCTR F6D01590
00620 2 00001 1 00563 180TIXSEA,1,1 DECREMENT ARRAY NAME COUNTER F6D01600
00621 0 02000 0 00622 181TRAENDA WHEN ALL ARRAY NAMES TREATED, GO TO LOADER. F6D01610
A 00622 182 ENDA BSS F6D01620
00622 0 76200 0 00221 183RTB1 F6D01630
00623 0 02000 0 00004 184TRA4 F6D01640
00624 0 07400 4 00004 185 EOF1 TSX4,4 F6D01650
00625 0 00000 0 00000 186 SUM HTR0 F6D01660
00626+000001000000 187 C2 OCT000001000000 F6D01670
00627 0 00000 0 00000 188 LIB1 HTR0 F6D01680
00630 0 00000 0 00000 189 IR2 HTR0 F6D01690
00631 0 50000 0 72605 190 DPCH1 CLAUPPER−2 F6D01691
00632 0 40200 0 00626 191SUBC2 F6D01692
00633 0 60100 0 00636 192STOHERE F6D01693
00634 0 40200 0 00626 193SUBC2 F6D01694
00635 0 02000 0 00561 194TRASZYES+1 F6D01695
00636 0 00000 0 00000 195 HERE HTR0 F6D01696
00637−0 53400 1 00363 196 DPCH2 LXDN,1 F6D01700
00640 0 50000 0 00636 197CLAHERE F6D01701
00641 0 12000 0 00577 198TPLA20 F6D01702
00642 0 50000 1 75055 199CLASTS,1 F6D01703
00643 0 02000 0 00606 200TRAA19 F6D01704
00644−0 63400 1 00646 201 DPCH3 SXDSVIT,1 F6D01705
00645 0 02000 0 00522 202TRAA13 F6D01706
00646 0 00000 0 00000 203 SVIT HTR0 F6D01707