* /* START OF SPECIFICATIONS **** 00100000 *02* PROCESSOR = ASSEMBLER 00200000 **** END OF SPECIFICATIONS ***/ 00300000 * 00400000 * ASSEMBLY PHASE COMMON AREA AS OF 05/11/69 00800000 * 01200000 SPACE 01600000 *C311800 @AZ07356 01650006 *A311900 @AZ07356 01700006 X5COM DSECT 02000000 SPACE 02400000 * THE FOLLOWING FIELDS MUST BE INITIALIZED 02800000 SPACE 03200000 ELCTR DS 3F CURRENT LOCATION COUNTER 03600000 TXTPTR DS F TEXT POINTER 04000000 STMTN DS F STATEMENT NUMBER-LIKEWISE 04400000 LNCNT DS F LINE COUNT-INIT TO 1 04800000 SPACE 05200000 LEFTHF DS 0CL21 LEFT HALF INPUT TO PRINT ROUTINE 05600000 LOCATN DS F LOCATION OF ENTRY 06000000 DCDATA DS CL8 FIELD FOR DC INPUT DATA 06400000 ORG DCDATA ORG BACK FOR MACHINE OP 06800000 LHOPCD DS H OPCODE FOR MACHINE INSTRUCTION 07200000 ORG LHOPCD+1 ORG BACK FOR IMMEDIATE BYTE 07600000 LHIMD DS X 08000000 BASDS1 DS H BASE-DISPLACEMENT 1 08400000 BASDS2 DS H BASE-DISPLACEMENT 2 08800000 ORG 09200000 ADDRS1 DS F ADDRESS OF FIRST OPERAND 09600000 ADDRS2 DS F ADDRESS OF SECOND OPERAND 10000000 LHFLGS DSW ENTDC, ENTRY IS A DC X10400000 ENTALN, ENTRY IS ALIGNMENT X10800000 LHLNG, LENGTH OF OUTPUT DATA X11200000 EOUBIT EQU ORG OR USING BIT 11250000 DNTPLH EQU BIT4+BIT5+BIT6+BIT7 DON'T PRINT LEFT HALF 12000000 LHEND EQU * END OF LEFT HALF 12400000 CRDCNT DS H BYTE COUNT IN TEXT (TXT) CARD 12800000 SPACE 13200000 SYMDEF DS F POINTER TO DEFINITION DATA 13600000 SYMXRF DS F COUNT OF SYMBOLS XREF-ED THIS *14000003 STATEMENT OX02675 14400003 SYMCNT DS C COUNT OF SYMBOLS THIS STATEMENT 14800000 AOPF DSW USSRT, USING SORT FLAG X15200000 OPNPRS, OPERAND PRESENT FLAG X15600000 DCCOMP, DC COMPLETE SWITCH X16000000 DCSTRT, OUTPUT OF DC ALREADY STARTED X16400000 DCMOP, DC FINAL MOP-UP SWITCH X16800000 DCSWH, DC SWITCH X17200000 NAMPRS NAME PRESENT SWITCH 17600000 DCEVSW DSW DSSW, INDICATOR FOR STATEMENT A DS X18000000 DXDSW, INDICATOR FOR STATEMENT A DXD X18400000 DLOCTREF, SWITCH FOR L'* X18800000 NOTEWL, INDICATE A NOTE BAY BE NECESS. X19200000 NOTEHS, INDICATE A POINT WILL BE NEC. X19600000 LITRSW, LITERAL PRESENT SWITCH X20000000 XRFNO, TURN OFF XREF X20400000 DUPEVAL DUPLICATE EVAL OF DATA CONST 20450000 X5SW1 DSW WRPFLG, WRAP OF LOCATION COUNTER FLAG X20800000 LTDECV, LITERAL IN MACHINE OP X21200000 COLOVLP, COLUMN PTR OVERLAPPED X21600000 ERRBIT, ERROR LOGGING BIT X22000000 TWASLC, TITLE WAS LAST ENTRY X22050000 PERR, ERRORS DETECTED IN LAST STMT X22100000 TPTEXT, TITLE PUNCH OPERAND VALIDITY X22150000 PRPP FORCE PRINT OF POP OR PUSH 22250000 USPHL DS H USING PUSH-DOWN LEVEL 22400000 SWITCHES DS 0F 22800000 PRINTSW DSW PSTMT, PRINT STATEMENT X23200000 PGEN, SWITCH TO PRINT GENERATED TEXT X24000000 PDATA SWITCH TO PRINT DC DATA 24400000 CARDP DSW CDPTR1 CARD POINTER FLAG 25600000 FLDSW DSW PNAME, NAME FIELD IN STMT X26000000 POPER, OPCODE FIELD IN STMT X26400000 POPND, OPERAND FIELD IN STMT X26800000 PCOMM COMMENTS FIELD IN STMT 27200000 X5VSW DSW VLIT, LITERAL IN EXPR - SET BY X5V X27600000 ZAPIT SET TO INDICATE ZERO LEFTHF 27650000 X5MSW DSW E2PR, EXPRESSIO 2 PRESENT *28000000 E3PR, EXPRESSION 3 PRESENT *28400000 E1ERR, EXPR1 COMPLEXLY RELOCATABLE *28800000 E2ERR, EXPR 2 SIMPLY OR COMPL REL *29200000 E3ERR, EXPR 3 SIMPLY OR COMPL REL *29600000 TOOMANY, TOO MANY OPERANDS * *30000000 LEAVE, LEAVE X5M (SYNTAX ERROR) *30400000 ABSUS A USING WITH ABS VALUE EXISTS 30800000 X5ASW DSW MNOPRT, MNOTE NOT TO BE PRINTED X31000000 REPCARD, PRINT ONLY REPRO CARD EXPECTED X31050000 INVCNOP, ERROR IN CNOP OPERAND X31100000 SPACECC, TO CONTROL SPACE ON TOP OF PAGE*31150000 TERR, ERROR TO TERM REST OF STMT REQ *31170002 NOOP, NO OPERAND ON DC STMT *31180006 EQUOPR MORE THAN 1OPER IN EQU @AZ07356 31190006 FLDEND EQU * END OF FIELD TO BE INITIALIZED 31200000 * TO ZERO 31600000 LISTSW DS C TO ISOLATE THE JLIST SWITCH 32000000 EESDI DS H CURRENT ESDID 32400000 JTITLE DS CL100 TITLE 32800000 EJECT 33200000 * THE FOLLOWING FIELDS NEED NOT BE INITIALIZED 33600000 DWORD1 DS D 34000000 DWORD2 DS D 34400000 FNTEND DS F END OF FAR INSTRUCTION ENTRY 34800000 OPNADR DS F OPERAND POINTER 35200000 STRADR DS F STRING GROUP POINTER 35600000 PRNSAVE DS F LINK REGISTER SAVE WORD 36000000 FLDSAVE DS F LINK REGISTER SAVE WORD 36400000 X5LSAV DS 3F LOG ERROR REGISTER SAVE 36800000 SPACE 37200000 MWORK EQU * 37600000 EXP2 DS 0F EXPRESSION 2 VALUE 38000000 DS 3X SPACE 38400000 I DS X INDEX OR LENGTH FIELD 38800000 EXP3 DS 0F EXPRESSION 3 VALUE 39200000 DS 3X SPACE 39600000 BASEX DS X BASE REGISTER 40000000 DISPL DS H DISPLACEMENT FIELD 40400000 LQ1 DS H LENGTH ATTRIBUTE OF EXPR1 40800000 MWEND EQU * 41200000 MWLEN EQU MWEND-MWORK LENGTH OF X5M WORK AREA 41600000 SPACE 42000000 CNOP 2,4 ALIGN IN MIDDLE OF WORD 42400000 USINGT DS 68H CURRENT USING TABLE 42800000 DS (4*68)H SPACE FOR PUSHED TABLES 43200000 PRPU DS 5H PRINT PUSHDOWN AREA 43600000 HWD DS H SCRATCH HALFWORD 44000000 JBGNCL DS H BEGIN COLUMN (FROM ICTL) 44400000 JCNTCL DS H CONYINUE COLUMN(ICTL) 44800000 JENDCL DS H END COL-1(ALSO ICTL) 45200000 CDSTMT DS H CARD-WITHIN-STATEMENT COUNTER 45600000 SALOC DS H S PART ALLOC(HALFWORD NUMBER) 46000000 LHWORK DS 0CL43 WORK AREA TO UNPACK LEFT HALF 46400000 ULOCO DS CL8 LOCATION 46800000 UOPCOD DS CL4 OPCODE + SECOND BYTE 47200000 UBASD1 DS CL4 BASE-DISPLACEMENT 1 47600000 UBASD2 DS CL4 BASE-DISPLACEMENT 2 48000000 UGARB DS CL4 GARBAGE 48400000 UADR1 DS CL8 ADDRESS 1 48800000 UADR2 DS CL8 ADDRESS 2 49200000 DS CL3 49600000 PRNSV1 DS F PRINT BUFFER SAVE AREA 50000000 CRDLAC DS H BYTE COUNT IN LAST CARD 50400000 COLSAV DS H COLUMN PTR SAVE AREA 50800000 CRDPTR DS F POINTER TO TEXT (TXT) CARD 51200000 CRDVAL DS F VALUE OF TEXT (TXT) CARD 51600000 LOCLEN DS F ENTRY LENGTH FOR LOCATION UPDAT 52000000 NOTEVAL DS CL8 NOTE POINT SAVE 52400000 LITRLC DS F LITERAL LOCATION COUNTER 52800000 LITPID DS H LITERAL POOL ID 53200000 LITRSD DS H LITERAL ESD 53600000 WORKAREA DS 8F DEC CONVERT I/O AREA 54000000 BITLSW EQU WORKAREA BIT-LENGTH FLAG 54400000 EBYTE EQU WORKAREA+1 DEC CONVERT ERROR FLAG-BYTE 54800000 TYPE EQU WORKAREA+3 CONSTANT-TYPE BUCKET CODE 55200000 LMOD EQU WORKAREA+4 LENGTH-MODIFIER 55600000 SMOD EQU WORKAREA+8 SCALE-MODIFIER 56000000 EMOD EQU WORKAREA+12 EXPONENT-MODIFIER 56400000 DECKON EQU WORKAREA+16 16 BYTE CONVERTED CONSTANT 56800000 PRNTSV DS 3F REGISTER SAVE FOR PRINT 57200000 PREGSV DS 2F PRINT SAVE AREA 57600000 DUPF DS F DUP-FACTOR STORAGE 58000000 BITMOD DS F CONSTANT LENGTH IN BITS 58400000 STRTLC DS F BIT LC SAVE 58800000 KLENGTH DS F CONSTANT SCAN-LENGTH IN BITS 59200000 OUTSTART DS F CONVERTED OUTPUT ADDRESS 59600000 FULLWD DS F SAVE WORD 60000000 KONSTRT DS F CONSTANT FIELD START 60400000 KCOUNT DS H CONSTANT COUNT 60800000 LMODSW DS C EXPLICIT-LENGTH FLAG 61200000 SKLOG DS C ERROR-LOG BYPASS FLAG 61600000 ZDUPSW DS C ZERO DUP-FACTOR FLAG 62000000 SIGNSW DS C MINUS-SIGN FLAG 62400000 MTSW DS C EMPTY DS FLAG 62800000 CLEAR2 EQU * LITTLE CLEAR 63200000 TEMPLC DS F TEMPORARY LOCATION-COUNTER 63600000 BITLC DS F LOCATION-COUNTER IN BITS 64000000 XREFYES DS F $XREF SAVE 64400000 OPNDCT DS H OPERAND COUNT 64800000 OBITS DS H CURRENT OUTPUT-BIT COUNT 65200000 DCPRSW DS C PRINTSW SAVE 65600000 DUMSW DS C DS OR DXD FLAG 66000000 FSTPSW DS C FIRST-TIME PRINT FLAG 66400000 TUBEOP DS C INTERLUDE BAD OPERAND NUMBER 66800000 CLEAR1 EQU * BIG CLEAR 67200000 * WORK AREA STORAGE LAY-OUT FOR EVAL 67600000 * 68000000 EVALWORK 68400000 DS 64C ADDITIONAL WORK AREA DC EVAL 68800000 LCTRSAV DS 4F SAVE AREA 69200000 LHSAVE DS CL21 LEFT HALF SAVE AREA 69600000 ENDSTMNO DS F STATEMENT NO. OF END STATEMENT 69700000 X5ATEMP DS CL256 TEMP TITLE AND PUNCH BLD AREA 69750000 * ALSO ERR LOG AREA IN X5D 69800000 X5ALIT DS CL300 LITERAL RECORD BUILD AREA 69850000 DCLNG DS F ACCUM OBJECT LENGTH OF BAD DC 69860000 MODNOTV DS CL8 TERM-NOTE VAL TO MODEL STMT 69862000 MODSTMT DS H STMTN FOR MODEL STMT 69864000 MODEL DS CL600 MODEL STATEMENT SAVE AREA 69866000 * USED TO CHECK IF IT IS TOO LONG 69870000 X5COMEND EQU * END OF PHASE COMMON 70000000 X5COMLEN EQU (X5COMEND-X5COM-1)/8+1 COMMON LENGTH IN DOUBLE WORDS 70400000 LSTOUT EQU 0 INDEX FOR LISTING 70800000 CAROUT EQU 4 INDEX FOR CARRIAGE CONTROL 71200000 PUNOUT EQU 8 INDEX FOR PUNCH STATEMENT 71600000 RPOOUT EQU 12 INDEX FOR REPRO STATEMENT 72000000 DC0OUT EQU 16 INDEX FOR DC STATEMENT 72400000 ERROUT EQU 20 INDEX FOR LISTING *** ERROR*** 72800000 CMNOUT EQU 24 INDEX FOR LISTING COMMENTS 73200000 CLMPTR EQU BIT0 COLUMN POINTER FLAG 73600000 DTAPTR EQU BIT1 ERROR POINTER IS TO DATA 74000000 HIREG EQU 15 HIGEST REGISTER POSSIBLE 74400000 * CONDITION CODE SETTINGS FOR X5V 74800000 ABSX EQU 8 EXPR IS ABSOLUTE 75200000 CMPX EQU 4 EXPR IS COMPL REL,OR NON-SYNTACTIC *75600000 ERROR(S) DETECTED IN EXPR 76000000 RELX EQU 2 EXPR IS SIMPLY RELOCATABLE 76400000 ERRX EQU 1 FATAL ERROR - EXPR EVAL ABANDONED 76800000 SPACE 77200000 EJECT 77600000 * THIS DSECT DESCRIBES THE FORMAT OF AN ENTRY IN THE USING 78000000 * TABLE (USINGT).THE ENTRIES IN THE TABLE ARE SORTED IN DESCENDING 78400000 * SEQUENCE ON THEIR CONTENTS. 78800000 SPACE 79200000 UDSECT DSECT , USING TABLE ENTRY DSECT 79600000 CNOP 2,4 ALIGN IN MIDDLE OF WORD 80000000 UESD DS H ESDID FOR USING VALUE 80400000 UVAL DS F VALUE SPECIFIED IN USING STMT 80800000 UREG DS H REGISTER 81200000 USNXT EQU * NEXT ENTRY 81600000 USSL EQU L'UESD+L'UVAL+L'UREG TOTAL LENGTH OF USING ENTRY 82000000