Release notes for Model 204 version 7.6

From m204wiki
Jump to: navigation, search

These release notes describe new features, enhancements, and other changes contained in Model 204 version 7.6, generally available in January, 2016.



These release notes contain installation and features information for the Rocket Model 204 version 7.6 release. Before beginning your installation, please read through this information about product installation and changes.

New in this release

This section summarizes the highlights of Model 204 version 7.6. For a full list of features, refer to the Table of Contents.

Category Feature
SOUL (User Language)
  • Fast/Unload HPO (High Performance Option) is a new Model 204 V7.6 add-on feature that activates zIIP processing for Fast/Unload.
  • Fast/Unload SOUL Interface (FUSI) is the new name for the product formerly known as the Fast/Unload User Language Interface. The FUSI is purchased as a separate Fast/Unload option, allows you to invoke Fast/Unload from a SOUL program.
  • Fast/Unload is no longer loaded as a separate load module. See Notes for system manager and installer.
Janus products
  • New SCREENTHROW setting for Janus Web ports to improve error handling for Janus Web Legacy applications
  • Janus Web Server support for HTTP 1.1 chunked encoding
  • Web class as a container for Janus Web Server specific methods
  • IPV6 support for Janus TCP/IP Base
Debugging and testing
  • The "Sirius Debugger" product name is changed to "TN3270 Debugger." A synonym, TN3270 DEBUG, is now available for the SIRIUS DEBUG command and all its subcommands.

Operating system and hardware requirements

Operating system requirements

  • IBM z/OS
    • Versions supported: z/OS version 1.07 through 2.1.
    • Version 1.07 is sufficient for all functionality except for the following features:

      • zHPF support requires version 2.1.
      • Large (1 MB) page support requires version 1.9.
      • Extended address volumes (EAV) requires version 1.12.

    On z/OS, Model 204 release 7.6 operates as an APF authorized load module, as required by many 7.6 features.
    To run Model 204 unauthorized, contact Technical Support.

  • IBM z/VM
    • Versions supported: z/VM version 5.4 through 6.3.
  • IBM z/VSE
    • Versions supported: z/VSE version 5.1 and 5.2.

Hardware requirements

In general, Model 204 version 7.6 requires the IBM z/890 or above processor.

However, the IBM z10 or above processor is required for the following features:

  • large (1 MB) page support
  • IBM's High Performance FICON (zHPF) support

Model 204 compatibility with operating systems

For information on Model 204 certification with IBM operating systems, see Model 204 system requirements.

Connect compatibility with Model 204

Connect version 7.5 or 7.7 is compatible with Model 204 version 7.6.

For more information on Connect installation, see the Connect wiki pages.

SOUL enhancements

New and changed SOUL statements

The Private keyword has been added to Class declarations, and Friend declarations have been added to Class blocks.

Members of a private class can be accessed only by the class itself or any class declared as a friend of the private class.

New and changed classes and methods

Json class

The Json class has been created to facilitate exchange of data with other platforms using the JSON format. This class contains a large number of methods and also adds three new exception classes: InvalidJsonType, JsonCircularReference, and JsonParseError, and one new enumeration: JsonType. In addition, the JsonParse function was added to the Unicode intrinsic class.

Web class

The Web class has been created as a container for Janus Web Server specific methods. This class contains two new methods: ScreenInputCallback and ScreenOutputCallback. There is also an associated new system type: WebScreenCallback and a new WebScreenException exception class.

"SSL" String methods

These new methods are added:

