OCTCOMP

Generated from C.65.00 /SYSADMIN/PUB/MYCICAT last modified on Sun Aug 29 15:08:37 2004

Back to Main Index


OCTCOMP


     Converts compiled Compatibility Mode program instructions into
     Native Mode for the 900 Series.

SYNTAX


     OCTCOMP [input][,[targetfile][,[list]][;INFO=quotedstring]]

     or

     OCTCOMP [input][,[targetfile][,[list][,[INFO=]quotedstring]]]  *

     * Refer to the help option of the INFO=quotedstring

NOTE


This command follows the more flexible MPE/iX command line syntax.
Refer to the MPE/iX Commands Reference Manual (32650-90003).


CAUTION


Before using this command be sure your logon group and account
does not contain files of the form Yn, Ynn, or Ynnn where n is
any alphanumeric character.  OCTCOMP may create temporary files
named in this format and similarly named permanent files may cause
an error condition.


PARAMETERS


<omitted>           If no parameters are specified OCTCOMP returns a
                    command usage message and then exits.

input               Name of the valid input program or SL file to be
                    translated.  A valid program is a CM PROG or SL file
                    that can be loaded by the Compatibility Mode loader.

targetfile          Name of the file to hold translated output. (Refer
                    to OPERATION for a description of the default for
                    this parameter.)  If targetfile does not exist, it
                    will be created.  If it already exists, it will be
                    purged and a new file will be created.

list                Name of the file to which object code translator
                    will write listing and error messages.  If you omit
                    this parameter, the messages are sent to $STDLIST.
                    All parameter parsing errors are written to
                    $STDLIST.

