. EQU'S FOR REGISTERS AND J-DESIGNATORS PREQ . 005800 JU EQU T1 JW EQU T2 TZ EQU S5 JX EQU S6 JY EQU S1 JQ EQU S2 $(1) FORM6 FORM 6,12,18 TST2 EQU P1TAB3 TY7000 EQU SF701 . SCAN TYPE STATEMENT 446700 . 446800 DIM* RES 0 TYPE* S,H2 B11,TY30 446900 DS A9,SVA9 S B10,SVB10 S A8,SVA8 L B9,(1,1) INITIALIZE SLOUT INDEX SZ SLOUT . CLEAR FOR MONITOR L,M A9,1 TNE,M A0,57 J TYD01 L,S3 A0,TST2,A0 ST TYPE IS IN A0 (FROM 'STD') 447000 L,M A10,2 S A0,TY7000 . STATEMENT TYPE TY302 L A0,TY7000 S A0,TY700 . SET FOR EACH ELEMENT LMJ B11,GIT . GET NEXT ITEM J TY301 EOS 447600 TE,M A2,3 J TY331 . NOT A VARIABLE NAME TY3033 LMJ B11,SETT . SET TYPE IN MODE WORD ETC +TY700 INDIRECT REFERENCE TO TYPE REENT TY304 L FNXT,R8 RESET NEXT TZ FEOS 448500 J TY300 EOS 448600 L A0,GXX 448700 TNE,M A0,'(' 448800 J TY313 X=LEFT PAREN 448900 TY305 TNE,M A0,'/' . DATA J TY341 TE,M A0,',' LMJ B11,ERR2 449100 L A0,ST TNE,M A0,57 IS IS IT DIMENSION J TYD01 YES J TY302 . 449300 TY313 LMJ B11,DIMT DETERMINE IF MODE PROPER FOR DIM 449400 TYD04 RES 0 S A1,SYMVG SAVE SYM FOR GLD ROUTINE 449500 LMJ B11,GLD GET LIMITS OF DIVISIONS 449600 J TY300 ERROR 449700 LMJ B11,GX 449800 J TY300 449900 J TY305 450000 . 450100 TY301 LMJ B11,PERR 450200 FORM6 0,4,0 450300 TY300 . TY3000 L B9,(1,0) . RESTORE DL A9,SVA9 L B10,SVB10 L A8,SVA8 J *TY30 EENT TY331 . LMJ B11,PERR . BAD PUNCTUATION FORM6 0,137,0 J TY302 . . DATA IN A TYPE STATEMENT TY341 L A1,SYMV . GET SYMBOL TABLE ENTRY L,H1 A2,2,A1 . MODE WORD AND,M A2,070 JNZ A3,TY3411 LMJ B11,DTYPE A,H1 A0,2,A1 S,H1 A0,2,A1 L,H1 A2,2,A1 TY3411 RES 0 AND,M A2,7 . PICK UP CLASS JZ A3,TY400 TNE,M A3,7 J TY343 TY342 LMJ B11,PERR FORM6 031,185,SYMV TY400 A A1,(020040,0) . L,H2 A2,2,A1 OR A2,(0100000) S,H2 A3,2,A1 TNZ,H2 3,A1 . IS VBL DIMENSIONED J TY500 . NO TZ,H2 DUMVAR . YES, IMPLIED ARRAY J TY401 SLJ TSCSYM . TEST FOR SPACE IN SYM TABLE L A3,CRSYM L R1,('I$ ') S R1,0,A3 L R1,(010,0) S R1,2,A3 . SET INTEGER S,H2 A3,DUMVAR SZ 4,A3 SZ 1,*A3 S A3,CRSYM . TY401 L,H2 A3,DUMVAR L,H2 A4,2,A3 OR A4,(0100000) S,H2 A5,2,A3 L,S2 A4,2,A1 AND,M A4,7 . NUMBER OF DIMENSIONS AN,M A5,1 L,M A4,1 L,H2 A0,3,A1 . DIMENSION LOC A A0,(1,0) TY402 TE,S1 A9,0,A0 CTABH J TY5000 TZ,S2 0,A0 CTABH J $+3 PARDIM MSI,H2 A4,0,*A0 CTABH J $+2 PARDIM MSI,H2 A4,*0,*A0 CTABH JGD A5,TY402 LMJ B11,SLIS84 L A3,(0170000,0) A,H2 A3,DUMVAR S A3,SLOUT,*B9 L A0,(030100,1) . CONSTANT ONE S A0,SLOUT,*B9 S A4,SLOUT,*B9 . D1*D2*D3 S A0,SLOUT,*B9 S A1,SLOUT,*B9 . THE VARIABLE L A3,(040104,1) . OFFSET ITEM S A3,SLOUT,*B9 L A3,DUMVAR . DUMMY VARIABLE S A3,SLOUT,*B9 L,H1 A2,2,A1 . MODE WORD AND,M A2,070 . SELECT T L A2,(040100,0) SSL A2,0,A3 L A3,(030100,2) JB A2,$+2 AN,M A3,1 S,H2 A3,SLOUT-2,B9 . THE OFFSET S A3,SLOUT,*B9 . L A0,(0101440,0) . * ITEM S A0,SLOUT,*B9 L A0,(0102300,0) S A0,SLOUT,*B9 . SUBSCRIPT + L A0,(0101740,0) S A0,SLOUT,*B9 COLON ITEM S R8,SLOUT,*B9 L A0,(0100100,0) S A0,SLOUT,*B9 L A0,(0124300,0) A,M A0,0,B1 . STYPE S A0,SLOUT,*B9 L A0,(0200000,0) S A0,SLOUT,*B9 TY502 A,M B1,1 L A0,(0330000,0) S A0,SLOUT,*B9 . END OF LIST ITEM LMJ B11,SLSLIT . GO FIND LITERALS . L B10,(14,SLOUT) L A6,(030000,0) . DATA STMT ID L A1,(0600000,0) S A1,SLOUT,*B9 TY803 L,M A0,0,B10 A A0,(1,0) S A6,0,B10 L,M A1,15 . LENGTH L,M A2,0 . NO TRAILING CONTROL WORDS L,M A3,0 . FORCE TO FIELDATA LMJ B11,W60F . INSERT ITEM IN F60 L,M A2,0 . NO TRAILING CONTROL WORDS L,M A3,0 . FORCE TO FIELDATA LMJ B11,W60F . INSERT ITEM IN F60 TLEM,M B10,SLOUT-15,B9 J TY803 LMJ B11,GX J TY300 SZ FNXT TNE,M A0,',' L FNXT,R8 L B9,(1,1) SZ SLOUT . CLEAR FOR MONITOR STATEMENT L A0,ST TNE,M A0,57 IS IS IT DIMENSION J TYD01 YES J TY302 TY5000 LMJ B11,PERR FORM6 031,185,SYMV TY500 S A1,SLOUT,*B9 . A NON-ARRAY VARIABLE S R8,SLOUT,*B9 L A0,(0100100,0) S A0,SLOUT,*B9 L A0,(0124300,0) A,M A0,0,B1 S A0,SLOUT,*B9 J TY502 TY343 AND,M A2,0700 TE,M A3,0400 J TY342 AND A2,(0770070) S,H1 A3,2,A1 UNASSIGNED, SO ASSIGN IT J TY400 TYD01 LMJ B11,GIT J TY301 EOS TNE,M A2,3 J TYD02 DIMENSION STATEMENT LMJ B11,ERR4 J TY300 NOO GOOD, GET OUT TYD02 LMJ B11,GLS J TYD03 NOT IN LMJ B11,DIMT TYD03 L A0,GXX L FNXT,R8 TE,M A0,'(' DIM MUST BE FOLLOWED BY SPECS LMJ B11,ERR2 J TYD04 J TY300 $(2) . CTABH TY30 J $-$ CTABH TY700 +0 CTABH SVA8 +0 SVA9 +0 SVA10 +0 SVB10 +0 END