TRSMAIN

What is It

TERSE is a data compression algorithm developed by Victor Miller and Mark Wegman of IBM Research at Yorktown. (Reference: Variations on a theme by Ziv and Lempel")

TRSMAIN is commonly used for uploading diagnostic data to IBM Support. Besides compressing the data, it also converts it into a fixed length format which can be helpful when dealing with OS/390 datasets containing variable length records.

Where to get it

TERSE is now available as AMATERSE in all currently supported versions of z/OS. A PTF OA19194 is required for z/OS 1.7 and z/OS 1.8. When invoked as AMATERSE, DDNAMEs SYSUT1 and SYSUT2 are used. When AMATERSE is invoked via alias TRSMAIN, then the same DDNAMEs are used as before.

The IBM TRSMAIN support page provides additional information on installing and using TRSMAIN.

Sample JCL

Pack JCL:
   //stepname  EXEC PGM=TRSMAIN,PARM='PACK'
   //STEPLIB   DD DISP=SHR,DSN=loadlib
   //SYSPRINT  DD SYSOUT=*,LRECL=133,BLKSIZE=12901,RECFM=FBA
   //INFILE    DD input dataset
   //OUTFILE   DD output dataset
A TERSEd dataset should be roughly half the size of the input dataset.

Unpack JCL:

   //stepname  EXEC PGM=TRSMAIN,PARM='UNPACK'
   //STEPLIB   DD DISP=SHR,DSN=loadlib
   //SYSPRINT  DD SYSOUT=*,LRECL=133,BLKSIZE=12901,RECFM=FBA
   //INFILE    DD input dataset
   //OUTFILE   DD output dataset
A packed dataset must have RECFM=F or RECFM=FB with logical record length (LRECL) 1024. You do not need to specify DCB parameters in the JCL when creating the output dataset for either a pack or unpack operation.

TRSUNPCK

TRSUNPCK is a utility used to unpack service packages downloaded from ServiceLink. TRSUNPCK can be downloaded from ServiceLink. Refer to the ServiceLink User's Guide for more information. IBM now also provides GIMUNPCK as part of the SMP/E product.

TRSMAIN supports an UNPACK function which is equivalent to TRSUNPCK.

Big Iron