HSMS-Anweisungen können über den HSMS-Makro auch aus Programmen gegeben werden. Im Makro wird eine HSMS-Anweisung in einer freien Form übergeben, wie sie auch dem Programm gegeben werden kann („Free-String-Format“).
Die Ausgabe beschränkt sich auf den Returncode, der im Standard-Header zurückgegeben wird (siehe Handbuch „Makroaufrufe an den Ablaufteil“ [9]).
Der Makro zerstört die Register 1, 14, und 15.
Wenn der Makro nicht in die System-Makrobibliothek eingemischt wurde, muss die SYSLIB.HSMS.120 (siehe Abschnitt „Lieferumfang von HSMS“) dem Assembler als ALTLIB zugewiesen werden.
Dieselbe Bibliothek muss beim Binden bzw. vor dem Aufruf des Bindemoduls als TASKLIB zugewiesen werden.
Operation | Operanden |
HSMS | MF = S | L | C | D | E [,LENGTH = <number>] [,ADDR = { <adress> | <(reg)> }] [,PREFIX = <prefix>] [,PARAM = { <adress> | <(reg)> }] |
MF | Eine Operandenliste wird erzeugt, siehe Handbuch „Makroaufrufe an den Ablaufteil“ [9]. |
= S | Standardform; Daten und Befehlscode sind nicht getrennt. |
= L | Es werden nur Daten erzeugt. |
= C | Eine CSECT wird erzeugt. |
= D | Eine DSECT wird erzeugt. |
= E | Es wird nur Befehlscode erzeugt. |
LENGTH | bestimmt die Länge des Speicherbereichs, der für die Anweisungseingabe zu reservieren ist. Er muss bei MF=S,L angegeben werden; ansonsten wird er ignoriert. Die maximale Länge beträgt 16372 Byte. |
ADDR | bestimmt die Adresse des Speicherbereichs für die Anweisungseingabe. Er muss bei MF=S,L angegeben werden; ansonsten wird er ignoriert. |
PREFIX | bestimmt das erste Zeichen in der HSMS-Parameterliste. Der Operand wird bei MF=E,S ignoriert. |
PARAM | steuert die Adressierung der Parameterliste. Bei MF=E muss er angegeben werden, ansonsten wird er ignoriert. |
Die Parameterliste besteht aus dem Standard-Header, gefolgt von der Länge der HSMS-Anweisung und der Adresse eines Feldes, das die HSMS-Anweisung enthält.
Wenn die Parameterliste dynamisch geändert wird, ist der Benutzer dafür verantwortlich, dass die richtigen Felder mit den richtigen Werten versehen werden.
Returncodes und Fehlerklassen
Übergeben werden im Standardheader ein Maincode (MC) sowie zwei Subcodes,
Subcode 1 (SC1) und Subcode 2 (SC2), die in ihrer Kombination eine genaue Information über den Verlauf der mit dem Makro angestoßenen Aktion geben.
Die Returncodes werden in der Reihenfolge SC1, SC2, MC (4 Byte) übergeben.
MC | SC1 | SC2 | Bedeutung |
X'0000' | X'00' | X'00' X'01' X'02' | Die Anweisung wurde ohne Fehler ausgeführt. Die Anweisung wurde ausgeführt; eine Aktion war nicht erforderlich. Die Anweisung wurde auf Gültigkeit geprüft und für die asynchrone Verarbeitung angenommen. |
X'0001' | X'00' | Die Anweisung wurde mit Warnungen ausgeführt (Warnmeldungen werden ausgegeben, wenn ein vom Benutzer angegebenes Objekt nicht verarbeitet werden kann oder darf: | |
X'0002' | X'00' | Die Anweisung wurde mit Fehlern ausgeführt (Fehlermeldungen werden ausgegeben, wenn ein vom Benutzer angegebenes Objekt wegen eines Fehlers nicht oder nur unvollständig verarbeitet werden kann: Die Datei ist gesperrt, Ein- oder Ausgabefehler ...). | |
X'0003' | X'00' | Die Anweisung wurde nicht ausgeführt; beim Warten auf die Auftragsbeendigung wurde die in der HSMS-Steuerdatei festgelegte, maximal zulässige Wartezeit überschritten. | |
X'0004' | X'01' X'20' X'40' | Die Anweisung wurde wegen eines Syntaxfehlers zurückgewiesen. Die Anweisung wurde wegen eines System- bzw. HSMS-internen Fehlers zurückgewiesen. Die Anweisung wurde wegen sonstiger Fehler, z.B. Privilegienfehler, zurückgewiesen. | |
X'0005' | Die Ausführung der Anweisung wurde abgebrochen, weil auf Grund einer Fehlersituation eine Fortsetzung nicht sinnvoll war, z.B wegen des Fehlens von Betriebsmitteln. Die Anweisung kann in der Regel mit RESTART-REQUESTS fortgesetzt werden. | ||
X'FFFF' | X'01' X'02' X'03' X'..' | HSMS ist im System nicht bekannt. HSMS ist nicht verfügbar, z.B. weil die Syntaxdatei fehlt. Versionsfehler, z.B. ungültige Version der Syntaxdatei. Die weiteren Subcodes entsprechen dem Standardheader. |
Beispiel
Das folgende Programm ermöglicht dem Benutzer, HSMS-Anweisungen einzugeben; es ruft HSMS über die Programmschnittstelle auf.
ASSEMBH LISTING 09:05:55 2016-02-29 PAGE 0003 LOCTN OBJECT CODE ADDR1 ADDR2 STMNT M SOURCE STATEMENT 000000 1 HSMSMAC CSECT , 2 HSMSMAC AMODE ANY 3 HSMSMAC RMODE ANY 4 GPARMOD 31 5 1 *,MACRO: GPARMOD, VERSION: VER121 000000 0D A0 6 BASR 10,0 000002 00000002 7 USING *,10 000002 41 70 A096 00000098 8 LA 7,LHSMS 000006 00000000 9 USING HSMSREF,7 10 PRINT GEN 11 WHAT RDATA MF=(E,LRDATA) 000006 41 10 A0A6 000000A8 12 1 WHAT LA 1,LRDATA LOAD ADDR PARAM LIST INTO R1 00000A 0A 27 13 1 SVC 39 SYSFILE SVC 14 1 * 00000C D5 03 A0EAA1F6 000000EC 000001F8 15 CLC STMT(4),=C'END ' 000012 47 80 A05C 0000005E 16 BE TERM 17 CALL HSMS MF=E,PARAM=LHSMS 18 1 CALL MFCHK MF=E, C 18 1 SUPPORT=(C,D,E,L,S), C 18 1 PREFIX=D, C 18 1 MACID=HSM, C 18 1 DMACID=HSM, C 18 1 DNAME=HSMPAR, C 18 1 PARAM=LHSMS, C 18 1 ENTRY=IDHSASS, C 18 1 ALIGN=F 000016 19 2 CALL DS 0Y 000016 58 F0 A1FA 000001FC 20 2 L 15,=V(IDHSASS) 00001A 41 10 A096 00000098 21 2 LA 1,LHSMS 00001E 0D EF 22 2 BASR 14,15 000020 D2 03 A1BE7004 000001C0 00000004 23 MVC MPACK,DHSMRET 000026 F3 84 A1B2A1BE 000001B4 000001C0 24 UNPK MRS(9),MPACK(5) 00002C D4 07 A1B2A1D3 000001B4 000001D5 25 NC MRS(8),ANDMASK 000032 DC 07 A1B2A1C3 000001B4 000001C5 26 TR MRS(8),MTAB 000038 D2 03 A1E7A1B6 000001E9 000001B8 27 MVC RCMC,MRS+4 00003E D2 01 A1ECA1B4 000001EE 000001B6 28 MVC RCSUB1,MRS+2 000044 D2 01 A1EFA1B2 000001F1 000001B4 29 MVC RCSUB2,MRS 30 WRITERC WROUT MF=(E,LWROUT) 00004A 41 10 A0CA 000000CC 31 1 WRITERC LA 1,LWROUT LOAD ADDR PARAM LIST INTO R1 00004E 0A 27 32 1 SVC 39 SYSFILE SVC 33 1 * 000050 92 40 A0EA 000000EC 34 MVI STMT,C' ' 000054 D2 C6 A0EBA0EA 000000ED 000000EC 35 MVC STMT+1(L'STMT-1),STMT 00005A 47 F0 A004 00000006 36 B WHAT 37 TERM TERM 00005E 38 1 TERM DS 0H 206 00005E 41 10 A066 00000068 39 1 LA 1,S0006D 205 000062 47 F0 A076 00000078 40 1 B S0006S 200 000068 41 1 S0006D DS 0F 200 42 1 FHDR UNIT=6,FUNCT=40,VERS=1 207 000068 43 2 DS 0A 000068 44 2 DS 0XL8 GENERAL OPERAND LIST HEADER 000068 0006 45 2 DC AL2(6) FUNCTION UNIT NUMBER 00006A 28 46 2 DC AL1(40) FUNCTION NUMBER 00006B 01 47 2 DC AL1(1) FUNCTION INTERFACE VERSION NUMBER 00006C FFFFFFFF 48 2 DC X'FFFFFFFF' Returncode is virgin 000070 01 49 1 DC XL1'01' 207 000071 00 50 1 DC XL1'00' 000072 00 51 1 DC XL1'00' 000073 04 52 1 DC XL1'04' 000074 40404040 53 1 DC CL4' ' 000078 54 1 S0006S DS 0Y 200 000078 0A 09 55 1 SVC 9 56 TERMD TERM DUMP=Y,MODE=A ASSEMBH LISTING 09:05:55 2016-02-29 PAGE 0004 LOCTN OBJECT CODE ADDR1 ADDR2 STMNT M SOURCE STATEMENT 00007A 57 1 TERMD DS 0H 206 00007A 41 10 A082 00000084 58 1 LA 1,S0008D 205 00007E 47 F0 A092 00000094 59 1 B S0008S 200 000084 60 1 S0008D DS 0F 200 61 1 FHDR UNIT=6,FUNCT=40,VERS=1 207 000084 62 2 DS 0A 000084 63 2 DS 0XL8 GENERAL OPERAND LIST HEADER 000084 0006 64 2 DC AL2(6) FUNCTION UNIT NUMBER 000086 28 65 2 DC AL1(40) FUNCTION NUMBER 000087 01 66 2 DC AL1(1) FUNCTION INTERFACE VERSION NUMBER 000088 FFFFFFFF 67 2 DC X'FFFFFFFF' Returncode is virgin 00008C 01 68 1 DC XL1'01' 207 00008D 01 69 1 DC XL1'01' 00008E 04 70 1 DC XL1'04' 00008F 04 71 1 DC XL1'04' 000090 40404040 72 1 DC CL4' ' 000094 73 1 S0008S DS 0Y 200 000094 0A 09 74 1 SVC 9 75 * 76 LHSMS HSMS ADDR=STMT,LENGTH=200,MF=L 77 1 LHSMS MFCHK MF=L, C 77 1 SUPPORT=(C,D,E,L,S), C 77 1 PREFIX=D, C 77 1 MACID=HSM, C 77 1 DMACID=HSM, C 77 1 DNAME=HSMPAR, C 77 1 PARAM=, C 77 1 ENTRY=IDHSASS, C 77 1 ALIGN=F | | 000098 78 2 LHSMS DS 0F 000098 79 1 DHSMLST DS 0H | | 000098 80 1 HSM20010 DS 0H | | 81 1 FHDR MF=L,UNIT=73,FUNCT=1,VERS=1 | | 000098 82 2 DS 0A 000098 83 2 DS 0XL8 GENERAL OPERAND LIST HEADER 000098 0049 84 2 DC AL2(73) FUNCTION UNIT NUMBER 00009A 01 85 2 DC AL1(1) FUNCTION NUMBER 00009B 01 86 2 DC AL1(1) FUNCTION INTERFACE VERSION NUMBER 00009C FFFFFFFF 87 2 DC X'FFFFFFFF' Returncode is virgin 0000A0 00C8 88 1 DC Y(200) LENGTH OF STATEMENT | | 0000A2 00 89 1 DC X'0' UNUSED | | 0000A3 FF 90 1 DC AL1(255) REGISTER NUMBER | | 0000A4 000000EC 91 1 DC A(STMT) ADDRESS OF STATEMENT | | 00000010 92 1 DHSMLE EQU *-DHSMLST | | 93 * 94 LRDATA RDATA MSGOUT,TERMD,STMT#,KEYOUT=Y,MF=L 0000A8 95 1 S0013D DS 0F A340 96 1 LRDATA FHDR UNIT=36,FUNCT=18,VERS=2 0000A8 97 2 DS 0A 0000A8 98 2 LRDATA DS 0XL8 GENERAL OPERAND LIST HEADER 0000A8 0024 99 2 DC AL2(36) FUNCTION UNIT NUMBER 0000AA 12 100 2 DC AL1(18) FUNCTION NUMBER 0000AB 02 101 2 DC AL1(2) FUNCTION INTERFACE VERSION NUMBER 0000AC FFFFFFFF 102 2 DC X'FFFFFFFF' Returncode is virgin 103 1 * 0000B0 0000007A 104 1 DC A(TERMD) ERROR ADDRESS 0000B4 000000E8 105 1 DC AL4(MSGOUT) READ IN AREA ADDRESS 0000B8 106 1 DS AL1(0) PLACE FOR I.EDIT BYTE 1 0000B9 107 1 DS AL1(0) PLACE FOR I.EDIT BYTE 2 0000BA 00 108 1 DC AL1(0) SYSDTA ASSIGNMENT 0000BB 00 109 1 DC AL1(0) FLAG BYTE 1 0000BC 00CC 110 1 DC AL2(STMT#) LENGTH OF READ 111 1 * 0000BE 80 112 1 DC AL1(128) FLAG TABLE BYTE 0000BF 00 113 1 DC AL1(0) ASSIGNMENT CHANGE INDICATOR 0000C0 0000 114 1 DC H'0' KEY-POSITION 0000C2 0000 115 1 DC H'0' KEY-LENGTH 0000C4 00000000 116 1 DC AL4(0) VTSUCB ADDRESS 0000C8 0000 117 1 DC AL2(0) INPUT TIMER VALUE 009 ASSEMBH LISTING 09:05:55 2012-02-29 PAGE 0005 LOCTN OBJECT CODE ADDR1 ADDR2 STMNT M SOURCE STATEMENT 0000CA 0000 118 1 DC H'0' RES_FOR_TIAM 007 119 1 * 120 1 @DCEI DCEDIT=,MODE=,IGETFC=,ICFD=, C 120 1 ITRSUP=,ILINEND=,IGETBS=, C 120 1 IMANUAL=,ILCASE=,IHDR=, C 120 1 IGETIC=,RDA1=-20,RDA2=-19 0000CC 000000B8 121 2 ORG *-20 0000B8 00 122 2 DC AL1(0) 0000B9 000000CC 123 2 ORG *+20-1 0000CC 000000B9 124 2 ORG *-19 0000B9 00 125 2 DC AL1(0) 0000BA 000000CC 126 2 ORG *+19-1 127 2 *,@DCEI 999 921011 53531002 128 1 * 129 * 130 LWROUT WROUT RC,TERMD,MF=L 0000CC 131 1 S0016D DS 0F A340 132 1 LWROUT FHDR UNIT=36,FUNCT=17,VERS=2 0000CC 133 2 DS 0A 0000CC 134 2 LWROUT DS 0XL8 GENERAL OPERAND LIST HEADER 0000CC 0024 135 2 DC AL2(36) FUNCTION UNIT NUMBER 0000CE 11 136 2 DC AL1(17) FUNCTION NUMBER 0000CF 02 137 2 DC AL1(2) FUNCTION INTERFACE VERSION NUMBER 0000D0 FFFFFFFF 138 2 DC X'FFFFFFFF' Returncode is virgin 139 1 * 0000D4 0000007A 140 1 DC AL4(TERMD) ERROR ADDRESS 0000D8 000001E0 141 1 DC AL4(RC) MESSAGE AREA ADDRESS 0000DC 142 1 DS AL1(0) PLACE FOR EDIT BYTE 1 0000DD 143 1 DS AL1(0) PLACE FOR EDIT BYTE 2 0000DE 00 144 1 DC AL1(0) RESERVED 0000DF 00 145 1 DC AL1(0) FLAG BYTE 1 0000E0 00000000 146 1 DC AL4(0) VTSUCB ADDRESS 0000E4 00000000 147 1 DC F'0' RES_FOR_TIAM 148 1 * 149 1 @DCEO DCEDIT=,MODE=,OEXTEND=, C 149 1 OTRSUP=,OLINEND=,OMANUAL=, C 149 1 OPTAPE=,OHCOPY=,ONOPOSN=, C 149 1 OHDR=,OETB=,OHOM=,OINFO=, C 149 1 OBELL=,OTRANS=,ONOLOGC=, C 149 1 RDA1=-12,RDA2=-11 0000E8 000000DC 150 2 ORG *-12 0000DC 00 151 2 DC AL1(0) 0000DD 000000E8 152 2 ORG *+12-1 0000E8 000000DD 153 2 ORG *-11 0000DD 00 154 2 DC AL1(0) 0000DE 000000E8 155 2 ORG *+11-1 156 2 *,@DCEO 999 921011 53531004 157 1 * 158 * 0000E8 159 MSGOUT DS 0F 0000E8 00CC 160 STMT_L DC Y(STMT#) 0000EA 0000 161 STMT_R DC X'0000' 0000EC 4040404040404040 162 STMT DC CL200' ' 000000CC 163 STMT# EQU *-STMT_L 164 * 0001B4 4040404040404040 165 MRS DC CL9' ' 0001C0 166 MPACK DS F 0001C4 00 167 DC X'00' 0001C5 F0F1F2F3F4F5F6F7 168 MTAB DC C'0123456789ABCDEF' 0001D5 0F0F0F0F0F0F0F0F 169 ANDMASK DC X'0F0F0F0F0F0F0F0F' 0001E0 170 RC DS 0F 0001E0 0013 171 DC Y(RC#) 0001E2 0000 172 DC X'0000' 0001E4 00 173 DC X'00' 0001E5 D9C37A40 174 DC C'RC: ' 0001E9 175 RCMC DS CL4 0001ED 40 176 DC C' ' 0001EE 177 RCSUB1 DS CL2 0001F0 40 178 DC C' ' 0001F1 179 RCSUB2 DS CL2 00000013 180 RC# EQU *-RC ASSEMBH LISTING 09:05:55 2012-02-29 PAGE 0006 LOCTN OBJECT CODE ADDR1 ADDR2 STMNT M SOURCE STATEMENT 181 HSMSREF HSMS MF=D 182 1 HSMSREF MFCHK MF=D, C 182 1 SUPPORT=(C,D,E,L,S), C 182 1 PREFIX=D, C 182 1 MACID=HSM, C 182 1 DMACID=HSM, C 182 1 DNAME=HSMPAR, C 182 1 PARAM=, C 182 1 ENTRY=IDHSASS, C 182 1 ALIGN=F | | 000000 183 2 HSMSREF DSECT , 184 2 *,##### PREFIX=D, MACID=HSM ##### 185 1 FHDR MF=(C,DHSM),EQUATES=YES | | 000000 186 2 DS 0A 000000 187 2 DHSMFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 188 2 * 000000 189 2 DHSMIFID DS 0A 0 INTERFACE IDENTIFIER 000000 190 2 DHSMFCTU DS AL2 0 FUNCTION UNIT NUMBER 191 2 * BIT 15 HEADER FLAG BIT, 192 2 * MUST BE RESET UNTIL FURTHER NOTICE 193 2 * BIT 14-12 UNUSED, MUST BE RESET 194 2 * BIT 11-0 REAL FUNCTION UNIT NUMBER 000002 195 2 DHSMFCT DS AL1 2 FUNCTION NUMBER 000003 196 2 DHSMFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 197 2 * 000004 198 2 DHSMRET DS 0A 4 GENERAL RETURN CODE 199 2 * 200 2 * GENERAL_RETURN_CODE CLEARED (X'00000000') MEANS 201 2 * REQUEST SUCCESSFUL PROCESSED AND NO ADDITIONAL INFORMATION 202 2 * 000004 203 2 DHSMSRET DS 0AL2 4 SUB RETURN CODE 000004 204 2 DHSMSR2 DS AL1 4 SUB RETURN CODE 2 205 2 * ALWAYS CLEARED (X'00') IF MAIN_RETURN_CODE IS X'FFFF' 206 2 * Standard subcode2 values as defined by convention: 00000000 207 2 DHSMR2OK EQU X'00' All correct, no additional info 00000001 208 2 DHSMR2NA EQU X'01' Successful, no action was necessary 00000002 209 2 DHSMR2WA EQU X'02' Warning, particular situation 000005 210 2 DHSMSR1 DS AL1 5 SUB RETURN CODE 1 211 2 * 212 2 * GENERAL INDICATION OF ERROR CLASSES 213 2 * 214 2 * CLASS A X'00' FUNCTION WAS SUCCESSFULLY PROCESSED 215 2 * CLASS B X'01' - X'1F' PARAMETER SYNTAX ERROR 216 2 * CLASS C X'20' INTERNAL ERROR IN CALLED FUNCTION 217 2 * CLASS D X'40' - X'7F' NO CLASS SPECIFIC REACTION POSSIBLE 218 2 * CLASS E X'80' - X'82' WAIT AND RETRY 219 2 * 00000000 220 2 DHSMRFSP EQU X'00' FUNCTION SUCCESSFULLY PROCESSED 00000001 221 2 DHSMRPER EQU X'01' PARAMETER SYNTAX ERROR 222 2 * 3 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'01' - X'1F' 00000001 223 2 DHSMRFNS EQU X'01' CALLED FUNCTION NOT SUPPORTED 00000002 224 2 DHSMRFNA EQU X'02' CALLED FUNCTION NOT AVAILABLE 00000003 225 2 DHSMRVNA EQU X'03' INTERFACE VERSION NOT SUPPORTED 226 2 * 00000004 227 2 DHSMRAER EQU X'04' ALIGNMENT ERROR 00000020 228 2 DHSMRIER EQU X'20' INTERNAL ERROR 00000040 229 2 DHSMRCAR EQU X'40' CORRECT AND RETRY 230 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'40' - X'7F' 00000041 231 2 DHSMRECR EQU X'41' SUBSYSTEM (SS) MUST BE CREATED 232 2 * EXPLICITELY BY CREATE-SS 00000042 233 2 DHSMRECN EQU X'42' SS MUST BE EXPLICITELY CONNECTED 234 2 * 00000080 235 2 DHSMRWAR EQU X'80' WAIT FOR A SHORT TIME AND RETRY 00000081 236 2 DHSMRWLR EQU X'81' " LONG " 00000082 237 2 DHSMRWUR EQU X'82' WAIT TIME IS UNCALCULABLY LONG 238 2 * BUT RETRY IS POSSIBLE 239 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'80' - X'82' 00000081 240 2 DHSMRTNA EQU X'81' SS TEMPORARILY NOT AVAILABLE 00000082 241 2 DHSMRDH EQU X'82' SS IN DELETE / HOLD 242 2 * ASSEMBH LISTING 09:05:55 2012-02-29 PAGE 0007 LOCTN OBJECT CODE ADDR1 ADDR2 STMNT M SOURCE STATEMENT 000006 243 2 DHSMMRET DS 0AL2 6 MAIN RETURN CODE 000006 244 2 DHSMMR2 DS AL1 6 MAIN RETURN CODE 2 000007 245 2 DHSMMR1 DS AL1 7 MAIN RETURN CODE 1 246 2 * 247 2 * SPECIAL LAYOUT OF LINKAGE_MAIN_RETURN_CODE (YYYY IN X'00XXYYYY') 248 2 * 0000FFFF 249 2 DHSMRLNK EQU X'FFFF' LINKAGE ERROR / REQ. NOT PROCESSED 00000008 250 2 DHSMFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 251 2 * 00000008 252 1 DHSMLIST EQU * | | 000008 253 1 DHSMLGTH DS H LENGTH OF STATEMENT STRING | | 00000A 254 1 DS X UNUSED | | 00000B 255 1 DHSMREG DS AL1 REGISTER # CONTAINING STRING ADDRESS | | 00000C 256 1 DHSMADDR DS F ADDRESS OF STATEMENT STRING | | 00000008 257 1 DHSMLENG EQU *-DHSMLIST | | 258 END , *** ,NO END CARD 0001F8 C5D5C440 259 =C'END ' 0001FC 00000000 260 =V(IDHSASS) 000200 0309290905446314 261 =X'0309290905446314' CONSISTENCY CONSTANT FOR AID FLAGS IN 00000 STATEMENTS, 000 PRIVILEGED FLAGS, 000 MNOTES HIGHEST ERROR-WEIGHT : NOTE THIS PROGRAM WAS ASSEMBLED BY ASSEMBH V01.2C00 ON 2012-02-29 AT 09:05:44 ASSEMBH LISTING 09:05:55 2012-02-29 PAGE 0008 USED FILES AND LIBRARIES SOURCE FILE : :2OSG:$USER1.ALF.SRC.HSMSMAC MACRO-LIBRARIES LINKNAME LIBRARY-NAME :2OSG:$USER1.ALFX2.SYSLIB.HSMS.090 :2RZV:$RZV.SM.SSG.BS2CP.V18.0.GCLIB.UR ASSEMBLY TIME : 0.672 SEC. THIS LISTING WAS GENERATED BY THE LISTING GENERATOR V 1.2C00.
Der HSMS-Makro wird in der Form MF=L verwendet. Die Adresse der Anweisung ist angegeben; ihre maximale Länge beträgt 200 Bytes.
/START-BINDER ———————————————————————————————————————————————————————— (1) //START-LLM-CREATION INTERNAL-NAME=HSMS-MACRO-EXEC //INCLUDE-MODULES MODULE-CONTAINER=*OMF(ELEMENT=*ALL) //INCLUDE-MODULES MODULE-CONTAINER=*LIBRARY-ELEMENT - // (LIBRARY=$SYSHSMS.SYSLIB.HSMS.090,ELEMENT=HSMSGC) ——————————————— (2) //SAVE-LLM MODULE-CONTAINER=*LIBRARY-ELEMENT(LIBRARY=HSMS.MACRO.PL) //END / /START-EXECUTABLE-PROGRAM FROM-FILE=*LIBRARY-ELEMENT - / (LIBRARY=HSMS.MACRO.PL,ELEMENT=HSMS-MACRO-EXEC)
(1) | Der Binder „Binder“ wird aufgerufen. |
(2) | Beim Binden des erzeugten Moduls muss die HSMS-Systembibliothek zugewiesen werden, um den Entry HSMSGC einzubinden. |