
               .   
               =================================


                           
                           ---------

             
    .   -
       -
        .  
       -
,    - 
 ,    ;    -
  .    ,  -
  .

                          
                          ----------

     1.           -
                    . . . . .
     2.          -
                 . . . . . . . . . . . . . .
     3.         . 
                 . . . . . . . . . . . . .
     4.            . . . .
     5.           . . . . . . .
     5.1.      "E" (   )  .
     5.2.      "S" (   -
                ) . . . . . . . . . . . . . . . .
     5.3.      "I" (   
              ). . . . . . . . . . . . . . . . .
     5.4.      "Z" (  ). .
     5.5.      "R" (    -
               ). . . . . . . . . . . . . . . . .
     5.6.      "X" (  ).
     5.7.      "P"  "L" ( ). . .
     5.8.      "C" (  RST N  -
                 ) . . . . . .
     5.9.      "Q" (  RST N  -
              ). . . . . . . . . . . . . . . . . .
     5.10.     "K" (   
                ). . . . . . . . . . . .
     5.11.         . . .
     6.       ,    . . . .
     7.        . . . . . . . . . . . . . . . .
     7.1.        . . . . . . . . . . . .
     7.2.        . . . . . . . . . . . .
     7.2.1.    "/S". . . . . . . . . . . . . . . . . .
     7.2.2.    "/M". . . . . . . . . . . . . . . . . .
     7.2.3.    "/L". . . . . . . . . . . . . . . . . .
     7.2.4.    "/E". . . . . . . . . . . . . . . . . .
     7.2.5.    "/P"  "/D". . . . . . . . . . . . . .
     7.2.6.    "/W". . . . . . . . . . . . . . . . . .
     7.2.7.    "/H".  .  . . . . . . . . . . . . . . .
     7.2.8.    "/F".  .  . . . . . . . . . . . . . . .
     7.2.9.    "/V", "/X"  "/O". . . . . . . . . . .
     7.3.          . . . . .
     7.3.1.        . . . . . . .
     7.3.2.       
     7.3.2.1.    
              ( "/V"). . . . . . . . . . . . . . . . .
     7.3.2.2.    SYM -  "/O". . . . .
     7.3.2.3.    -  "/X". . .
     7.3.3.      . . . . . . .
     7.3.4.     . . . . . . . . . . .
     7.3.4.1.    . . . . . . . . . .
     7.3.5.       . . . .
     7.3.6.        . . . .
     7.3.6.1.    . . . . . .
     7.3.6.2.     . . . . . . . .
     7.3.6.3. ,     . .
     7.3.7.       . . . . . . . . . . .
     7.3.8.      
     7.4.     ,   . . . .
     8.          . . . . . . . . . . . .
     8.1.        . . . . . . . . . . . . .
     8.2.        . . . . . . . . . . . .
     8.3.        . . . . . . . . . . .
     8.4.       . . . . . . . . . . . .
     8.5.      . . . . . . . . . . . . . . . .
     9.           . . . . . . .
     9.1.         . . . . . . . . . . . . . . .
     9.2.           . .
     10.          . . . .
     10.1.         . . .
     10.2.        . . . . .
     10.3.     ,  
     11.         . . .


        1.     
        ----------------------------------------------
                      
                    ----------------------

        ,    
      .   -
           
(  )  ,   
     .


     2.     
     ----------------------------------------------------

        .   -
       MTPLUS.COM.
   MTPLUS.000   -
    MTPLUS.001-MTPLUS.006.  MTPLUS.006
     ,   -
    .
                
 1.

                                               1
---------------------------------------------------------
!         !  !              !
!  !   !                                !
!-------------!--------!--------------------------------!
! MTPLUS.COM  !  35    !    -  !
!             !        !                   !
! MTERRS.TXT  !   5    ! ,   -   !
!             !        !                             !
! MTPLUS.000  !  13    !    !
!             !        !            !
!             !        ! MTPLUS.001-MTPLUS.006          !
! MTPLUS.001  !  11    !   -  !
!             !        !                    !
! MTPLUS.002  !   7    !       !
!             !        !                    !
! MTPLUS.003  !   8    !   -  !
!             !        !                     !
! MTPLUS.004  !  17    !       !
!             !        !                           !
! MTPLUS.005  !   8    !   -   !
!             !        !          !
!             !        !                          !
! MTPLUS.006  !   6    !    -  !
!             !        !   (    !
!             !        !    -   !
!             !        ! )                       !
---------------------------------------------------------

            -
      PASLIB.ERL,  FPREALS.ERL,   TRAN-
CEND.ERL,  FULLHEAP.ERL,  RANDOMIO.ERL,  DEBUGGER.ERL.  
      2.

                                               2
