Es wird die Verbindung des Teilnehmers zum Environment gelöst. Das Environment wird abgebaut, wenn der Aufrufer der letzte Teilnehmer ist. Das Environment wird über die beim ENABLE ENVIRONMENT erhaltene Kurzkennung angesprochen.
Von der Funktion DISENV werden nur die nachfolgend beschriebenen Funktionsoperanden ausgewertet.
Format FCT=*DISENV
Operation | Operanden |
|
|
| |
| |
|
Operandenbeschreibung
ENVID
Bezeichnet die Kurzkennung des Environments, zu dem die Verbindung gelöst werden soll bzw. das abgebaut werden soll. Wird dieselbe Parameterliste benutzt wie beim ENABLE ENVIRONMENT, ist die Angabe nicht erforderlich, da sich die Kurzkennung bereits in der Parameterliste befindet (FPAMENID).
Bei der Form MF=L ist nur die direkte Angabe erlaubt.
= zahl
Ist die direkte Angabe eines dezimalen numerischen Wertes für die Kurzkennung des Environments.
= adr
Ist die Adresse eines 4 Byte langen Feldes, das die Kurzkennung des Environments enthält.
= (r)
Ist ein Register, das die Kurzkennung des Environments enthält.
FCT
Bestimmt die auszuführende FASTPAM-Funktion.
Bei der Form MF=L ist nur die direkte Angabe erlaubt.
= *DISENV
Direkte Angabe der Funktion DISABLE ENVIRONMENT.
Es wird die Verbindung des Teilnehmers zum Environment gelöst. Das Environment wird abgebaut, wenn der Aufrufer der letzte Teilnehmer ist.
Das Environment wird über die beim ENABLE ENVIRONMENT erhaltene Kurzkennung angesprochen.
Die Funktion wird nicht ausgeführt, wenn noch Dateien mit dem Environment geöffnet sind (Returncode FPAMOFI).
Bei der Form MF=L ist nur die direkte Angabe erlaubt.
= adr
Ist die symbolische Adresse eines 1 Byte langen Feldes, das den Wert für die Funktion DISABLE ENVIRONMENT enthält.
= (r)
Ist ein Register, das den Wert für die Funktion DISABLE ENVIRONMENT enthält.
MACID
Zu MACID siehe Beschreibung beim Format FCT=*ENAENV, "Funktion ENABLE ENVIRONMENT".
MF
Die Formen des MF-Operanden sind detailliert im Anhang ("Typen von Makroaufrufen") beschrieben.
PARAM
Zu PARAM siehe Beschreibung beim Format FCT=*ENAENV, "Funktion ENABLE ENVIRONMENT".
PREFIX
Zu PREFIX siehe Beschreibung beim Format FCT=*ENAENV, "Funktion ENABLE ENVIRONMENT".
Mögliche Returncodes bei FCT=*DISENV
Standardheader: ccbbaaaa
Über die Ausführung des Makros FPAMSRV wird im Standardheader folgender Returncode übergeben (cc = SUBCODE2, bb = SUBCODE1, aaaa = MAINCODE):
X'cc' | X'bb' | X'aaaa' | Erläuterung |
X'00' | X'0000' | Funktion erfolgreich ausgeführt. | |
X'01' | X'000F' | Funktion nicht ausgeführt. | |
X'20' | X'0028' | Funktion nicht ausgeführt. | |
X'40' | X'0036' | Während der Ausführung der Funktionen *DISIPO/*DISENV sind noch Dateien mit dem entsprechenden Environment bzw. IO-Area-Pool geöffnet. | |
X'40' | X'0056' | Ein TU-Anwender will ein aus TPR angelegtes FASTPAM-Environment freigeben. |
Returncodes des Makros FPAMSRV
Die mit der C- oder D-Form des Makros generierten Feldnamen und EQU-Anweisungen für die Returncodes beginnen standardmäßig mit der Zeichenfolge FPAM, die durch PREFIX und MACID geändert werden kann.
Die Returncodes werden im Header der Parameterliste (Standardheader) hinterlegt:
Der Main Returncode in einem Halbwort mit dem Namen FPAMMRET.
Der Subcode1 in einem Byte mit dem Namen FPAMSR1.
Subcode1 beschreibt Fehlerklassen, die es dem Aufrufer ermöglichen, auf ähnliche Fehlerfälle gleich zu reagieren.
Der Aufrufer kann sich sowohl am Maincode als auch am Subcode1 orientieren.Der Subcode2 in einem Byte mit dem Namen FPAMSR2.
Der Subcode2 spezifiziert einzelne Maincodes genauer.
Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle auf "Standardheader" (Standardheader) entnommen werden.
Falls Returncodes nicht im Header abgelegt werden können (z.B. wenn er nicht zugreifbar ist), wird das aufrufende Programm mit einer Fehlermeldung beendet und das STXIT-Ereignis „nicht behebbarer Programmfehler“ erzeugt.
Das aufrufende Programm wird beendet, wenn bezüglich der Parameterliste folgende Fehler auftreten:
Die Liste ist dem Aufrufer nicht zugewiesen.
Die Liste ist nicht auf Wortgrenze ausgerichtet.
Die Liste ist gegen Schreibzugriff geschützt.
Im Folgenden werden die Mainreturncodes den entsprechenden Subcode1 Klassen zugeordnet und mittels Subcode2 genauer beschrieben.
Standardheader: ccbbaaaa
Über die Ausführung des Makros FPAMSRV wird im Standardheader folgender Returncode übergeben (cc = SUBCODE2, bb = SUBCODE1, aaaa = MAINCODE):
X'cc' | X'bb' | X'aaaa' | Erläuterung |
X'00' | X'0000' | Funktion erfolgreich ausgeführt. | |
X'01' | X'0001' | Funktion nicht ausgeführt. | |
X'01' | X'0002' | Funktion nicht ausgeführt. | |
X'01' | X'0005' | Funktion nicht ausgeführt. | |
X'01' | X'0006' | Funktion nicht ausgeführt. | |
X'01' | X'0007' | Funktion nicht ausgeführt. | |
X'01' | X'0008' | Funktion nicht ausgeführt. | |
X'01' | X'0009' | Funktion nicht ausgeführt. | |
X'01' | X'000A' | Funktion nicht ausgeführt. | |
X'01' | X'000B' | Funktion nicht ausgeführt. | |
X'01' | X'000C' | Funktion nicht ausgeführt. | |
X'01' | X'000D' | Funktion nicht ausgeführt. | |
X'01' | X'000E' | Funktion nicht ausgeführt. Hinweis | |
X'01' | X'000F' | Funktion nicht ausgeführt. | |
X'01' | X'0010' | Funktion nicht ausgeführt. | |
X'01' | X'0011' | Funktion nicht ausgeführt. | |
X'01' | X'0012' | Funktion nicht ausgeführt.
| |
X'01' | X'0013' | Ungültige Angabe für den letzten Block. | |
X'01' | X'0014' | Funktion nicht ausgeführt. | |
X'01' | X'0015' | Funktion nicht ausgeführt. | |
X'02' | Funktion nicht ausgeführt. | ||
X'03' | Funktion nicht ausgeführt. | ||
X'20' | X'0028' | Funktion nicht ausgeführt. | |
X'40' | X'0032' | Das Environment bzw. der IO-Area-Pool konnte nicht resident angelegt werden. | |
X'01' | X'40' | X'0032' | Die USERID der Task, die das Environment bzw. den IO-Area-Pool eingerichtet hat, verfügt nicht über die FASTPAM-Berechtigung. |
X'02' | X'40' | X'0032' | Zu kleiner Realspeicher. |
X'03' | X'40' | X'0032' | Das beim Programmstart angegebene Kontingent an residentem Hauptspeicher ist überschritten. |
X'04' | X'40' | X'0032' | Konnektierung an ein nicht-residentes Environment, bzw. an einen nicht-residenten IO-Area-Pool. |
X'05' | X'40' | X'0032' | In vorliegender FASTPAM-Version werden Datenräume (Data-Spaces) nur nicht-resident unterstützt. |
X'40' | X'0033' | Fehler beim allgemeinen DMS OPEN/CLOSE. Der DMS-Returncode wird im Feld FPAMDMSC zurückgeliefert. | |
X'40' | X'0035' | Während der Ausführung der Funktionen *ENAENV/*ENAIPO läuft eine Ein-/Ausgabe auf die zu fixierenden Speicherseiten. | |
X'40' | X'0036' | Während der Ausführung der Funktionen *DISIPO/*DISENV sind noch Dateien mit dem entsprechenden Environment bzw. IO-Area-Pool geöffnet. | |
X'40' | X'0037' | Systembetriebsmittelengpass. | |
X'40' | X'0038' | An das genannte FASTPAM-Betriebsmittel können sich nur TPR-Tasks konnektieren. | |
X'40' | X'0039' | An das genannte FASTPAM-Betriebsmittel können sich nur Tasks einer Kennung mit FASTPAM-Privileg konnektieren. | |
X'40' | X'003B' | Der Teilnehmer will sich an ein bestehendes Environment mit einem anderen Operandenwert für ACCLSTS konnektieren. | |
X'40' | X'003C' | Der Teilnehmer will sich an ein bestehendes Environment mit einem anderen Operandenwert für ACCNUMB konnektieren. | |
X'40' | X'003D' | Der Teilnehmer will sich an einen bestehenden IO-Area-Pool mit einem anderen Operandenwert für IPOADDR konnektieren. | |
X'40' | X'003E' | Der Teilnehmer will sich an einen bestehenden IO-Area-Pool mit einem anderen Operandenwert für IPOSIZE konnektieren. | |
X'40' | X'003F' | Der Teilnehmer will sich an ein bestehendes Environment mit einem anderen Operandenwert für MAXIOLN konnektieren. | |
X'40' | X'0040' | Der Teilnehmer will sich an ein bestehendes Enviroment mit einem anderen Operandenwert für EVENTNG konnektieren. | |
X'40' | X'0041' | Der Teilnehmer will sich an ein bestehendes Environment mit einer anderen Ereigniskennung konnektieren. | |
X'40' | X'0042' | Der beim FASTPAM-OPEN angegebene Wert für BLKSIZE stimmt nicht mit dem im Katalogeintrag überein. | |
X'40' | X'0046' | Der Anwender will sich an ein bestehendes Environment anschließen, ist aber nicht an die zugehörige Ereigniskurzkennung angeschlossen. | |
X'40' | X'0047' | Der Gültigkeitsbereich der Ereigniskennung ist kleiner als der Gültigkeitsbereich des FPAMACC-Parameterlistenspeichers. | |
X'40' | X'0048' | Die Task ist an das Environment bereits konnektiert. | |
X'40' | X'0049' | Die Task ist an den IO-Area-Pool bereits konnektiert. | |
X'40' | X'004A' | Der angegebene Anwenderspeicher überlappt sich mit einem DIV-Fenster. | |
X'40' | X'004B' | Der angegebene Anwenderspeicher überlappt sich mit einem bereits verwendeten FASTPAM-Anwenderspeicher. | |
X'40' | X'004C' | Der Speicher für die FPAMACC-Parameterlisten ist nicht vollständig angefordert worden. | |
X'40' | X'004D' | Die genannte Datei ist keine PAM-Datei. | |
X'40' | X'004E' | Beim FPAMSRV-Aufruf mit der Funktion *CLOSE wurde der Operand LASTBLK angegeben. Dieser wird ignoriert, da die Datei mit | |
X'40' | X'0050' | RFA wird von FASTPAM nicht unterstützt. | |
X'40' | X'0051' | SPD wird von FASTPAM nicht unterstützt. | |
X'40' | X'0052' | PPD wird von FASTPAM nicht unterstützt. | |
X'40' | X'0053' | Banddateien werden von FASTPAM nicht unterstützt. | |
X'40' | X'0054' | *DUMMY wird von FASTPAM nicht unterstützt. | |
X'40' | X'0055' | Die angegebene Sekundärallokierung reicht nicht aus, um einen logischen Block aufzunehmen. | |
X'40' | X'0056' | Ein TU-Task will mit einem aus TPR angelegten FASTPAM-Betriebsmittel eine Datei eröffnen oder dieses freigeben. | |
X'40' | X'0057' | Der Speicher für den IO-Area-Pool ist nicht vollständig angefordert worden. | |
X'40' | X'0058' | FASTPAM unterstützt nur Dateien mit dem Attribut 'BLKCTRL=NO'. | |
X'40' | X'0059' | Ein TU-Task benutzt eine TPR-Open-Id. | |
X'40' | X'005A' | Beim FILE-Aufruf wurde 'WRCHK=YES' angegeben. | |
X'40' | X'005B' | Beim 'ENAMP'-Aufruf zum Anlegen des Memory-Pools für die Access-Listen bzw. den IO-Area-Pool wurde nicht 'FIXED=YES' angegeben. |
Hinweise zu den Returncodes
Ursache für Returncodes mit Subcode1 = X'01' (PARAMETER ERROR):
der jeweilige Parameter wurde falsch angegeben
bei Operandenwerten, die durch ADD-FILE-LINK überschrieben werden können, ist der durch dieses Kommando eingestellte Operandenwert unzulässig. Zulässig sind nur die Werte, die auch beim OPEN angegeben werden können.
Wird ein Fehler festgestellt, der den gesamten Bereich der FPAMACC-Parameterlisten oder des IO-Area-Pools betrifft (Bsp: der IO-Area-Pool liegt nur zum Teil in einem Memory-Pool) wird der Returncode X'0005' (INVALID ADDRESS OF ACCESS LISTS)
bzw. X'0007
' (INVALID NUMBER OF IOAREA POOL)
ausgegeben und nicht X'0006' (INVALID ADDRESS OF ACCESS LISTS)
bzw. X'0008' (INVALID SIZE OF IOAREA POOL)
.
Abhängigkeiten anderer Funktionen
Will der Anwender einen der beim ENABLE ENVIRONMENT bzw. ENABLE IOAREA POOL vom System resident gemachten Speicherbereiche vor dem DISABLE schon freigeben, so wird dies von den entsprechenden Funktionen (RELM, RELMP, DISMP) abgewiesen (Returncode).
Ein RELMP wird auch für Bereiche in Common Memory Pools abgewiesen, die von anderen Tasks, nicht aber von der eigenen Task zu residenten FASTPAM-Bereichen gemacht worden sind.
Will der Anwender eine beim ENABLE ENVIRONMENT angegebene Ereigniskennung vor dem DISABLE ENVIRONMENT schon freigeben, so wird dies ebenfalls von der entsprechenden Funktion DISABLE EVENT ITEM (Makro DISEI) mit Returncode abgewiesen.
Ein USER-CLOSE-ALL wirkt nicht für von FASTPAM geöffnete Dateien.
Layout der Parameterliste
Von einem FPAMSRV Makroauruf wird folgende Parameterliste abgesetzt:
FPAMSRV MF=D 1 STACK PRINT 1 PRINT NOGEN 2 *,##### PREFIX=F, MACID=PAM ##### 1 #INTF REFTYPE=REQUEST,INTNAME=FPAMSRV,INTCOMP=002 1 FPAMPA DS 0F BEGIN of PARAMETERAREA _INOUT 1 FHDR MF=(C,FPAM),EQUATES=YES 2 DS 0A 2 FPAMFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 2 * 2 FPAMIFID DS 0A 0 INTERFACE IDENTIFIER 2 FPAMFCTU DS AL2 0 FUNCTION UNIT NUMBER 2 * BIT 15 HEADER FLAG BIT, 2 * MUST BE RESET UNTIL FURTHER NOTICE 2 * BIT 14-12 UNUSED, MUST BE RESET 2 * BIT 11-0 REAL FUNCTION UNIT NUMBER 2 FPAMFCT DS AL1 2 FUNCTION NUMBER 2 FPAMFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 2 * 2 FPAMRET DS 0A 4 GENERAL RETURN CODE 2 * 2 * GENERAL_RETURN_CODE CLEARED (X'00000000') MEANS 2 * REQUEST SUCCESSFUL PROCESSED AND NO ADDITIONAL INFORMATION 2 * 2 FPAMSRET DS 0AL2 4 SUB RETURN CODE 2 FPAMSR2 DS AL1 4 SUB RETURN CODE 2 2 * ALWAYS CLEARED (X'00') IF MAIN_RETURN_CODE IS X'FFFF' 2 * Standard subcode2 values as defined by convention: 2 FPAMR2OK EQU X'00' All correct, no additional info 2 FPAMR2NA EQU X'01' Successful, no action was necessary 2 FPAMR2WA EQU X'02' Warning, particular situation 2 FPAMSR1 DS AL1 5 SUB RETURN CODE 1 2 * 2 * GENERAL INDICATION OF ERROR CLASSES 2 * 2 * CLASS A X'00' FUNCTION WAS SUCCESSFULLY PROCESSED 2 * CLASS B X'01' - X'1F' PARAMETER SYNTAX ERROR 2 * CLASS C X'20' INTERNAL ERROR IN CALLED FUNCTION 2 * CLASS D X'40' - X'7F' NO CLASS SPECIFIC REACTION POSSIBLE 2 * CLASS E X'80' - X'82' WAIT AND RETRY 2 * 2 FPAMRFSP EQU X'00' FUNCTION SUCCESSFULLY PROCESSED 2 FPAMRPER EQU X'01' PARAMETER SYNTAX ERROR 2 * 3 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'01' - X'1F' 2 FPAMRFNS EQU X'01' CALLED FUNCTION NOT SUPPORTED 2 FPAMRFNA EQU X'02' CALLED FUNCTION NOT AVAILABLE 2 FPAMRVNA EQU X'03' INTERFACE VERSION NOT SUPPORTED 2 * 2 FPAMRAER EQU X'04' ALIGNMENT ERROR 2 FPAMRIER EQU X'20' INTERNAL ERROR 2 FPAMRCAR EQU X'40' CORRECT AND RETRY 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'40' - X'7F' 2 FPAMRECR EQU X'41' SUBSYSTEM (SS) MUST BE CREATED 2 * EXPLICITELY BY CREATE-SS 2 FPAMRECN EQU X'42' SS MUST BE EXPLICITELY CONNECTED 2 * 2 FPAMRWAR EQU X'80' WAIT FOR A SHORT TIME AND RETRY 2 FPAMRWLR EQU X'81' " LONG " 2 FPAMRWUR EQU X'82' WAIT TIME IS UNCALCULABLY LONG 2 * BUT RETRY IS POSSIBLE 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'80' - X'82' 2 FPAMRTNA EQU X'81' SS TEMPORARILY NOT AVAILABLE 2 FPAMRDH EQU X'82' SS IN DELETE / HOLD 2 * 2 FPAMMRET DS 0AL2 6 MAIN RETURN CODE 2 FPAMMR2 DS AL1 6 MAIN RETURN CODE 2 2 FPAMMR1 DS AL1 7 MAIN RETURN CODE 1 2 * 2 * SPECIAL LAYOUT OF LINKAGE_MAIN_RETURN_CODE (YYYY IN X'00XXYYYY') 2 * 2 FPAMRLNK EQU X'FFFF' LINKAGE ERROR / REQ. NOT PROCESSED 2 FPAMFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 2 * 1 * 1 * SUB RETURN CODE2 1 * 1 FPAMPRIV EQU X'01' FASTPAM PRIVILEGE MISSING 1 FPAMRMS EQU X'02' REAL MEMORY SHORTAGE 1 FPAMULE EQU X'03' USER LIMIT EXCEEDED 1 FPAMENR EQU X'04' EXISTING NOT RESIDENT 1 FPAMDSA EQU X'05' DATA SPACE ADDRESS 1 * 1 * MAINCODE 1 * 1 FPAMMFSP EQU X'0000' FUNCTION SUCCESSFULLY PROCESSED = 0 1 FPAMIENN EQU X'0001' INVALID ENVIRONMENT NAME = 1 1 FPAMIIPN EQU X'0002' INVALID IOAREA POOL NAME = 2 1 FPAMIALA EQU X'0005' INVALID ADDRESS OF ACCESS LISTS = 5 1 FPAMIALN EQU X'0006' INVALID NUMBER OF ACCESS LISTS = 6 1 FPAMIIPA EQU X'0007' INVALID ADDRESS OF IOAREA POOL = 7 1 FPAMIIPS EQU X'0008' INVALID SIZE OF IOAREA POOL = 8 1 FPAMISUP EQU X'0009' INVALID SHARE UPDATE = 9 1 FPAMIMAX EQU X'000A' INVALID MAXIMUM IO-LENGTH = 10 1 FPAMIEVN EQU X'000B' INVALID EVENTING = 11 1 FPAMIMOD EQU X'000C' INVALID MODE = 12 1 FPAMIEID EQU X'000D' INVALID EVENT-ITEM SHORT-ID = 13 1 FPAMIBLS EQU X'000E' INVALID BLOCKSIZE = 14 1 FPAMIENI EQU X'000F' INVALID ENVIRONMENT SHORT-ID = 15 1 FPAMIIPI EQU X'0010' INVALID IOAREA POOL SHORT-ID = 16 1 FPAMIOPI EQU X'0011' INVALID OPEN SHORT-ID = 17 1 FPAMIRES EQU X'0012' INVALID RESIDENT = 18 1 FPAMILBL EQU X'0013' INVALID LAST BLOCK = 19 1 FPAMIENV EQU X'0014' INVALID ENV-SPECIFICATION = 20 1 FPAMILRF EQU X'0015' INVALID LARGE_FILE-SPECIFICATION = 21 1 FPAMMIER EQU X'0028' INTERNAL ERROR = 40 1 FPAMNORE EQU X'0032' SPACE NOT RESIDENT = 50 1 FPAMDMSE EQU X'0033' DMS ERROR DURING OPEN/CLOSE = 51 1 FPAMRIO EQU X'0035' RUNNING IO = 53 1 FPAMOFI EQU X'0036' OPENED FILES = 54 1 FPAMSRES EQU X'0037' SHORTAGE OF RESOURCES = 55 1 FPAMTPR EQU X'0038' ENABLE_FROM_TPR_ONLY = 56 1 FPAMNPRI EQU X'0039' NO_PRIVILEGE_FOR_CONNECTION = 57 1 FPAMDAC@ EQU X'003B' DIFFERENT_ACCESS_LISTS_@ = 59 1 FPAMDAC# EQU X'003C' DIFFERENT_ACCESS_LISTS_# = 60 1 FPAMDIP@ EQU X'003D' DIFFERENT_IOAREA_POOL_@ = 61 1 FPAMDIPS EQU X'003E' DIFFERENT_IOAREA_POOL_SIZE = 62 1 FPAMDMAX EQU X'003F' DIFFERENT_MAXIOLEN = 63 1 FPAMDEVE EQU X'0040' DIFFERENT_EVENTING = 64 1 FPAMDEVI EQU X'0041' DIFFERENT_EVENT_ITEM = 65 1 FPAMDBC EQU X'0042' DIFFERENT_BLKSIZE_IN_CATALOG = 66 1 FPAMNEIC EQU X'0046' NO_EVENT_ITEM_CONNECTION = 70 1 FPAMEISS EQU X'0047' EVENT_ITEM_SCOPE_TO_SMALL = 71 1 FPAMENEX EQU X'0048' ENVIRONMENT_NAME_EXISTING = 72 1 FPAMINEX EQU X'0049' IOAREA_POOL_NAME_EXISTING = 73 1 FPAMODS EQU X'004A' OVERLAPPING_DIV_SPACE = 74 1 FPAMOFS EQU X'004B' OVERLAPPING_FASTPAM_SPACE = 75 1 FPAMALNA EQU X'004C' ACCESS_LISTS_NOT_ALLOCATED = 76 1 FPAMNPAF EQU X'004D' NO_PAM_FILE = 77 1 FPAMLBIN EQU X'004E' LAST BLOCK BUT INPUT = 78 1 FPAMRFA EQU X'0050' RFA_NOT_SUPPORTED = 80 1 FPAMSPD EQU X'0051' SPD_NOT_SUPPORTED = 81 1 FPAMPPD EQU X'0052' PPD_NOT_SUPPORTED = 82 1 FPAMTAPE EQU X'0053' TAPE_NOT_SUPPORTED = 83 1 FPAMDUMM EQU X'0054' DUMMY_FILE_NOT_SUPPORTED = 84 1 FPAMSECA EQU X'0055' SEC_ALLOCATION_TOO_SMALL = 85 1 FPAMTPRE EQU X'0056' TPR_ENVIRONMENT_OR_IOAREA_POOL = 86 1 FPAMIPAL EQU X'0057' IOAREA_POOL_NOT_ALLOCATED = 87 1 FPAMBLKN EQU X'0058' BLKCTRL_NOT_SUPPORTED = 88 1 FPAMTPRO EQU X'0059' TPR_OPEN_ID = 89 1 FPAMWRCN EQU X'005A' WRCHK_NOT_SUPPORTED = 90 1 FPAMMPNF EQU X'005B' MEMORY_POOL_NOT_FIXED = 91 1 * 1 * &P.PAM FUNCTIONS: 1 * 1 FPAMENEV EQU 1 ENABLE ENVIRONMENT 1 FPAMDIEV EQU 2 DISABLE ENVIRONMENT 1 FPAMENIP EQU 3 ENABLE IOAREA POOL 1 FPAMDIIP EQU 4 DISABLE IOAREA POOL 1 FPAMOPEN EQU 5 OPEN FILE 1 FPAMCLOS EQU 6 CLOSE FILE 1 * 1 * INPUT/OUTPUT PARAMETER 1 * 1 FPAMENID DS F ENVIRONMENT SHORT-ID 1 FPAMIPID DS F IOAREA POOL SHORT-ID 1 FPAMOPID DS F OPEN SHORT-ID 1 * 1 * OUTPUT PARAMETER 1 * 1 FPAMDMSC DS XL4 DMS-CODE 1 * 1 * INPUT PARAMETER 1 * 1 FPAMENNA DS CL54 ENVIRONMENT NAME 1 FPAMIPNA DS CL54 IOAREA POOL NAME 1 FPAMLINK DS CL8 LINK 1 FPAMFILE DS CL54 FILENAME 1 FPAMLARF DS AL1 LARGE_FILE 1 FPAMFRBD EQU 0 LARGE_FILE=FORBIDDEN 1 FPAMALWD EQU 1 LARGE_FILE=ALLOWED 1 FPAMENV DS AL1 ENV 1 FPAMHOST EQU 1 ENV=HOST 1 FPAMXCS EQU 2 ENV=XCS 1 FPAMACLA DS A ADDRESS OF ACCESS LISTS 1 FPAMACLN DS F NUMBER OF ACCESS LISTS 1 FPAMOFF DS A ADDR. OF IOAREA POOL WITHIN ADDRESS SPACE 1 FPAMALET DS F ALET OF DATA SPACE 1 FPAMIPS DS F SIZE OF IOAREA POOL (4K) 1 FPAMEID DS F EVENT-ITEM SHORT-ID 1 FPAMLABL DS F LAST BLOCK NUMBER 1 FPAMMODE DS AL1 OPEN MODE 1 FPAMINPT EQU 1 MODE=INPUT 1 FPAMINOT EQU 2 MODE=INOUT 1 FPAMOUTI EQU 3 MODE=OUTIN 1 FPAMSUPD DS AL1 SHARE UPDATE 1 FPAMSUNO EQU 1 SHARUPD=NO 1 FPAMSUYE EQU 2 SHARUPD=YES 1 FPAMMAXL DS AL1 MAXIMUM IO-LENGTH 1 FPAMMINS EQU 0 IO-LENGTH NOT SPECIFIED 1 FPAMMINI EQU 1 IO-LENGTH=4K 1 FPAMMAXI EQU 8 IO-LENGTH=32K 1 FPAMEVEN DS AL1 EVENTING 1 FPAMEVNS EQU 0 EVENTING=NOT_SPECIFIED 1 FPAMEVNO EQU 1 EVENTING=NO 1 FPAMEVYE EQU 2 EVENTING=YES 1 FPAMRESI DS AL1 RESIDENT 1 FPAMRENS EQU 0 RESIDENT=NOT_SPECIFIED 1 FPAMRENO EQU 1 RESIDENT=NO 1 FPAMREYE EQU 2 RESIDENT=YES 1 FPAMBLS DS FL1 BLOCKSIZE 1 FPAM# EQU *-FPAMPA LENGTH of PARAMETERAREA