INFO=quotedstring   A list of parameters to define format and content of
                    translated output.  This parameter list must be
                    surrounded with double or single quotation marks ("
                    or '), and each parameter set in the list must be
                    delimited with a semicolon if more than one set is
                    given in the command string.

                    help               Print detailed description of
                                       OCTCOMP parameters. This is the
                                       only option that does not require
                                       a source. OCTCOMP ;INFO="help"
                                       is valid; so is
                                       OCTCOMP ,,,"help".

                    add=seglist[;]     Add translated segments to the
                                       file named in the command string.
                                       Note that the named file may
                                       already contain translated code.
                                       When you specify this option,
                                       OCTCOMP will replace already
                                       translated segments.  If you use
                                       add, the targetfile option is not
                                       permitted.


                    errors[=count][;]  Specify maximum number of errors
                                       to be reported before OCTCOMP
                                       terminates. The count value must
                                       be greater than zero.  Errors are
                                       sent to named list file or, by
                                       default, to $STDLIST.  If
                                       parameter is given without
                                       optional =count, all errors are
                                       reported.  If you omit this
                                       parameter, OCTCOMP will report
                                       the first error, then terminate.

                    ignore=seglist[;]  Do not translate specified
                                       segments.  If seglist is omitted,
                                       an error is issued.

                    map[=seglist][;]   Generate PMAP listing for
                                       specified segments.  If seglist
                                       is omitted, PMAP listing is
                                       generated for all segments.

                    noovf[=seglist][;] Selectively ignore overflow traps
                                       in translating code.  If seglist
                                       is omitted, noovf action is
                                       assumed for all segments.
                                       Specifying this option gives
                                       OCTCOMP permission to decide
                                       whether or not to catch overflow.
                                       The default is that OCTCOMP
                                       follows the behavior of the
                                       emulator.

                                       Specifying this option improves
                                       the performance of integer
                                       arithmetic functions.

                    systemsl           Inform the OCT utility that the
                                       user intends to make the file
                                       SL.PUB.SYS.  This option is for
                                       users creating new systems.
                                       Several SL.PUB.SYS and system
                                       dependent code improvements are
                                       performed when this option is
                                       specified.

                    trans=seglist[;]   Translate only specified
                                       segments.

                                             ...where

                                       seglist = segnum[...,segnum].

                                       and

                                       segnum = 0 .. 9  - Decimal
                                       (default)

                                       or %0 .. 7 - Octal

                                       or $0 .. F - Hexadecimal

                                       or A[..] .. Z[..] - Alpha (SL
                                       Only) *

                                       or ^filename  (an indirect file)
                                       **

                                       *  In this form, a segnum
                                       identifier may consist of as many
                                       as 16 characters, beginning with
                                       an alphabetic character.

                                       ** Indirect files must be
                                       unnumbered.  Indirect files
                                       cannot be nested.

NOTE


The default base is decimal. The parameters add, ignore, and trans
are mutually exclusive.


OPERATION


     OCTCOMP translates MPE V/E instructions into native mode
     instructions.  If you specify targetfile, a new file will be
     created.  If you do not specify targetfile, OCTCOMP will
     attempt to append the translated instructions to input file.
     The append will fail, and an error message will be
     displayed, if the input file is too small to qualify as an
     output file.  In such a case, the solution is to specify a
     targetfile.

     User-defined labels are stripped from the input file and they may
     not be added to a translated file.

     After a new master installation tape is loaded, you must
     retranslate the file on which you used the systemsl option
     (to create SL.PUB.SYS).  Otherwise it will run in emulator
     mode.

     The noovf parameter can improve the code generated.
     However, the user must ensure that the necessary conditions
     hold for code translated using this parameter.  For the
     noovf parameter, the input code must not use the overflow
     trap mechanism.

     The OCTCOMP command does not support the following:

     o  File equations involving the input, targetfile or list
        files (backreferencing is not supported).

     o  $NULL, $STDIN, $STDLIST, $NEWPASS for input, targetfile
        or list.

        $OLDPASS for targetfile or list.

       ($OLDPASS is supported for input.)

     o  Using an Explicit or Implicit RUN command to execute the
        OCTCOMP command.

     This command is available in sessions and jobs, but not from
     a program and not during BREAK.  Pressing [Break] aborts the
     execution of this command.


EXAMPLE(S)


     The following set of examples illustrates the use of the
     add=, ignore=, and the trans= parameters and the effect each
     of them has on the content of the translated code output
     file with each succeeding invocation of OCTCOMP. In each
     example, the input file is assumed to consist of seven
     segments, 0 through 6.

     OCTCOMP SOURCEIN,OCTOUT;INFO="TRANS=1,2,3,4"

     In this example, the translated output file, OCTOUT, will
     consist of the SL file SOURCEIN and translated segments 1,
     2, 3, and 4 only.

     OCTCOMP OCTOUT;INFO="ADD=0,5,6;NOOVF=5"

     In the above example, the output in OCTOUT will consist of
     the existing SOURCEIN object code image, existing translated
     segments 1, 2, 3, and 4, with translated segments 0, 5, and
     6 appended to the file.  Segment 5 will not have overflow
     detection.

     OCTCOMP OCTOUT,OCTOUT2;INFO='IGNORE=1,2,4'

     In the above example, the output in OCTOUT2 will consist of
     the object code image from the existing file OCTOUT, with
     translated segments 0, 3, 5, and 6 only.  This time segment
     5 will have overflow detection in OCTOUT2.

     This output would, of course, be the same if the call to
     OCTCOMP were given using the original object code input file
     SOURCEIN, as

     OCTCOMP SOURCEIN,OCTOUT2;INFO="IGNORE=1,2,4"

     Using an indirect file

     OCTCOMP INSL;INFO="add=^adlist"

     Here adlist is an unnumbered file in which segments (names or
     numbers) are separated by a blank, a comma, or a new line

     FSSEG1,FSSEG2
     12
     TIMAGE09

     In this case, add will be applied to all of the segments
     specified in the indirectfile (^adlist).

ADDITIONAL INFORMATION


Commands:   None

Manuals :   Migration Process Guide (30367-90007)

Back to Main Index