---------------------------------------------------------
!     !  !               !
!-------------!-------!---------------------------------!
!LINKMT.COM   ! 12    !               !
!PASLIB.ERL   ! 24    !      !
!FPREALS.ERL  !  8    !      !
!             !       !      !
!             !       !                           !
!TRANCEND.ERL !  4    !   -  !
!             !       !     (    !
!             !       !    )       !
!FULLHEAP.ERL !  3    ! ,      !
!             !       !    - !
!             !       !               !
!RANDOMIO.ERL !  3    ! ,      !
!             !       !          !
!             !       !                           !
!DEBUGGER.ERL ! 11    !    !
---------------------------------------------------------


     3.   .    
     -----------------------------------------------------

           -
  :

 ["1":]MTPLUS ["2":]""[.""][" "
  ""]

 "1" -   .     "A,B".. 
               ..   ,    
               MTPLUS.COM;
     "2" -  .     "A,B,"...
                ..       -
               .

         "1"  "2" ,   -
  .

     ""   -         ;
     ""   -         -
                   .     
               ,     -
                  "".SRC,  ,   
                ,    "".PAS;
     " " -    "$"  "#";
     "" -    ,   
                 .  -
               .

     ,    ,   -
.
           . 4.
            
 ,    -.   
   .SRC  .PAS,       -
     "".     -
    ,     
  .      
   "".ERL.    
    "".PRN      "".PSY,
       .
             -
         PASTEMP.TOK,
     .


             4.    
             -------------------------------------

              
   3.
                                                3
---------------------------------------------------------
!    !              !    !
!--------!----------------------!-----------------------!
!R"" !   -!  .ERL   !
!        !  ""=, !    ,    !
!        !B,  ..             !      !
!        !                      !                   !
!O"" !      !       !
!        !MTPLUS.000, ...       ! MTPLUS.000, ...       !
!        !     ,MTPLUS.006      ! ,MTPLUS.006  -  !
!        !  -  !      !
!        !              !                       !
!P"" !  .PRN    !  .PRN  - !
!        !   - !                     !
!        ! . -!                       !
!        ! ""=X,  .PRN!                       !
!        !  , !                       !
!        ! ""=A,B  ..!                       !
!        ! .PRN    !                       !
!        !       !                       !
!D       !  -!   !
!        !  ( .ERL)  !  .  !
!        ! .! .PSY       !
!        !  .PSY    !                       !
!        !   ,!                       !
!        !  .ERL         !                       !
!E"" !     !  MTERRS.TXT - !
!        !MTERRS.TXT   !   -  !
!        !      !            !
!T"" !         !  PASTEMP.TOK -!
!        !PASTEMP.TOK  -   !   - !
!        !            !             !
!Q       !    !   !
!        ! ,  !              !
!        ! -  !                       !
!        !                  !                       !
!C       !  !  - !
!        !         !      !
!        !                      !     !
!        !                      !              !
!A       !   !  !
!        !     !        !
!        !  -!          !
!        ! ERL-  - !                       !
!        ! PASLIB.ERL.    !                       !
!        !COM-    !                       !
!        !   ,    !                       !
!        ! ERL-            !                       !
!V       !      !    - !
!        !  ,  !   -  !
!        !    !                   !
!        ! ( - !                       !
!        !  , - !                       !
!        !  -  !                       !
!        ! )       !                       !
!@       ! - !  "@"  "^"   !
!        !  "@"   !  -!
!        !"^"                   !                     !
---------------------------------------------------------

                
  ,   -
     .


                5.   
                -------------------------------

              -
  -.    :

     (*" """*)

  " " -      "$"    "#";

     ""   ,     -
 (    ).  ,  ,
     "$"    "#".    
      .     
  .   ""      "+"
 "-".


         5.1.  "E" (   )
         ---------------------------------------------

     :
     E""

      "E"        -
 .    "+",    
        
(..          -
  EXTERNAL).    "-"   "E"   
,    ,    -
        -
.       "E+"    -
     .


  5.2.  "S" (     )
  -----------------------------------------------------------

     :
     S""

      "S+"       -
         -
.         ,
     .    
       PROGRAM  MODULE    
      .  
   ,      
. ,    "S+",  -
  ,      .  -
 ,   .


       5.3.  "I" (    )
       -------------------------------------------------

     :
     I[":"]""[.""]

       "I"   ,   
        -.  
""  ,        ,    
   -.

        .



         5.4.  "Z" (  )
         ---------------------------------------------

     :
     ZNNNN

      "Z"      
(SP)  NNNN.      -
,       0006.  -
  "Z"   .  
NNNN    ,   .  
      BEGIN  ,   -
   .


   5.5.  "R" (     )
   ---------------------------------------------------------

     :
     R""

      "R+"       ,
        -
        . 
   "R-" (..  ).
          
