MODPROT parameter

From m204wiki
Jump to navigation Jump to search

204 load module protection flags

Summary

Default value
X'01'
Parameter type
System
Where set
User 0 CCAIN parameters
Related products
All
Introduced
Before Sirius Mods 6.7

Description

This User 0 system parameter is a bitmask parameter that controls the load module protection facility. The load module protection facility protects the reentrant parts of the Model 204 load module from update after initialization. Since most of Model 204 is reentrant, this facility protects most of the Model 204 load module from accidental corruption, thus increasing the Online's reliability.

The meaning of the bits in this parameter are:

X'01'
Protect the reentrant parts of the Model 204 load module. This bit should always be left on.
X'02'
Protect FUNU. FUNU contains locally maintained $functions, so it cannot be assumed to be reentrant. However, if FUNU is known to be reentrant, this bit can be set.
X'04'
Protect PTCH. PTCH contains early warning code. While this code is generally reentrant, this is not guaranteed to be the case. Still, it is probably generally safe to set this bit.

The default value for MODPROT is X'01', which means that most of the Model 204 load module is protected, but FUNU and PTCH are not.

Usage notes

  • Setting MODPROT will not affect *ZAP.

    A *ZAP of a protected part of the Model 204 load module will temporarily turn off the module protection for the area being *ZAP'ed.

  • The following non-re-entrant modules cannot be protected and cause gaps within module protection, as well as multiple M204.2947 messages:
    Version 7.7 and earlier:
    BTRP, DBUG. DS7L, ECFI, FLIO, FLL3, FLOD, FLXT, FUNA, IFAM, IFCM, IFIC, IFIF, IFII, IFPS, KOMM$, MUSE, TC75, SYSFXA, SYSXI
    Version 7.8:
    IFAM, KOMM$,SYSFXA, SYSXI

    To prevent these gaps:

    1. Place the objects at the end of the module link.
    2. Specify a PAGE directive prior to their inclusion.