HPlogo System Debug Reference Manual > Chapter 10 System Debug Standard Functions

func cstx

MPE documents

Complete PDF
Table of Contents
Index

E0201 Edition 4 ♥
E0300 Edition 3
E0692 Edition 3

Coerces an expression into a CSTX absolute code pointer (ACPTR).

Syntax



   cstx (value)

CM program segments are loaded into the CSTX. CM library segments are loaded into the CST.

During the evaluation of the parameter to the CSTX function, the CM search path is limited to the program file (PROG).

Formal Declaration



   cstx:cstx (value:any)

Parameters


value

An expression to be coerced. All types are valid.

Table 10-3 Derivation of the CSTX Bit Pattern

Parameter Type Action
BOOL0.1 if TRUE, 0.0 if FALSE.
U16
S16
Set the high-order 32 bits (SID or segment part) to zero. Right justify the original 16-bit value in the low-order 32 bits (offset part) with zero fill.
U32
S32
SPTR
Set the high-order 32 bits (SID or segment part) to zero. Transfer the original bit pattern into the low-order 32 bits (offset part) unchanged.
LPTR SYS
PROG USER
GRP TRANS
PUB CST
LGRP CSTX
LPUB
Transfer both parts of the address unchanged.
EADDR
SADDR
Transfer both parts of the address, truncating the 32 high-order bits of the offset.
STRTransfer the ASCII bit pattern for the last eight characters in the string. Strings shorter than eight characters are treated as if they were extended on the left with nulls.

Examples



   %cmdebug > wl cstx(12.304)
   CSTX %12.304

Coerce the simple long pointer into a CSTX absolute code pointer.

   %cmdebug > wl cstx( sort )
   CSTX %4.3302

Print the address of the procedure named sort. Note that the search path used for procedure name lookups is restricted to the program file (PROG).

   %cmdebug > wl cstx(sys(24.630))
   CSTX %24.630

The coercion simply changes the associated absolute file. Note that no complicated conversion or range checking is performed.

Limitations, Restrictions


none




func cst


func dstva