.


       5.6.  "X" (  )
       ------------------------------------------------

     :
     X""

      "X+"       ,
       
   :
     -      (     );
     - ;
     - ;
     -       .

         "X-".
      "X+"  "X-"        -
 .


          5.7.  "P"  "L" ( )
          -------------------------------------------

     :
     P
     L""

      "P"   "L"   , 
   ( 0).  "P"   -
  PRN-   "FF" ( 0CH),  -
    .   "L+"  "L-" 
        
  .



       5.8.   "C" (  "RST N" 
       ------------------------------------------------
                  )
               ---------------------------------

     :
     CN
      N-   RST (1-6).

      "CN"       -
     REAL   ,  -
      . 
,   ,     "RST", 
            
    "RST N".    -
      . "RST" 
  0   7  ,     
 .  "C"     ,
   ,      .   
           
"8*N"     "@XOP".  , -
   ,     "CN" -
 "RST N".
            
    .


   5.9.  "Q" (  "RST N"  )
   --------------------------------------------------------

           :
           QN
            N-   "RST.

        "C"    "Q"     
 (..  )   . 
    "@DYN",   
   ,      "RST
N" (,    "*$Q5*",   
 5).    "Q"    , -
     ,      ,
 ,        
    "8*N".


       5.10.  "K" (   
       -------------------------------------------------
                       )
                     --------------------

     :
     KN
      N-     0  15.
      "K"       -
   ,    -
.   N (0..15)     .
        .  
"K"     PROGRAM  MODULE.  -
  ,        
      , 
     .    -
      
  ,      .
           -
:
      0      -       ROUND,  TRUNC,  EXP,  LN,  ARCTAN,
                     SQRT, COS, SIN;
      1      -       COPY, INSERT, POS, DELETE, LENGTH,
                     CONCAT;
      2      -       GNB,    WNB,    CLOSEDEL,   OPENX,
                     BLOCKREAD, BLOCKWRITE;
      3      -       CLOSE, OPEN, PURGE, CHAIN, CREATE;
      4      -       WRD,  HI,  LO, SWAP, ADDR, SIZEOF;
      5      -       IORESULT, PAGE, NEW, DISPOSE;
      6      -       SUCC, PRED, EOF, EOLN;
      7      -       TSTBIT, CLRBIT, SETBIT, SHR, SHL;
      8      -       RESET, REWRITE, GET, PUT, ASSIGN;
      9      -       READ, READLN;
      10     -       WRITE, WRITELN;
      11     -        ;
      12     -       MEMAVAIL, MAXAVAIL;
      13     -       SEEKREAD, SEEKWRITE;
      14     -       WAIT;
      15     -       READHEX, WRITEHEX.



          5.11.    
          ------------------------------------------

       4         
.
                                               4
---------------------------------------------------------
!     !                                   !         !
!- !                           !-  !
!     !                                   !      !
!---------!-----------------------------------!---------!
! E+/-    !     !   E+    !
! S+/-    !    - !   S-    !
!         !        !         !
! I<>  !     - !         !
!         !                        !         !
! R+/-    !     -!   R-    !
!         !                           !         !
! X+/-    !     - !   X-    !
!         !            !         !
! P       !     "FF"  !         !
!         !  .PRN                         !         !
! L+/-    !    -!   L+    !
!         !                         !         !
! KN      !     !         !
!         !        !         !
!         !  (N=0..15)                !         !
! ZNNNN   !      ! -  !
!         !  NNNN                     !    !
!         !                                   !   !
!         !                                   ! 0006    !
! CN      !    "RST  N" ! - !
!         !     REAL      !   !
!         !                                   !  !
!         !                                   ! CALL    !
! QN      !  "RST N"   -! - !
!         !     -!   !
!         !                                 !  !
!         !                                   ! CALL    !
---------------------------------------------------------



             6. ,  
             -------------------------------------

             
 .     0    -
 16         "+".
   1     -
.         
  "#".      1    
,   .
      2    .      
      .

          :

     LINES: LLLL
     ERRORS:EEEE
     CODE:  CCCC
     DATA:  DDDD

          LLLL -       
                     ;
             EEEE -    ;
             CCCC -   
                       ;
             DDDD -  , 
                     .

             
