Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

STAMCE - MRSCAT-Einträge lesen

&pagelevel(3)&pagelevel

Allgemeines

Anwendungsgebiet:

Mehrrechnersysteme; siehe "Mehrrechnersysteme"

Makrotyp:

S-Typ, MF-Format 2: Standardform/E-/L-/C-/D-/M-Form); siehe "S-Typ-Makroaufrufe"

Auf jedem Pubset befindet sich ein Dateikatalog TSOSCAT, der über seine Katalogkennung eindeutig identifiziert werden kann. Weiter ist jeder TSOSCAT (und damit jeder Pubset) eindeutig einem System (BS2000 native oder VM2000-Gastsystem) zugeordnet.
Der Home-Pubset enthält im TSOSCAT seinen Eintrag aus dem Katalogverzeichnis MRSCAT, einem Verzeichnis aller im Rechnernetz vorhandenen Pubsets. Generell kann jeder Pubset einen vollständigen MRSCAT enthalten.
Ein Eintrag im MRSCAT enthält u.a.:

  • die Katalogkennung eines TSOSCATs

  • den BCAM-Namen des Systems, dem dieser TSOSCAT zugeordnet ist

  • den Gerätetyp für den zugehörigen Pubset

  • Statusinformationen über den Pubset

  • pubsetspezifische Operanden (EAM, Cache, Allocator,..)

Makrobeschreibung

Der Makro STAMCE übergibt einen Auszug aus einem ausgewählten Eintrag oder aus allen Einträgen des MRS-Katalogs (MRSCAT) in einen Ausgabebereich, der entweder vom Anwender definiert oder vom Makro angelegt wird. Die Auszüge informieren über die im Rechnernetz initialisierten Pubsets bezüglich

  • Gerätedaten (Katalogkennung; Gerätetypcode; BCAM-Name des Systems, wenn der Pubset von einem fernen System verwaltet wird; ...).

  • Status (Home-Pubset, lokaler Pubset, Pubset nicht zugreifbar, ...).

  • Verwendungszweck (Paging, Datenzugriff, ...).

  • Eigenschaften (EAM-Operand, Cache-Konfiguration,..)

  • Nur für Systemverwaltung oder Operator:
    Anzahl, TSNs und Benutzerkennungen aller Aufträge, die den Pubset belegen (sei es durch geöffnete Dateien oder durch Reservierungsanforderungen (SECURE-Locks), Anzahl und Lage der CMS-Puffer gemäß Voreinstellung und aktueller Einstellung,..)

Ein Einzeleintrag wird über die Katalogkennung des Pubsets identifiziert. Es werden nur die Einträge des MRSCAT auf dem Home-Pubset ausgegeben.

Hinweise

  • Sowohl der Datenbereich als auch der Ausgabebereich wurden in ihrem Layout den funktionalen Erweiterungen der einzelnen BS2000-Versionen angepasst. Aus Kompatibilitätsgründen ist es möglich, mit dem STAMCE-Makro auch die Layouts älterer Versionen zu erzeugen (Operand VERSION).

  • Bei MF=M gilt folgende Einschränkung:
    Werden die Operanden CATID oder AREA angegeben, darf Register R15 nicht als Basisregister für den Datenbereich oder für die durch diese Operanden bestimmten Felder genutzt werden.

Makroaufrufformat und Operandenbeschreibung

STAMCE

CATID='' / 'catid' / adr / (r)

[,AREA=adr / (r)]

[,LENGTH=länge]

,REF=NO / YES / ALL

[,HOST=*LOCAL / '*LOCAL' / *ALL / '*ALL' / 'bcam-name' / adr]

,SELECT=ALL / ACCESSIBLE / DEF_XCS_CONF / EXCLUSIVE / HSMS_SUPPORTED / INACCESSIBLE /

LOCAL / LOCAL_ACCESSIBLE / MASTER_CHANGE_ERROR / PAGING / QUIET / REMOTE /

REMOTE_ACCESSIBLE / SCA / SHARED / SINGLE_FEATURE / SYSTEM_MANAGED /

UNUSED_VOLSETS / VOLUME_SETS / XCS_CONFIGURATED

[,PUBSET=*ALL / 'catid' / adr]

[,XPAND=PL / *ALL / MCE / OCC]

[,VERSION=5 / 3]

,MF=S / E / L / C / D / M

[,PARAM=adr / (r)]

,PREFIX=D / p

[,MACID=macid]


In der nachfolgenden Operandenbeschreibung sind die Operanden alphabetisch geordnet.

AREA=
vereinbart die Adresse eines Ausgabebereiches, in dem STAMCE die angeforderten MRSCAT-Einträge übergibt. Wenn der Operand nicht angegeben wird, fordert STAMCE für die Ausgabe Klasse-6-Speicher an (in Einheiten von Hauptspeicherseiten zu je 4096 Byte) und versorgt die Felder DMCEAREA und DMCEARLN des Datenbereichs mit der Adresse und der Länge (in Byte) dieses Ausgabebereiches. Für die Rückgabe des vom Makro angeforderten Speicherbereiches ist der Aufrufer zuständig (Makro RELM).
Bei MF=S darf AREA nur zusammen mit dem Operanden LENGTH angegeben werden.

adr
symbolische Adresse (Name) eines Feldes zur Aufnahme der angeforderten MRSCAT-Einträge. Das Feld ist auf Wortgrenze auszurichten.

(r)
r = Register mit dem Adresswert adr. Die Angabe ist nur zusammen mit MF=M möglich.

CATID=
legt die Katalogkennungen der Pubsets fest, deren MRSCAT-Einträge ausgegeben werden sollen. Eine engere Auswahl der auszugebenden MRSCAT-Einträge kann mit dem Operanden SELECT getroffen werden.

''
Das in Hochkommas eingeschlossene Leerzeichen ist Voreinstellung. Es bedeutet, dass alle MRSCAT-Einträge ausgegeben werden sollen.

'catid'
catid ist entweder eine explizit angegebene Katalogkennung oder ein Wildcard-Ausdruck zur Auswahl von Katalogkennungen. Die angegebene Zeichenfolge ist stets in Hochkommas einzuschließen.
Abhängig davon, ob die Katalogkennung explizit oder als Wildcard-Ausdruck angegeben wird, gelten für das Format von catid folgende Regeln:

Explizite Angabe der Katalogkennung:

'catid' ist entweder eine ein- bis vierstellige Zeichenfolge, bestehend aus den Buchstaben A,...,Z und den Ziffern 0,...,9, wobei die Zeichenfolgen PUB und PUBx (x = beliebiges Zeichen) ausgeschlossen sind

oder 'catid' ist das Zeichen # (für den Home-Pubset)

Angabe als Wildcard-Ausdruck:
'catid' ist ist eine ein- bis vierstellige Zeichenfolge, die außer Buchstaben und Ziffern noch folgende Platzhalterzeichen enthalten darf:


*

Platzhalter für eine beliebige (auch leere) Zeichenfolge

/

Platzhalter für (genau) ein beliebiges Zeichen

<s1>

Platzhalter für die in den Klammern angegebene Zeichenfolge s1 (maximal
zwei Zeichen)

-

Negationszeichen für die sich anschließenden Angaben (nur als erstes
Zeichen des Ausdrucks zulässig).


adr
symbolische Adresse (Name) eines Feldes, das entweder eine explizit angegebene Katalogkennung oder einen Wildcard-Ausdruck zur Auswahl von Katalogkennungen enthält. In jedem dieser Fälle muss der Aufrufer diese Informationen im jeweils zutreffenden Format hinterlegen:

Explizite Angabe der Katalogkennung:

Im Feld ist eine der beiden folgenden Angaben zu hinterlegen:

    • das Zeichen # (für den Home-Pubset)
    • eine Zeichenfolge der Form [:]catid[  / :]
      Darin steht catid für eine ein- bis vierstellige Zeichenfolge, bestehend aus den Buchstaben A,...,Z und den Ziffern 0,...,9, wobei die Zeichenfolgen PUB und PUBx (x = beliebiges Zeichen) ausgeschlossen sind. Wenn catid kürzer als vier Zeichen ist, muss sie (wie oben dargestellt) am rechten Ende durch ein Leerzeichen (; X'40') oder durch einen Doppelpunkt (:) begrenzt werden. Bei vierstelligen Katalogkennungen kann dieser Begrenzer entfallen.

      Alternativ steht catid für einen Wildcard-Ausdruck, der – ggf. einschließlich des rechten Begrenzungszeichens – bis zu 256 Zeichen lang sein kann und neben Buchstaben und Ziffern noch folgende Platzhalterzeichen enthalten darf:

*

Platzhalter für eine beliebige (auch leere) Zeichenfolge

/

Platzhalter für (genau) ein beliebiges Zeichen

<s1:s2>

Platzhalter für eine Zeichenfolge, die in der lexikografischen Ordnung zwischen den Zeichenfolgen s1 und s2 liegt

<s1,...>

Platzhalter für eine der in den Klammern aufgeführten Zeichenfolgen

-

Negationszeichen für die sich anschließenden Angaben (nur als erstes Zeichen des Ausdrucks zulässig)

Ist der Wildcard-Ausdruck kürzer als 256 Zeichen, so muss er - wie oben dargestellt - am rechten Ende durch ein Leerzeichen (' '; X'40') oder durch einen Doppelpunkt (:) begrenzt werden. Nur bei Ausdrücken mit 256 Zeichen kann dieser Begrenzer entfallen.

(r)
r = Register mit dem Adresswert adr.
Die Angabe ist nur zusammen mit MF=M möglich.

Hinweis

Werden bei MF=M die Operanden CATID oder AREA angegeben, darf Register R15 nicht als Basisregister für den Datenbereich oder für die durch diese Operanden bestimmten Felder genutzt werden.

