Mark's MVS Utilities

Mark's MVS Utilities

Last updated on: 09/02/2009. Check back often for additions to this page. Look for the "NEW" picture next to the file name. This indicates a new or updated file.

About me: Mark Zelden


Before you try to use any of these utilities, please read the disclaimer and notes on ASCII translation (this is especially important if you do not use a U.S. code page).

If you have any questions or comments about these utilities please email me at mzelden@flash.net. You may also leave general comments in my Guestbook.


Recent Changes
Skip changes

09/02/2009 - Added comments to ONEPAKZ8 and TWOPAKZ8 that detail the changes needed to build a z/OS 1.10 system.
08/20/2009 - Changes to TAPESTAK. See comments in source code.
08/14/2009 - Added FVE REXX exec - Fast View/Edit of data sets. This REXX exec is intended to work with ISPF command table entries to create "shortcuts" for VIEWing or EDITing data sets or data set concatenations. There are already examples of adding the command table entries dynamically in the ISPCMDSA CLIST. See the source for full details.
08/14/2009 - Changed the column indicator line in the IPLINFO IPA display from a length of 70 to 72.
06/08/2009 - Updated RXSTOR64 to display ASID level large memory objects for z/OS 1.9 and above (with supporting hardware) and ASID level 64-bit common storage usage for z/OS 1.10 and above. Also added system wide usage summaries for 64-bit shared virtual (HVSHARE), 64-bit large memory objects (large / 1M page support) and 64-bit common storage (HVCOMMON) at the appropriate software levels.
05/29/2009 - IPLINFO updates:
1) Use GDATotalCSAHWM & GDATotalECSAHWM instead of GDACSAHWM & GDAECSAHWM for CSA/ECSA HWM in VMAP section for z/OS 1.10 and above.
2) Add 64-bit common storage display (HVCOMMON) to to VMAP section for z/OS 1.10 and above.
3) Change numeric digits from 12 to 20 and add 64-bit shared storage display (HVSHARE) to VMAP section for z/OS 1.5 and above.
4) Support logical processor add in z/OS 1.10 + z10 in CPU display for "maximum number of CPUs".
5) Removed equal sign from "PRESCPU=" in IPA display. This parm has no values when specified in IEASYSxx.
03/26/2009 - Added $ONEPAK doc member for creating ONEPAK / TWOPAK systems using DFSMSdss instead of FDRCOPY.
03/16/2009 - Changed the wording in the SMF logstream "toleration" message for IPLINFO and added an undocumented alias of "ASM" for the "PAGE" option.
02/20/2009 - Updates to the "FORMAT_MEMSIZE" subroutine in RXSTOR64 and REXXSTOR to allow for the possibility of a MEMLIMIT value greater than 16 exabytes (64-bit max) being stored in the RAX. The problem was reported in RXSTOR64 with Health Checker in z/OS 1.10.
02/09/2009 - Changes to IPLINFO to tolerate SMF LOGSTREAM usage.
01/21/2009 - IPLINFO updates:
1) Added "CPC SI" (STSI information) to the CPC display in the CPU section for z/OS 1.2 and above.
2) Added new IPA fields for z/OS 1.10.
3) Added z/OS 1.10 JES2 node table offset and JES3 FMID.
12/19/2008 - Added new ACBCHECK program.
10/29/2008 - Added a display for HiperDispatch status to the CPU section of IPLINFO for z/OS 1.8 and above.
10/29/2008 - Added additional information to REXXSTOR ("Region Size" and "Max Priv Reg Size") and changed the output display to make it more readable.
10/03/2008 - Changed "arg" to "parse arg" in TSOB, TSOE, TSOV and TSOR to prevent case translation of commands being passed to the execs.
09/10/2008 - IPLINFO updates:
1) Fixed check in IPA for values present in z/OS 1.7 and above. Byte 4 of CVTOSLVL was being checked instead of byte 5.
2) Added LFAREA to the IPA display for z/OS 1.9 and above.
3) Added CADS (MAXCADs) used and HWM displays for z/OS 1.7 and above to the STORage section.
4) Changed "NUMERIC DIGITS" from 10 to 12.
5) Added reconfigurable storage size and potential real storage size to the STORage section.
07/24/2008 - IPLINFO updates:
1) Added CSS ID in the IPL section.
2) Added microcode level in the CPU section.
3) Added real storage increment size and number of increments installed to the storage section.
07/22/2008 - Added better error checking and messages to FINDMOD and also comments about turning "FINDMOD" into "FINDPROC".
06/24/2008 - Updated the ISPF Considerations section of the $SNGLTSO doc member with information about ISPF profile sharing that is available in z/OS 1.9 and above.
06/06/2008 - IPLINFO updates:
1) Added a NOBrowse option so output would not go to an ISPF browse dataset if desired when IPLINFO is invoked from ISPF.
2) Removed the "IPS=" reference from the IPA display for systems at z/OS 1.3 and higher.
3) Indented the output from the "Supported Subsystem Function Codes" display to be consistent with other section output displays.
04/29/2008 - Updated TWOPAKZ8 job to add ZFS support, separate TN3270 from TCPIP and add Unicode. This allows the TWOPAKZ8 job to be used with z/OS 1.7 through z/OS 1.9. Also added comments about creating userids with non-expiring passwords and turning off RACF inactive auto-revoke.
04/29/2008 - Updated comments in ONEPAKZ8 to say it could be used for z/OS 1.7 through z/OS 1.9. Also added comments about creating userids with non-expiring passwords and turning off RACF inactive auto-revoke.
04/16/2008 - Added HLISTB, HLISTBL, HLISTM and HLISTML execs for browsing the output of HLIST BCDS (backup) and HLIST MCDS (migrate) commands for a specific data set or by data set level.
04/16/2008 - Updated LOGRREXX to handle pending changes to logstreams.
03/07/2008 - Updated RXSTOR64 to change the "HIDDEN MEM" column heading to "GUARDED MEM" and added a note about APAR OA02888.
01/30/2008 - Updated TWOPAKZ8 job to create a null SMS configuration. See comments in the job for the reason.