.        -
 MTERRS.TXT.

           :
     1       .
     2       .
     3     "PROGRAM".
     4      ")".
     5      ":".
          ,        VAR  
           "=";
     6      (,    
             ";").
               -
           ;
     7        .
               -
          ;
     8     "OF".
     9      "(".
     10         .
               TYPE;
     11    "[".
     12      "]".
     13    "END".
           ,    
              "END".    
            "BEGIN"    "END";
     14    ";" (   ).
                 ;
     15     .
     16    "=".
          ,       TYPE   CONST
            ":";
     17    "BEGIN".
     18      .
                      
           ;
     19       .
                  ;
     20      ".".
     21    "*".
     50     .
              ;
     51     ":=".
     52     "THEN".
     53     "UNTIL".
               
           BEGIN/END;
     54      "DO".
             ;
     55    ""  "DOWNTO"    "FOR".
     56     "IF".
     57     "FILE".
          ,      TYPE;
     58      (  )
               
          ;
     59           .
                 
          ;
     99    "MODEND".
               "MODEND";
     101     .
                    
           ;
     102       .
                  
              ;
     103     
          .
                
                   
             ..;
     104   .
              
                 -
             ;
     105   .
           ,       -
          ,    ;
     106   .
              ,   
              
                
           ;
     107    .
          (,  'A'..'Z'     0..9);
     108           .
                ;
     109      .
     110         
             .
     111        "  ".
            CASE-  
             ;
     112        .
                  
          ;
     113        -
           .
     114          .
                  
             .
     116       .
     117    .
          ,            
          ,     ;
     118       -
           .
              
            ,      ;
     119      
             .
     120       ,
             .
             ,    
               -   -
           .   ;
     121  -         
          .
               VAR-;
     122       
             .
     123       .
     125          .
                -
                 ,  
          - ;
     126       .
     127     .
               
             ;
     128         .
                 
             ;
     129     .
     130      .
     131      .
                  -
          ;
     133       .
                ,
              , -
            ;
     134      ().
              ,  
               ;
     135      .
             AND,  OR  NOT  
          BOOLEAN;
     136       
            .
     137       -
          .
     138      .
                
          ;
     139      .
                 
              ;
     140       .
              ,  -
              ,     
          "."   WITH;
     141        -
          .
          ,    "^"  
          ,     
           ;
     142   .
     143     .
                
            ;
     144      .
          ,       
                 ,
                ;
     145   .
                   -
              ;
     146     .
     147        -
          .
                
              ;
     148       .
     149      .
     150      
          .
     151      ,  
            ,      .
     152          .
     153     .
     154      .
                  
             "VAR";
     155        -
             .
                FOR   
           ;
     156     .
     157       .
                 ,
             ;
     158        .
     159           
            .
     160        "FORWARD";
     161     "FORWARD";
     162      ;
     163     .
                      
          "NEW/DISPOSE",          -
          ;
     164      
            ;
     165     ;
                 
          ;
     166        .
                    ;
     167    .
               ;
     168   .
                   -
           ;
     169      ;
     170   ,   ;
     171     ;
     172    ;
     174      .
     183         
          .
     187     .
     191    .
              ,  
                   -
          ,     -
            ;
     193         .
     194       -
          ;
     201      -  ;
     202        
             ;
     203       .
                    
          -32768..32767;
     250         
          ;
            :    15  
             .
               WITH    
          ;
     251       .
            :    15  
                ;
     253    .
            ,  
            .  
              ;
     259    .
               
            .  -
           ,    -
          ;
     397     "FOR"  "WITH"  -
          .
                 
            16   "FOR" / "WITH"
          (   );
     398    .
                 -
            ;
     400        .
                  ,
                 
              ;
     401     .
          "END."      -
           ;
     402         ,  
             .
     403      .
     404      ,  
          .
     405      -
             .
     406    .
     496      "INLINE".
     497          .
                   ".ERL".
              ,   
          ".ERL";
     999        -
           .
                 
          .        
                 -
            .  -
            ,     -
          .


                        7. 
                        --------------

          
        -
         
.
      ,        
-,       ,
   .


                    7.1.  
                    -----------------------

                       
"LINKMT.COM". K     -
    (    -
):
       LINKMT ["1":]["1"=]["2":]"2","3",
              ..."N"[,"."],PASLIB[""]
     
     "1"  - ,   ,    
                    -
                 ;
     "1"   - ,     
                COM-      .
                   ,   COM-
                      ERL-    
                  ("2");
     "2"  - ,  ,  
                ERL-      -
                .

      "1",  "1",  "2" - . 
  "1"  ,   ,   
ERL-,    "1" ,   .COM   
ERL-.   "2" ,  -
 ;

  "2"     -    ERL-   -
                 ;
  "N"     -  ( )  -
                 ;
  ".            
   "   -   TRANCEND, FULLHEAP, FPREALS,
                RANDOMIO -   ;
  PASLIB     -     
                 -  ;
  ""    -    ,     
                .       -
                  "/" ( ). -
                   .

      .

LINKMT CALC, TRANCEND, FPREALS, PASLIB/S
LINKMT B:CALC=CALC, TRANCEND, FPREALS, PASLIB/S


                    7.2.  
                    -----------------------

                       7.2.1.  "/S"
                       ----------------

        "/S"   E   -