AES128CBCdecryptAES 128-bit key decryption
AES128CBCencryptAES 128-bit key decryption
AES128decryptAES 128-bit key decryption
AES128encryptAES 128-bit key decryption
AES192CBCdecryptAES 192-bit key CBC decryption
AES192CBCencryptAES 192-bit key CBC decryption
AES192decryptAES 192-bit key decryption
AES192encryptAES 192-bit key decryption
AES256CBCdecryptAES 256-bit key CBC decryption
AES256CBCencryptAES 256-bit key CBC decryption
AES256decryptAES 256-bit key decryption
AES256encryptAES 256-bit key decryption
DEA128CBCdecryptDEA 128-bit key decryption
DEA128CBCencryptDEA 128-bit key decryption
DEA128decryptDEA 128-bit key decryption
DEA128encryptDEA 128-bit key decryption
DEA192CBCdecryptDEA 192-bit key CBC decryption
DEA192CBCencryptDEA 192-bit key CBC decryption
DEA192decryptDEA 192-bit key decryption
DEA192encryptDEA 192-bit key decryption
DEA64CBCdecryptDEA 64-bit key CBC decryption
DEA64CBCencryptDEA 64-bit key CBC decryption
DEA64decryptDEA 64-bit key decryption
DEA64encryptDEA 64-bit key decryption
SHA224digest224-bit SHA-2 digest
SHA256digest256-bit SHA-2 digest

Utf8ToUnicode and Utf16ToUnicode string methods

The Utf8ToUnicode and Utf16ToUnicode String methods can now handle values that cannot be translated into EBCDIC. The AllowUntranslatable argument, now available for general use and True by default, specifies that such values will be stored into the target Unicode string rather than producing an exception.

New XHTML entities for square-bracket characters

By applying zap 76Z260, [ and ] are newly supported as XMHTL entities (notably in the U method). This provides a better approach to specifying square brackets (such as for XPath expressions) than the formerly recommended use of Static %variables initialized to the correct values.

For example, to produce an XPath expression equivalent to the following:


Code like this was recommended under version 7.5 of Model 204:

%lsq is string len 1 static initial('['):u %rsq is string len 1 static initial(']'):u . . . %myXmldoc:print('*/pers' %lsq '@name="Hector"' %rsq)

Under version 7.6, you can instead use the new entities and avoid the declarations, concatenations, and runtime conversions required above:


New default certificate-signing algorithm

Janus Network Security as well as the StringList methods AppendSignedCertificate and AppendSignedClientCertificate methods have changed their default signature algorithm from SHA-1 to SHA-256.

This change is initially provided by zap maintenance.

Janus Web Server enhancements

Chunked encoding support

Janus Web support for HTTP 1.1 chunked encoding is added. The V7.6 Janus Web Server handles inbound chunked HTTP requests, but it does not send chunked output because it always knows the exact length of the entire response.

For more information about chunked encoding, see

SCREENTHROW setting for Janus Web Legacy

The new SCREENTHROW setting for Janus Web ports allows Janus Web Legacy applications to trap client errors rather than deferring to the default Janus Web Legacy support error handling behavior.

Janus Web Server default rules

Janus Web used to automatically implement two web server ON rules to set up access to the Janus Web sample home page and to demonstration application procedures. These rules can be removed in version 7.6 (by zap maintenance).

Also, the automatic JANUS WEB ALLOW rule, which allowed any user to access the port without requiring a login, is changed to require a system administrator to explicitly define ALLOW rules to enable users to access a non-SSL Janus Web port:


This rule applies (with zap 76Z418) in version 7.6, unless overridden by user-added rules.

Note: With zap 76Z420, you can make the default ALLOW rule as it was in version 7.5 and earlier (ALLOW *). To do so, turn on the 1 bit of the WEBDFLT parameter:


Fast/Unload enhancements

Fast/Unload HPO

Fast/Unload HPO (High Performance Option) is a Model 204 7.6 add-on feature that activates zIIP processing for Fast/Unload when invoked by the Fast/Unload Soul Interface.

The feature requires setting the FUNMTASK parameter, and it requires purchase of the M204 HPO feature.

Note: This feature does not provide zIIP support for PGM=FUNLOAD; that support becomes available with Model 204 7.7.

FUSI: new product name for SOUL access to Fast/Unload

