Loading...
Select Version
&pagelevel(4)&pagelevel
IDFCB D
*
******** FCB (P1 REGION) ***********************************
*
#INTF REFTYPE=REQUEST, C
INTNAME=IDFCB,INTCOMP=1
MFPRE MF=D,PREFIX=,MACID=D1,DNAME=D1FCB,ALIGN=F 200
ID1FCB DSECT ,
*,##### PREFIX=I, MACID=D1 #####
*
ID1P1FST EQU *
ID1CONAR DS 0F
ID1IOAR1 DS F ADDR OF IOAREA1 ISQP
ID1IOA1N EQU X'80' S IOAREA1=NO ISQP
ID1IOA1B EQU X'40' S IOAREA1= ISQP
ID1IOAR2 DS F ADDR OF IOAREA2 ISQP
ID1IOA2N EQU X'80' S IOAREA2=NO ISQP
ID1IOA2B EQU X'40' S IOAREA2= ISQP
ID1EXIT DS F ADDR OF EXIT LIST ISQP
ID1NOXIT EQU X'80' S EXIT= ISQP
ID1MSTXT EQU X'40' S MASTER EXIT LIST ISQP
ID1CLBT EQU X'20' S EXIT MODIFY BIT ISQP
ID1KEYAR DS F ADDR OF KEY S
ID1KEYAN EQU X'80' S KEYARG= S
*
ID1PASS DS XL4 PASSWORD ISQPM
ID1RETPD DS H RETENTION PERIOD ISQPM
ID1RECSI DS H RECORD SIZE IS M
ID1BLKSI DS H BLOCK SIZE IS PM
ID1BLSTD EQU X'80' S BLKSIZE=STD IS M
ID1KEYPO DS H KEY POSITION S M
ID1KEYLE DS HL1 KEY LENGTH S M
ID1INDEX DS HL1 INDEX S M
ID1PAD DS HL1 I.S. PADDING S M
*
ID1OPEN DS X OPEN TYPE : ISQPM
ID1SINOT EQU X'80' S SINOUT P
ID1OUTIN EQU X'40' S OUTIN IS PM
ID1INOUT EQU X'20' S INOUT IS PM
ID1UPDAT EQU X'10' S UPDATE I Q M
ID1EXTEN EQU X'08' S EXTEND IS PM
ID1OUTPU EQU X'04' S OUTPUT ISQPM
ID1REVER EQU X'02' S REVERSE I M
ID1INPUT EQU X'01' S INPUT ISQPM
*
ID1IND0 DS X INDICATOR 0 :
ID1IIND EQU ID1IND0 ISAM INDICATOR
ID1VLPNL EQU X'08' S VALPROP=NULL
ID1LOGNL EQU X'04' S LOGLEN=NULL
ID1VALNL EQU X'02' S VALLEN=NULL
ID1WROUT EQU X'01' S WROUT=YES
15:29:06 2001-10-15 PAGE
0047
SOURCE STATEMENT
ID1FRRC EQU X'80' S RECON=YES
ID1FRRS EQU X'40' S RESET=YES
ID1IPP EQU X'20' S VALPROP/VALLEN/LOGLEN SPEC.
*
ID1IND1 DS X INDICATOR 1 : ISQPM
ID1TRANS EQU X'80' S TRANSLATE TAPE
ID1LABEL EQU X'60' FILE LABEL OPTIONS ISQPM
ID1STD EQU X'60' R STD LABELS ISQPM
ID1NSTD EQU X'40' S NSTD LABELS I PM
ID1LABL EQU X'20' S LABEL=NO
ID1AMN EQU X'18' PRINTER CONTROL ISQPM
ID1A EQU X'18' S ASA CONTROL CHAR ISQPM
ID1M EQU X'08' S EBCDIC CONTROL ISQPM
ID1N EQU X'18' R NO CONTROL CHAR ISQPM
ID1RECFO EQU X'06' RECORD FORM ISQPM
ID1F EQU X'04' S FIXED LENGTH ISQPM
ID1V EQU X'02' S VARIABLE LENGTH IS M
ID1U EQU X'06' S UNDEFINED IS PM
ID1TPMRK EQU X'01' S TPMARK=YES
*
ID1IND2 DS X INDICATOR 2 : (SET,RESET)
ID1FCBTY EQU X'C0' FCB TYPE ISQPM
ID1SAM EQU X'C0' R SAM I M
ID1ISAM EQU X'40' S ISAM S M
ID1PAM EQU X'C0' S PAM Q M
ID1BTAM EQU X'80' S BTAM PM
ID1DUPKE EQU X'20' S DUP KEY ALLOWED S M
ID1OVERL EQU X'10' S OVERLAP=YES S M
ID1INDPR EQU X'08' S INDEX=(ABSEXP) S M
ID1SHB EQU X'04' S SPECIAL HANDLING BIT Q
ID1FORM EQU X'02' S FORM=SHORT QP
ID1VMIN EQU X'01' R MINIMUM FUNCT.FOR ISAM VALUE FLAG
ID1VMAX EQU X'01' S MAXIMUM FUNCT.FOR ISAM VALUE FLAG
*
ID1IND3 DS X INDICATOR 3 :
ID1NULLP EQU X'FF' NULL FILE CHARACTERISTIC PARAMETERS
ID1RECSN EQU X'80' S RECSIZE=,
ID1BLKSN EQU X'40' S BLKSIZE=,
ID1KEYPN EQU X'20' S KEYPOS=,
ID1KEYLN EQU X'10' S KEYLEN=,
ID1RECFN EQU X'08' S RECFORM=,
ID1FCBTN EQU X'04' S FCBTYPE=,
ID1CODEN EQU X'02' S CODE=,
ID1BUFNL EQU X'01' S BUFOFF3=,
*
ID1IOREG DS HL1 IOREG IS
ID1VARBL DS HL1 VARBLD IS
ID1LINK DS CL8 FCB/LINK NAME ISQPM
ID1FILE DS CL54 FILE NAME ISQPM
ID1VARAR DS 0F
ID1P2LNK DS F LINK TO P2 REGION ISQP
ID1UFCBS EQU *-ID1CONAR SIZE OF CONSTANT REGION
*
ID1COMMN DS 11F COMMON REGION ISQP
ID1CMEND EQU * END COMMON REGION -----------------
*
ORG ID1COMMN *** S A M *** I
ID1LHECN DS F LHECON CURRENT I
ID1AFNAL DS F LHECON MAXIMUM I
ID1BLKCT DS PL4 BLOCK COUNT I
ID1RPTR DS F LOG BUFF/RCD PTR I
ID1RGSAV DS 5F SAVE AREA I
ID1TRADR DS A A(USER TRANS TAB) READ MODE I P
ID1TRADW DS A A(USER TRANS TAB) WRITE MODE I P
*
ORG ID1COMMN ACCESS METHOD ISAM
ID1INHK@ DS A @ HIGHKEY
ID1INNR@ DS A @ NEXT RECORD
ID1INCR@ DS A @ CURRENT RECORD
ID1INFL0 DS X FLAGB. D1SUSNT: WIE ISAM-ALT
ID1INSTF EQU X'01' D1SHAR1 ! WIE ISAM-ALT !
ID1INLTF EQU X'04' D1DLOK1 ! WIE ISAM-ALT !
ID1INLSP EQU X'10' D1DLOK ! WIE ISAM-ALT !
ID1INFL1 DS X
ID1INHK EQU X'01' @ HIGHKEY VALID
ID1INFL2 DS X UNBENUTZT
ID1INSTA DS X P1LOGICAL-STATUS
ID1INNS EQU X'01' NOT_SEQUENTIAL
ID1INSR EQU X'02' SEQUENTIAL_READ (GET/GETR MIT IOAREA)
ID1INGT EQU X'04' SEQUENTIAL_READ_GET
ID1INGR EQU X'08' SEQUENTIAL_READ_GETR
ID1INSL EQU X'10' SEQUENTIAL_LOAD (PUT MIT IOAREA)
ID1INPC EQU X'20' PUTX_LOCATE_TO_BE_CLOSED
ID1INSPB EQU X'40' SEQ_READ_AFTER_PTXLCB
ID1INPCB EQU X'80' PUTX_LOC_TO_BE_CLOSED_BLK
ID1INMRL DS CL4 MINIMALE RECORD-LAENGE
ID1INPOL DS H SUMME UEBER POINTERLAENGEN BEI PUT
ID1INVLN DS X ENTSPRICHT D1VALLN ! WIE ISAM-ALT !
ID1INLLN DS X ENTSPRICHT D1LOGLN ! WIE ISAM-ALT !
ID1INTBS DS A BLKSIZE OHNE TRAILER (N*2032 - 12)
ID1INPBS DS A BLKSIZE OHNE PAD-SIZE
ID1INBS DS A BLKSIZE = BLOCKFAKTOR * 2048
ID1PRECS DS H RECSIZE DES VORGAENGER PUT-LOCATE 951
*
ORG ID1COMMN *** I S A M *** S
ID1GRPTR DS A(0) 'GETR' ADDRESS S
ID1GPTR DS A(0) 'GET' ADDRESS S
ID1GETSW DS 0F GET | GETR SWITCHES S
ID1SETL EQU X'80' S INDICATE SETL S
ID1GET EQU X'40' S INHIBIT GET EOB S
ID1GETR EQU X'20' S INHIBIT GETR EOB S
ID1GETER EQU X'10' S ERROR DURING GET S
ID1NULLF EQU X'08' S NULL FILE S
ID1FIRST DS A(0) 'FIRST' RECORD POINTER S
*
ID1SUSNT DS X SHARED UPDATE SENTINEL :
ID1SHAR1 EQU X'01' S SHARUPD=YES FOR THIS FILE
ID1SHAR2 EQU X'02' S SHARUPD=YES FOR SOME FILE
ID1DLOK1 EQU X'04' S DATA PG LOCKED THIS FILE
ID1DLOK2 EQU X'08' S DATA PG LOCKED SOME FILE
ID1DLOK EQU X'10' S LOCK SPECIFIED IN MACRO
* R NOLOCK SPECIFIED IN THE MACRO
ID1PGLOK EQU X'20' S GET,GETR,GETFL ARE ILLEGAL,
* SET WHEN USER TAKES PGLOCK EXIT
ID1ISLK EQU X'40' S SAM LOCK EXISTS
ID1SWEAK EQU X'80' S SHARUPD=WEAK FOR THIS FILE
*
ORG ID1SUSNT
ID1CURBF DS A(0) CURRENT BUFFER ADDRESS S
ID1PUTSW DS 0F PUT SWITCH S
ID1PUT EQU X'80' S EXTENDED 'PUT' S
ID1FPUT EQU X'40' S PUT TO EMPTY BUFFER
ID1NPUT EQU X'20' S PUT TO EMPTY PAGE
ID1SPUT EQU X'10' S SEQ CHK NOT ALLOWED
ID1PPTR DS A(0) 'PUT' POINTER S
*
ID1SPREM EQU ID1PPTR
ID1SWORK DS H ALIGNMENT CONVERSION S
ID1VALLN DS X ISAM VALUE FLAG LENGTH
ID1LOGLN DS X ISAM LOGICAL FLAG LENGTH
ID1REGSV DS 4F REGISTER SAVE AREA S
ID1CMPD DS 1F LOCATE MODE COMPARAND
*
ORG ID1COMMN *** P A M ***
ID1LWB DS F LAST WAITED BUFFER Q
ID1NOWT EQU X'FF' NO BUFFER WAITED Q
ORG ID1COMMN RFA PAM FIELD
ID1PLPK DS H # OF LOCKED PAM PAGES
ID1PUPK DS H # OF UNLOCKED PAM PAGES
ID1KEY1 DS CL16 KEY Q
ID1KEY2 DS CL16 KEY Q
ID1REQ DS 0H # PAM REQUESTS Q
ID1NBPP DS CL1 # PROCESSED HP'S Q
ID1PRQ DS CL1 PAMREQS Q
ID1TOUT DS AL2 PAM TIME OUT Q
ID1CHERR DS A(0) CHAIN ELEMENT IN ERR Q
*
ORG ID1COMMN *** B T A M *** P
* BTAM ALSO USES FIELDS &P.TRADR AND &P.TRADW
* OF THE SAM WORK AREA
ORG ID1CMEND
*
******** COMMON TO ALL ACCESS METHODS *******************
*
ID1RTNAD DS 0F RETURN ADDR ISQP
ID1LGINF DS A(0) ADDRESS OF LOGINFO
ID1ECB DS XL2 ERROR CODE ISQP
*
ID1XITB DS X ERROR EXIT BYTE : ISQP
ID1OPENX EQU 4 OPEN EXIT ISQP
ID1OPENE EQU 8 OPEN ERROR ISQP
ID1PASSE EQU 12 PASSWORD ERROR ISQP
ID1LOCK EQU 16 LOCKED FILE ISQP
ID1NODEV EQU 20 NO DEVICE ISQP
ID1OPENZ EQU 24 OPEN EXIT AFTER LABEL ISQP
ID1OPENV EQU 28 NON-STANDARD TAPE LABELS
ID1RECNX EQU 32 RECON EXIT
ID1LABGN EQU 36 GEN/RD HDR LAB VOL1 I P
ID1LABEO EQU 40 GEN/RD EOV LAB I P
ID1CLOSE EQU 44 CLOSE ERROR
ID1LABEN EQU 48 GEN/RD EOF LAB I P
ID1EOVCT EQU 52 VOLUME SWAPPING DONE I P
ID1PLKXT EQU 56 LOCKED PAGE(S) EXIT SQ
ID1DEDLK EQU 60 DEADLOCK EXIT SQ
ID1EOFAD EQU 64 EOF ADDR IS P
ID1ERRAD EQU 68 ERROR ADDR ISQP
ID1ERROP EQU 72 READ ERROR OPTIONS I
ID1NOSPA EQU 76 FOR SECONDARY ALLOC
ID1ISPER EQU 80 INSUFFICIENT SPACE S
ID1DUPEK EQU 84 DUPLICATE KEY S
ID1NOFIN EQU 88 RECORD NOT FOUND S
ID1USERE EQU 92 USER ERROR ISQP
ID1SEQCH EQU 96 SEQUENCE ERROR S
ID1WLRER EQU 100 WRONG LENGTH RECORD
ID1OPENC EQU 104 OPENC EXIT
ID1LABER EQU 108 LABERR EXIT
ID1CLOSP EQU 112 CLOSPOS EXIT
*
ID1STAT DS 0CL5 STATUS BYTES QP
ID1SDB DS C STANDARD DEVICE BYTE QP
ID1SB1 DS C SENSE BYTE 1 QP
ID1SB2 DS C SENSE BYTE 2 QP
ID1SB3 DS C SENSE BYTE 3 QP
ID1EFB DS C EXECUTIVE FLAG BYTE QP
*
ID1SNT1 DS X SENTINEL1 : (SET,RESET) ISQP
ID1REMOT EQU X'80' S FILE ACCESS IN RFA MODE
ID1BLOGS EQU X'40' S SAM BUFFER LOGGED
ID1NEWV EQU X'20' S EXTENSION FLAG
ID1CHECK EQU X'01' S NORMAL CHECK COMPLETION
ID1SYCLS EQU X'02' S SYSTEM FILE
*
ID1CODE EQU ID1SNT1 CODE OF TAPE :
ID1ISO7 EQU X'10' S ISO7 CODE
ID1EBCD EQU X'08' S EBCDI CODE
ID1OWN EQU X'04' S OWN CODE
ID1NDEF EQU X'1C' R CODE NOT DEFINED
*
ID1SNT2 DS X SENTINEL2 : (SET,RESET)
ID1UPACT EQU X'08' S UPDATED BLOCK I
ID1RAW EQU X'04' S READ AFTER WRITE
ID1OPN EQU X'40' S FILE OPEN ISQP
ID1GSET EQU X'20' S LAST ACTION (GET) S
* S SETL=V|B S
* R SETL=E S
* S ELIM S
ID1GRSET EQU X'18' S LAST ACTION (GETR) S
ID1GRST1 EQU X'10' S SETL=V(V FOUND) S
* R SETL=V(V N/FOUND) S
* R SETL=B S
* R ELIM S
ID1LPUTX EQU X'08' S LOCATE PUTX S
ID1EXCAT EQU X'02' S EXCAT IN PROCESS
*
ID1DFCBS EQU *-ID1VARAR SIZE OF VARIABLE REGION
ID1VIND DS H EXTENTION LENGTH
DS 0F
ID1FCBS EQU *-ID1CONAR SIZE OF FCB WITHOUT LOGICALS
ID1LOGIC DS 128F LOGICAL ROUTINES IS
ORG ID1LOGIC+X'48' 950
ID1SAVE DS 16F SAVE AREA FOR P1-LOGICAL USE 950
ORG
ID1LFCBS EQU *-ID1LOGIC SIZE OF LOGICAL PROCEDURE AREA
ID1FCBSZ EQU *-ID1P1FST SIZE OF P1 FCB