,         
        (    
7.1.).        PASLIB.ERL 
FPREALS.ERL,      ,    
 .     -
 .


                       7.2.2.  "/M"
                       ----------------

      "/M",       
  ,     -
      ( ).


                       7.2.3.  "/L"
                       ----------------

      "/L",      , 
 ,       
    ,      .


                       7.2.4.  "/E"
                       ----------------

      "/E",      , 
    ,   ,   
   "$",  "?"   "@",    
    .


                   7.2.5.  "/P"  "/D"
                   ------------------------

             
       -
   "/P"  "/D".
      "/P"    ,   "/D"
    ().

         :

               /P:NNNN
               /D:NNNN

      NNNN -     0..FFFF.

      "/D"       
,           
       .    
,         
     ,  
    .
              
      .COM,   ..        
"/P:8000",      .COM    ,
         8000H,   
      32    .  
,      "/D",    -
      .COM      .
  "/P"   "/D"       -
   .
         ,  
       "/D".      
    (  "/D")  -
     (  -
 ),        "/D", -
     ,   -
       
.     "$E-"    -
,      .   
    .


                       7.2.6.  "/W"
                       ----------------

      "/W"      .SYM   
 ,    .COM.      -
 .


                       7.2.7.  "/H"
                       ----------------

      "/H:NNNN"     .HEX -
  .COM.   NNNN    
        
    100H (,    "/H").
 ,         
,  ,      1D00H        
HEX-,   ,     8000H  (
     "/P:1D00/H:8000").


                        7.2.8. "/F"
                        ---------------

      "/F"    ,    
    .  -
         -
   ,  ,    
 .        .CMD
     . -
         
 .  ,    ,  -
          -
   "/F".        256  .
    ,    -
 .


                7.2.9.  "/V", "/X"  "/O"
                ------------------------------

            
:
     /VN:MMMM -          
                 N;
     /X:NNNN  -  ,  
                   .  -
                   SYSMEM,  ;
     /O:N     -    .
                       
                      -
                 .

         "/V",  "/X"  "/O" -
   7.3.


                    

     /S      -     
               .   
               .
     /L      -       .
     /M      -      .
     /E      -         -
                  ,  
                  "$", "?"  "@".
     /P:NNNN -         
                NNNNH.
     /D:NNNN -        
                NNNNH.
     /W      -   .SYM     ,
                  .COM.
     /H:NNNN -   .HEX     
               NNNNH   .COM.
     /F      -      
                   .CMD,  -
                        (
                 ).
     /VN:MMMM-   (MMMM)   
                 N.
     /X:NNNN -     
               ,   SYSMEM.
     /O:N    -    ; -
                       
                   .  -
                N    1  48.


               7.3.    
               ---------------------------------

              7.3.1.    
              -----------------------------------

          
 ,     ,    
  .        
     .  ,  
     ,  -
            -
.
              48  
     3   .   
         .  
    ,      ,
      ,      .
     .    -
      .    -
    ,     -
 ,      -
.
        ,    
    :
     1)   -  ,  -
    .        
 COM.          
,       PASLIB.ERL,  ,  ,
,   ;
     2)     ()  -  (
) ,     -
             (,
PROG.001);
     3)   -  ,   -
        
.           
;
     4)    - ,  -
         -
      ,  
  .     -
    ,     
, ..   ,   ,
    ( 7.3.2.3.).
          48  -
 .          (
   ),     
.       -
     (  ), -
          -
.          
.          7
 (    ),      
   .
             
;          -
    .  
   3   . 
     .     -
   ,      1- -
 .   1-16    -
 1,   17-32   2  ..   
        -
    ,       -
 ,     .   -
     128- ,  -
,  ,     -
   .
      1   ,    -  
.

        ,  ,  
  .1

        !
          >   -    !
        !              !
                                > -  
        !              !    1 ( .001)
        >   -    !      -
        !              !     1

          !
          >   -    !
        !              !
                                >  -  
        !              !    17 ( .011)
        >   -    !      ,
        !                     -
                                      2,  -
                                       -  -
                                      1
                 .1



       7.3.2.     
       -------------------------------------------------

    7.3.2.1.     ( "/V")
    ------------------------------------------------------

     :
     /VN:MMMM
      N      -   ;
         MMMM   -      
                  .

      "/V"     
(MMMM)      N.    
     ,  ,
      (      
 ,     ). -
  ,   "/V" -,  -
     PASLIB.ERL.   
 "/D"     ,  -
        "/V",   
    ,     100H.
    "/D"  ,      "/V"
       ,  -
  100H.


         7.3.2.2.    SYM -  "/O"
         --------------------------------------------

     :
     /O:N
   N -    .

      "/O"   ,    
   SYM         
      .  
