Save area
The calling program supplies (in register 13) the address of a save area in which the called program can store the current contents of the registers.
The called program creates a new save area and chains the two areas together.
The save area is structured as follows:
Bytes | Contents |
1-4 | 1st byte: 1st bit: activity bit (1: program active, 0: program inactive) 2nd byte: version = X' 01' |
5-8 | Start address of the save area of the calling program. The contents of the field in the first calling program are -1. |
9-12 | Start address of the next save area (if any). |
13-16 | Contents of register 14 |
17-20 | Contents of register 15 |
21-24 | Contents of register 0 |
25-28 | Contents of register 1 |
29-32 | Contents of register 2 |
. | |
69-72 | Contents of register 12 |
73-76 | Reserved for FOR1 |
77-80 | Address of the PCD |
81-84 | Address of the EHL (Event Handler List).If no EHL is defined, the field contains -1. |
85-128 | Reserved |
Prosys Common Data Area (PCD)
The PCD is a common data area used by all programming languages. The first part contains the data areas used by ILCS, including, for example, the “program mask” field which is initialized to the value X’0C’. The second part of the PCD contains the programming language areas, each of 128 bytes, that are available to the runtime systems of the various languages.