TITLE RPGPUR FOR RPGLIB 1 SUBTTL PURE AREA FOR RPGII RUNTIME SYSTEM ; ; THIS PORTION OF RPGLIB CONTAINS THOSE CONSTANTS THAT ; ARE CAPABLE OF SURVIVING THE HARSH RIGORS OF THE PURE ; AREA. HEREIN FIND THOSE MYRIAD CONSTANTS THAT HAVE ; NO RIGHT TO EXIST BUT MUST IF OUR RUNTIME SYSTEM IS ; TO FUNCTION. ; ; AUGUST 26, 1975 17:03:06 ; ; ALL RIGHTS RESERVED, BOB CURRIER ; TWOSEG RELOC 400000 ;DEFINE AN AC SO THE THING WILL COMPILE TA==4 ; ; DEFINE MACROS TO DEFINE TABLES ; DEFINE D.PNTR (TBLNAM,TBLID),< DEFINE TBLID'.ITM (ITMID,WRDNO,LFTBIT,RTBIT),< INTERNAL TBLID'.'ITMID TBLID'.'ITMID: POINT RTBIT-LFTBIT+1,WRDNO-1(TA),RTBIT > DEFINE TBLID'.FLG (FLGID,WRDNO,BITNO),< INTERNAL TBLID'.'FLGID TBLID'.'FLGID: POINT 1,WRDNO-1(TA),BITNO > > RADIX 10 SALL ;OTFTAB DEFINITIONS D.PNTR OTFTAB,OT OT.ITM COR,1,0,17; POINTER TO CORE INDEX * OT.ITM ADP,1,18,35; POINTER TO ADDROUT * OT.ITM BFP,2,0,17; POINTER TO RECORD BUFFER* OT.ITM OPC,2,18,35; POINTER TO OUTPUT CHAIN * OT.ITM IPC,3,0,17; POINTER TO INPUT CHAIN * OT.ITM FTB,3,18,35; Pointer to FTBTAB item OT.ITM NAM,4,0,35; PHYSICAL NAME OT.ITM TYP,5,0,2; FILE TYPE OT.ITM DES,5,3,5; FILE DESCRIPTION OT.ITM PRO,5,6,8; PROCESSING MODE OT.ITM ORG,5,9,10; ORGANIZATION OT.ITM RAF,5,11,12; RECORD ADDRESS FORMAT OT.ITM DEV,5,13,16; DEVICE OT.FLG EOF,5,17; EOF PROCESSING FLAG OT.ITM BLK,5,18,35; BLOCKING FACTOR OT.ITM KYP,6,0,11; KEY POSITION OT.ITM SEQ,6,12,13; SEQUENCE CHECKING OT.ITM BUF,6,14,19; BUFFER OFFSET OT.FLG AST,6,20; ASCII TAPE OPTION OT.ITM REW,6,21,22; REWIND OPTION OT.ITM EXT,6,23,28; NUMBER OF EXTENTS OT.ITM ADD,6,29,30; FILE ADDITION OPTION OT.ITM KYL,6,31,35; LENGTH OF KEY FIELD OT.ITM OVI,7,0,7; OVERFLOW INDICATOR OT.ITM EXI,7,8,15; EXTERNAL INDICATOR OT.ITM OVL,7,16,21; OVERFLOW LINE OT.ITM CHN,7,28,31; CURRENT CHANNEL OT.ITM CHI,7,32,35; INDEX CHANNEL OT.ITM CRS,8,0,17; CORE INDEX SIZE OT.ITM BSZ,8,18,35; BUFFER SIZE (WORDS) OT.ITM BSC,9,0,17; BUFFER SIZE (CHARACTERS) OT.FLG LAS,9,18; I AM LAST OT.ITM LPP,9,19,25; LINES PER PAGE OTFSIZ==:^D9; SIZE OF OTFTAB ENTRY ;OCHTAB DEFINITIONS D.PNTR OCHTAB,OC OC.ITM IDX,1,0,17; POINTER TO INDEX * OC.ITM NXR,1,18,35; NEXT RECORD * OC.ITM NXF,2,0,17; NEXT FIELD * OC.ITM IND,2,18,35; INDTAB POINTER * OC.ITM SRC,3,0,35; SOURCE POINTER * OC.ITM FLD,4,0,1; FIELD TYPE OC.ITM SIZ,4,2,13; SIZE OC.ITM DEC,4,14,17; DECIMAL POSITIONS OC.ITM STP,4,18,29; STERLING POSITION OC.FLG PRI,4,30; MFCU PRINT & PUNCH OC.FLG PRO,4,31; MFCU PRINT ONLY OC.FLG STR,4,32; STERLING SIGN OC.ITM ORT,4,33,34; OUTPUT RECORD TYPE OC.FLG ADD,4,35; ADD A RECORD OC.FLG FOV,5,0; FORCED OVERFLOW OC.ITM SKB,5,1,7; SKIP BEFORE OC.ITM SKA,5,8,14; SKIP AFTER OC.ITM SPB,5,15,16; SPACE BEFORE OC.ITM SPA,5,17,18; SPACE AFTER OC.ITM END,5,19,30; END POSITION OC.ITM STS,5,31,34; STACKER SELECT OC.FLG IMD,5,35; INDEX IMMEDIATE OC.ITM OCC,6,0,14; OCCURS OC.ITM EDT,6,15,18; EDIT CODE OC.FLG LTF,6,19; LITERAL OUTPUT FLAG OC.ITM LSZ,6,20,28; SIZE OF LITERAL OC.ITM RSV,6,29,32; RESERVED WORD CODE OC.FLG BLA,6,33; BLANK AFTER OC.FLG TAB,6,34; TABLE FLAG OC.ITM ARP,7,0,17; ARRAY POINTER * OC.ITM EDP,7,18,35; EDIT STRING/LITERAL POINTER ;ICHTAB DEFINITIONS D.PNTR ICHTAB,IC IC.ITM DES,1,0,35; ASSIGNED CORE LOC * IC.ITM RII,2,0,17; POINTER TO IDTTAB RII * IC.ITM NXF,2,18,35; NEXT FIELD * IC.ITM NXR,3,0,17; NEXT RECORD * IC.ITM ARP,3,18,35; POINTER TO ARRAY * IC.ITM INP,4,0,17; POINTER TO INDEX * IC.ITM FMN,5,0,7; MINUS INDICATOR IC.ITM FBZ,5,8,15; BLANK/ZERO INDICATOR IC.ITM FPL,5,16,23; PLUS INDICATOR IC.ITM CLI,5,24,31; CONTROL LEVEL INDICATOR IC.ITM NPS,5,32,33; NUMBER PER SEQUENCE IC.ITM FLD,5,34,35; FIELD TYPE IC.ITM FRR,6,0,7; FIELD RECORD RELATION IC.ITM MAT,6,8,15; MATCHING INDICATOR IC.FLG RTR,6,16; RECORD TYPE REQUIRED IC.FLG LHI,6,17; LOOK AHEAD ITEM IC.ITM STS,6,18,20; STACKER SELECT IC.ITM SIZ,6,21,32; SIZE IC.ITM SEQ,6,33,34; SEQUENCE CHECK IC.FLG IMD,6,35; IMMEDIATE IC.ITM SRC,7,0,11; CHARACTER POSITION IS SOURCE IC.ITM OCC,7,12,26; OCCURS IC.ITM FMT,7,27,31; FIELD FORMAT ;IDTTAB DEFINITIONS D.PNTR IDTTAB,ID ID.FLG OR,1,0; OR/AND FLAG ID.FLG NOT,1,1; NOT FLAG ID.ITM IND,1,2,9; INDICATOR/CHARACTER ID.ITM POS,1,10,21; POSITION ID.FLG END,1,22; END FLAG ID.ITM RII,1,23,30; RII (OR LINE ONLY) ID.ITM SEQ,1,31,35; ASSIGNED SEQ NUMBER (OR LINE ONLY) ;ARRTAB definitions D.PNTR ARRTAB,AR AR.ITM PNT,1,0,35; pointer to array item AR.ITM SIZ,2,0,9; size of array item AR.ITM OCC,2,10,19; number of array entries AR.ITM EPR,2,20,29; entries per record AR.FLG LDM,2,30; dump file flag AR.FLG LAS,2,31; this is last item AR.ITM FIL,3,0,17; pointer to OTFTAB item for array file AR.ITM ASZ,3,18,27; size of alternate item AR.ITM ALT,4,0,35; pointer to alternating array SZ.ARR==:4 ;FINISH UP RADIX 8 END