HOST=
gibt unter den auf einen Pubset gemeinsam zugriffsberechtigten Systemen dasjenige an, über dessen Tasks die mit REF=ALL angeforderten Informationen ausgegeben werden sollen.
Der Operand ist nur wirksam, wenn er zusammen mit REF=ALL angegeben wird, andernfalls wird er ignoriert.

*LOCAL
'*LOCAL'
Die mit REF=ALL angeforderten Informationen werden für lokale Tasks ausgegeben, die den Pubset belegen.

*ALL
'*ALL'
Wenn der im Operanden CATID angegebene Pubset mehrrechnerbenutzbar und das lokale System der Master des Pubsets ist, dann werden die mit REF=ALL angeforderten Informationen für alle (lokalen und fernen) Tasks ausgegeben, die diesen Pubset belegen; andernfalls nur für die lokalen Tasks.

'bcamname'
bcamname = BCAM-Name des lokalen Systems oder - wenn das lokale System Master des Pubsets ist - eines Slave-Systems.

adr
symbolische Adresse (Name) eines Feldes, das einen der Werte '*LOCAL', '*ALL' oder 'bcamname' enthält.

LENGTH=länge
legt die Länge des Ausgabebereiches für die angeforderten MRSCAT-Einträge fest.
Die implizite Länge eines mit dem Operanden AREA vereinbarten Feldes wird auch dann nicht als Länge des Ausgabebereiches angenommen, wenn der Operand LENGTH nicht angegeben wird.
Bei MF=S darf LENGTH nur zusammen mit AREA angegeben werden.

länge
Länge (in Byte) des Feldes mit der Adresse adr2.

Die Mindestlänge für den Ausgabebereich hängt von der Anzahl der angeforderten MRSCAT-Einträge und dem im Operanden REF angegebenen Informationsumfang ab. Es gelten folgende Werte:

  • Ein einzelner MRSCAT-Eintrag wird angefordert:

Bei REF=NO oder REF=YES muss der Ausgabebereich mindestens so lang sein wie der auszugebende MRSCAT-Eintrag. Das Layout dieses Eintrags wird im Anschluss an die Returncodes als DSECT wiedergegeben.

Bei REF=ALL wird die Mindestlänge l AREA des Ausgabebereiches durch folgende Formel bestimmt:

l AREA = l MCE + n OCC * l OCC + 1

Dabei bedeutet:

lAREA

Mindestlänge des Ausgabebereiches (in Byte)

lMCE

Länge des auszugebenden MRSCAT-Eintrags (Layout siehe DSECT im Anschluss an die Beschreibung der Returncodes)

nOCC

Anzahl der Belegungseinträge für den Pubset, auf den der MRSCAT-Eintrag verweist

lOCC

Länge eines Belegungseintrags (Layout siehe DSECT im Anschluss an die Beschreibung der Returncodes)

  • Mehrere Einträge werden angefordert:

Für die Mindestlänge lAREA des Ausgabebereiches gilt folgende Formel:

lAREA = nMCE * lMCE + 4

Dabei bedeutet:

lAREA

Mindestlänge des Ausgabebereiches (in Byte)

nMCE

Anzahl der auszugebenden MRSCAT-Einträge

lMCE

Länge des auszugebenden MRSCAT-Eintrags (Layout siehe
DSECT im Anschluss an die Beschreibung der Returncodes)

MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. PREFIX, MACID und PARAM) siehe Abschnitt „S-Typ-Makroaufrufe“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.
Bei der C-Form, D-Form oder M-Form des Makroaufrufs kann ein Präfix PREFIX und bei der C-Form oder M-Form zusätzlich eine Macid MACID angegeben werden (siehe Abschnitt „S-Typ-Makroaufrufe“).

Voreinstellung:
MACID = MCE bei XPAND=PL
MACID = MCF bei XPAND=MCE
MACID = MCH bei XPAND=OCC

PUBSET=
Angabe nur in Verbindung mit SELECT=VOLUME_SETS zulässig.
Gibt die Catid des SM-Pubsets an, dessen Volume-Set zurückgeliefert wird.

*ALL
Die Volume-Sets aller SM-Pubsets werden zurückgeliefert.

'catid'
Catid des SM-Pubsets, für dessen Volume-Sets Informationen zurückgeliefert werden sollen.

adr
Symbolische Adresse (Name) eines Feldes, das die Katalogkennung des SM-Pubsets enthält, für dessen Volume-Sets Informationen zurückgeliefert werden sollen.

REF=
bestimmt, ob zusätzlich zu den MRSCAT-Einträgen (also den Informationen, die das Kommando /SHOW-MASTER-CATALOG-ENTRY liefert) weitere Informationen über die angegebenen Pubsets ausgegeben werden sollen.

NO
es sollen keine weiteren Informationen ausgegeben werden.

YES
Für jeden angegebenen Pubset werden zusätzlich zum MRSCAT-Eintrag auch die Pubset-Parameter ausgegeben (siehe Kommando SHOW-PUBSET-PARAMETERS). Es fehlen lediglich die belegenden Tasks; diese werden nur bei REF=ALL ausgegeben.

Diese Angabe wird bei Makroaufrufen nur unter der Kennung der Systemverwaltung (TSOS) ausgewertet, bei allen anderen Benutzern wird sie ignoriert.

ALL
Für einen Pubset werden zusätzlich zu den unter REF=YES beschriebenen Informationen noch die Benutzerkennungen, die TSNs und die TIDs der Tasks ausgegeben, die den Pubset belegen, sowie die SYSIDs der Systeme, auf denen diese Tasks ablaufen. Für jedes System werden die ausgegebenen Einträge sortiert: Zuerst nach Benutzerkennung, dann nach TSN und schließlich nach TID.
REF=ALL ist nur zulässig, wenn im Operanden CATID explizit die Katalogkennung eines Pubsets angegeben wurde. Bei der Angabe eines Wildcard-Ausdrucks oder des (voreingestellten) Wertes ' ' im Operanden CATID wird REF=ALL intern in REF=YES umgewandelt.

Diese Angabe wird bei Makroaufrufen nur unter der Kennung der Systemverwaltung (TSOS) ausgewertet, bei allen anderen Benutzern wird sie ignoriert.

SELECT=
erlaubt bei der Angabe eines Wildcard-Ausdrucks oder des (voreingestellten) Wertes ' ' (Leerzeichen) im Operanden CATID eine engere Auswahl der dadurch vereinbarten Pubsets.

ALL
Die angeforderten Informationen werden für alle im Operanden CATID vereinbarten Pubsets ausgegeben.

ACCESSIBLE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, auf deren Dateikatalog zugegriffen werden kann.

DEF_XCS_CONF
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die als XCS-Pubset definiert sind.

EXCLUSIVE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die nicht als Shared-Pubset importiert sind.

HSMS_SUPPORTED
Die angeforderten Informationen werden nur für SM-Pubsets ausgegeben, auf die das Attribut HSMS SUPPORTED zutrifft.

INACCESSIBLE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die nicht importiert sind.

LOCAL
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die lokal importiert sind.

LOCAL_ACCESSIBLE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die lokal importiert und nicht im Quiet-Status sind.

MASTER_CHANGE_ERROR
Die angeforderten Informationen werden nur für Shared-Pubsets ausgegeben, bei denen ein Master-Wechsel fehlerhaft beendet wurde.

PAGING
Die angeforderten Informationen werden nur für Pubsets mit lokal genutzten Paging-Bereichen ausgegeben.

QUIET
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die im Quiet-Status sind.

REMOTE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, für die nicht das Auswahlkriterium LOCAL zutrifft.

REMOTE_ACCESSIBLE
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die nicht lokal importiert sind, auf deren Katalog aber dennoch zugegriffen werden kann, weil aktuell eine MSCF-Verbindung zu einem fernen System besteht, das das Pubset lokal importiert hat.

SCA
Die angeforderten Informationen werden nur für Pubsets ausgegeben, bei denen das eigene System die Katalogzugriffe über SCA abwickelt.
SCA = Speed Catalog Access. Ersetzt den sequenziellen Zugriff auf den Dateikatalog TSOSCAT durch einen indexsequenziell orientierten (direkten) Dateizugriff.

SHARED
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die als Shared-Pubset importiert sind.

SINGLE_FEATURE
Die angeforderten Informationen werden nur für SF-Pubsets ausgegeben.

SYSTEM_MANAGED
Die angeforderten Informationen werden nur für SM-Pubsets ausgegeben.

UNUSED_VOLSETS
Die angeforderten Informationen werden nur für Volume-Sets ausgegeben, die sich im Zustand DEFINED ONLY befinden.

VOLUME_SETS
Die angeforderten Informationen werden nur für Volume-Sets ausgegeben.
Eine engere Auswahl der auszugebenden Volume-Set-Einträge kann mit dem Operanden PUBSET getroffen werden.

XCS_CONFIGURATED
Die angeforderten Informationen werden nur für Pubsets ausgegeben, die als XCS-Pubset benutzt werden.

VERSION=
legt fest, für welche BS2000-Version das Layout erzeugt und Informationen ausgegeben werden soll.
Wird der Operand VERSION nicht angegeben, werden Layout und Informationen für die BS2000-Version V10.0 erzeugt bzw. ausgegeben.

5
Layout und Informationen für die Versionen ab BS2000/OSD-BC V3.0 werden erzeugt bzw. ausgegeben.

3
Layout und Informationen für die Versionen BS2000/OSD-BC V1.0 und V2.0 werden erzeugt bzw. ausgegeben.

XPAND=
wird nur im Zusammenhang mit MF=C bzw. MF=D ausgewertet und legt fest, für welchen Datenbereich eine CSECT bzw. DSECT erzeugt werden soll.