The Fast/Unload SOUL Interface (FUSI), purchased as a separate Fast/Unload option, allows you to invoke Fast/Unload from a SOUL program.

Change to Fast/Unload installation

Fast/Unload is no longer loaded as a separate load module (when using the Fast/Unload Soul Interface). See Notes for system manager and installer.

System management enhancements

Model 204 version number added to SMF records

A one-byte, hexadecimal representation of the Model 204 version number has been added to both SMF records (logout and since-last) at offset X'39'. For version 7.6, the value is X'4C' (76 decimal).

Performance enhancements

M204 HPO

The approach to zIIP (IBM System z Integrated Information Processor) support in Model 204 prior to version 7.6 is to offload to zIIP only certain eligible code safe for execution on the zIIP engine. The V7.6 improvements to the zIIP offload make most of the Model 204 code zIIP tolerant: almost all MP-capable code (Model 204 code that may run on an MP subtask) is offloaded to zIIP. Code that cannot be executed on zIIP uses the MP subtask or a maintask.

Note: While a limited version of this capability is available to all customers, the fully expanded zIIP support is known as M204 HPO, and it requires an additional license. For more information, contact Rocket Software.

This feature is for z/OS systems only. As in previous releases, specifying a nonzero value for the AMPSUBZ parameter activates zIIP processing.

User-written $functions and zIIPs

Instead of having to indicate what code should run on zIIP, it is only necessary now to indicate what Assembler code cannot run on zIIP. Customers planning to use zIIP processing must do either of these:

  • Inspect any user-written $functions for non-tolerant code (code that uses an SVC instruction or system services that may use SVC, like BSAM, VTAM, task-mode z/OS macros), which must be bracketed with SRBMODE OFF and SRBMODE ON.
  • Specify MP=NO (the default) or no MP setting at all in the function table to cause $functions to run on a maintask. Any other value for MP enables $functions to run on zIIP subtasks.

It is not always obvious whether code can or cannot run on a zIIP subtask. Even if all explicit SVCs and non-task-mode system macros issued by Model 204 have been identified and bracketed, some may be issued implicitly by z/OS or other services, so user testing is important.

Parameter changes for zIIP usage

The following are V7.6 changes to the documented recommendations for the parameters that initiate and control Model 204 zIIP processing:

  • Parameter ZQMAX is deprecated. If you have specified a value for ZQMAX, it is now ignored.
  • For zIIP processing, if FUND or FUNDLE is linked into the Model 204 load module, the X'01' bit of SIRFUNC must be set or the run is cancelled.
  • The XMEMOPT X'02' bit was not documented as necessary for zIIPs. It is necessary as of V7.6.
  • It is now strongly recommended that customers running MP/204 not set the X'40' bit of the SCHDOPT parameter, since MP subtasks will no longer steal work from zIIP SRBs unless they seem overloaded, in which case you probably do not want the SCHDOPT X'40' bit to prevent MP subtasks from helping out.

Fast/Unload HPO

Fast/Unload HPO (High Performance Option) is a new product that activates zIIP processing for the Fast/Unload Soul Interface (only).

64-bit addressing and Above The Bar (ATB) storage

Storage above the (2G) bar increases scalability, performance, and growth potential. 64-bit addressing is the de facto standard for Model 204.

  • ATB support for FTBL was released with Model 204 version 7.4.
  • ATB support for GTBL, NTBL, and QTBL was released with Model 204 version 7.5.
  • ATB support for STBL, VTBL, and several other tables is added in Model 204 version 7.6.

When using non-swappable ATB server space, each user gets SERVNSSZ bytes of ATB space, even if the thread is logged out or running resident requests. For greater efficiency, Model 204 also provides swappable ATB server areas that can supplement or replace the non-swappable areas. These swappable ATB server areas are controlled by the SERVGA and SERVGSZ parameters.

