HP3000_16 [ HP Pascal/iX Reference Manual ] MPE/iX 5.0 Documentation
HP Pascal/iX Reference Manual
HP3000_16
HP3000_16 is a System-Dependent MPE/iX Option.
The HP3000_16 compiler option specifies the Pascal/V packing algorithm
for the allocation and alignment of all data structures.
Syntax
$HP3000_16$
Default HP Pascal optimized data structures (see the HP3000_32
compiler option).
Location At front.
The HP3000_16 compiler option causes all data types (except files and
pointers) to be allocated and aligned according to the Pascal/V packing
algorithm. A structure compiled by the HP Pascal compiler with HP3000_16
looks exactly like the same structure compiled by the Pascal/V compiler.
This is useful for reading data files generated by Pascal/V.
HP3000_16 does not affect file and pointer types. The allocation and
alignment of file variables is system-dependent, and HP Pascal does not
allow the creation of files that contain files.
The allocation and alignment of pointers is also system dependent, so
pointers are not portable. A pointer declared in an HP Pascal program
can be used only with HP Pascal (not Pascal/V).
Real numbers declared in an HP3000_16 program are represented in MPE V
floating-point representation. Operations performed with these numbers
emulate MPE V floating-point operations.
All constants declared in an HP3000_16 program are Pascal/V constants.
Example
See the example for the HP3000_32 compiler option.
NOTE A program that contains the HP3000_16 compiler option cannot call
the PAUSE intrinsic directly. The work-around is to declare PAUSE
this way, instead of declaring it as an intrinsic:
PROCEDURE pause $ALIAS 'em_pause'$ (VAR r : real);
EXTERNAL;
MPE/iX 5.0 Documentation