A summary of all changes made since November 1999 can be found by clicking here.


Index of this page

  1. ISPF Edit Macros
  2. TSO REXX EXECs and CLISTs
  3. Batch Programs and Routines
  4. XEF - eXtended Editor Facility
  5. Sample JOBs and Documentation
  6. Notes on ASCII Translation
  7. Disclaimer
  8. Thanks
  9. Guestbook
A TSO XMIT file format, that includes any updates since the current CBT version, is available on this site as CBT434.ZIP (550K).

You can also download these utilities from the CBT Tape Homepage in TSO XMIT format - CBT FILE # 434 (550K).

The updated file may also be on the CBT Updates Page in TSO XMIT format - CBT FILE # 434 (550K).

Instructions on how to use TSO XMIT files can be found at the Download CBT Tape section of the CBT Tape Homepage.

All downloadable files on this page are also contained in MVSUTILS.ZIP (543K). (please see the Notes on ASCII Translation)

General instructions for installing and using these utilities can be found by clicking here.

An index and description of all members on the TSO XMIT format file (which is essentially the same as the downloadable files on this site) can be found by clicking here.


ISPF Edit Macros

Return to top | Index | Next Section | Previous Section

Roscoe users might recognize some of these edit macros that I wrote to simulate fuctions that were built into Roscoe when I last used it (1986).

File Name Macro Description and Usage Examples
INCL.TXT Include only a certain string. The search can optionally be limited to specific columns.
Examples:
INCL ' JOB'
INCL '//' 1 2
EXCL.TXT Exclude all of a certain string. The search can optionally be limited to specific columns.
Examples:
EXCL UNIT=SYSDA
EXCL ' DD ' 3 12
DELX.TXT Delete everything but a certain string. The search can optionally be limited to specific columns.
Examples:
DELX VOL=SER=WORK01
DELX '//*' 1 3
DELNX.TXT Delete all of a certain string. The search can optionally be limited to specific columns.
Examples:
DELNX UNIT=CART
DELNX 'SYSOUT=*' 3 16
FILL.TXT Fills column(s) with characters. The fill can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Examples:
FILL 1 2 '/'
FILL 2 7 'DELETE' .A .B
PREFIX.TXT Add a character string prefix to the beginning of a line before the first non-blank character, shifting data to the right. The prefix can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Examples:
PREFIX "'"
PREFIX 'DELETE ' .A .B
PREFIX2.TXT Add a character string prefix to the beginning of a line before the first non-blank character. The prefix can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Examples:
PREFIX2 "'"
PREFIX2 'DSN=' .A .B
SUFFIX.TXT Add a character string suffix to the end of a line after the last non-blank character. The suffix can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Examples:
SUFFIX "'"
SUFFIX ',DISP=SHR' .A .B
DB.TXT Delete all lines from the line the cursor is on to the bottom line. This MACRO can be implemented as a true line command with the help of ISPF developer Doug Nadel's LMAC program, and this LINEMAC edit macro. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
DT.TXT Delete all lines from the line the cursor is on to the top line. This MACRO can be implemented as a true line command with the help of ISPF developer Doug Nadel's LMAC program, and this LINEMAC edit macro. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
LINEMAC.TXT Edit macro needed to implement DB , DT , ZB , ZE , and ZV as true line commands. This MACRO must to be used in conjuction with ISPF developer Doug Nadel's LMAC program. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
COLADD.TXT Total numbers in a specified column range. An optional parameter of "HEX", "ZONE", "PACK", or "BIN" is needed to add hexadecimal, zoned decimal, packed decimal, or binary data. "DEC" is the default addition type. The operation can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Examples:
COLADD 10 25
COLADD 33 40 HEX
COLADD 25 30 DEC .A .B
COLADD 10 29 ZONE
COLADD 10 16 PACK
COLADD 40 44 BIN
COLADD 44 57 X .FROM .TO
COLUTIL.TXT Column manipulation utility which can either MOVE, COPY or SWAP columns to a new location (move is the default) or SHIFT columns right or left. The operation can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
Move Examples:
COLUTIL 10 20 5
COLUTIL 10 14 35 MOVE .A .B

