pTAL Reference Manual (G06.24+, H06.09+, J06.03+)
PROC64PTR p (x,y)
INT(16) x;
INT(16) y;
END PROCPTR; -- Note keyword PROCPTR here.
Indirection Symbols
.EXT32
An explicit 32-bit extended address type indirection symbol similar to .EXT.
INT .EXT I; ! @I is type EXTADDR
INT .EXT32 J; ! @J is type EXT32ADDR
.EXT64
A 64-bit extended address type indirection symbol similar to .EXT and .EXT32.
INT .EXT64 J; ! @J is type EXT64ADDR
Built-in Routines
$EXT64ADDR_TO_EXTADDR
$EXT64ADDR_TO_EXTADDR ( <EXT64ADDR expression> )
Converts 64-bit extended address values to 32-bit extended EXTADDR-typed address values; no
check is performed to see if the resulting 32-bit extended address value is valid.
$EXT64ADDR_TO_EXT32ADDR
$EXT64ADDR_TO_EXT32ADDR ( <EXT64ADDR expression> )
Converts 64-bit extended address values to 32-bit EXT32ADDR-typed extended address values;
no check is performed to see if the 32-bit address value is valid.
$EXT64ADDR_TO_EXT32ADDR_OV
$EXT64ADDR_TO_EXT32ADDR_OV ( <EXT64ADDR expression> )
Converts 64-bit extended address values to 32-bit EXT32ADDR-typed extended address values; if
the address cannot be represented in 32-bits, an overflow trap occurs. This trap cannot be disabled
using the existing overflow trap controlling mechanisms (For example, using
NO_OVERFLOW_TRAPS).
$EXTADDR_TO_EXT64ADDR
$EXTADDR_TO_EXT64ADDR ( <EXTADDR or EXT32ADDR expression> )
Converts 32-bit extended address values to 64-bit EXT64ADDR-typed extended address values.
$FIXED0_TO_EXT64ADDR
$FIXED0_TO_EXT64ADDR ( <FIXED expression> )
Converts value of type FIXED to EXT64ADDR address value.
$FIX
$FIX ( <EXT64ADDR expression> )
In addition to the conversions supported by $FIX, it also converts a value of type EXT64ADDR to
integer type FIXED.
$IS_32BIT_ADDR
$IS_32BIT_ADDR ( <address expression> )
532 64-bit Addressing Functionality