Use the @KEYPOINT control statement to load keypoints.
The following figure shows the syntax for the @KEYPOINT control
statement section of the loader input file. In this figure, the double
arrowhead (►►) indicates that the information must begin on a new
line. Figure 1. @KEYPOINT control
statement section of the loader input file
Note: This must be the first line of the @KEYPOINT control statement
section.
Note: If you have more than one keypoint to load, use this line as
many times as you need. Each time you use it, separate occurrences
with a comma or start each occurrence on a new line.
Note: If you have more than one keypoint to patch (or if you have
more than one patch for a keypoint), use this line as many times as
you need. Each time you use it, start the next occurrence on a new
line.
defaultloc
is the default location for the @KEYPOINT control statement section,
where defaultloc is one of the following:
The name of a search path that was defined previously in an @DEFINE
control statement section (for example, &KEYPPATH)
An absolute path (for example, /u/ztpf/keyppath)
A relative path (for example, keyppath).
Note: All relative paths
are appended to the current working directory, which is defined using
the CWD parameter in the @DEFINE control statement section. Therefore,
you must define the CWD parameter before you can specify a relative
path.
The default location is searched for the keypoints listed
in the @KEYPOINT control statement section. You can override the default
location for a particular keypoint by specifying a specific location
for that keypoint.
specificloc
is the specific location for the keypoint to load, where specificloc is
one of the following:
The name of a search path that was defined previously in an @DEFINE
control statement section (for example, &KEYPPATH)
An absolute path (for example, /u/ztpf/keyppath)
A relative path (for example, keyppath).
Note: All relative paths
are appended to the current working directory, which is defined using
the CWD parameter in the @DEFINE control statement section. Therefore,
you must define the CWD parameter before you can specify
a relative path.
If you specify a specific location for a keypoint, this
location overrides any default location that may have been defined
for the @KEYPOINT control statement section; that is, only the specific
location is searched for the keypoint. If the keypoint is not found
in the specific location, an error occurs.
CWD
is the value specified for the CWD parameter in the @DEFINE control
statement section. If you do not specify a default location or a specific
location, this is the only location that is searched.
keypoint
is the keypoint to write to load. Specify one of the following:
CTK0
CTK1
CTK2
CTK3
CTK4
CTK5
CTK6
CTK7
CTK8
CTK9
CTKA
CTKB
CTKC
CTKE
CTKI
CTKM
CTKV.
See z/TPF and z/TPFDF System Generation for
more information about these keypoints.
version
is the 1- to 2-character alphanumeric version code for the keypoint.
.ext
specifies an extension of the full keypoint name as created by
the linker, where ext is the appropriate
extension. For example, if the linker creates a keypoint called ctk751.so,
the .so portion of the name is optional.
%cpuid
loads the specified keypoint to a processor, where cpuid is
the identifier for the processor. If a processor identifier is not
specified and the keypoint is processor-specific, the identifier defaults
to the first processor that was defined.
(progcmt)
appends a comment for the specified keypoint that is displayed
in the output report, where progcmt is the
text appended.
@@keypoint
patches a keypoint, where keypoint is
one of the following keypoints:
CTK0
CTK1
CTK2
CTK3
CTK4
CTK5
CTK6
CTK7
CTK8
CTK9
CTKA
CTKB
CTKC
CTKE
CTKI
CTKM
CTKV.
See z/TPF and z/TPFDF System Generation for
more information about these keypoints.
rsa
is the 1- to 6-digit hexadecimal relative starting address in
the keypoint. The relative starting address specifies the offset into
the keypoint where the patch is applied.
newdata
is the new data (or patch) that will replace the old data in the
keypoint, beginning at the relative starting address. The new data
must be an even number of hexadecimal digits and cannot exceed 32
digits (16 bytes).
valdata-olddata
validates the data that is replaced by newdata,
where olddata is an even number in hexadecimal
format that does not exceed 32 digits (16 bytes). The data specified
for olddata must match what is currently
in the keypoint. If it does not, the data in the keypoint is not changed
and an error occurs. If it does, the data in the keypoint is replaced
by newdata. For example, this parameter
can help verify that your patch is starting at the correct relative
starting address.
Note:
The length of the data that you are validating can have fewer
bytes or more bytes than the new data. If the validation is completed
successfully, only the number of bytes in your new data will be replaced.
This parameter is ignored if the patch is for an online keypoint.
ONLine
specifies that only the patch data is applied to the online keypoint.
The entire keypoint is not loaded and the online keypoint is not changed
except for the patch data.
Note: You must specify the ONLine parameter
when patching a keypoint that is not being loaded.