1.5.3.2.5 __S99TXTPP

The __S99TXTPP element points to addressable storage containing an array of text unit pointers. The following figure shows the format of text unit pointer lists and text units.

Figure 1-1 Text Unit Pointer Lists and text Units

Text Unit Pointer Lists and text Units Diagram

Note:

On mainframe, the last entry in the text unit pointer list has the high-order bit is set to one; however, on Linux, this setting is unworkable. Therefore, the last entry in the text unit pointer list has the value of 0xffffffffffffffff.

Table 1-14 Text Units

Offset Length Description
+0 2 Text unit key. The key identifies the type of information contained in the text unit.
+2 2 Number. The number field contains the number of length-data pairs that follow. Most of the text units have only one length and one data field.
+4 2 Length. The first of perhaps many length fields. The length value includes only the length of the data field immediately following it.
+6 n Data. The first of perhaps many data fields. The data field contains the parameter information being passed.
+(8+n)   Second length-data entry if the number field indicates more than one entry is present.

Data type definition in C program is as below:

Listing Data Type Definition in C Program

struct S99TU {                   /* Array of text units                           */
 unsigned short key;             /* Key for type of parameter                     */
 unsigned short number;          /* Number of len/parm pairs to follow            */
 struct {
 unsigned short len;             /* Length of the following parm                  */
 char parm[MAXTULEN];            /* Parameter value                               */
 } ent;
};

Data type definition in COBOL program is as below:

Listing Data Type Definition in COBOL Program

01 tu-ptr-list.
       03 tu-ptr-xxx    pointer.
       ……
       03               pic x(8) value x'ffffffffffffffff'.

* Text Unit for allocate DSN - Data Set Name
01 ws-aldsn-TU-xxx.
       03 ws-aldsn-TU-xxx-key       pic 9(4) comp-5.
       03 ws-aldsn-TU-xxx-num       pic 9(4) comp-5.
       03 ws-aldsn-TU-xxx-ent-len   pic 9(4) comp-5.
       03 ws-aldsn-TU-xxx-ent-txt   pic x(80).
 
……
set tu-ptr-xxx               to address of ws-aldsn-TU-xxx.
set s99rb-s99tu-array-ptr    to address of tu-ptr-list.