Copy Examples:
COLUTIL 35 40 12 COPY
COLUTIL 10 14 35 C .A .B

Swap Examples:
COLUTIL 25 30 15 SWAP
COLUTIL 40 50 10 S .A .B

Shift Examples:
COLUTIL LEFT 3
COLUTIL R 5 .A .B
INSLINE.TXT Insert a character string or previously "CUT" data from the ISPF Default Clipboard either after or before every line. The insert can optionally be limited to specific lines if labels are used. Excluded lines are omitted from the operation.
After Examples:
INSLINE '// DISP=SHR' A
INSLINE '// DISP=SHR' A .FROM .TO
INSLINE PASTE A
INSLINE PASTE A .FROM .TO

Before Examples:
INSLINE ' DELETE +' B
INSLINE ' DELETE +' B .FROM .TO
INSLINE PASTE B
INSLINE PASTE B .FROM .TO

DELDUPS.TXT Sort and delete all duplicate lines. The duplicate search can optionally be limited to specific columns.
Examples:
DELDUPS
DELDUPS 10 15
SW.TXT
Switch from VIEW to EDIT and visa versa. For use with sequential files it requires XVIEW/XEDIT or a similar EXEC/CLIST.
LMPREXX.TXT
This edit macro helps manage CA LMP keys.
ZBROWSE.TXT BROWSE the dataset on the line that the cursor is at. This MACRO can be implemented as a true line command with the help of ISPF developer Doug Nadel's LMAC program, and this LINEMAC edit macro. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
ZEDIT.TXT EDIT the dataset on the line that the cursor is at. This MACRO can be implemented as a true line command with the help of ISPF developer Doug Nadel's LMAC program, and this LINEMAC edit macro. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
ZVIEW.TXT VIEW the dataset on the line that the cursor is at (ISPF V4). This MACRO can be implemented as a true line command with the help of ISPF developer Doug Nadel's LMAC program, and this LINEMAC edit macro. For z/OS 1.8 and above, LMAC should be downloaded from IBM's ISPF web site.
EDMACALL.TXT This is a REXX exec that can be used to run an edit macro against all members of a PDS.
CUT & PASTE
ALL FILES BELOW:
CUTPASTE.ZIP
CLISTS:
CUT.TXT
PASTE.TXT
PANELS:
CUTDEF.TXT
CUTDEF@.TXT
CUTHELP@.TXT
CUTHELP1.TXT
CUTHELP2.TXT
CUTHELP3.TXT
CUTHELP4.TXT
CUTHELP5.TXT
CUTPROM.TXT
CUTPROM@.TXT
PASTEDEF.TXT
PASTEDF@.TXT
PASTEPR@.TXT
PASTEPRM.TXT
CUT data, and then PASTE it into a different member. The ISPF panels must be put into a library in the ISPPLIB concatenation.

These CLISTs and panels were originally taken from file 182 of the CBT tape which is available through NaSPA, or can be downloaded from the CBT Tape Homepage.

Examples:
CUT (will CUT whole member or lines marked with a "C"/"CC" or "M"/"MM" line commands)
CUT R (will replace the current CUT data)
CUT H (will display help panels)
CUT D (set up CUT defaults)
PASTE (will PASTE last cut data into an empty member or before a "B" or after an "A" line command)
PASTE K (will PASTE the last CUT data and keep it to use for another PASTE)
PASTE H (will display help panles)
PASTE D (set up PASTE defaults)