SYM        -
     .  -
 .SYM  ,            (
   )      .
 "/O"     .   -
     .
      "/O"       .
    1  16    1.  
17 - 32    2  ..


       7.3.2.3.    -  "/X"
       ------------------------------------------------

     :
     /X:MMMM

 MMMM -         -
             .

      "/X"        
  .     -
   "/X"  ,     
    ,    -
.      SYSMEM,  -
  (SYSMEM)  .    
  ,      ,   ,
   .   ,  
 ,       .
  "/X"  ,     -
        ,    
 .
         "/X"    -
        
 ;       -
  .  ,     
         500 ,   
  1  350 ,      1  
    "/X:0000" (  ),    2
       "/X:015E".    
    "/X:01F4".
           
MMMM    .       
      .  
   ,  ,  -
      ,  -
.


             7.3.3.   
             ------------------------------------

              
:

     LINKMT ROOT,<. ROOT->...,PASLIB/S/VN:MMMM
     /D:0000/X:PPPP

     ,   "/V"     
"/E"  "/W", ,  , SYM-.

   N -   1,  2,  ...  ,  F, 10;
      MMMM, NNNN, PPPP -    0 
      FFFF.

         ROOT.COM    ROOT.SYM.    RO-
OT.SYM      .  
,         -
  ,         "/D".
       .2.


                             
-------------------------------------------------------
           !            !          !            !
   ! () !    !      ! 
  !  !  ! .!
           !            ! !  !
           !            !          !  -!
           !            !          !  !
           !            !          !  "/X"!
-------------------------------------------------------
            <----------> <--------->             <---->
                                -
              "/V"     "/D"             
                                                   
                                                  "/X"
                       .2


         ( NEW  DISPOSE) -
       .
   "/D"     -
     .    
 ,  ..      .
 ,       
 128 .  ,    , 
   ,     , -
  .   "/X"    
   ,   -
,  ,   ,    .
        .  
"/X"  ,      -
      .


                 7.3.4.  
                 ----------------------------

          .SYM,  -
     ,   ,
   ,     PASLIB.ERL.
 "/P"      -
    .   ,
       ,  
       "/P".    -
   .
      "/O"      SYM   
.
          ,  -
   "/X",     -
      .   
  ,          -
       SYSMEM+2,  ..  -
      .
             
      .   
        ,
     .

     .

     LINKMT ROOT=ROOT/O:2,MOD1,D2,...,PASLIB/S/P:4000

          
 SYSMEM+2,   SYM-.
        ROOT.002     
,    MOD1.ERL, MOD2.ERL,  ..  "ROOT="
,     MOD1.002   
    .      
(    )    
.
          "$E" 
""         -
   .
       ( A )   -
,    ,   .  ,
    ,  
        
    .      
  ,    (   -
)    .


               7.3.4.1.   
               --------------------------------

              -
 .      . ,
     XYZ.COM,   
   XYZ.001.     0; -
    - . ,
 15    "  ".00F.


          7.3.5.    
          ------------------------------------------

     ,       -
,   .

      1.    . -
         -
   "/X"    "/V"   "/D".
         -  SYM-,   -
         -
       ,  -
        -
.   ,   SYM-,  
     "/V"   "/E"  "/W".
         
  .

      2.    .   
 SYM-,    1,   "/". -
     .   
     ,   "/X" -
  ,        -
 = 0. ,      
       .   -
   "/"         
  .      :   
   100H (      
  100)        
   .
             
  .

      3.    .  -
   "/O".       
 ,       2.   
 "/X"    ,   
2    .    "/P"
   ,    -
.          2.
                
 .

      4.     .    
  ,     
       
"/X".          -
 ,         "/P".  
         ,
        
  ,     
  .

      5.   .  -
           
.     "/D"    -
   ,      -
         
.         128.  
  "/V"   ,     
       .  
     "/P"      "/V" 
 .
         "/V"    .
  "/X"      
   .

      6.   .  ,  -
  .SYM,      .
   "/D"     1  , 
    5      .SYM.


           7.3.6.    
           -----------------------------------------

           7.3.6.1. '  
           ----------------------------------------

          
EXTERNAL  :

     EXTERNAL[<>!< >]PROCEDURE/FUNCTION...

      [ ]  ,     EXTER-
NAL  .      -
    ;
     <>  < >     -
  INTEGER.     , 
    .


              7.3.6.2.   
              -----------------------------------

           -
  ,      ,
   .     
     -
,   ,     
 ,       ,    
     .   
        
         ,
    .   -
 ,      
 ,   ,   -
           -
.
             -
,      ,     -
           -
 .
           @OVS
  ,      
 .     @OVS   -
         . -
 @OVS         