PL
Es wird eine CSECT/DSECT für den Datenbereich erzeugt. Dieser Wert ist Voreinstellung bei MF=C.

*ALL
Es werden CSECTs/DSECTs für den Datenbereich und den Ausgabebereich mit Belegungseintrag erzeugt. Voreinstellung bei MF=D.

MCE
Es wird eine CSECT/DSECT für einen MRSCAT-Eintrag erzeugt.

OCC
Es wird eine CSECT/DSECT für die bei REF=ALL zusätzlich ausgegebenen Belegungsinformationen erzeugt.

Rückinformation und Fehleranzeigen

Standardheader:

+---------------+
|   |   |   |   |
|c|c|b|b|a|a|a|a|
+---------------+

Über die Ausführung des Makros STAMCE wird im Standardheader folgender Returncode übergeben (cc=Subcode2, bb=Subcode1, aaaa=Maincode):

SUBCODE2 (X'cc') wird in der folgenden Tabelle nicht aufgeführt. Er kann die Werte X'00' und X'01' annehmen. Sie haben die folgenden Bedeutungen:

X'00': Fehler im lokalen System
X'01': Nur bei REF=ALL: Fehler im fernen System

X'bb'

X'aaaa'

Erläuterung

X'00'

X'0000'

Funktion erfolgreich ausgeführt; kein Fehler.

X'20'

X'0310'

Systemfehler: Fehler während der Privilegienprüfung.

X'01'

X'0311'

Operandenfehler:

  • Sowohl die Katalogkennung als auch eine Adresse mit der Katalogkennung
    wurden angegeben.

  • Der Ausgabebereich ist nicht auf Wortgrenze ausgerichtet.

  • Auf den Datenbereich kann nicht in allen Teilen zugegriffen werden.

  • Der Ausgabebereich ist nicht verfügbar.

  • Die Adresse mit der Katalogkennung ist nicht verfügbar oder eine gültige Katalogkennung bzw. ein gültiger Wildcard-Ausdruck konnte im zugewiesenen Speicherbereich nicht gefunden werden.

X'40'

X'0312'

Gesuchter MRSCAT-Eintrag nicht gefunden:

  • Es gibt keinen MRSCAT-Eintrag mit der angegebenen Katalogkennung.

  • Es gibt keinen MRSCAT-Eintrag, der den im Wildcard-Ausdruck und/oder im SELECT-Operanden angegebenen Auswahlkriterien entspricht.

X'20'

X'0313'

Fehler bei REQM/RELM: Speicherplatz für die Ausgabe konnte nicht angefordert/freigegeben werden.

X'40'

X'0313'

Fehler bei REQM/RELM: Es ist nicht genügend Klasse-6-Speicherplatz vorhanden.

X'01'

X'0314'

Katalogkennung / Wildcard-Ausdruck ungültig:
Die angegebene Katalogkennung bzw. Wildcard-Zeichenfolge entspricht nicht dem geforderten Format.

X'40'

X'0316'

Ausgabebereich zu klein: Der vom Anwender angegebene Ausgabebereich ist zu klein zur Aufnahme der angeforderten Information.

X'40'

X'0317'

Systemfehler: Konflikt mit MRSCAT-Sperre

X'20'

X'0318'

Systemfehler: Synchronisationsfehler

X'40'

X'031A'

MRSCAT noch nicht initialisiert:
STAMCE wurde während des STARTUP aufgerufen, bevor der MRSCAT initialisiert wurde.

X'20'

X'031B'

Übertragungsfehler, tritt nur bei REF=ALL auf:
Während der HIPLEX-MSCF-Übertragung, Anforderung oder Freigabe des Pubsets trat ein Fehler auf.

X'01'

X'031C'

Ungültiger BCAM-Name, tritt nur bei REF=ALL auf:

  • Der angegebene BCAM-Name ist dem System nicht bekannt.

  • Der angegebene BCAM-Name bezeichnet keinen Sharer des Pubsets.

  • Der Pubset ist nicht mehrrechnerbenutzbar und der BCAM-Name bezeichnet nicht das lokale System

  • Das lokale System ist nicht der Master des mehrrechnerbenutzbaren Pubsets und der angegebene BCAM-Name bezeichnet nicht das lokale System.

X'01'

X'031F'

Fehlerhafter SELECT-Operand des Datenbereichs:
Der Anwender hat das Feld für den SELECT-Operanden im Datenbereich mit einem ungültigen Wert versorgt.

X'01'

X'FFFF'

Interface-Fehler: Falscher Unit- oder Funktions-Code.

X'03'

X'FFFF'

Interface-Fehler: Falsche Versions-Nummer.

Als zusätzliche Returncodes können in den beiden rechten Byte von Register R15 folgende Werte zurückgegeben werden:

X'04A4':

Es wurde versucht, einen STAMCE einer Version < V9.5 auszuführen. Dabei wurde im Datenbereich ein ungültiger Operationscode entdeckt. Dieser Fehler tritt insbesondere dann auf, wenn die Version des Datenbereichs nicht zur Version des SVC-Aufrufs passt.

X'04A0':

Wie oben; darüber hinaus ist das Subsystem JV („Jobvariable“) nicht verfügbar.

Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle „Standard-Returncodes“ (Standardheader) entnommen werden.

Das aufrufende Programm wird beendet, wenn folgende Fehler auftreten:

  • Der Datenbereich ist dem Aufrufer nicht zugewiesen.

  • Der Datenbereich ist nicht auf Wortgrenze ausgerichtet.

  • Der Datenbereich ist gegen Schreibzugriff geschützt.

DSECT für den Datenbereich des Makros (XPAND=PL)

           STAMCE MF=D,PREFIX=D,XPAND=PL,VERSION=5
1          #INTF REFTYPE=REQUEST,                                        C
1                INTNAME=STAM,                                           C
1                INTCOMP=5
1          MFCHK    MF=D,                                                C
1                SUPPORT=(C,D,E,L,M,S),                                  C
1                PREFIX=D,                                               C
1                MACID=MCE,                                              C
1                DMACID=MCE,                                             C
1                DNAME=MCEPL,                                            C
1                PARAM=,                                                 C
1                SVC=33,                                                 C
1                ALIGN=F
2 DMCEPL   DSECT ,
2                *,##### PREFIX=D, MACID=MCE #####
1          STAMLY   MF=D,                                                C
1                PREFIX=D,                                               C
1                MACID=MCE,                                              C
1                PARAM=,                                                 C
1                VERSION=5,                                              C
1                XPAND=PL,                                               C
1                FUNCT=1,                                                C
1                CG27=DMCE,                                              C
1                CATID=,                                                 C
1                AREA=,                                                  C
1                LENGTH=,                                                C
1                REF=,                                                   C
1                HOST=,                                                  C
1                SELECT=,                                                C
1                PUBSET=
2          #INTF REFTYPE=REQUEST,                                        C
2                INTNAME=STAMLY,                                         C
2                INTCOMP=5
2 ********************
2 *  parameter list  *
2 ********************
2 DMCEFHDR   FHDR  MF=(C,DMCE),EQUATES=NO                 standard header
3 DMCEFHDR DS    0A
3 DMCEFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER
3 *
3 DMCEIFID DS    0A              0   INTERFACE IDENTIFIER
3 DMCEFCTU DS    AL2             0   FUNCTION UNIT NUMBER
3 *                                  BIT 15    HEADER FLAG BIT,
3 *                                  MUST BE RESET UNTIL FURTHER NOTICE
3 *                                  BIT 14-12 UNUSED, MUST BE RESET
3 *                                  BIT 11-0  REAL FUNCTION UNIT NUMBER
3 DMCEFCT  DS    AL1             2   FUNCTION NUMBER
3 DMCEFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER
3 *
3 DMCERET  DS    0A              4   GENERAL RETURN CODE
3 DMCESRET DS    0AL2            4   SUB RETURN CODE
3 DMCESR2  DS    AL1             4   SUB RETURN CODE 2
3 DMCESR1  DS    AL1             5   SUB RETURN CODE 1
3 DMCEMRET DS    0AL2            6   MAIN RETURN CODE
3 DMCEMR2  DS    AL1             6   MAIN RETURN CODE 2
3 DMCEMR1  DS    AL1             7   MAIN RETURN CODE 1
3 DMCEFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH
3 *
2 DMCEAREA   DS    A                area address
2 DMCECTAD   DS    A                catid address
2 DMCECTID   DS    CL4              catid
2 DMCEARLN   DS    F                area length
2 DMCERESA   DS    A                reserved (mf=m buffer)
2 DMCEHOST   DS    CL8              bcam name of the host
2 DMCESLCT   DS    C                SELECT value
2 DMCEFLAG   DS    X                flags
2 DMCESMPU   DS    CL4              id of sm pubset
2 DMCEUNUS   DS    XL6              unused
2 DMCE#      EQU   *-DMCEFHDR         length parameter list
2 *
2 * return codes
2 *
2 DMCEOK     EQU   X'0000'          NO_ERROR
2 DMCESRPM   EQU   X'0310'          SRPM_ERROR
2 DMCEOPER   EQU   X'0311'          OPERAND_ERROR_IN_STAM
2 DMCENFND   EQU   X'0312'          MCE_CANNOT_BE_FOUND
2 DMCERQRL   EQU   X'0313'          REQM_RELM_ERROR
2 DMCEICOW   EQU   X'0314'          INVALID_CATID_OR_WILDCARD
2 DMCEATS    EQU   X'0316'          AREA_TOO_SMALL
2 DMCELCKC   EQU   X'0317'          MRSCAT_LOCK_CONFLICT
2 DMCESYER   EQU   X'0318'          SYNCHRONIZATION_ERROR
2 DMCENINI   EQU   X'031A'          MRSCAT_NOT_INITIALIZED
2 DMCETRER   EQU   X'031B'          TRANSMISSION_ERROR
2 DMCEHOIN   EQU   X'031C'          INVALID_HOST_NAME
2 DMCEPAER   EQU   X'031F'          MRS_PARAM_ERROR
2 *
2 * subcode 2
2 *
2 DMCESC2L   EQU  X'00'             LOCAL_ERROR
2 DMCESC2R   EQU  X'01'             REMOTE_ERROR
2 *
2 * last catid
2 *
2 DMCELAST   EQU  X'40404040'
2 *
2 * last occupation
2 *
2 DMCELOCC   EQU  X'00'
2 *
2 * SELECT values
2 *
2 DMCEALL    EQU   0                all the pubsets
2 DMCEPAGI   EQU   1                paging pubsets
2 DMCELOCA   EQU   2                local pubsets
2 DMCEREMO   EQU   3                remote pubsets
2 DMCEACCE   EQU   4                pubsets accessible
2 DMCELOAC   EQU   5                pubsets local and accessible
2 DMCESHAR   EQU   6                shared pubsets
2 DMCEEXCL   EQU   7                exclusive pubsets
2 DMCEREAC   EQU   8                pubsets remote and accessible
2 DMCESCA    EQU   9                local and accessible pubsets which
2 *                                 are connected to SPEEDCAT
2 DMCEXCS    EQU   10               XCS configurated pubsets
2 DMCEHSMS   EQU   11               all HSMS supported sm pubsets
2 DMCESF     EQU   12               all single feature pubsets
2 DMCESM     EQU   13               all system managed pubsets
2 DMCEVOL    EQU   14               all volume sets of a sm pubset
2 DMCEDEF    EQU   15               volume sets of sm pubsets which are
2 *                                 defined but not in use
2 DMCEMCHE   EQU   16               pubsets where an error occured during
2 *                                 master change processing
2 DMCEINAC   EQU   17               pubsets which are inaccessible
2 DMCEDXCS   EQU   18               defined XCS configurated
2 DMCEQUIT   EQU   19               pubset in quiet status
2 *
2 * flags
2 *
2 DMCEMPVS   EQU  X'80'             set: MPVS mode
2 DMCEREF    EQU  X'40'             set: REF = YES
2 DMCERALL   EQU  X'20'             set: REF = ALL