As more features use ATB buffers, it is a good idea to reevaluate your ATB and BTB buffer usage.

STBL, VTBL, and other tables in ATB storage

STBL, VTBL, and several other tables can now be placed into swappable or non-swappable server storage area above the bar.

To store a table in non-swappable ATB storage:

  • Increase the SERVNSSZ parameter by the corresponding table size.
  • Set the proper bit in SERVNSA.

To store a table in swappable ATB storage:

  • Increase the SERVGSZ parameter by the corresponding table size.
  • Set the proper bit in SERVGA.

Notes: The settings for each server table above the bar are independent of each other.
However, you cannot set bits in both SERVNSA and SERVGA.

TBO buffers, the Procedure dictionary, and Longstrings

64-bit addressing support for TBO buffers, the Procedure dictionary, and Longstrings is new in version 7.6:

  • Procedure dictionary pages will be in the above-the-bar buffer pool if NUMBUFG is set.
  • TBO and longstring pages will accessed either directly from in-memory CCATEMP, if TEMPPAGE is set, or from the above-the-bar buffer pool if TEMPPAGE is not set but NUMBUFG is.

High Performance FICON (zHPF)

Model 204 version 7.6 supports IBM's High Performance FICON (zHPF) feature, which allows faster I/O by limiting the number of interactions between the channel and the device.

Required hardware and software:

  • CPU: z10 and higher
  • z/OS version: 2.01
  • Disk subsystem: Contact your IT department to verify that your disk subsystem has the zHPF feature available and activated.
  • zHPF is not supported on z/CMS, z/VSE, or z/OS running under z/VM.

The new ZHPF command displays zHPF capabilities for each data set in a currently opened file.

Support for OI CHUNK field group members

The CHUNK attribute for DEFINE FIELD was introduced in Model 204 version 7.5 to improve the efficiency of range finds using Ordered Index (OI) processing. The CHUNK attribute can now be specified for field group members.

Debugging and testing enhancements

Unicode linefeed now causes line break on print

Printing or auditing a Unicode string invokes an implicit conversion to EBCDIC. If the string contains a Unicode linefeed character (U+000a), a new line will now be started on the output device, rather than a display of the linefeed character's hex encoding (
) as before.

This change should make it much easier to look at Unicode strings that contain formatting linefeeds. The feature works for any display-oriented statements such as Print, Audit, Trace, PrintText, AuditText, TraceText, Text, and so on.


As of version 7.5, the code for SoftSpy, the debugging, testing, and performance-tuning product, has been included in the Model 204 nucleus, significantly simplifying SoftSpy installation. SoftSpy remains a separately licensed Model 204 add-on product.

For more information about SoftSpy version 7.6, see the SoftSpy 7.6 release notes.

Janus/TN3270 Debugger

  • Product name change.

    The "Sirius Debugger" product name is changed to "TN3270 Debugger."

  • Synonym for SIRIUS DEBUG command.

    A synonym, TN3270 DEBUG, is made available for the SIRIUS DEBUG command and all its subcommands.

Compatibility issues

Unicode linefeed line break

While the Unicode linefeed line break feature is likely to make it easier to examine Unicode strings, in theory it could cause a backward-compatibility problem for applications that parse the results of a Print of Unicode data, expecting the 
 values to be present.

M204XSVC as an SVC

(for z/OS, z/VM CMS)
Zap 76Z043 applies to and enables you to use a Model 204 7.6 load module with an M204XSVC module from version 7.4 or 7.5 without applying any changes to the SVC. You need to apply this zap only if all of these are true:

  • Your site installed M204XSVC as an SVC in version 7.4 or 7.5 of Model 204.
  • M204XSVC is not linked into the Online, or the Online is not APF authorized.
  • The XMEMSVC parameter is specified in the CCAIN.

