HP 3000 Manuals

TECHNICAL ARTICLES [ COMMUNICATOR 3000/XL Release 1.2, Version A.20.10 ] MPE/iX Communicators


COMMUNICATOR 3000/XL Release 1.2, Version A.20.10

Chapter 7  TECHNICAL ARTICLES 

Irrecoverable Source and USL Files 

by Craig Hada--Commercial Systems Division 

SEGMENTER, version A.03.X4, for Release 1.2 of MPE XL has been enhanced
to create program and segmented library (SL) files that are compatible
with those created on MPE V/E based systems.  A method of converting
invalid program and SL files to MPE V/E format exits for those cases
where the source and USL (user subprogram library) files for programs or
SLs have been lost (SEGMENTER, version A.03.X3 and earlier).  Invalid
program and SL files can be converted to MPE V/E format by performing the
following sequence of steps.  These steps should only be performed if the
programs or SLs are to be transported from an MPE XL system to an MPE V/E
system.

CONVERTING PROGRAM FILES TO MPE V/E FORMAT 

To convert program files created with SEGMENTER, version A.03.X3 and
earlier, to MPE V/E format, perform the following steps.  This conversion
is necessary if the following LOADER error message is encountered when
the program is executed.

     CANNOT RUN THIS PROGRAM BECAUSE ALL OF ITS CODE IS NOT IN THE
     FIRST EXTENT OF THE PROGRAM FILE.  (CIERR 639)

   1.  Perform a :LISTF,2 on the program file.

               :LISTF OLDPROG,2
               ACCOUNT=  MPEV        GROUP=  HADA

               FILENAME  CODE  ------------LOGICAL RECORD-----------  ----SPACE----
                                 SIZE  TYP        EOF      LIMIT R/B  SECTORS #X MX

               OLDPROG   PROG    128W  FB         206        206   1      208  1  *

   2.  Note the LIMIT of the file (for this program file it is 206) and
       :BUILD a new program file in the following manner:

               :BUILD NEWPROG;REC=128,1,F,BINARY;DISC=206,1,1;CODE=PROG

   3.  Perform a :LISTF,2 on the new program file to make sure that it
       was created with the correct attributes (one extent allocated and
       one extent for maximum number of extents).

               :LISTF NEWPROG,2
               ACCOUNT=  MPEV        GROUP=  HADA

               FILENAME  CODE  ------------LOGICAL RECORD-----------  ----SPACE----
                                 SIZE  TYP        EOF      LIMIT R/B  SECTORS #X MX

               NEWPROG   PROG    128W  FB           0        206   1      207  1  1

   4.  :FCOPY the old program file into the new program file.

               :FCOPY FROM=OLDPROG;TO=NEWPROG

   5.  The program is now in the proper format to be executed on an MPE
       V/E system.

CONVERTING SL FILES TO MPE V/E FORMAT 

To convert SL files created with SEGMENTER, version A.03.X3 and earlier,
to MPE V/E format, perform the following steps.  This conversion is
necessary if the following LOADER or SEGMENTER error messages are
encountered when trying to access the SL file.

SEGMENTER error message:

     *** ERROR ***
     ERROR #19 INVALID SL FILE

LOADER error messages:

     INVAID GROUP SL FILE   (LOAD ERR 30)
     UNABLE TO LOAD PROGRAM TO BE RUN.  (CIERR 625)

     INVALID PUBLIC SL FILE   (LOAD ERR 29)
     UNABLE TO LOAD PROGRAM TO BE RUN.  (CIERR 625)

   1.  Perform a :LISTF,2 on the SL file.

               :LISTF sl,2
               ACCOUNT=  MPEV        GROUP=  HADA

               FILENAME  CODE  ------------LOGICAL RECORD-----------  ----SPACE----
                                 SIZE  TYP        EOF      LIMIT R/B  SECTORS #X MX

               SL        SL      128W  FB       25495      25497   1    25498  1  *

   2.  Note the LIMIT of the file (for this SL file it is 25497) and
       :BUILD a new SL file in the following manner:

               :BUILD NEWSL;REC=128,1,F,BINARY;DISC=25497,1,1;CODE=SL

   3.  Perform a :LISTF,2 on the new SL file to make sure that it was
       created with the correct attributes (one extent allocated and one
       extent for the maximum number of extents).

               :LISTF sl,2
               ACCOUNT=  MPEV        GROUP=  HADA

               FILENAME  CODE  ------------LOGICAL RECORD-----------  ----SPACE----
                                 SIZE  TYP        EOF      LIMIT R/B  SECTORS #X MX

               NEWSL     SL      128W  FB       25495      25497   1    25498  1  1

   4.  :FCOPY the old SL file into the new SL file.

               :FCOPY FROM=SL;TO=NEWSL

   5.  Validate the new SL by accessing it with SEGMENTER.

               :SEGMENTER
               HP32050A.03.X4  SEGMENTER/3000 (C) HEWLETT-PACKARD CO 1988
               -SL NEWSL
               -

   6.  If SEGMENTER returns the dash prompt without an error message, the
       SL file is valid.  EXIT SEGMENTER and rename the valid SL to "SL"
       .



MPE/iX Communicators