PL/M-86 COMPILER    SUBROUTINE MODULE - PART 1                                   10/5/81    PAGE   1


ISIS-II PL/M-86 V2.0 COMPILATION OF MODULE SUBR1
OBJECT MODULE PLACED IN SUBR1.OBJ
COMPILER INVOKED BY:  :F0: SUBR1.PLM DEBUG OPTIMIZE(2) DATE(10/5/81) PAGEWIDTH(100) XREF



              $title ('SUBROUTINE MODULE - PART 1')
   1          subr1:
              do;

              $include (:f1:macro.lit)
          =   $nolist

              /*

                modified  3/26/81  R. Silberstein

              */

                  /* compute if number is in range (-128,127) */
                  /* exit 1 if in range, 2 otherwise */

   3   1      typecalc: procedure(val) byte public;
   4   2        declare val address,
                    lowb byte at (.val),
                    highb byte at (.val+1);
   5   2        lowb=lowb and 80h;
   6   2        if highb=0 then
   7   2          if lowb=0 then return 1;
   9   2        if highb=0ffh then
  10   2          if lowb <> 0 then return 1;
  12   2        return 2;
  13   2      end typecalc;

              /* test if number is a "word" (>255 and <-256) */
  14   1      wrdtest: procedure(n) byte public;
  15   2        declare n address;
  16   2        return ((n < 0ff00h) and (n > 0ffh));
  17   2      end wrdtest;

  18   1      copy: procedure(n,s,d) public;
  19   2        declare n byte,
                    (s,d) address,
                    sch based s byte,
                    dch based d byte;
  20   2        DO WHILE (N := N - 1) <> 0FFH;
  21   3          DCH = SCH;
  22   3          D = D + 1;
  23   3          S = S + 1;
  24   3        END;
  25   2      end copy;

  26   1      end subr1;
PL/M-86 COMPILER    SUBROUTINE MODULE - PART 1                                   10/5/81    PAGE   2


CROSS-REFERENCE LISTING
-----------------------


   DEFN  ADDR   SIZE  NAME, ATTRIBUTES, AND REFERENCES
  ----- ------ -----  --------------------------------


      2               ADDR . . . . . . .    LITERALLY
     18  0048H    37  COPY . . . . . . .    PROCEDURE PUBLIC STACK=0008H
      2               CR . . . . . . . .    LITERALLY
     18  0004H     2  D. . . . . . . . .    WORD PARAMETER AUTOMATIC        19   21   22 
     19  0000H     1  DCH. . . . . . . .    BYTE BASED(D)         21 
      2               DCL. . . . . . . .    LITERALLY
      2               ELSEDO . . . . . .    LITERALLY
      2               ENDCASE. . . . . .    LITERALLY
      2               ENDDO. . . . . . .    LITERALLY
      2               ENDFOREVER . . . .    LITERALLY
      2               ENDIF. . . . . . .    LITERALLY
      2               ENDMODULE. . . . .    LITERALLY
      2               ENDOFFILE. . . . .    LITERALLY
      2               ENDPROC. . . . . .    LITERALLY
      2               ENDWHILE . . . . .    LITERALLY
      2               FALSE. . . . . . .    LITERALLY
      2               FOREVER. . . . . .    LITERALLY
      2               FORMFEED . . . . .    LITERALLY
      4  0005H     1  HIGHB. . . . . . .    BYTE AT AUTOMATIC           6    9 
      2               INIT . . . . . . .    LITERALLY
      2               LF . . . . . . . .    LITERALLY
      2               LIT. . . . . . . .    LITERALLY         2 
      4  0004H     1  LOWB . . . . . . .    BYTE AT AUTOMATIC           5    7   10 
     14  0004H     2  N. . . . . . . . .    WORD PARAMETER AUTOMATIC        15   16 
     18  0008H     1  N. . . . . . . . .    BYTE PARAMETER AUTOMATIC        19   20 
      2               PROC . . . . . . .    LITERALLY
      2               REENT. . . . . . .    LITERALLY
     18  0006H     2  S. . . . . . . . .    WORD PARAMETER AUTOMATIC        19   21   23 
     19  0000H     1  SCH. . . . . . . .    BYTE BASED(S)         21 
      2               SPACE. . . . . . .    LITERALLY
      2               STRUC. . . . . . .    LITERALLY
      1  0000H        SUBR1. . . . . . .    PROCEDURE STACK=0000H
      2               TAB. . . . . . . .    LITERALLY
      2               THENDO . . . . . .    LITERALLY
      2               TRUE . . . . . . .    LITERALLY
      3  0000H    41  TYPECALC . . . . .    PROCEDURE BYTE PUBLIC STACK=0004H
      3  0004H     2  VAL. . . . . . . .    WORD PARAMETER AUTOMATIC         4 
     14  0029H    31  WRDTEST. . . . . .    PROCEDURE BYTE PUBLIC STACK=0006H



MODULE INFORMATION:

     CODE AREA SIZE     = 006DH    109D
     CONSTANT AREA SIZE = 0000H      0D
     VARIABLE AREA SIZE = 0000H      0D
     MAXIMUM STACK SIZE = 0008H      8D
     80 LINES READ
     0 PROGRAM ERROR(S)
PL/M-86 COMPILER    SUBROUTINE MODULE - PART 1                                   10/5/81    PAGE   3


END OF PL/M-86 COMPILATION
