Allgemeines
Anwendungsgebiet: | Contingency-Verfahren; siehe "Contingency-Prozesse" |
Makrotyp: | S-Typ, MF-Format 1: Standardform/L-/E-Form; siehe "S-Typ-Makroaufrufe" |
Makrobeschreibung
Mit dem Makro DISCO wird einer Routine die Möglichkeit zum Ablauf als Contingency-Prozess entzogen. Der Contingency-Prozess ist nicht mehr definiert und kann in nachfolgenden POSSIG- oder SOLSIG-Makroaufrufen nicht mehr angegeben werden.
Noch folgende SOLSIG- und POSSIG-Makroaufrufe, die sich auf eine gelöschte Contin-gency-Prozess-Definition beziehen, werden zurückgewiesen (Rücksprunginforma-tion). Bereits in den Warteschlangen sich befindende SOLSIG- und POSSIG-Anforderungen (also bereits zuvor gegebene Makroaufrufe) sind von der Löschung der Contingency-Definition nicht berührt, d.h. bei Eintreten der Bedingungen wird der entsprechende Contingency-Prozess noch aktiviert.
Makroaufrufformat und Operandenbeschreibung
DISCO |
{{CONAME=name / CONAMAD={adr / (r)} [,CONAMLN=länge]} / COID={adr / (r)}} [,PARMOD=24 / 31] [,MF=L / (E,..)] |
CONAME=name
gibt den Namen des Contingency-Prozesses an.
CONAMAD=
bezeichnet den Namen des Contingency-Prozesses.
adr
symbolische Adresse des Feldes, das den Namen enthält
(r)
r = Register, das die Adresse enthält
CONAMLN=
gibt die Länge des Namens des Contingency-Prozesses in Byte an.
Die Länge muss mindestens 1 Byte sein und darf 54 Byte nicht überschreiten.
Fehlt der Operand, so wird das Längenattribut des CONAMAD-Operanden angenommen, wenn CONAMAD=adr angegeben ist; bei CONAMAD=(r) wird die maximale Länge (54) angenommen.
länge
Länge des Namens des Contingency-Prozesses.
COID=
bezeichnet die Kurzkennung des Contingency-Prozesses. Diese Kurzkennung wird dem Benutzer durch den ENACO-Makroaufruf zur Verfügung gestellt.
adr
die symbolische Adresse eines 4 Byte langen Feldes, das die Kurzkennung enthält
(r)
r = Register, das die Adresse enthält
MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. für einen Präfix) siehe Abschnitt „S-Typ-Makroaufrufe“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.
PARMOD=
steuert die Makroauflösung. Es wird entweder die 24-Bit- oder die 31-Bit-Schnittstelle generiert.
Wenn PARMOD nicht spezifiziert wird, erfolgt die Makroauflösung entsprechend der Angabe für den Makro GPARMOD oder der Voreinstellung für den Assembler (= 24-Bit-Schnittstelle).
24
Die 24-Bit-Schnittstelle wird generiert. Datenlisten und Befehle benutzen 24-Bit-Adressen (Adressraum <= 16 MB).
31
Die 31-Bit-Schnittstelle wird generiert. Datenlisten und Befehle benutzen 31-Bit-Adressen (Adressraum <= 2 GB).
Rückinformation und Fehleranzeigen
Register R1 enthält die Adresse des Datenbereichs.
R15:
+---------------+ | | | | | |b|b| | | | |a|a| +---------------+
Über die Ausführung des Makros DISCO wird ein gegliederter Returncode (aa=primärer RC, bb=sekundärer RC) im Register R15 übergeben.
X'bb' | X'aa' | Erläuterung |
X'04' | X'00' | Die Contingency-Prozess-Definition wurde gelöscht. |
X'10' | X'04' | Es wurden ungültige Operanden angegeben. Keine Aktion. |
X'14' | X'04' | Ungültiger Name bzw. ungültige Kurzkennung. Es existiert kein Contingency-Prozess |
Beispiele enthalten der Abschnitt „Contingency-Prozesse“ und Abschnitt„POSSIG – Ereignis signalisieren“ (POSSIG - Ereignis signalisieren).