H-Series Application Migration Guide (H06.03+)

pTAL Migration Tasks
H-Series Application Migration Guide429855-006
7-6
Procedure Attribute Not Supported
The $STACK_ALLOCATE function performs different rounding and alignment in TNS/E
pTAL, as follows:
If a program makes multiple calls to $STACK_ALLOCATE, the compiler might insert
intervening filler between the blocks of memory allocated by the succeeding calls. The
actual amount of filler can vary, so a program should not be coded to depend on the
amount of filler, if any, between adjacent stack-allocated data areas.
Procedure Attribute Not Supported
The INTERRUPT procedure attribute has no meaning in TNS/E pTAL. It is ignored by
the TNS/E pTAL compiler.
Use of Address Types Changed
In TNS/E pTAL, the CBADDR and CWADDR address types can be used only to
access P-relative (read-only) arrays. They cannot be assigned the address of a label or
subprocedure.
$LOCKPAGE Not supported in TNS/E pTAL. Replace with H-series directly-called
privileged interface.
$READBASELIMIT Not supported in TNS/E pTAL. Replace with H-series directly-called
privileged interface.
$READSPT Not supported in TNS/E pTAL. Replace with H-series directly-called
privileged interface.
$STACK_ALLOCATE Performs different rounding and alignment in TNS/E pTAL. See the
paragraph following this table.
$UNLOCKPAGE Not supported in TNS/E pTAL. Replace with H-series directly-called
privileged interface
.
$WRITEPTE Not supported in TNS/E pTAL Replace with H-series directly-called
privileged interface.
TNS/R pTAL TNS/E pTAL
Address of allocated area aligned to: 8-byte boundary 16-byte boundary
Size of allocated area rounded up to
multiple of:
8 bytes 16 bytes
Note. In both TNS/R and TNS/E pTAL, CBADDR and CWADDR are considered obsolete, and their
use is not recommended.