Once you have applied zap 76Z043, you can use a 7.6 load module with:

  • M204XSVC version 7.4
  • M204XSVC version 7.5 if zap 75Z345 was not applied or was removed by 76Z043. (If zap 75Z345 was applied but 76Z043 was not, message "M204.0077: Errors detected -- run cancelled" is issued and initialization terminates.)

Note: When a pre-7.6 M204XSVC is used with 7.6, the zHPF feature is not supported and its setting (X'10' in SYSOPT2) is reset with no message issued.

z/VM CMS users: In order to apply this zap to 7.6, you need to relink the M204CMS module as well as the ONLINE module. Contact Technical Support for details.

APSYPAGE parameter is obsolete

(applies to z/OS)

The APSYPAGE parameter has been disabled as of version 7.6. If APSYPAGE is non-zero, a warning will appear:

M204.2958: APSYPAGE obsolete as of 7.6

The Online will still come up but APSYPAGE will have no effect. See APSYPAGE parameter for information about using the RESPAGE parameter instead of APSYPAGE.

IODEV=37 is no longer supported

Line-at-a-time terminals used on IBM z/OS via the IBM Network Terminal Option (2741s, teletypes, and teletype-compatibles), specified by IODEV=37, are no longer supported.

NEBUFF default value is now 40

The default value of the NEBUFF parameter for Fast/Unload SOUL Interface (FUSI) is now 40. (NEBUFF had a default value of 2 in previous versions.) See also FUNL.NEB.

Unlabeled FDV statement compilation errors

Version 7.6 introduced an edge case incompatibility by disallowing code which is very questionable or clearly wrong; that is, previously the compiler allowed pretty much any statements between the label and the FDV. Such statements are no longer allowed. For example, the following was allowed in older versions of Model 204:

a: audit 'About to FDV' fdv foo b: frv in a

Inserting SOUL code between a label and an FDV statement is no longer allowed, and so the result of the above is:

M204.0311 Unacceptable statement reference

This change was introduced as zap maintenance in version 7.5 and 7.6 of Model 204.

New and changed commands

SWITCH STREAM (new parameter: RESET)

The SWITCH STREAM command has added an optional RESET parameter that causes any disabled parallel GDG members to be reopened during the switch. RESET is valid only for a CCAJLOG stream specified as a Parallel GDG.

TN3270 DEBUG (new synonym for SIRIUS DEBUG)

TN3270 DEBUG is now available as a synonym for the SIRIUS DEBUG command and all its subcommands.

ZHPF (new)

The ZHPF command displays zHPF capabilities for each data set for a currently opened file.

Displayed value Meaning
Supported: YES zHPF-type I/O (called "transport mode I/O") can be used for the data set.
Supported: NO Hardware or z/OS support for zHPF functionality is insufficient (for example, when z/OS runs under VM).
Supported: N/A zHPF support is not available at all on z/OS or on the hardware level.

New and changed parameters


The new CFROPTS system parameter makes it possible to request that Model 204 use strict fair share enqueuing for critical file resource lock conflicts.

DSPOPT (new setting: X'04')

The new X'04' setting for the DSPOPT parameter uses compression for 64-bit in-storage server swapping.

FUNL.NEB (new)

The new FUNL.NEB parameter enables you to change the default NEBUFF parameter for all subsequent Fast/Unload SOUL Interface (FUSI) requests. The default value of FUNL.NEB is 0, meaning that the original NEBUFF default value (40) is used. You can also specify a value greater than 1 to be the new NEBUFF default. FUNL.NEB=1 is not allowed.


The new FUNMTASK parameter specifies whether Fast/Unload SOUL Interface (FUSI) requests are to be executed on a z/OS subtask or on one of these: the Model 204 maintask, an MP/204 subtask, or the zIIP support SRB.

FUNPGM (obsolete)

The FUNPGM parameter is now obsolete, because the Fast/Unload CSECTs are all linked with the Online, and the Fast/Unload load module is no longer loaded as a separate load module.

FUNTSKN (new functionality)

