HP 3000 Manuals

func sys [ System Debug Reference Manual ] MPE/iX 5.0 Documentation


System Debug Reference Manual

func sys 

Coerces an expression into a SYS logical code pointer (LCPTR).

Syntax 

     sys (value)

During the evaluation of the parameter to this function, the search path
used for procedure name lookups is limited to the system library file
(SYS).

Formal Declaration 

     sys:sys (value:any)

Parameters 

 value           An expression to be coerced.  All types are valid.

          Derivation of the SYS Bit Pattern 

--------------------------------------------------------------------------------------------
|                           |                                                              |
|      Parameter Type       |                            Action                            |
|                           |                                                              |
--------------------------------------------------------------------------------------------
|                           |                                                              |
| BOOL                      | 0.1 if TRUE, 0.0 if FALSE.                                   |
|                           |                                                              |
--------------------------------------------------------------------------------------------
|                           |                                                              |
| U16                       | Set the high-order 32 bits (SID or segment part) to zero.    |
| S16                       | Right justify the original 16-bit value in the low-order 32  |
|                           | bits (offset part) with zero fill.                           |
|                           |                                                              |
--------------------------------------------------------------------------------------------
|                           |                                                              |
| U32                       | Set the high-order 32 bits (SID or segment part) to zero.    |
| S32                       | Transfer the original bit pattern into the low-order 32 bits |
| SPTR                      | (offset part) unchanged.                                     |
|                           |                                                              |
--------------------------------------------------------------------------------------------
|                           |                                                              |
| LPTR   CST                | Transfer both parts of the address unchanged.                |
| PROG   CSTX               |                                                              |
| GRP                       |                                                              |
| PUB                       |                                                              |
| LGRP                      |                                                              |
| LPUB                      |                                                              |
| SYS                       |                                                              |
| USER                      |                                                              |
| TRANS                     |                                                              |
|                           |                                                              |
--------------------------------------------------------------------------------------------
|                           |                                                              |
| STR                       | Transfer 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 sys(12.304) 
     SYS %12.304

Coerce the simple long pointer into a SYS logical code pointer.

     %cmdebug > wl sys(pub(24.630)) 
     SYS %24.630

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

     $nmdat > wl sys( 1 ) 
     SYS $0.1

     $nmdat > wl sys( ffff ) 
     SYS $0.ffff

     $nmdat > wl sys( 1234abcd ) 
     SYS $0.1234abcd

     $nmdat > wl sys( -1 ) 
     SYS $0.ffffffff

     $nmdat > wl sys( 1234.5678 ) 
     SYS $1234.5678

     $nmdat > wl sys( true ) 
     SYS $0.1

     $nmdat > wl sys( "ABCDEFG" ) 
     SYS $414243.44454647

     $nmdat > wl sys( prog(1.2) ) 
     SYS $1.2

Limitations, Restrictions 

none



MPE/iX 5.0 Documentation