TSO REXX EXECs and CLISTs

Return to top | Index | Next Section | Previous Section

All of the REXX EXECs and CLISTS listed after ISPCMDSA.TXT are best used when set up as ISPF Commands. The ISPCMDSA CLIST is an example of how to add these commands on a temporary basis without actually modifying the ISPF Command Table (ISPCMDS).

File Name File Description and Usage Examples

IPLINFO.TXT
Displays IPL and other system information on your terminal. Some of the things displayed are the IPL address and volser, the IPL date and time, the IPL LOADPARM, IODF information, the master catalog name, the real and expanded storage sizes, the maximum private area size below the 16Meg line, storage sizes for CSA/ECSA, SQA/ESQA and V=R, CPU information, values from LOADxx and IEASYSxx, a virtual storage map, static system symbol values, page data set usage, SMF data set usage, subsystem information, ASID (ASVT) usage, the LPA library list, the LNKLST library list and the APF library list. IPLINFO can also be executed as an ISPF edit macro or from the Unix System Services environment - including the WEB server.
Examples:
TSO %IPLINFO (Display all information)
TSO %IPLINFO VMAP (Display a Virtual Storage Map)
TSO %IPLINFO SYM (Display Static System Symbols)
TSO %IPLINFO SUB (Display Subsystem Information)
TSO %IPLINFO APF (Display APF Library List)

Here is sample IPLINFO output.

