ibm:vm370-lib:macro:sysid.macro_src
Table of Contents
SYSID Source
References
- Fixes Applied : 1
- This Source Date : Friday, March 3, 2017
- Last Fix ID : [HRC108DK]
Source Listing
- SYSID.MACRO.txt
- MACRO 00001000
- SYSID &DEFAULT= 00002000
- .* 00003000
- .*--------------------------------------------------------------------- 00004000
- .* This macro generates the SYSID list 00005000
- .*--------------------------------------------------------------------- 00006000
- .* 00007000
- GBLC &SY$ID SYSID invoked indicator 00008000
- LCLC &DEFSID Default SYSID 00009000
- &DEFSID SETC ' ' Make default SYSID blank 00010000
- .* 00011000
- .*--------------------------------------------------------------------- 00012000
- .* Make sure that the SYSID macro is only invoked once. 00013000
- .*--------------------------------------------------------------------- 00014000
- .* 00015000
- AIF ('&SY$ID' EQ 'HERE').DUP 00016000
- &SY$ID SETC 'HERE' Indicate SYSID Invoked 00017000
- GBLA &SIDCNT 00018000
- LCLC &SYSNAM,&SYSMOD,&SYSSER 00019000
- LCLA &INDEX 00020000
- &INDEX SETA 1 00021000
- &SIDCNT SETA N'&SYSLIST 00022000
- SPACE 1 00023000
- .* 00024000
- .*--------------------------------------------------------------------- 00025000
- .* Build the SYSID list, if specified 00026000
- .*--------------------------------------------------------------------- 00027000
- .* 00028000
- ENTRY DMKSYSIC,DMKSYSIL,DMKSYSID 00029000
- DMKSYSIC DC F'&SIDCNT' 00030000
- DMKSYSIL DS 0F 00031000
- .LOOP AIF (&INDEX GT &SIDCNT).LSTFIN 00032000
- AIF (&INDEX GT 255).TOOMANY 00033000
- AIF (N'&SYSLIST(&INDEX) LT 3).BADCNT 00034000
- AIF (N'&SYSLIST(&INDEX) GT 3).BADCNT 00035000
- &SYSNAM SETC '&SYSLIST(&INDEX,1)' 00036000
- &SYSMOD SETC '&SYSLIST(&INDEX,2)' 00037000
- &SYSSER SETC '&SYSLIST(&INDEX,3)' 00038000
- AIF (K'&SYSNAM LT 1).BADNAM 00039000
- AIF (K'&SYSNAM GT 8).BADNAM 00040000
- AIF (K'&SYSMOD LT 3).BADMOD 00041000
- AIF (K'&SYSMOD EQ 4).SKIPMOD 00042000
- AIF (K'&SYSMOD GT 4).BADMOD 00043000
- &SYSMOD SETC '0&SYSMOD' 00044000
- .SKIPMOD ANOP 00045000
- AIF (K'&SYSSER LT 5).BADSER 00046000
- AIF (K'&SYSSER EQ 6).SKIPSER 00047000
- AIF (K'&SYSSER GT 6).BADSER 00048000
- &SYSSER SETC '0&SYSSER' 00049000
- .SKIPSER ANOP 00050000
- DC CL8'&SYSNAM',XL1'00',XL3'&SYSSER',XL2'&SYSMOD' 00051000
- .NEXT ANOP 00052000
- &INDEX SETA &INDEX+1 00053000
- AGO .LOOP 00054000
- .* 00055000
- .*--------------------------------------------------------------------- 00056000
- .* Finished with the list. Now do the DEFAULT, if specified 00057000
- .*--------------------------------------------------------------------- 00058000
- .* 00059000
- .LSTFIN AIF (N'&DEFAULT EQ 0).FINISH 00060000
- AIF (N'&DEFAULT GT 1).MULDEF 00061000
- AIF (K'&DEFAULT LT 1).BADDEF 00062000
- AIF (K'&DEFAULT GT 8).BADDEF 00063000
- &DEFSID SETC '&DEFAULT' 00064000
- &SIDCNT SETA &SIDCNT+1 00065000
- .* 00066000
- .*--------------------------------------------------------------------- 00067000
- .* Finally, store the default SYSID in DMKSYSID 00068000
- .*--------------------------------------------------------------------- 00069000
- .* 00070000
- .FINISH ANOP 00071000
- DMKSYSID DS 0D 00072000
- DC CL8'&DEFSID' 00073000
- AIF (&SIDCNT LE 0).NULL 00074000
- SPACE 3 00075000
- MEXIT 00076000
- .* 00077000
- .*--------------------------------------------------------------------- 00078000
- .* Process errors 00079000
- .*--------------------------------------------------------------------- 00080000
- .* 00081000
- .BADCNT MNOTE 8,'Specify (systemid, model, serial) per SYSID entry' 00082000
- AGO .NEXT 00083000
- .* 00084000
- .BADNAM MNOTE 8,'Systemid ''&SYSNAM'' must be 1 to 8 characters long' 00085000
- AGO .NEXT 00086000
- .* 00087000
- .BADMOD MNOTE 8,'Model ''&SYSMOD'' must be 3 or 4 digits' 00088000
- AGO .NEXT 00089000
- .* 00090000
- .BADSER MNOTE 8,'Serial ''&SYSSER'' must be 5 or 6 digits' 00091000
- AGO .NEXT 00092000
- .* 00093000
- .TOOMANY MNOTE 8,'More than 255 SYSID entries specified' 00094000
- MEXIT 00095000
- .* 00096000
- .DUP MNOTE 8,'SYSID macro specified more than once' 00097000
- MEXIT 00098000
- .* 00099000
- .BADDEF MNOTE 8,'SYSID DEFAULT ''&DEFAULT'' must be 1 to 8 characters' 00100000
- AGO .FINISH 00101000
- .* 00102000
- .MULDEF MNOTE 8,'Specify only one value for SYSID DEFAULT' 00103000
- AGO .FINISH 00104000
- .* 00105000
- .NULL MNOTE 8,'No SYSID entries specified' 00106000
- MEND 00107000
ibm/vm370-lib/macro/sysid.macro_src.txt ยท Last modified: 2023/08/06 13:38 by Site Administrator