,        . 
  @OVS     :

     EXTERNAL PROCEDURE @OVS(N:INTEGER; D:CHAR)

      N -  ;
         D - ,         (  
               : @, A, B  ..);
     "@"      .


        7.3.6.3. ,   
        -----------------------------------------------

           -
         -
,       
        .    -
  ,  ..       .  
     RELOAD,
        TRUE,   
      -
     .  ROVLMGR.
ERL   RELOAD,      
TRUE.   ,      -
,   ROVLMGR.ERL     -
 PASLIB.ERL.
            
:
     1)         
           -
       .  
       "/X";
     2)        
    ,   RELOAD  
,      .  
      ,  -
 RELOAD       -
  TRUE,  ..       
  .
             -
.   ,     ,
     .  -
    'DB'    
 ,  , ..    -
     .   -
  ,  ,    
,    ,   -
    EXTERNAL.
        ,     
,     .    
      ,  -
  .       -
      -
  (,  - )   .  
           
    ADDR   
    .  
 ADDR ,  ..    -
       PASLIB.  
    ADDR  .

     .

     EXTERNAL PROCEDURE @RIN;
     PROCEDURE X;
     VAR P : INTEGER;
     BEGIN
         P  :  = ADDR(@RIN);   (*   
                                   @RIN *)
     ...


                  7.3.7.   
                  ---------------------------

          2 -
:
     1)       -
  .    -  -
 EXTERNAL    ;
     2)     . 
,       .  
    @OVS      -
.

       7.3.8.    
       -------------------------------------------------

     ,    ,   -
         -
,      .   -
       .  
,       , 
           -
.

       :

      PROGRAM DEMOPROG;
      VAR
        I: INTEGER; (*     *)
        CH: CHAR;

      EXTERNAL [1] PROCEDURE OVL1;    (*   
                                          *)
      EXTERNAL [2] PROCEDURE OVL2;    (*  
                                           *)
      (*      *)

      BEGIN
        REPEAT
          WRITE('ENTER CHARACTER, A/B/Q: ');
          READ(CH);
          CASE CH OF
              'A' : BEGIN
                      I:= 1;  (*  
                                    
                                   *)
                      OVL1;
                    END;
              'B' : BEGIN
                      I := 2;
                      OVL2;
                    END;
              ELSE
                IF NOT(CH IN ['Q']) THEN
                   WRITELN(' A  B');
          END;
        UNTIL CH IN ['Q'];
        WRITELN(' ')
      END.


            1:

      MODULE OVERLAY1;
      VAR
        I: EXTERNAL INTEGER;    (*   
                                    *)
      PROCEDURE OVL1;       (*     
                                  *)
      BEGIN
        WRITELN('  1, I=',I)
      END;

      MODEND.


            2:

      MODULE OVERLAY2;
      VAR
        I: EXTERNAL INTEGER;   (*   -
                                    *)
      PROCEDURE  OVL2;     (*     
                                *)
      BEGIN
        WRITELN('  2, I=',I);
      END;

      MODEND.

        3  (PROG, MOD1, MOD2) -
  .

       :

     LINKMT PROG,PASLIB/S/D:8000/V1:4000/X:40

     8000H.
    (1...16) -   4000H.
64   .
     PROG.COM  PROG.SYM.

       1:

     LINKMT PROG = PROG/O:1, MOD1,PASLIB/S/P:4000/L

      "/O"    PROG.SYM  -
 1.       = 4000H.
    PASLIB   ,   
   1,       PROG.COM  (  
"/L").
             PROG.001.

       2    -
 1:

     LINKMT PROG=PROG/O:2,MOD2,PASLIB/S/P:4000/L

           ,    "/X"  
   .  "/X"   -
     ,    -
  ,       
.
      ,  .  .      ,
 RELOAD       TRUE.
     OVL1  PROG.001   
4000H,        -
 OVL1.    OVL1   -
 .   OVL2.
         .     
    (:  A,A,A),  -
  .     (A,B,A,), 
     .


           7.4. ,  
           ----------------------------------------

              
     .  -
  ,     
 COM-,          
     .
           :

UNABLE TO OPEN INPUT FILE:""-    -
                                    ;
DUPLICATE  SYMBOL  - ""     - ,  -
                                    
                                      
                                  
                                     
                                  .

         :

     DUPLICATE SYMBOL DETECTED

            .

INITIALIZATION OF DSEG NOT ALLOWED - ,   -
            DB  DW   ;

INCOMPATIBLE RELOCATABLE FILE - ,    .ERL  -
                    -
           ;

SYSMEM NOT FOUND IN .SYM FILE - ,    
                    (
          ).      
            50       -
            .    ,
            :

EXTERNAL OFFSET TABLE OVERFLOW -    
            .


                    8.   
                    ----------------------

           -
