HPlogo MPE/iX Commands Reference Manual: HP 3000 MPE/iX Computer Systems > Chapter 6 Command Definitions P-R

PASXL

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

Compiles an HP Pascal/iX program. HP Pascal/iX is not part of the HP 3000 Series 900 Computer System Fundamental Operating Software and must be purchased separately. (Native Mode)

Syntax

PASXL [textfile] [,[objectfile] [,[listfile] [,libfile]]] [;INFO=quotedstring]

Parameters

textfile

The name of the text file that contains the source code to be compiled. This is an ASCII file that you prepare with an editor such as EDIT/V. The formal file designator is PASTEXT.

If you are running HP Pascal/XL from your terminal, you will probably specify a disk textfile. If you do not specify textfile, then the default file is $STDIN. $STDIN is the current input device, usually your terminal.

When textfile is your terminal, you can enter source code interactively in response to the > prompt. When you have entered all the source code, type a colon (:) in response to the > prompt to end the interactive input.

The source code to be compiled can be a program or a list of modules.

objectfile

Actual file designator of the object file to which the object code is stored. This file is stored in binary form and has a file code of either (1461) or NMRL (1033). Its formal file designator is PASOBJ. If the objectfile parameter is omitted, the object code is saved to the temporary file $OLDPASS.

If you specify objectfile, the compiler stores the object file in a permanent file of the correct size and type, and with the name you specified. If a file of the same name already exists, the object code overwrites that file.

If the compiler issues an error message telling you that a new or existing object file you are trying to compile to is too small, build the object file with a larger size and recompile to it.

You may use the MPE/iX SAVE command to store $OLDPASS as a permanent file under another name.

listfile

The name of the file on which the compiler writes the program listing. It can be any ASCII file. The default is $STDLIST. $STDLIST is usually the terminal if you are running HP Pascal/iX interactively, or the printer if you are running a batch job. The formal file designator is PASLIST.

If your terminal is both textfile and listfile, the compiler does not write the program listing on the terminal.

If listfile is $NULL or a file other than $STDLIST, the compiler displays on $STDLIST those lines that contain errors.

libfile

The name of the HP Pascal/iX library file that the compiler searches if a search path is not specified with the compiler option SEARCH. The default is PASLIB in your group and account.

quotedstring

A string of no more than 132 characters (including the single or double quotation marks that enclose it).

The quotedstring string is used in the HP Pascal/iX programming language to pass initial compiler options to the compiler. HP Pascal/iX brackets the quotedstring string with dollar signs ($) and places the string before the first line of source code in the text file.

NOTE: The formal file designators used in this command (PASTEXT, PASOBJ, PASLIST, and PASLIB) cannot be backreferenced as actual file designators in the command parameter list. For further information, refer to the "Implicit FILE Commands for Subsystems" discussion of the FILE command.

Operation Notes

The PASXL command compiles an HP Pascal/iX program and stores the object code in a permanent file (objectfile) or in $OLDPASS if you do not specify an object file. If textfile is omitted, the compiler expects the source program to be entered from your standard input device. If you do not specify listfile, the compiler sends the program listing to the formal file designator PASLIST (default is $STDLIST).

NOTE: This command is implemented as a command file. If you set the HPPATH variable to null (SETVAR HPPATH ""), the command file is not executed, and the command fails.

Use

This command may be issued from a session, job, or program. It may not be used in BREAK. Pressing Break suspends the execution of this command. Entering the RESUME command continues the execution.

Examples

The following example compiles an HP Pascal/iX program entered from your standard input device and stores the object program in the object file $OLDPASS. The listing is then sent to your standard list device.

  PASXL

The next example compiles an HP Pascal/iX program contained in the disk file SOURCE and stores the object program in the object file OBJECT. The program listing is stored in the disk file LISTFILE.

   PASXL SOURCE,OBJECT,LISTFILE
NOTE: Program development in native mode uses the MPE/iX LINK command not the MPE V/E PREP command. This produces a significant change in the method of linking code.

If you have created a program called MAIN and a subprogram called SUB, each contained in a separate file, you might choose to handle it this way in MPE V/E:

   PASCAL MAIN, SOMEUSL
PASCAL SUB, SOMEUSL
:
:
PREP SOMEUSL, SOMEPROG
:
RUN SOMEPROG

The second command appends the code from SUB to SOMEUSL.

However, LINK (in MPE/iX native mode) does not append SUB. In MPE/iX, you must compile the source files into separate object files and then use the Link Editor to link the two object files into the program file, as in this example:

   PASXL MAIN, OBJMAIN
PASXL SUB, OBJSUB
:
LINK FROM=OBJMAIN,OBJSUB;TO=SOMEPROG
:
RUN SOMEPROG

However, if an NMRL is used instead of an NMOBJ, the above can be simplified to the following:

   BUILD RLFILE;DISC=10000;CODE=NMRL
PASXL MAIN, RLFILE
PASXL SUB, RLFILE
LINK RLFILE,SOMEPROG
RUN SOMEPROG

Related Information

Commands

PASCALGO, PASCALPREP, PASCAL, PASXLGO, PASXLLK PREP, RUN, LINK, LINKEDIT

Manuals

HP Pascal/iX Reference Manual

HP Link Editor/XL Reference Manual

Feedback to webmaster