DSECT für den Ausgabebereich des Makros (XPAND=MCE)

           STAMCE MF=D,PREFIX=D,XPAND=MCE,VERSION=5
1          #INTF REFTYPE=REQUEST,                                        C
1                INTNAME=STAM,                                           C
1                INTCOMP=5
1          MFCHK    MF=D,                                                C
1                SUPPORT=(C,D,E,L,M,S),                                  C
1                PREFIX=D,                                               C
1                MACID=MCF,                                              C
1                DMACID=MCF,                                             C
1                DNAME=MCFMCE,                                           C
1                PARAM=,                                                 C
1                SVC=33,                                                 C
1                ALIGN=F
2 DMCFMCE  DSECT ,
2                *,##### PREFIX=D, MACID=MCF #####
1          STAMLY   MF=D,                                                C
1                PREFIX=D,                                               C
1                MACID=MCF,                                              C
1                PARAM=,                                                 C
1                VERSION=5,                                              C
1                XPAND=MCE,                                              C
1                FUNCT=1,                                                C
1                CG27=DMCF,                                              C
1                CATID=,                                                 C
1                AREA=,                                                  C
1                LENGTH=,                                                C
1                REF=,                                                   C
1                HOST=,                                                  C
1                SELECT=,                                                C
1                PUBSET=
2          #INTF REFTYPE=REQUEST,                                        C
2                INTNAME=STAMLY,                                         C
2                INTCOMP=5
2 DMCFMST    DS    0D
2          MCEDSK  VERSION=5,CG27=DMCF
3          #INTF REFTYPE=REQUEST,                                        C
3                INTNAME=MCEDSK,                                         C
3                INTCOMP=5
3 *******************************
3 *  header of all entry types  *
3 *******************************
3            DS    0D       DW alignement
3 DMCFSHDR   DS    0XL8     header
3 DMCFSCTD   DS    CL4      catid
3 *
3 DMCFSENT   DS    X        entry type set
3 DMCFSSF    EQU   0        single feature pubset
3 DMCFSSM    EQU   1        system managed pubset
3 DMCFSVOL   EQU   2        volume set
3 *
3            DS    XL3      unused
3 *********************************************
3 *  starting point of the static entry part  *
3 *********************************************
3 DMCFSDSC   DS    0D       starting point of static part
3 **************************************************
3 *  static part of a single feature pubset entry  *
3 **************************************************
3 DMCFSBCA   DS    CL8      BCAM name for RFA
3 DMCFSDEM   DS    0XL2     device mnemonic
3 DMCFSDEV   DS    XL1      device code
3 DMCFSDEF   DS    XL1      device filler
3 DMCFSBNU   DS    XL2      static number of CMS buffer
3 DMCFSBWT   DS    F        batch wait time
3 DMCFSDWT   DS    F        dialog wait time
3 *
3 * static pubset status values (1)
3 *
3 DMCFSSTA   DS    X        static status byte (1)
3 DMCFSAUT   EQU   X'80'    set  : autoquiet selected
3 DMCFSBDF   EQU   X'40'    set  : static buffer defined
3 DMCFSBCL   EQU   X'20'    set  : static buffer resident (cl.3)
3 *                         reset: static buffer non-res. (cl.4)
3 DMCFSSH    EQU   X'10'    set  : pubset shared (next import)
3 *                         reset: pubset exclusive (next import)
3 DMCFSAC    EQU   X'08'    set  : pubset with controlled use
3 DMCFSUVA   EQU   X'04'    set  : physical allocation by users allowed
3 DMCFSFIM   EQU   X'02'    set  : continue IMPORT if cache can't be
3 *                                connected
3 *                         reset: abort IMPORT if cache can't be
3 *                                connected
3 DMCFSXCS   EQU   X'01'    set  : XCS pubset at startup
3 *
3 DMCFSSPC   DS    X        SPEEDCAT set
3 DMCFSNSP   EQU   0        no automatic start
3 DMCFSSSP   EQU   1        SPEEDCAT task
3 DMCFSUSP   EQU   2        SPEEDCAT own task
3 DMCFSNSS   EQU   4        no, non start SPEEDCAT
3 *
3 * static pubset status values (2)
3 *
3 DMCFSST2   DS    X        static status byte (2)
3 DMCFSRIM   EQU   X'80'    set  : remote import by command only
3 *                         reset: remote import by connection
3 DMCFSCCT   EQU   X'40'    set  : TSOSCAT is to be converted to V10
3 *                                format during next EXPORT
3            DS    XL1      unused
3 DMCFSUID   DS    CL8      userid allowed to access pubset
3 *
3 * static cache values
3 *
3 DMCFSCBS   DS    F        cache size
3 *
3 DMCFSCBY   DS    X        byte for bit values
3 DMCFSCBU   EQU   X'80'    set  : cache size unit is KB
3 *                         reset: cache size unit is MB
3 DMCFSCST   EQU   X'40'    set  : size tolerance
3 *
3 DMCFSCM    DS    X        cache medium set
3 DMCFSCNC   EQU   0        no cache
3 DMCFSCDC   EQU   1        controller
3 DMCFSCES   EQU   2        expanded storage
3 DMCFSCGS   EQU   3        global storage
3 DMCFSCMM   EQU   4        main memory
3 *
3 DMCFSCSZ   DS    X        segment size set
3 DMCFSC4    EQU   0        4 KB
3 DMCFSC8    EQU   1        8 KB
3 DMCFSC16   EQU   2        16 KB
3 DMCFSC32   EQU   3        32 KB
3 *
3 DMCFSCFS   DS    X        file selection
3 DMCFSBUS   EQU   0        by user
3 DMCFSALL   EQU   1        all
3 DMCFSAUS   EQU   2        autoselected
3 *
3 DMCFSGDS   DS    X        GS data security set
3 DMCFSGNS   EQU   0        no security
3 DMCFSGCO   EQU   1        connect
3 *
3 DMCFSGU1   DS    XL1      GS unit=1 or 2
3 DMCFSGU2   DS    XL1      unused
3 *
3 DMCFSGDB   DS    X        GS double recording by buffer set
3 DMCFSGST   EQU   0        std
3 DMCFSGNY   EQU   1        mono
3 DMCFSGNN   EQU   2        any
3 DMCFSGYE   EQU   3        yes
3 *
3 DMCFSGFO   DS    X        force out set
3 DMCFSGNF   EQU   0        no force out
3 DMCFSGLF   EQU   1        at low filling
3 DMCFSGHF   EQU   2        at high filling
3 *
3 DMCFSCFE   DS    X        DC prefetch set
3 DMCFSCFN   EQU   0        no prefetch
3 DMCFSCFL   EQU   1        low
3 DMCFSCFH   EQU   2        high
3 *
3 * static attach/detach pubset
3 *
3 DMCFSMN    DS    XL2      attach pubset with dev#
3 *
3 * static allocator values
3 *
3 DMCFSAL1   DS    F        residual space at sat level 1
3 DMCFSAL2   DS    F        residual space at sat level 2
3 DMCFSAL3   DS    F        residual space at sat level 3
3 DMCFSAL4   DS    F        residual space at sat level 4
3 DMCFSAL5   DS    F        residual space at sat level 5
3 DMCFSAPA   DS    F        predet primary alloc amount
3 DMCFSASA   DS    F        predet secondary alloc amount
3 DMCFSADL   DS    F        sec alloc doubling limit
3 DMCFSAZP   DS    F        residual space for ZIP startup
3 *
3 * static eam values
3 *
3 DMCFSEMA   DS    F        maximal size of file SYSEAM
3 DMCFSEMI   DS    F        minimal size of file SYSEAM
3 DMCFSESA   DS    F        secondary allocation of file SYSEAM
3 DMCFSEMS   DS    F        virtual memory size of file SYSEAM
3 *
3 DMCFS#     EQU   *-DMCFSBCA    length of the static part of a single
3 *                              feature pubset entry
3            ORG   DMCFSDSC      starting point of static part
3 **************************************************
3 *  static part of a system managed pubset entry  *
3 **************************************************
3 DMCFHBCA   DS    CL8      BCAM name for RFA
3 DMCFHDEM   DS    0XL2     device mnemonic of volres of ctl volset
3 DMCFHDEV   DS    XL1      device code
3 DMCFHDEF   DS    XL1      device filler
3 DMCFHBNU   DS    XL2      static number of CMS buffer
3 DMCFHBWT   DS    F        batch wait time
3 DMCFHDWT   DS    F        dialog wait time
3 *
3 * static pubset status values (1)
3 *
3 DMCFHSTA   DS    X        static status byte (1)
3 DMCFHAUT   EQU   X'80'    set  : autoquiet selected
3 DMCFHBDF   EQU   X'40'    set  : static buffer defined
3 DMCFHBCL   EQU   X'20'    set  : static buffer resident (cl.3)
3 *                         reset: static buffer non-res. (cl.4)
3 DMCFHSH    EQU   X'10'    set  : pubset shared (next import)
3 *                         reset: pubset exclusive (next import)
3 DMCFHAC    EQU   X'08'    set  : pubset with controlled use
3 DMCFHHSM   EQU   X'04'    set  : pubset is HSMS supported
3 DMCFHFIM   EQU   X'02'    set  : continue IMPORT if cache can't be
3 *                                connected
3 *                         reset: abort IMPORT if cache can't be
3 *                                connected
3 DMCFHXCS   EQU   X'01'    set  : XCS pubset at startup
3 *
3            DS    XL1      unused
3 *
3 * static pubset status values (2)
3 *
3 DMCFHST2   DS    X        static status byte (2)
3 DMCFHRIM   EQU   X'80'    set  : remote import by command only
3 *                         reset: remote import by connection
3            DS    XL1      unused
3 DMCFHUID   DS    CL8      userid allowed to access pubset
3 *
3 * static cache values
3 *
3            DS    XL4      unused
3 DMCFHCBY   DS    X        byte for bit values
3 DMCFHCST   EQU   X'40'    set  : size tolerance
3 *
3 DMCFHVID   DS    CL4      catid of ctl volset
3 *
3 DMCFHDFF   DS    X        default file format set
3 DMCFHDST   EQU   0        std
3 DMCFHPAM   EQU   1        pamkey format
3 DMCFHNK2   EQU   2        NK2 format
3 DMCFHNK4   EQU   3        NK4 format
3 *
3            DS    XL4      unused
3 *
3 * static attach/detach pubset
3 *
3 DMCFHMN    DS    XL2      attach pubset with dev#
3 *
3 * static allocator values
3 *
3            DS    XL20     unused
3 DMCFHAPA   DS    F        predet primary alloc amount
3 DMCFHASA   DS    F        predet secondary alloc amount
3 DMCFHADL   DS    F        sec alloc doubling limit
3            DS    XL4      unused
3 *
3 * static EAM values
3 *
3 DMCFHEMA   DS    F        maximal size of file SYSEAM
3 DMCFHEMI   DS    F        minimal size of file SYSEAM
3 DMCFHESA   DS    F        secondary allocation of file SYSEAM
3 DMCFHEMS   DS    F        virtual memory size of file SYSEAM
3 *
3 DMCFH#     EQU   *-DMCFHBCA    length of the static part of a system
3 *                              managed pubset entry
3            ORG   DMCFSDSC      starting point of static part
3 ***********************************
3 *  static part of a pubset entry  *
3 ***********************************
3 DMCFFBCA   DS    CL8      BCAM name for RFA
3 DMCFFDEM   DS    0XL2     device mnemonic
3 DMCFFDEV   DS    XL1      device code
3 DMCFFDEF   DS    XL1      device filler
3 DMCFFBNU   DS    XL2      static number of CMS buffer
3 DMCFFBWT   DS    F        batch wait time
3 DMCFFDWT   DS    F        dialog wait time
3 *
3 * static pubset status values (1)
3 *
3 DMCFFSTA   DS    X        static status byte (1)
3 DMCFFAUT   EQU   X'80'    set  : autoquiet selected
3 DMCFFBDF   EQU   X'40'    set  : static buffer defined
3 DMCFFBCL   EQU   X'20'    set  : static buffer resident (cl.3)
3 *                         reset: static buffer non-res. (cl.4)
3 DMCFFSH    EQU   X'10'    set  : pubset shared (next import)
3 *                         reset: pubset exclusive (next import)
3 DMCFFAC    EQU   X'08'    set  : pubset with controlled use
3 DMCFFUVA   EQU   X'04'    set  : physical allocation by users allowed
3 DMCFFFIM   EQU   X'02'    set  : continue IMPORT if cache can't be
3 *                                connected
3 *                         reset: abort IMPORT if cache can't be
3 *                                connected
3 DMCFFXCS   EQU   X'01'    set  : XCS pubset at startup
3            DS    XL1      unused
3 *
3 * static pubset status values (2)
3 *
3 DMCFFST2   DS    X        static status byte (2)
3 DMCFFRIM   EQU   X'80'    set  : remote import by command only
3 *                         reset: remote import by connection
3            DS    XL1      unused
3 DMCFFUID   DS    CL8      userid allowed to access pubset
3 *
3 * static cache values
3 *
3            DS    XL4      unused
3 DMCFFCBY   DS    X        byte for bit values
3 DMCFFCST   EQU   X'40'    set  : size tolerance
3 *
3            DS    XL9      unused
3 *
3 * static attach/detach pubset
3 *
3 DMCFFMN    DS    XL2      attach pubset with dev#
3 *
3 * static allocator values
3 *
3            DS    XL20     unused
3 DMCFFAPA   DS    F        predet primary alloc amount
3 DMCFFASA   DS    F        predet secondary alloc amount
3 DMCFFADL   DS    F        sec alloc doubling limit
3            DS    XL4      unused
3 *
3 * static eam values
3 *
3 DMCFFEMA   DS    F        maximal size of file SYSEAM
3 DMCFFEMI   DS    F        minimal size of file SYSEAM
3 DMCFFESA   DS    F        secondary allocation of file SYSEAM
3 DMCFFEMS   DS    F        virtual memory size of file SYSEAM
3 *
3 DMCFF#     EQU   *-DMCFFBCA    length of the static part of a pubset
3 *                              entry
3            ORG   DMCFSDSC      starting point of static part
3 ***************************************
3 *  static part of a volume set entry  *
3 ***************************************
3 DMCFBPID   DS    CL4      corresponding pubset id
3            DS    XL4      unused
3 DMCFBDEM   DS    0XL2     device mnemonic
3 DMCFBDEV   DS    XL1      device code
3 DMCFBDEF   DS    XL1      device filler
3 *
3 * static performance attributes
3 *
3 DMCFBVSU   DS    X        volset usage set
3 DMCFBVST   EQU   0        standard volset
3 DMCFBWRK   EQU   1        work volset
3 DMCFBHSM   EQU   2        HSMS controlled volset
3 *
3 DMCFBAVA   DS    X        availability set
3 DMCFBAST   EQU   0        standard availability
3 DMCFBHIG   EQU   1        high availability
3 *
3 DMCFBPER   DS    X        performance profile
3 DMCFBPST   EQU   X'80'    standard performance
3 DMCFBHIH   EQU   X'40'    high performance
3 DMCFBVHI   EQU   X'20'    very high performance
3 *
3 DMCFBCRE   DS    X        write consistency set
3 DMCFBBYC   EQU   0        by close
3 DMCFBIMM   EQU   1        immediate
3 *
3            DS    XL1      unused
3 *
3 DMCFBNFA   DS    X        new file allocation
3 DMCFBNNR   EQU   0        not restricted
3 DMCFBNPO   EQU   1        physical only
3 DMCFBNNA   EQU   2        not allowed
3 *
3 DMCFBVAC   DS    X        volset access
3 DMCFBVNR   EQU   0        not restricted
3 DMCFBVAO   EQU   1        administrator only
3 *
3 DMCFBVSS   DS    X        volset status
3 DMCFBVSD   EQU   0        normal use
3 DMCFBVDO   EQU   1        defined only
3 DMCFBVIH   EQU   2        in hold
3 DMCFBVDF   EQU   3        defect
3 *
3            DS    XL2      unused
3 *
3 * static volset status values
3 *
3 DMCFBSTA   DS    X        static status byte
3 DMCFBCVS   EQU   X'04'    set: volset is ctl volset of a sm pubset
3            DS    XL11     unused
3 *
3 * static cache values
3 *
3 DMCFBCBS   DS    F        cache size
3 *
3 DMCFBCBY   DS    X        byte for bit values
3 DMCFBCBU   EQU   X'80'    set  : cache size unit is KB
3 *                         reset: cache size unit is MB
3 *
3 DMCFBCM    DS    X        cache medium set
3 DMCFBCNC   EQU   0        no cache
3 DMCFBCDC   EQU   1        controller
3 DMCFBCES   EQU   2        expanded storage
3 DMCFBCGS   EQU   3        global storage
3 DMCFBCMM   EQU   4        main memory
3 *
3 DMCFBCSZ   DS    X        segment size set
3 DMCFBC4    EQU   0        4 KB
3 DMCFBC8    EQU   1        8 KB
3 DMCFBC16   EQU   2        16 KB
3 DMCFBC32   EQU   3        32 KB
3 *
3 DMCFBCFS   DS    X        file selection
3 DMCFBBUS   EQU   0        by user
3 DMCFBALL   EQU   1        all
3 DMCFBAUS   EQU   2        autoselected
3 *
3 DMCFBGDS   DS    X        GS data security set
3 DMCFBGNS   EQU   0        no security
3 DMCFBGCO   EQU   1        connect
3 *
3 DMCFBGU1   DS    XL1      GS unit=1 or 2
3 DMCFBGU2   DS    XL1      unused
3 *
3 DMCFBGDB   DS    X        GS double recording by buffer set
3 DMCFBGST   EQU   0        standard
3 DMCFBGNY   EQU   1        mono
3 DMCFBGNN   EQU   2        any
3 DMCFBGYE   EQU   3        dual
3 *
3 DMCFBGFO   DS    X        force out set
3 DMCFBGNF   EQU   0        no force out
3 DMCFBGLF   EQU   1        at low filling
3 DMCFBGHF   EQU   2        at high filling
3 *
3 DMCFBCFE   DS    X        DC prefetch set
3 DMCFBCFN   EQU   0        no prefetch
3 DMCFBCFL   EQU   1        low
3 DMCFBCFH   EQU   2        high
3 *
3 * static allocator values
3 *
3 DMCFBAL1   DS    F        residual space at sat level 1
3 DMCFBAL2   DS    F        residual space at sat level 2
3 DMCFBAL3   DS    F        residual space at sat level 3
3 DMCFBAL4   DS    F        residual space at sat level 4
3 DMCFBAL5   DS    F        residual space at sat level 5
3            DS    XL12     unused
3 DMCFBAZP   DS    F        residual space for ZIP startup
3 *
3            DS    XL16     unused
3 *
3 DMCFB#     EQU   *-DMCFBPID     length of the static part of a volume
3 *                               set entry
3            ORG   DMCFSDSC+DMCFS#      length of a static MRSCAT entry
2 **********************************************
2 *  starting point of the dynamic entry part  *
2 **********************************************
2 DMCFD      DS    0D       starting point of dynamic part
2 ***************************************************
2 *  dynamic part of a single feature pubset entry  *
2 ***************************************************
2 DMCFDOC#   DS    F        counter for occupations
2 *
2 * dynamic pubset status values (1)
2 *
2 DMCFDSTA   DS    X        dynamic status byte (1)
2 DMCFDLOC   EQU   X'80'    set: local          reset: remote
2 DMCFDHOM   EQU   X'40'    set: home           reset: imported
2 DMCFDSH    EQU   X'20'    set: shared         reset: exclusive
2 DMCFDIMC   EQU   X'10'    set: import in process
2 DMCFDEXC   EQU   X'08'    set: export in process
2 DMCFDMAS   EQU   X'04'    set: master         reset: slave
2 DMCFDINA   EQU   X'02'    set: inaccessible   reset: not inacc
2 DMCFDQUI   EQU   X'01'    set: quiet
2 *
2 * dynamic pubset status values (2)
2 *
2 DMCFDST2   DS    X        dynamic status byte (2)
2 DMCFDUVA   EQU   X'10'    set: physical allocation by users allowed
2 DMCFDAC    EQU   X'08'    set: pubset with controlled use
2 DMCFDMCP   EQU   X'04'    set: master change in process
2 DMCFDPAG   EQU   X'02'    set: paging pubset
2 DMCFDERI   EQU   X'01'    set: eram inhibit
2 *
2 DMCFDSES   DS    X        pubset session number
2 *
2 DMCFDFLA   DS    X        CMS flags
2 DMCFDBDF   EQU   X'80'    set:   CMS buffers defined
2 DMCFDBCL   EQU   X'40'    set:   CMS buffers resident (class 3)
2 *                         reset: CMS buffers not resident (class 4)
2 DMCFDSPC   EQU   X'20'    set: speedcat is running
2 DMCFDELC   EQU   X'10'    set: Extra_large_catalog
2 *
2 DMCFDBNU   DS    XL2      number of CMS buffers
2 *
2 DMCFDATT   DS    X        attribute
2 DMCFDLOB   EQU   X'40'    set: large_objects
2 *                                 files/volumes with more than 32 GB
2 DMCFDLFA   EQU   X'20'    set: large_files_allowed
2 DMCFDRAI   EQU   X'10'    set: pubset with RAID volumes
2 DMCFDGSV   EQU   X'08'    set: gs volumes
2 DMCFDDRV   EQU   X'02'    set: high availability by DRV
2 DMCFDKEY   EQU   X'01'    set: key pubset
2 *
2 DMCFDXCN   DS    CL8      XCS name
2 DMCFDHOS   DS    CL8      host name       :* MSCF host name
2 *
2 DMCFDPUB   DS    X        pubset set
2 DMCFD2KN   EQU   0        NK2 (2K native)
2 DMCFD4KN   EQU   1        NK4 (4K native)
2 DMCFD4KO   EQU   2        NK2, allocation unit multiple of 4K
2 *                         (4K oriented)
2 * dynamic cache values
2 *
2 DMCFDCSZ   DS    F        size of cache buffer
2 *
2 DMCFDCB8   DS    X        byte for bit values
2 DMCFDCBU   EQU   X'80'    set  : cache size unit is KB
2 *                         reset: cache size unit is MB
2 DMCFDCDS   EQU   X'40'    set  : data security ensured
2 DMCFDCDB   EQU   X'20'    set  : double recording by buffer
2 DMCFDCDD   EQU   X'10'    set  : cache deactivated
2 DMCFDCIH   EQU   X'08'    set  : cache in hold
2 DMCFDCCU   EQU   X'04'    set  : cache used
2 DMCFDCSF   EQU   X'02'    set  : save file failed
2 *
2 DMCFDCM    DS    X        cache medium set
2 DMCFDCNC   EQU   0        no cache
2 DMCFDCDC   EQU   1        controller
2 DMCFDCES   EQU   2        expanded storage
2 DMCFDCGS   EQU   3        global storage
2 DMCFDCMM   EQU   4        main memory
2 *
2 DMCFDCS    DS    X        segment size set
2 DMCFDC4    EQU   0        4 KB
2 DMCFDC8    EQU   1        8 KB
2 DMCFDC16   EQU   2        16 KB
2 DMCFDC32   EQU   3        32 KB
2 *
2 DMCFDCU1   DS    XL1      GS unit=1 or 2
2 DMCFDCU2   DS    XL1      unused
2 *
2 DMCFDCFO   DS    X        force out set
2 DMCFDCNF   EQU   0        no force out
2 DMCFDCIP   EQU   1        at low filling
2 DMCFDCIN   EQU   2        at high filling
2 *
2 DMCFDCFE   DS    X        prefetch set
2 DMCFDCFN   EQU   0        no prefetch
2 DMCFDCFL   EQU   1        low
2 DMCFDCFH   EQU   2        high
2 *
2 DMCFDCFS   DS    X        file selection
2 DMCFDBUS   EQU   0        by user
2 DMCFDALL   EQU   1        all
2 DMCFDAUS   EQU   2        auto select
2 *
2 DMCFDCAS   DS    H        size of allocation unit (# of half pages)
2 DMCFDMTL   DS    H        maximal I/O transfer length
2 DMCFDUID   DS    CL8      userid allowed to access pubset
2 *
2            DS    XL2      unused
2 *
2 * dynamic allocator values
2 *
2 DMCFDAL5   DS    F        residual space at sat level 5
2 DMCFDAL4   DS    F        residual space at sat level 4
2 DMCFDAL3   DS    F        residual space at sat level 3
2 DMCFDAL2   DS    F        residual space at sat level 2
2 DMCFDAL1   DS    F        residual space at sat level 1
2 DMCFDAPA   DS    F        predet primary alloc amount
2 DMCFDASA   DS    F        predet secondary alloc amount
2 DMCFDADL   DS    F        sec alloc doubling limit
2 DMCFDAZP   DS    F        residual space for ZIP startup
2 *
2 * dynamic EAM values
2 *
2 DMCFDEMA   DS    F        minimal size of file SYSEAM
2 DMCFDEMI   DS    F        maximal size of file SYSEAM
2 DMCFDESA   DS    F        secondary allocation of file SYSEAM
2 DMCFDEMS   DS    F        virtual memory size of file SYSEAM
2 *
2 DMCFDREF   DS    XL4      counter of occupations (duplicate)
2 *
2 DMCF#      EQU   *-DMCFMST      length of the STAM single
2 *                               feature pubset entry
2            ORG   DMCFD    starting point of dynamic part
2 ***************************************************
2 *  dynamic part of a system managed pubset entry  *
2 ***************************************************
2 DMCFKOC#   DS    F        counter for occupations
2 *
2 * dynamic pubset status values (1)
2 *
2 DMCFKSTA   DS    X        dynamic status byte (1)
2 DMCFKLOC   EQU   X'80'    set: local          reset: remote
2 DMCFKHOM   EQU   X'40'    set: home           reset: imported
2 DMCFKSH    EQU   X'20'    set: shared         reset: exclusive
2 DMCFKIMC   EQU   X'10'    set: import in process
2 DMCFKEXC   EQU   X'08'    set: export in process
2 DMCFKMAS   EQU   X'04'    set: master         reset: slave
2 DMCFKINA   EQU   X'02'    set: inaccessible   reset: not inacc
2 DMCFKQUI   EQU   X'01'    set: quiet
2 *
2 * dynamic pubset status values (2)
2 *
2 DMCFKST2   DS    X        dynamic status byte (2)
2 DMCFKAC    EQU   X'08'    set: pubset with controlled use
2 DMCFKMCP   EQU   X'04'    set: master change in process
2 DMCFKPAG   EQU   X'02'    set: paging pubset
2 DMCFKERI   EQU   X'01'    set: eram inhibit
2 *
2 DMCFKSES   DS    X        session number
2 *
2 DMCFKFLA   DS    X        CMS flags
2 DMCFKBDF   EQU   X'80'    set:   CMS buffers defined
2 DMCFKBCL   EQU   X'40'    set:   CMS buffers resident (class 3)
2 *                         reset: CMS buffers not resident (class 4)
2 DMCFKBNU   DS    XL2      number of CMS buffers
2 *
2 * dynamic sm pubset status values
2 *
2 DMCFKSMS   DS    X        special status bytes for sm pubsets
2 DMCFKGEN   EQU   X'80'    set: pubset is in generation
2            ORG   DMCFKSMS
2 DMCFKATT   DS    X        attribute
2 DMCFKLOB   EQU   X'40'    set: large_objects
2 *                                 files/volumes with more than 32 GB
2 DMCFKLFA   EQU   X'20'    set: large_files_allowed
2 DMCFKXCN   DS    CL8      XCS name
2 DMCFKHOS   DS    CL8      host name       :* MSCF host name
2 *
2 DMCFKDFF   DS    X        default file format set
2 DMCFKPAM   EQU   0        pamkey format
2 DMCFKNO2   EQU   1        NK2 format
2 DMCFKNO4   EQU   2        NK4 format
2 *
2 * dynamic performance attributes
2 *
2 DMCFKPER   DS    X        performance profile
2 DMCFKSTD   EQU   X'80'    standard performance
2 DMCFKHIG   EQU   X'40'    high performance
2 DMCFKVHI   EQU   X'20'    very high performance
2 *
2 DMCFKWRC   DS    X        write consistency
2 DMCFKBC    EQU   X'80'    by close
2 DMCFKIMM   EQU   X'40'    immediate
2 *
2 DMCFKAVA   DS    X        availability
2 DMCFKAST   EQU   X'80'    standard availability
2 DMCFKAHI   EQU   X'40'    high availability
2 *
2            DS    XL1      unused
2 *
2 DMCFKFMT   DS    X        format profile
2 DMCFKK     EQU   X'80'    system managed pubset with K volsets
2 DMCFKNK2   EQU   X'40'    system managed pubset with NK2 volsets
2 DMCFKFN4   EQU   X'20'    system managed pubset with NK4 volsets
2 *
2 DMCFKUSA   DS    X        volume set usage
2 DMCFKUST   EQU   X'80'    sm pubset with standard volsets
2 DMCFKWRK   EQU   X'40'    sm pubset with work volsets
2 DMCFKHSS   EQU   X'20'    sm pubset with HSMS controlled volsets
2 *
2            DS    XL2      unused
2 DMCFKNOV   DS    F        number of volsets
2            DS    XL1      unused
2 DMCFKMTL   DS    H        maximal I/O transfer length
2 DMCFKUID   DS    CL8      userid allowed to access the pubset
2            DS    XL4      unused
2 *
2 * dynamic allocator values
2 *
2            DS    XL20     unused
2 DMCFKAPA   DS    F        predet primary alloc amount
2 DMCFKASA   DS    F        predet secondary alloc amount
2 DMCFKADL   DS    F        sec alloc doubling limit
2            DS    XL4      unused
2 *
2 * dynamic EAM values
2 *
2 DMCFKEMA   DS    F        maximal size of file SYSEAM
2 DMCFKEMI   DS    F        minimal size of file SYSEAM
2 DMCFKESA   DS    F        secondary allocation of file SYSEAM
2 DMCFKEMS   DS    F        virtual memory size of file SYSEAM
2 *
2 DMCFKREF   DS    XL4      counter of occupations (duplicate)
2 *
2 DMCFK#     EQU   *-DMCFMST      length of the STAM system
2 *                               managed pubset entry
2            ORG   DMCFD    starting point of dynamic part
2 ************************************
2 *  dynamic part of a pubset entry  *
2 ************************************
2 DMCFGOC#   DS    F        counter for occupations
2 *
2 * dynamic pubset status values (1)
2 *
2 DMCFGSTA   DS    X        dynamic status byte (1)
2 DMCFGLOC   EQU   X'80'    set: local          reset: remote
2 DMCFGHOM   EQU   X'40'    set: home           reset: imported
2 DMCFGSH    EQU   X'20'    set: shared         reset: exclusive
2 DMCFGIMC   EQU   X'10'    set: import in process
2 DMCFGEXC   EQU   X'08'    set: export in process
2 DMCFGMAS   EQU   X'04'    set: master         reset: slave
2 DMCFGINA   EQU   X'02'    set: inaccessible   reset: not inacc
2 DMCFGQUI   EQU   X'01'    set: quiet
2 *
2 * dynamic pubset status values (2)
2 *
2 DMCFGST2   DS    X        dynamic status byte (2)
2 DMCFGAC    EQU   X'08'    set: pubset with controlled use
2 DMCFGMCP   EQU   X'04'    set: master change in process
2 DMCFGPAG   EQU   X'02'    set: paging pubset
2 DMCFGERI   EQU   X'01'    set: eram inhibit
2 *
2 DMCFGSES   DS    X        session number
2 *
2 DMCFGFLA   DS    X        CMS flags
2 DMCFGBDF   EQU   X'80'    set:   CMS buffers defined
2 DMCFGBCL   EQU   X'40'    set:   CMS buffers resident (class 3)
2 *                         reset: CMS buffers not resident (class 4)
2 DMCFGBNU   DS    XL2      number of CMS buffers
2 DMCFGATT   DS    X        attribute
2 DMCFGLOB   EQU   X'40'    set: large_objects
2 *                                 files/volumes with more than 32 GB
2 DMCFGLFA   EQU   X'20'    set: large_files_allowed
2 DMCFGXCN   DS    CL8      XCS name
2 DMCFGHOS   DS    CL8      host name       :* MSCF host name
2            DS    XL14     unused
2 DMCFGMTL   DS    H        maximal I/O transfer length
2 DMCFGUID   DS    CL8      userid allowed to access pubset
2            DS    XL4      unused
2 *
2 * dynamic allocator values
2 *
2            DS    XL20     unused
2 DMCFGAPA   DS    F        predet primary alloc amount
2 DMCFGASA   DS    F        predet secondary alloc amount
2 DMCFGADL   DS    F        sec alloc doubling limit
2            DS    XL4      unused
2 *
2 * dynamic EAM values
2 *
2 DMCFGEMA   DS    F        minimal size of file SYSEAM
2 DMCFGEMI   DS    F        maximal size of file SYSEAM
2 DMCFGESA   DS    F        secondary allocation of file SYSEAM
2 DMCFGEMS   DS    F        virtual memory size of file SYSEAM
2 *
2 DMCFGREF   DS    XL4      counter of occupations (duplicate)
2 *
2 DMCFG#     EQU   *-DMCFMST      length of the STAM pubset entry
2 *
2            ORG   DMCFD    starting point of dynamic part
2 ****************************************
2 *  dynamic part of a volume set entry  *
2 ****************************************
2 DMCFEOC#   DS    F        counter for occupations
2 *
2 * dynamic volume set status values (1)
2 *
2 DMCFESTA   DS    X        dynamic status bytes (1)
2 DMCFECON   EQU   X'80'    set: volume set is connected
2 *
2 * dynamic volume set status values (2)
2 *
2 DMCFEST2   DS    X        dynamic status bytes (2)
2 DMCFEMCP   EQU   X'04'    set: master change in process
2 DMCFEERI   EQU   X'01'    set: eram inhibit
2 *
2            DS    XL4      unused
2 *
2 DMCFEATT   DS    X        attribute
2 DMCFERAI   EQU   X'10'    set: volset with RAID volumes
2 DMCFEGSV   EQU   X'08'    set: gs volumes
2 DMCFEDRV   EQU   X'02'    set: high availability by DRV
2 DMCFEKEY   EQU   X'01'    set: key volset
2 *
2            DS    XL16     unused
2 *
2 DMCFEVOL   DS    X        volume set format set
2 DMCFE2KN   EQU   0        NK2 (2K native)
2 DMCFE4KN   EQU   1        NK4 (4K native)
2 DMCFE4KO   EQU   2        NK2, allocation unit multiple of 4K
2 *                         (4K oriented)
2 * dynamic cache values
2 *
2 DMCFECSZ   DS    F        size of cache buffer
2 *
2 DMCFECB8   DS    X        byte for bit values
2 DMCFECBU   EQU   X'80'    set  : cache size unit is KB
2 *                         reset: cache size unit is MB
2 DMCFECDS   EQU   X'40'    set  : data security ensured
2 DMCFECDB   EQU   X'20'    set  : double recording by buffer
2 DMCFECDD   EQU   X'10'    set  : cache deactivated
2 DMCFECIH   EQU   X'08'    set  : cache in hold
2 DMCFECCU   EQU   X'04'    set  : cache used
2 DMCFECSF   EQU   X'02'    set  : save file failed
2 *
2 DMCFECM    DS    X        cache medium set
2 DMCFECNC   EQU   0        no cache
2 DMCFECDC   EQU   1        controller
2 DMCFECES   EQU   2        expanded storage
2 DMCFECGS   EQU   3        global storage
2 DMCFECMM   EQU   4        main memory
2 *
2 DMCFECS    DS    X        segment size set
2 DMCFEC4    EQU   0        4 KB
2 DMCFEC8    EQU   1        8 KB
2 DMCFEC16   EQU   2        16 KB
2 DMCFEC32   EQU   3        32 KB
2 *
2 DMCFECU1   DS    XL1      GS unit_1
2 DMCFECU2   DS    XL1      GS unit_2
2 *
2 DMCFECFO   DS    X        force out set
2 DMCFECNF   EQU   0        no force out
2 DMCFECIP   EQU   1        at low filling
2 DMCFECIN   EQU   2        at high filling
2 *
2 DMCFECFE   DS    X        prefetch set
2 DMCFECFN   EQU   0        no prefetch
2 DMCFECFL   EQU   1        low
2 DMCFECFH   EQU   2        high
2 *
2 DMCFECFS   DS    X        file selection
2 DMCFEBUS   EQU   0        by user
2 DMCFEALL   EQU   1        all
2 DMCFEAUS   EQU   2        auto select
2 *
2 DMCFECAS   DS    H        size of allocation unit (# of half pages)
2 DMCFEMTL   DS    H        maximal I/O transfer length
2            DS    XL10     unused
2 *
2 * dynamic allocator values
2 *
2 DMCFEAL5   DS    F        residual space at sat level 5
2 DMCFEAL4   DS    F        residual space at sat level 4
2 DMCFEAL3   DS    F        residual space at sat level 3
2 DMCFEAL2   DS    F        residual space at sat level 2
2 DMCFEAL1   DS    F        residual space at sat level 1
2            DS    XL12     unused
2 DMCFEAZP   DS    F        residual space for ZIP startup
2 *
2            DS    XL16     unused
2 DMCFEREF   DS    XL4      counter of occupations (duplicate)
2 *
2 DMCFE#     EQU   *-DMCFMST      length of the STAM volume
2 *                               set entry

DSECT für den Ausgabebereich des Makros (XPAND=OCC)

           STAMCE MF=D,PREFIX=D,XPAND=OCC,VERSION=5
1          #INTF REFTYPE=REQUEST,                                        C
1                INTNAME=STAM,                                           C
1                INTCOMP=5
1          MFCHK    MF=D,                                                C
1                SUPPORT=(C,D,E,L,M,S),                                  C
1                PREFIX=D,                                               C
1                MACID=MCH,                                              C
1                DMACID=MCH,                                             C
1                DNAME=MCHOCC,                                           C
1                PARAM=,                                                 C
1                SVC=33,                                                 C
1                ALIGN=F
2 DMCHOCC  DSECT ,
2                *,##### PREFIX=D, MACID=MCH #####
1          STAMLY   MF=D,                                                C
1                PREFIX=D,                                               C
1                MACID=MCH,                                              C
1                PARAM=,                                                 C
1                VERSION=5,                                              C
1                XPAND=OCC,                                              C
1                FUNCT=1,                                                C
1                CG27=DMCH,                                              C
1                CATID=,                                                 C
1                AREA=,                                                  C
1                LENGTH=,                                                C
1                REF=,                                                   C
1                HOST=,                                                  C
1                SELECT=,                                                C
1                PUBSET=
2          #INTF REFTYPE=REQUEST,                                        C
2                INTNAME=STAMLY,                                         C
2                INTCOMP=5
2 DMCHOST    DS    0F
2 DMCHSYS    DS    X        sysid
2 DMCHUNUS   DS    XL3      unused
2 DMCHUSID   DS    CL8      userid
2 DMCHTSN    DS    CL4      tsn
2 DMCHTID    DS    F        tid
2 DMCH#      EQU   *-DMCHOST     length of the occupation entry

Beispiel

Im folgenden Programm wird der Makro STAMCE aufgerufen. Dabei werden von den ersten 25 der von STAMCE übergebenen MRSCAT-Einträgen die Katalogkennung und der BCAM-Name des Systems auf den Bildschirm ausgegeben.

STAMCE   START
         PRINT NOGEN
         BALR   10,0
         USING  *,10
         USING  DSTAM3,6  ----------------------------------------------(1)
         USING  DSTAM4,7  ----------------------------------------------(2)
         STAMCE MF=E,PARAM=STAM3,VERSION=5  ----------------------------(3)
         LR     7,1  ---------------------------------------------------(4)
         L      6,DMCEAREA  --------------------------------------------(5)
         L      5,=F'25'
         WROUT  HEADER,WROUTERR ----------------------------------------(6)
SHOW     CLC    DMCFSCTD,=AL4(DMCELAST)---------------------------------(7)
         BE     WROUTERR
         MVC    CATID,DMCFSCTD -----------------------------------------(8)
         MVC    PROCESS,DMCFFBCA
         CLI    PROCESS,X'00'
         BNE    WROUT2
         MVC    PROCESS,=CL8' '
WROUT2   WROUT  OUTREC,WROUTERR
         LA     6,DMCFG#(6)
         BCT    5,SHOW
WROUTERR TERM
*** Definitions
STAM3    STAMCE CATID=' ',MF=L,VERSION=5
HEADER   DC     Y(HEADERE-HEADER)
         DC     CL2'  '
         DC     CL1' '
         DC     C'CATID  PROCESSOR '
HEADERE  EQU    *
OUTREC   DC     Y(OUTRECE-OUTREC)
         DC     CL2'  '
         DC     CL1' '
CATID    DS     CL4
         DC     CL3'   '
PROCESS  DS     CL8
OUTRECE  EQU    *
         LTORG
         DS     0F
DSTAM3   STAMCE MF=D,PREFIX=D,XPAND=MCE,VERSION=5
DSTAM4   STAMCE MF=D,PREFIX=D,XPAND=PL,VERSION=5
         END

Ablaufprotokoll:

/start-assembh
%  BLS0500 PROGRAM 'ASSEMBH', VERSION '<ver>' OF '<date>' LOADED
%  ASS6010 <ver> OF BS2000 ASSEMBH  READY 
//compile source=*library-element(macexmp.lib,stamce), -
//        compiler-action=module-generation(module-format=llm), -
//        module-library=macexmp.lib, -
//        listing=parameters(output=*library-element(macexmp.lib,stamce))
%  ASS6011 ASSEMBLY TIME: 210 MSEC
%  ASS6018 0 FLAGS, 0 PRIVILEGED FLAGS, 0 MNOTES
%  ASS6019 HIGHEST ERROR-WEIGHT: NO ERRORS
%  ASS6006 LISTING GENERATOR TIME: 27 MSEC
//end
%  ASS6012 END OF ASSEMBH
/start-executable-program library=macexmp.lib,element-or-symbol=stamce
%  BLS0523 ELEMENT 'STAMCE', VERSION '@' FROM LIBRARY
   ':2OSG:$QM212.MACEXMP.LIB' IN PROCESS
%  BLS0524 LLM 'STAMCE', VERSION ' ' OF '<date> <time>' LOADED
CATID  PROCESSOR ---------------------------------------------------------(9)
A      N89H04
AAK3   D015B219
AAK4   D015B219
AAN3   D015B219
AA4N
AKEY   HELIOS2
ALB2
ANG3   ANGELA2
AP13   STARTB2
BAB2   BABETTE2
BAB3   BABETTE2
BECK
BEDS   SOPHIE2
BSAD   D015B007
BS41
BUEB   D015B011
BUR3   D017ZE39
BUR4   D017ZE39
BUR5
.
.
.
B202
B203   D015B019

(1)

Dem Assembler wird Register R6 als Basisadressregister zur Adressierung der DSECT für den Ausgabebereich des Makros STAMCE zugewiesen. Diese DSECT wird an der symbolischen Adresse DSTAM3 durch einen STAMCE-Aufruf mit MF=D und XPAND=MCE erzeugt.

(2)

Dem Assembler wird Register R7 als Basisadressregister zur Adressierung der DSECT für den Ausgabebereich des Makros STAMCE zugewiesen. Diese DSECT wird an der symbolischen Adresse DSTAM4 durch einen STAMCE-Aufruf mit MF=D und XPAND=PL erzeugt.

(3)

Der Makro STAMCE wird in seiner E-Form aufgerufen. Der zugehörige Datenbereich wird an der symbolischen Adresse STAM3 durch einen STAMCE-Aufruf mit MF=L erzeugt, wobei

CATID=' ' (Leerzeichen, für alle MRSCAT-Einträge)

eingetragen wird.
Da für AREA kein Wert angegeben ist, wird die AREA-Adresse implizit im Feld DMCEAREA des Datenbereichs des Makros STAMCE abgelegt (siehe DSTAM4: STAMCE MF=D, PREFIX=D, XPAND=PL, VERSION=5).

(4)

In Register R7 wird die Anfangsadresse des Datenbereichs des Makros STAMCE geladen. Dies ist für die Adressierung des Ausgabebereichs über DMCEAREA (zeigt auf die Adresse des Ausgabebereichs) nötig.

(5)

Register R6 wird mit der Adresse des Ausgabebereichs geladen.

(6)

Ausgabe der Überschriftszeile.

(7)

Prüfung, ob das Ende der gelieferten MRSCAT-Einträge erreicht ist.

(8)

In einer Schleife werden die ersten 25 MRSCAT-Einträge ausgewertet, die von STAMCE im Ausgabebereich hinterlegt worden sind: für jeden Eintrag werden die Katalogkennung (Feld DMCFSCTD der DSECT) und der BCAM-Name des Systems (Feld DMCFFBCA der DSECT) - bzw. Leerzeichen, falls kein BCAM-Name eingetragen ist - in einen Ausgabesatz übertragen und auf dem Bildschirm ausgegeben. Anschließend wird die DSECT um die Länge eines Eintrags (DMCFG#) verschoben.

(9)

Ausgabe der ersten 25 MRSCAT-Einträge (gekürzt dargestellt).