,    ,  , 
 ,  ..       
,     .


                     8.1.  
                     ---------------------

           -
         ,  
  .       
       6   
    "$"  "?".


                   8.2.   
                   ------------------------

           -
     PUBLIC   -
   EXTERNAL  -.

    .

      ;  
      PUBLIC    ABC
      .
      .
      DSEG
ABC   DS        32        ;  
      .
      .
      .
      END

(* -*)

VAR
  ABC: EXTERNAL PACKED ARRAY [1..32] OF CHAR;

           -  
       -
      EXTRN.  
  ,     -   
   "$E" (. 7.2.).

     .

     ;   :

     EXTRN     PQR
     .
     .
     LXI       H,PQR     ;  
                         ;
     .
     .
     END

(* -*)

VAR
  (* *)
  PQR: INTEGER   ;    (*   
                        *)


                   8.3.  
                   -------------------------

              
,     ,   ,  -
      (,  A, B, C :
INTEGER )     (..  C, 
B  A).

     .

     VAR
       A : INTEGER ;
       B : CHAR ;
       I,J,K : BYTE ;
       L : INTEGER ;

             -
    :

     0 - A ( )
     1 - A ( )
     2 - B
     3 - K
     4 - J
     5 - I
     6 - L ( )
     7 - L ( )

      (ARRAY)     .  
      
 .
      (RECORD)   ,   .
      (SET) ,  32- . -
      .


                   8.4.  
                   ------------------------

         -    
     .    -
        .    
     ,    -
.         2 .  -
          
 .    VAR   . 
     ,    -
.
       (  )  -
  .   SET    
,      @SS2, 
    .

     .

PROCEDURE PROC(I,J:INTEGER; VAR Q:STRING; C,D:CHAR)

         PROC ,    ,
     :

     0-1 -  
     2   - D
     3   - 00
     4   - C
     5   - 00
     6-7 -   
     8   - J( )
     9   - J( )
    10   - I( )
    11   - I( )

           ,   
    ,   -  .
            -
   .      -
    :  INTEGER, REAL, BOOLEAN 
CHAR.

                       8.5. 
                       ----------------

           , :
   - DB  DW  DSEG  ;
   -       .


               9.    
               --------------------------------

                       9.1.   
                       -----------------

              
@BDOS,           
  - ():

FUNCTION @BDOS(FUNC:INTEGER; PARM:WORD) : INTEGER ;
     FUNC     ;
     PARM   

         @BDOS       -
.

     .

I:=@BDOS(5,WRD($0C));      
                            
                          LST:
CH:=@BDOS(3,WRD(0));            
                          RDR:

      @BDOS         -
-,         
,     IORESULT.


          9.2.     
          -------------------------------------------

          ,  
     ,  -
        80H. -
   ()       -
   .

     FUNCTION @CMD :  

      @CMD      80H 
      .
      ,     
      .    
@CMD           -
.

     .

PROGRAM CNBUF;
TYPE
  PSTR = ^STRING ;
VAR
  S : STRING[16] ;
  PTR : PSTR ;
  F : FILE OF INTEGER ;
  EXTERNAL FUNCTION @CMD : PSTR ;

BEGIN
  PTR := @CMD ;
  S := PTR^ ;
  ASSIGN (F,S) ;
  RESET (F) ;
END.

              
   .


            10.    
            ---------------------------------------

       2      -
:

    1)     ;
    2)   .

     ,   ,  -
   .        
    @ERR.


          10.1.     
          -------------------------------------------

           -
        
 .      
 "$R" (.  5.5.).     
.
           ,  
         
         
@CHK   @ERR.    ,      
 ,      -
    ,   .  
        
    .


            10.2.   
            --------------------------------------

        ,   -
       "$X+" ( 5.6.).
          @ERR
   ,      
.        -
  "$X-",      -
,  ,   :  
         ,
      , -
  .

           (..    
   ,    ) 
      0.0      
@ERR.   @ERR    
    .        
       
@ERR,    .   -
 ,       
.


       10.3.  ,  
       ------------------------------------------------

              
@ERR,      -
.         -
:

 PROCEDURE @ERR(:BOOLEAN;  :INTEGER);

          @ERR     
,      .  
    ""  FALSE,    
.    ""  TRUE, -
       
.

      " "   :

       1 -    0;
       2 -   ;
       3 -   ;
       4 -     ;
       5 -   ;
       6 -  .


           11.   
           -----------------------------------------

         , 
 .      -
        .  
    3     -
 .   -   "MODULE",  
  "PROGRAM",  3       -
.    -   "PROGRAM",  
     16   -
,       .  
   16   .
             
   (SP)     @INI,
      INPUT   OUTPUT  
    (    
  "$S+").

      OVL1;
                    END;
     