MODPROT parameter: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
m (misc formatting)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Template:MODPROT parameter subtitle}}
==Summary==
==Summary==
<dl>
<dl>
Line 10: Line 11:
<dd>All
<dd>All
<dt>Introduced
<dt>Introduced
<dd>Before <var class="product"><var class="product">Sirius Mods</var></var> 6.7
<dd>Before <var class="product">Sirius Mods</var> 6.7
</dl>
</dl>
==Description==
==Description==
This User 0 system parameter is a bitmask parameter that controls the
This User 0 system parameter is a bitmask parameter that controls the
load module protection facility.
load module protection facility.
The load module protection facility protects the reentrant parts of the
The load module protection facility protects the reentrant parts of the
''Model 204'' load module from update after initialization.
<var class="product">Model&nbsp;204</var> load module from update after initialization.
Since most of ''Model 204'' is reentrant, this facility protects most of the
Since most of <var class="product">Model&nbsp;204</var> is reentrant, this facility protects most of the
''Model 204'' load module from accidental corruption, thus increasing the
<var class="product">Model&nbsp;204</var> load module from accidental corruption, thus increasing the Online's reliability.
Online's reliability.


The meaning of the bits in this parameter are:
The meaning of the bits in this parameter are:
<dl>
<dl>
<dt>X'01'
<dt>X'01'
<dd>Protect the reentrant parts of the ''Model 204'' load module.
<dd>Protect the reentrant parts of the <var class="product">Model 204</var> load module.
This bit should always be left on.
This bit should always be left on.
<dt>X'02'
<dt>X'02'
Line 38: Line 39:
Still, it is probably generally safe to set this bit.
Still, it is probably generally safe to set this bit.
</dl>
</dl>
The default value for MODPROT is X'01', which means that most of the
The default value for <var>MODPROT</var> is X'01', which means that most of the <var class="product">Model&nbsp;204</var> load module is protected, but FUNU and PTCH are not.
''Model 204'' load module is protected, but FUNU and PTCH are not.
 
==Usage notes==
<ul>
<li>Setting <var>MODPROT</var> will not affect <var>[[Overview of Model 204 commands#Using the asterisk (*) for Model&nbsp;204 command and SOUL comments|*ZAP]]</var>.
<p>
A <var>*ZAP</var> of a protected part of the <var class="product">Model&nbsp;204</var> load module will temporarily turn off the module protection for the area being *ZAP'ed. </p></li>
 
<li>The following non-re-entrant modules cannot be protected and cause gaps within module protection, as well as multiple [[M204.2947]] messages:
<dl>
<dt>Version 7.7 and earlier: </dt>
<dd>BTRP, DBUG. DS7L, ECFI, FLIO, FLL3, FLOD,
FLXT, FUNA, IFAM, IFCM, IFIC, IFIF, IFII,
IFPS, KOMM$, MUSE, TC75, SYSFXA, SYSXI </dd>
 
<dt>Version 7.8: </dt>
<dd>IFAM, KOMM$,SYSFXA, SYSXI </dd>
</dl>
<p>
To prevent these gaps: </p>
<ol>
<li>Place the objects at the end of the module link. </li>
<li>Specify a <code>PAGE</code> directive prior to their inclusion. </li> </ol></li>
</ul>


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.
[[Category:System parameters]]
[[Category:System parameters]]
[[Category:Parameters]]
[[Category:Parameters]]

Latest revision as of 15:59, 2 July 2018

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.