Support for PUT 18
Put 18 support has been added to CMSTPF. With this Release/Version, the TPFPUT level can be set to 18. This was added with Build 041129.
Support for TPF/GI 3.0.1
CMSTPF, SOURCE VIEW and CTFS have been updated to support TPF/GI Version 3.0.1.
Generating Source View Control files from SYSADATA output
With Host 01.04.01 – Build 040628, Source View has been updated to generate the Source View (SV) Control files for Assembler programs directly from the SYSADATA (new command $DSVGEN). Source View Control files (CMSTPFCT files) are required to trace an Assembler program using Source View. Under TPF/GI to edit Assembler Program variables (Edit Assembler Expression), the CMSTPFSF file must have been generated and be available.
The following options are available for generating Source View Control files – for Assembler Programs
- $ASVGEN – Generate SV Control files based on the output listing
This option was the first option that was available with Source View, and executing this command, the SV Control files are generated. The $ASVGEN command reads the listing and creates the SV Control file (CMSTPFCT file). This command runs under VM.
- $HSVGEN and $HSVGEN3 – Generate SV Control files based on High Level Assembler User Exit
Next, this option was available and uses the SYSADATA, and the High Level Assembler Exit (in-line) to generate the SV Control files. This option generates both the symbol file (CMSTPFSF file), and the SV control file (CMSTPFCT file). The $HSVGEN command was for customers running HLASM V2, and the $HSVGEN3 was for customers running HLASM V3. This command runs under VM, and is normally called by the customer’s TPFASM Exec.
- $HSVGOS – Generate SV Control files based on High Level Assembler User Exit under MVS
Next, this option was available and uses the SYSADATA, and the High Level Assembler Exit (in-line) to generate the SV Control files. This option generates both the symbol file (CMSTPFSF file), and the SV control file (CMSTPFCT file). The $HSVGOS command was for customers running HLASM V3. This command runs under MVS, and is normally called by the customer’s JCL that does the assembly of TPF programs. The SV control files (CMSTPFCT and CMSTPFSF files) are created in MVS, and need to be transferred to VM by the customer. Customers that do all assemblies under MVS use this option.
- $DSVGEN – Generate SV Control files based on SYSADATA file
This latest option available to customers is to generate the SV control files (CMSTPFCT and CMSTPFSF files) using the actual SYSADATA. When the High Level Assembler is invoked either in MVS or in VM, the option must be set to generate the SYSADATA must be set. This will create the SYSADATA file. This new command uses the SYSADATA file, and creates the SV control files. If the SYSADATA file is created under MVS, it is the customer’s responsibility to transfer the file to VM. This command runs under VM.
To generate SV Control Files for C/C++ programs, the customer should use the $CSVGEN command.
To generate SV Control Files for Sabre-Talk programs the customer should use the $SSVGEN command.
Support for the C/C++ z/OS 1.2 Compiler
With Host 01.04.01 Build 040604 Source View has been updated to support the z/OS 1.2 Compiler. The $CSVGEN command has been updated to recognize the C/C++ listing file generated by the z/OS 1.2 Compiler, and to generate the C/C++ Source View control file (CMSTPFCT file).
Support for pre-loading TPF Panels
With Host 01.04.01 Build 040716 TPF/GI has been updated to pre-load system and user panels during TPF/GI startup. The list of panels to be loaded is defined in a file called $PANEL LIST. This list contains the names of system panels (required) to be downloaded to the PC and optionally a list of User panels to be pre-loaded.
The Administrator should update this file and update the User List to include commonly used panels (dsects) that need to be pre-loaded. The $PANEL LIST file is on the CMSTPF C-Disk. Once modified, the file should be saved on the B-disk.
Support for the YIELDC macro
With Host 01.04.01 Build 040512 CMSTPF has been updated to support the YIELDC macro.
Call $RTFPROG Exec when RTF transaction aborts
With Host 01.04.01 Build 040504 CMSTPF/RTF has been updated to call the $RTFPROG Exec when a transaction running under RTF aborts. Customers can update this exec to take appropriate actions (Dump the ECB, view specific core addresses, etc.).
Customers running z/VM
Please note that z/VM has a number of Saved Segments that are defined in the x’20’ to x’2F’ megabyte range. If any of the DCSS or Named Saved Segments (see CTNSS TABLE) is also defined in this range, there will be conflicts between the NSS defined under z/VM and the NSS defined for CMSTPF.
Customers should move the DCSS/NSS defined for CMSTPF to areas that do not conflict with z/VM. All DCSS/NSS areas associated with CMSTPF must be greater than x’20’ megabytes. We recommend that you start moving the DCSS/NSS associated with CMSTPF to areas greater than x’30’ megabytes.
When updating the CTNSS TABLE, check on the following parameters:
- MAXSTOR parameter of $CSYS macro
Support for locking source code in TPF/GI
CMSTPF and SOURCE VIEW have been updated to allow source code to be locked by TPF/GI. In previous versions of TPF/GI only the control file could be locked. With this version, users can lock either the control file or the source code. Locking the source code enables the 80-byte restriction to be removed. Several customers had C/C++ programs that were greater than 80-bytes and wanted to lock the source code instead of the control file.
This enhancement has no bearing on customers who only use CMSTPF. For these customers, the SOURCE VIEW component would read the control file into memory when the program is loaded into memory.
Note: C/C++ programs can only be traced with TPF/GI, since only TPF/GI supports the ability to view and edit C/C++ variables.
Support for Transaction Recording and Examination (TREX) in TPF/GI
CMSTPF has been updated to provide a data collection phase for analyzing the resource usage by TPF application transaction. This new feature of CMSTPF enables customers to examine and analyze a transaction and determine the resources used by the transaction. The level of granularity is at the ECB level and at the program level. For C/C++ programs, the granularity is at the DLM level, and for DLL’s and ISOC libraries at the called function level.
The enhancements to CMSTPF are to collect the data and to send the data to TPF/GI for data reduction. The entire data reduction is provided by the new TREX feature of TPF/GI, with the TREX feature customers can determine the specific resources used by the transaction.
The data collected at the transaction level, ECB level, and program/function level is:
- CPU utilization data o Program/Function usage data (number of times a program/function was called)
- I/O utilization data (database reads/writes, and tape reads/writes)
- Storage utilization data (core blocks used/released, heap used/released, etc.)
- Pool utilization data (pool records obtained/released)
Note: This support is only available to customers with TPF/GI, since the entire data reduction phase is done by TREX in TPF/GI.
Support for Regression Test Facility – Data collection enhancements (RTF)
CMSTPF/RTF has been updated to write new regression test records that contain the data collection information and the new storage activity information.
When RTF is started with data collection active (CSET DATACOLL ALL or CSET DATACOLL USER or CSET DATACOLL OFF), CMSTPF has been updated to write out two new RTF records. These records are the Storage Activity (SA) record, and the Data Collection (DC) record.
- The SA record contains information about storage obtained/released, etc.
- The DC record contains information of the data collected for the transaction
The following execs are associated with RTF, they are:
- RTFSET – Sample exec to run RTF
- RTFUSR – Sample exec to perform user functions
- RTFGLOBE – Exec that initializes and sets RTF globals.
- $CTXRTF – Exec that is invoked during CMSTPF startup to check and start RTF
The RTFSET exec has been updated to account for the new records. Customers should review the changes made to the RTFSET Exec and implement those changes to their own execs that start and stop RTF.
The following files are associated with RTF, and can be customized, they are:
- RTFDS MACRO – Dsect that defines the layout of RTF records
- RTFDSU MACRO – Dsect that can be customized by the user
- $RTFUSE ASSEMBLE – User exit routines associated with RTF
Note: Customers implement RTF by creating their own versions of the RTFSET and RTFUSR Execs. These execs control the running of RTF.
Additionally, customers must provide the appropriate execs and tools to analyze the results of RTF Phase 1 and RTF Phase 2.
RTF has been updated to call the $RTFPROG EXEC when an abnormal error occurs in the TPF environment during an RTF run. An abnormal error in the TPF environment is any kind of CTL error or ECB error, accessing data outside the ECB. When this error occurs during an RTF run, RTF logs the error, exits the ECB and processes the next input message. This enhancement allows customers to log additional information at the time of the abnormal error in TPF.
An RTF run consists of multiple transactions (input messages) that are processed through the system, and events associated with the transaction are written to a log file. These events are macro trace, database writes/reads, tape writes/reads, console writes, abnormal ECB errors (CTL 3’s, etc.) and other events.
This new change enables an exec ($RTFPROG EXEC) to be called when an abnormal error occurs. This enables customers to record additional data at the time of the error, so that they can be analyzed later. Example: The $RTFPROG EXEC can issue the DUMP command which takes a dump, DECB EBW command to display the ECB, DCOR R1 – to display contents of R1, etc.).
Support for the Branch Relative (JUMP) instruction
Source View did not handle the new Branch Relative instruction set. Several customers are using the new instructions and requested that the support for these instructions be added to SOURCE VIEW.
Add format flag checking for Heap Storage
CMSTPF has been updated to set the format flag for Heap storage, and to check that the format flag in heap storage is not destroyed. Previous versions of CMSTPF relied on the page boundary to catch storage violations. This change ensures that users do not go beyond the end of their storage.
Support for PUT 17
Put 17 support has been added to CMSTPF. With this Release/Version, the TPFPUT level can be set to 17.
Increased size of Virtual pages to support large TPF DLMs and TPF DLLs
With more and more customers using very large DLMs and DLLs, the number of Virtual Storage Pages that can be defined for CMSTPF has been increased to 8192.
If your installation is writing and developing a lot of TPF C/C++ programs, TPF Software, Inc. recommends that you increase the size of the NOVSPAG parameter of the $CSYS macro. This will increase the size of the saved segments associated with CMSTPF, but will enable your application programmers to test these large DLMs and DLLs.
Increased size of DLMs and DLLs that can be locally loaded to CMSTPF
With this new version CMSTPF now supports the loading of very large DLMs and DLLs. With previous versions of CMSTPF, users could locally load a DLM or DLL (ISOC LOAD) that was less than 4 megabytes in size. With this new version, the administrator sets the maximum size of the DLM/DLL that can be loaded to CMSTPF.
A new parameter has been added to the $CSYS macro, the ISOCMSIZ parameter defaults to 4, indicating that DLMs and DLLs of up to 4 megabytes can be loaded. To allow a 16-megabyte DLM/DLL to be loaded this parameter should be set to 16.
When this parameter is set, the size of the saved segments associated with the system will increase, and the administrator should update the CTNSS TABLE and (potentially) the MAXSTOR parameter to accommodate these changes.
CMSTPF – Other problems/fixes
Other problems/fixes related with CMSTPF that have been fixed with this Release/Version can be viewed at the following link.
http://www.tpfsoftware.com/support/buildinfo.phtml
SOURCE VIEW – Other problems/fixes
Other problems/fixes related with SOURCE VIEW that have been fixed with this Release/Version can be viewed at the following link.
http://www.tpfsoftware.com/support/buildinfo.phtml
CTFS – Other problems/fixes
Other problems/fixes related with CTFS that have been fixed with this Release/Version can be viewed at the following link.
http://www.tpfsoftware.com/support/buildinfo.phtml