As part of support for the Fast/Unload SOUL Interface (FUSI), setting the FUNTSKN parameter now causes implicit definition of IODEV=25 threads, as many as the value of FUNTSKN.


The new LSERVERG parameter shows the current server size required for the user's tables in the ATB (above the bar) server.


The new LSERVERN parameter shows the current server size required for the user's tables in the NSA (non-swap area).

MAXOND (new)

The new MAXOND parameter defines the number of times an On unit can be entered before the evaluation is terminated.

NEBUFF (changed default value)

The default value of the NEBUFF parameter for Fast/Unload SOUL Interface (FUSI) requests is now 40. (Prior to 7.6, the default NEBUFF value was 2.) See also FUNL.NEB.

PWDCOLON (new; 7.6 only)

Note: This feature requires zap 76Z291.

PWDCOLON is applicable to version 7.6 only; it will be superseded in 7.7 by additional password functionality.

The PWDCOLON system parameter allows the use of colons in login passwords.

When PWDCOLON=1 is set in CCAIN, users can enter colons in login passwords. Recognizing colons in these passwords also means that users cannot change their passwords with the existing oldpassword:newpassword construction. When PWDCOLON is on, passwords can only be changed in one of the following ways:

  • using the LOGCTL C command (system manager privileges required)
  • using the $Sir_Login function call (in Janus Web Server and Janus Sockets applications)

RCVOPT (new setting: X'20')

The X'20' bit of the RCVOPT parameter prevents the flushing of dirty pages for a file that does not do pre-imaging (FRCVOPT X'20' set) during a subtransaction checkpoint.


The SERVACTG parameter shows the swappable size, in bytes, of the ATB server area being used by the current user.


The SERVACTV parameter shows the swappable size, in bytes, of the BTB server area being used by the current user.

SERVGA (new settings)

The SERVGA parameter now has settings to allocate additional server tables in the ATB swappable-server area.

SERVNSA (new settings)

The SERVNSA parameter now has settings to allocate additional server tables in the ATB non-swappable-server area.

SERVSIZE (new default/minimum value)

The minimum value for SERVSIZE is changed from zero to 65536. If SERVSIZE is explicitly set in CCAIN and its value is less than 64K, the following message is issued:

M204.1149: SERVSIZE has been set to its minimum value: 65536

If SERVSIZE was not set but was calculated by the system to a value less than 64K, the following message is issued:

M204.0163: SERVSIZE increased to 65536

This change was introduced as zap maintenance in version 7.4, 7.5, and 7.6 of Model 204.

SYSOPT2 (new setting)

The SYSOPT2 parameter now has a setting to enable zHPF usage.

VTLAPSY (newly documented)

The VTLAPSY parameter, previously undocumented, indicates the name of an APSY subsystem used to provide full-screen login support for IODEV=7 terminals (3270-type).

Notes for system manager and installer

Fast/Unload and FUNPGM

In version 7.6 (of Model 204 and of Fast/Unload), the Fast/Unload CSECTs are all linked with the Online. This changes the implementation of the Fast/Unload SOUL Interface (FUSI), and it was made primarily to enable the use of zIIPs with the FUSI. The main implication of this change is that the FUNPGM parameter is now obsolete, because Fast/Unload is not loaded as a separate load module.

CRAM SVC installation is deprecated

The CRAM SVC installation has been deprecated as of version 7.5.
Installation of CRAM-XDM is described as part of the Model 204 installation.

Documentation conversion to wiki format

Rocket Model 204 documentation is being converted from individual manuals in PDF format to a set of cross-linked HTML articles in this integrated wiki, M204wiki.

As of Model 204 version 7.6, most manuals are now in wiki format. The rest remain in PDF format, available in the Rocket M204 folder of the Rocket Software Documentation Library.

For details, see Model 204 documentation.

New and updated messages

See New and updated messages in Model 204 version 7.6 for details.