IPLINFO can also be called as a REXX function to return up to 20 variables used in the exec.
Examples:
sysname = IPLINFO(VAR,GRSNAME)
pvtsize = IPLINFO(VAR,GDAPVTSZ)
ipl_sum = IPLINFO(VAR,IPLDATE,IPLTIME,IPLADDR,IPLVOL,IPLPARM)
LPROG.TXT Displays LPA list, LNKLST, and APF list libraries.
Examples:
TSO %LPROG (display LPA, LNK, & APF Lists)
TSO %LPROG LPA (display LPA list)
TSO %LPROG LNK (display LNKLST)
TSO %LPROG LINK (display LNKLST)
TSO %LPROG APF (display APF list)
CATSRCH.TXT REXX exec that uses the Catalog Search Interface (CSI) to quickly search for catalog entries. A generic HLQ can also be used (some shops don't allow this with ISPF 3.4). I've also included an optional ISPF panel, CATSRCHP.TXT, and an invocation exec CAT.TXT, which displays the optional panel.
KEYSWAP.TXT Swaps PFKEYS 1 thru 12 with PFKEYS 13 thru 24. Usefull when you keep having to switch terminal types (happens often to consultants!)
APFVER.TXT APF LIST verification utility. Checks for existence of libraries in the in-storage APF List. This will help you clean up all those obsolete APF entires!
Example:
TSO %APFVER
LNKVER.TXT LINK LIST verification utility. Checks for invalid syntax (missing / extra commas), for data sets not cataloged in the master catalog, invalid link list data sets (not a PDS or RECFM=U) and the concatenation algorithm:
    (32) + (16n) + (k-1)
    n = the number of DASD extents (PDSE counts as 1)
    k = the number of data set in the link list
The result of the algorithm cannot exceed 2040. If running DFSMS/MVS 1.3 or later, then the only restriction is that the total number of extents must not exceed 255.
Examples:
TSO %LNKVER
TSO %LNKVER LNKLST00
TSO %LNKVER IEASYS01 DETAIL
INDIRECR.TXT This exec will take a list of data sets and create IDCAMS control cards to indirectly catalog them.
Examples:
TSO %INDIRECR
TSO %INIDRECR MASTER.CAT
TSO %INIDRECR MASTER.CAT &SYSR2
REXXMEM.TXT This exec can be used to display memory in "dump" format similar to IPCS.
Examples:
TSO %REXXMEM (start at x'00000000' for x'100')
TSO %REXXMEM FD0740 (start at x'00FD0740' for x'100')
TSO %REXXMEM FD0746 64 (start at x'00FD0746' for x'64')

REXXSTOR.TXT
This exec will show the virtual storage usage of the task that invokes the REXX exec. This could be an interactive TSO user, a batch TSO step, or even a Unix System Services user / Web server. For z/OS 1.2 and above running in z/Architecture mode it also displays the MEMLIMIT. I've used this exec to test the affects of the IEFUSI SMF exit on region size and MEMLIMIT. I've included sample JCL to execute REXSTOR in batch - REXXSTOJ.TXT.

There is a modified version of this exec written by Janek Jakubek called MXIVSTOR that uses a freeware tool called MXI to display the virtual storage usage of another address space. MXIVSTOR can be found on CBT file 394 available at the CBT Tape Homepage. MXI is available from Rocket Software.

RXSTOR64.TXT
This exec will show the 64-bit MEMLIMIT and 64-bit storage usage for all ASIDs running in the system. In addition is will show system wide summaries for 64-bit shared virtual (HVSHARE), 64-bit large memory objects (large / 1M page support) and 64-bit common storage (HVCOMMON) at the appropriate software levels.

Here is an example of RXSTOR64 output.
CMD34.TXT This exec can be used to execute commands against an ISPF 3.4 type DSLIST. If slashes are found as part of the command the data set name will be substituted in place of the slashes similar to what ISPF 3.4 does.
Examples:
TSO %CMD34 SYS2.OLD.PRODUCT.HLQ HMIG
TSO %CMD34 SOME.HLQ* LISTC ENT(/) VOL
TSO %CMD34 HLQ.OLD.JUNK DEL /

HLISTB.TXT
Browse the output of a HLIST DA BCDS (backup) command. This works well when typed next to a data set on an ISPF 3.4 DSLIST.
Examples:
TSO %HLISTB USERID.JCL.CNTL

HLISTBL.TXT
Browse the output of a HLIST DA LEVEL BCDS (backup) command.
Examples:
TSO %HLISTBL USERID

HLISTM.TXT
Browse the output of a HLIST DA MCDS (migrate) command. This works well when typed next to a data set on an ISPF 3.4 DSLIST.
Examples:
TSO %HLISTM USERID.JCL.CNTL.OLD

HLISTML.TXT
Browse the output of a HLIST DA LEVEL MCDS (migrate) command.
Examples:
TSO %HLISTML USERID
EDMACALL.TXT This is a REXX exec that can be used to run an edit macro against all members of a PDS.
CALC.TXT REXX Calculator. Because CALC is an ISPF TSO command supplied by IBM, this REXX exec must be renamed or invoked using a percent sign as follows:
"TSO   %CALC" .
ISPCMDSA.TXT Temporarily adds commands to the ISPF Command Table (ISPCMDS).
XEDIT.TXT Recursively EDIT a data set from the TSO command line.
Examples:
XE 'MY.PDS(ABC*)'
XE PDS.NOTCAT USER01
XBROWSE.TXT Recursively BROWSE a data set from the TSO command line.
Examples:
XB 'MY.PDS(ABC*)'
XB PDS.NOTCAT USER01
XVIEW.TXT Recursively VIEW a data set from the TSO command line (ISPF V4).
Examples:
XV 'MY.PDS(IE*)'
XV PDS.NOTCAT USER01
XMEMLIST.TXT Recursively MEMLIST a data set from the TSO command line.
Examples:
XM 'MY.PDS(DB*)'
XM 'PDS.NOTCAT' USER01
XDSLIST.TXT Recursively DSLIST (ISPF 3.4) a data set level from the TSO command line.
Examples:
XD     (USERID.* used by default)
XD SYS2.*.PROCLIB
XD SYS2.NOTCAT USER01
XLISTC.TXT Recursively IDCAMS LISTCAT ALL a data set from the TSO command line. The output goes into a browse data set that can be scrolled. Works great when typed next to a DSN on ISPF option 3.4.
Examples:
XL 'MY.VSAM.FILE'
XL 'SMPE.GLOBAL.CSI'

TSOB.TXT
BROWSE the output from a TSO command.
Examples:
TSOB LISTA STA
TSOB PROFILE

TSOE.TXT
EDIT the output from a TSO command.
Examples:
TSOE LISTA STA
TSOE PROFILE

TSOV.TXT
VIEW the output from a TSO command.
Examples:
TSOV LISTA STA
TSOV PROFILE

TSOR.TXT
REVIEW the output from a TSO command. TSOR requires the REVIEW command from CBT file 134 or 135 and can be used under native TSO without ISPF.
Examples:
TSOR LISTA STA
TSOR PROFILE
AMBCLIST.TXT
AMBPANEL.TXT
Interactive AMBLIST using panel input. The AMBPANEL ISPF panel must be put into a library in the ISPPLIB concatenation.
BLKCLIST.TXT
BLKPANEL.TXT
Interactive BLKDISK (BLK3380) using panel input. The BLKPANEL ISPF panel must be put into a library in the ISPPLIB concatenation. The BLKDISK command can be found on file 296 of the CBT tape which is available through NaSPA, or can be downloaded from the CBT Tape Homepage.


FINDMOD.TXT
Quickly find the location of a module (or modules). The specified module name may be fully qualified or any valid ISPF member pattern. By default, the LPA and LNKLST concatenation are searched. Alternatively, a "search list member" may be specified. In order to use the search list, the libraries to search must be manually added to a PDS member (or members). This gives FINDMOD the advantage of being able to search any library. I include PROC libs and CLIST libs in one of my alternate search lists. I've included a sample search list - FINDASYS.TXT.
Examples:
FINDMOD (will prompt for modname)
FINDMOD IEFBR14 (search LPA/LNKLST)
FINDMOD A%R* (use pattern to search)
FINDMOD DFHCSA FINDCICS (use alt list)
FINDMOD MXG* FINDPROC BOTH (altlist+LPA/LNK)

FVE.TXT
Fast View/Edit of data sets.
This REXX exec is intended to work with ISPF command table entries to create "shortcuts" for VIEWing or EDITing data sets or data set concatenations. The source code includes the instructions for updating the ISPF command table entries and there are also examples of adding the entries dynamically in the ISPCMDSA CLIST. It can also serve a dual purpose as a "member search" facility in library concatenations.

The exec must be customized for your use, but I've included the basic framework in the supplied example. The possibilities for creating shortcuts are endless. See the source code for full details and usage.


Batch Programs and Routines

Return to top | Index | Next Section | Previous Section

File Name File Description
RACFUDEL.TXT REXX program to Remove obsolete users from the RACF Database, remove their RACF dataset profiles, and delete their datasets and aliases from catalogs.

TAPESTAK.TXT
REXX Tape stacking program (works with CA-1).
DELDUPS2.TXT REXX Duplicate Record Deletion Program.
This program will sort a file and delete records that have duplicate characters between user specified columns. The main difference between this program and the DELDUPS Edit Macro is that this program writes the duplicate records to a seperate file, and can run as a batch job for processing large files.
RDATE.TXT REXX date conversion routine.
Convert MM DD YYYY, YYYY DDD, or NNNNN to standard date output that inclues the day of week and the number of days (NNNNN) from January 1, 1900. This is not the same as the Century date! Valid input dates range from 01/01/1900 through 12/31/2172. A parm of "TODAY" can also be passed to the date conversion routine. The output format is always as follows:
MM/DD/YYYY.JJJ NNNNN WEEKDAY

This program is called as an internal subroutine in several other programs and EXECs on this page.
RDATEF.TXT REXX function version of RDATE.

ACBCHECK.TXT
This program will check if a VTAM ACB is available and if it is not the program will wait 15 seconds and try again. It will keep trying for up to 15 minutes. It can be put into STCs as the first step so the STC can be started at IPL time via COMMNDxx before VTAM is active. The program must be passed a parm of the ACB to check.
ASIDLIST.TXT ASIDLRX.TXT Address Space ID List Program.
These programs will list the names of all ASIDs in the system, their ASCB address, their ASID number in hex and decimal, and provide the following totals:

TOTAL ADDRESS SPACES IN THE SYSTEM
TOTAL ACTIVE ADDRESS SPACES IN THE SYSTEM
TOTAL AVAILABLE ADDRESS SPACES IN THE SYSTEM
TOTAL NON-REUSABLE ADDRESS SPACES IN THE SYSTEM

The programs also display MAXUSER and usage of RSVSTRT and RSVNONR from IEASYSxx.
JOBCHECK.TXT
JOBCHKRX.TXT
These programs check if a job or task is running on the system and set a return code based on the results. The job/task to check is passed to the program VIA parm.

LOGRREXX.TXT
This program takes the output from LIST LOGSTREAM (PGM=IXCMIAPU) and creates logstream DELETE/DEFINE cards that can be used as input to IXCMIAPU. This was developed for use at a disaster recovery site.
REXXSCAN.TXT This program scans an input file for parm string(s). See the program source for more detail and JCL.
VTOCTOT.TXT This program processes the output of the CBT VTOC command and produces totals by high level qualifier. The VTOC command can be found on file 112 of the CBT tape which is available through NaSPA, or can be downloaded from the CBT Tape Homepage.


XEF - eXtended Editor Facility (V6.3)

Return to top | Index | Next Section | Previous Section

XEF is an ISPF dialog application that is used for BROWSING, VIEWING, EDITING, or COMPRESSING a dataset. It allows you to choose a dataset from a menu instead of typing in the entire dataset name. XEF can also be used to obtain DATASET INFORMATION or display a DATASET MEMBER LIST of a partitioned dataset. From the member list you can select members to be BROWSEd, VIEWed, EDITed, DELETEd, RENAMEd, or PRINTed. Using the DSLIST option, a dataset pattern can be entered to display a Data Set List that is like ISPF option 3.4. If the CBT PDS command is installed, XEF can also interface with it.

All XEF files listed below are also contained in XEF.ZIP. XEF V6.3 requires OS/390 2.10 (ISPF V5) or above. For older systems you can still download XEF V6.2 - XEFV62.ZIP (both are TSO XMIT format).

** Note: If you want to run XEF 6.3 on systems below OS/390 2.10 use the XEFMENUB panel instead of XEFMENU. You should rename the panel to XEFMENU during installation. XEF 6.3 will function as it would on systems running OS/390 2.10 or higher, however, no verification is done for valid data set names or patterns when adding the names to the XEF main menu. This should work on any OS/390 system below OS/390 2.10 or MVS/ESA V5 systems (ISPF 4.2 or above is required).

CLISTs (add to library in SYSPROC concatenation)

File Name File Description
XEFCLIST.TXT eXtended Editor Facility CLIST
XEF.TXT REXX exec to invoke XEF (optional if using ISPF command tables or an option menu to invoke XEF)
XEFLIBD.TXT REXX exec to invoke XEF (same function as XEF exec but uses LIBDEFs)

Messages (add to library in ISPMLIB concatenation)

File Name File Description
XEF00.TXT eXtended Editor Facility Messages

Panels (add to library in ISPPLIB concatenation)

File Name File Description
XEFMENU.TXT eXtended Editor Facility Main Menu
** XEFMENUB.TXT eXtended Editor Facility Main Menu (optional)
XEFINF.TXT eXtended Editor Facility Dataset Information Panel (SEQ)
XEFINFD.TXT eXtended Editor Facility Dataset Information Panel (PDS)
XEFINFE.TXT eXtended Editor Facility Dataset Information Panel (PDSE)
XEFINFP.TXT eXtended Editor Facility Dataset Information Panel (PDS SMS)
XEFINFS.TXT eXtended Editor Facility Dataset Information Panel (SEQ SMS)
XEFHELP.TXT eXtended Editor Facility Help Panel #1
XEFHELP2.TXT eXtended Editor Facility Help Panel #2
XEFHELP3.TXT eXtended Editor Facility Help Panel #3
XEFHELP4.TXT eXtended Editor Facility Help Panel #4

XEF is invoked by selecting the main menu panel - XEFMENU. It can be added to an existing ISPF option panel or is best used when set up as a command in the ISPF Command Table (ISPCMDS). The ISPCMDSA CLIST on this page has an example of how to add the XEF command on a temporary basis without actually modifying the ISPF Command Table.



Sample JOBs and Documentation

Return to top | Index | Next Section | Previous Section

This section contains various sample JOBs and documentation that people have asked me to make available, or that I feel would be helpful.

File Name File Description
$RXINTRO.ZIP "Introduction to TSO/E REXX" document from a class I gave at one of my clients. The file was created using Microsoft Word (zipped).
$ROOTSHR.TXT Doc for setting up a shared UNIX root file
$SNGLTSO.TXT Doc for using the same TSO USERID in a shared environment. I have provided the following samples to implement this:
ISPF defaults source update - ISPDFLTS.TXT
ISPXDT and ISPF exit 16 source - ISPEX16.TXT
JES2 source update (OS/390 R10 & z/OS R1) - UMJES01.TXT
JES2 source update (z/OS R2 and above) - UMJES012.TXT
JES2 source update (prior to OS/390 R10) - UMJES01O.TXT
JES3 source update - UMJES06.TXT
$WLMMONO.TXT Doc for setting up WLM in a MONOPLEX
CLONERES.TXT Sample jobstream to clone a two volume sysres set and SMP/E target zones.
CLONERSO.TXT Old version of CLONERES.

$ONEPAK.TXT
Doc for using DFSMSdss instead of FDRCOPY to create ONEPAK and TWOPAK systems.
ONEPAKZ3.TXT Sample jobstream to build a one pack "rescue" system from a z/OS 1.3 driving system.
ONEPAKZ6.TXT Sample jobstream to build a one pack "rescue" system from a z/OS 1.6 driving system.

ONEPAKZ8.TXT
Sample jobstream to build a one pack "rescue" system from a z/OS 1.7, z/OS 1.8, z/OS 1.9 or z/OS 1.10 driving system.
ONEPAK43.TXT Sample jobstream to build a one pack "rescue" system (created for ESA 4.3, but is still a good sample of the required steps).
TWOPAKZ3.TXT Sample jobstream to build a two pack "rescue" system from a z/OS 1.3 driving system. Same as ONEPAKZ3 but also includes Unix System Services, TCP/IP, and ISHELL.
TWOPAKZ6.TXT Sample jobstream to build a two pack "rescue" system from a z/OS 1.6 driving system. Same as ONEPAKZ6 but also includes Unix System Services, TCP/IP, and ISHELL.

TWOPAKZ8.TXT
Sample jobstream to build a two pack "rescue" system from a z/OS 1.7, z/OS 1.8, z/OS 1.9 or z/OS 1.10 driving system. Same as ONEPAKZ8 but also includes Unix System Services, Unicode, TCP/IP and ISHELL.
SMPBLD1.TXT Job to build an SMP/E environment from scratch. All VSAM SMP/E zones are created within the same physical VSAM data set.
SMPBLD2.TXT Job to build an SMP/E environment from scratch. The VSAM SMP/E zones are created as separate physical VSAM data sets.
SMPBLD3.TXT Job to build a new SMP/E target zone, dlib zone, and other required SMP/E data sets into an existing global zone.
SMPDELF.TXT Sample job to delete an FMID from a set of SMP/E zones and libraries.


Notes on ASCII translation

Return to top | Index | Next Section | Previous Section

ASCII translation is not an issue if the TSO XMIT format download is used. A TSO XMIT file format that includes all files is available. I STRONGLY suggest you use the TSO XMIT file instead of individual downloads or the ASCII zip file. If you do not use a U.S. code page, this is even more important!

There are two characters in most of the REXX and CLIST code that don't translate to ASCII. The logical OR (solid bar like |) and the logical NOT (¬ usually upper case 6 on a real 327X terminal). You might have to manually fix these in the code after uploading the files to the mainframe. If they end up as non displayable characters, the easiest way to find them is by using the following ISPF command:
The logical NOTs are usually next to an equal sign (¬=). The logical ORs are usually in an IF statement, or two of them are used together to indicate concatenation (||). Use the ISPF CHANGE ALL command to fix them as in the following examples:
Note that the X'52' and X'6A' in the above examples will vary depending on the translate table that is used for uploading the files to the mainframe. Also, these files were downloaded at different times using different transfer software, so don't assume that the changes for one file will be the same for another one. Don't forget to use the ASCII and CRLF options of your file transfer product. Please do not use CUT and PASTE to copy the files from your PC to the mainframe!


Disclaimer

Return to top | Index | Next Section | Previous Section

The downloadable files on this site are FREEWARE . Use at your own risk. Neither Mark Zelden, nor other contributing organizations or individuals accept any liability of any kind howsoever arising out of the use of these files. You are free to use and modify these files as you desire, however, the author does ask that you leave his name in the files and give credit to him as the original programmer.

Notes on ASCII translation

Thanks

Return to top | Index | Next Section | Previous Section

Thanks to the following people for adding links to this page:

Richard ViPond - Richard ViPond's Homepage
Eric Loriaux - System/390 home page
Bruce R. Gillispie - Mainframe, Midrange, & Micro Computers
Bal Oberoi - Mainframe Programming - Useful Links
David Alcock - Planet MVS
Gilbert Saint-flour - GSF's Home Page!
Rob Scott - Rob Scott's 0S/390 and MVS resources
Sam Knutson - Knutson's Home Page and CBT Tape Home Page
Doug Nadel - A Few OS/390 Tools and Toys.
Mike Cowlishaw (REXX Inventor) - The REXX Language
Frank Clarke - Frank Clarke's Home Page
Lionel B. Dyck - OS/390 and z/OS Freeware
Nico Rizzuto - Rizzuto IT
IBM Mainframes - IBM Mainframe Forum, Manuals, Programs and download
Michel Castelei - Michel Castelein's Home Page (education consultant/instructor)



Thanks for visiting!
The Zelden's Homepage Mini-Banner



Before you leave, please sign my Guestbook!

Sign My Guestbook
View Recent Guests
View Former Guests





Return to top | Index | The Zelden's Homepage


Angry Dino Mark's MVS Utilities is part of the Dinos Web Ring.

[Skip Prev] [Prev] [Next] [Skip Next]
[Random] [Next 5] [Rate] [Ring Hub]


Want to join the Dinos Web Ring?

This page has been accessed 442013 times since January 1, 1997.