CH











!>
     1.  

       

                A .
! 



     !-1.1  RMAC- ! 

     1.1.1  .

     
     RMAC    , -  
         
  INTEL 8080,   ,   
          
     LINK.  -
       -
  ,   , 
   .                                 
       16  ,  
  2.5     -.
      ,  
      INTEL 8080. -
    ,    
  .1.

                                          1

               

  CI   ADC  ADD  ADI   ANA  ANI  CALL   CC    CM    CMA
  CMC   CMP  CNC  CNZ   CP   CPE  CPI    CPO   CZ    DAA
  DAD   DCR  DCX  DI    EI   HLT  IN     INR   INX   JC
  JM    JMP  JNC  JNZ   JP   JPE  JPO    JZ    LDA   LDAX
  LHLD  LXI  MOV  MVI   NOP  ORA  ORI    OUT   PCHL  POP
  PUSH  RAL  RAR  RC    RET  RLC  RM     RNC   RNZ   RP
  RPE   RPO  RRC  RST   RZ   SBB  SBI    SHLD  SPHL  STA
  STAX  STC  SUB  SUI   XCHG XRA  XRI    XTHL

          
  ( ):                           -------------

  ASEG      -      -
                  ( 
                 );
  CSEG      -      -
                ,    
              ;
  COMMON    -  e    -
                ,    (
              COMMON)     ;
  DB        -   (  ) 
                    
              ;
  DS        -          
                  ( );
  DSEG      -      
               ,    
              ;
  DW        -   (  )  
                  
              ;
  END       -      -
                ;
  ENDM      -      
              ;



  EQU       -     -
                ;
  EXITM     -     ;
  EXTRN     -    , -
                   
              ( );
  IF    -
  ...    \
  ELSE    | -     
  ...    /    ;
  ENDIF -

  INCLUDE   -       -
                  ;
  
  IRP -\
  ...   |   -      ;
  ENDM-/
  
  IRPC-\
  ...   |   -      ;
  ENDM-/

  LOCAL     -    ,
                   
                 ??nnnn;
  MACLIB    -      -
                ;
  MACRO     -     
              ;
  NAME      -     ,   
                     (
                   --
               );
  ORG       -     
                 ;
  PAGE      -     ;
  PUBLIC    -   ,   
                     
                ;

  REPT -\
  ...    |  -  ;
  ENDM -/

  SET       -     
              ,     -
               SET     ;
  TITLE     -  ,   
                 .


           -
         -
    .     -
       
    NUL.
         
  :

  * - ;
  + - ;
  - - ;
  / -    ;
             


  AND       -   ""  
                ;
  EQ        -     -
                ;
  GE        -  ,    
               ;
  GT        -  ,    -
               ;
  HIGH      -     ;
  LE        -  ,    
               ;
  LOW       -     ;
  LT        -  ,    -
               ;
  MOD       -        
                ;
  NE        -     -
                ;
  NOT       -     -
               ;
  OR        -   ""  -
                 ;
  SHL       -      
              ,   ;
  SHR       -      
              ,   ;
  XOR       -   " " 
                 .

         ,
    :

                  <     LT
                  <=    LE
                  =     EQ
                  <>    NE
                  >=    GE
                  >     GT

       ; 
        
   .
  --------------
 

    1.1.2.   RMAC.

          
   :

          RMAC [d:]name[.typ] [$ parameters]

          
    "d"   .
      .typ       , 
      .ASM
            
   ,    MACLIB -
   ,   ,   -
   INCLUDE.
          :

  -  name.PRN  ;
  -  name.REL     ;
  -  name.SYM    .

       ,    
    .     -
          
   

                       parameters,

       "$".
         (     
  ),       -
   .
           D -
      , :
  
   -:-     ,
  P     ,
       ,
  Z    ,      -
     .

         D   
  ,       
    .
    ,    ,  
  .      
     .
  


                   :

        D  -             
               D.
        LD  -    MACLIB  -
               ( .LIB)    
              INCLUDE     -
               D.    L   
                   
               :
               
                +L        -
                     ;
                -L   (  ) -  -
                       .
              
        M   - ,   ,  
                 :
         
                +       ;
                -     ;
                *   (  ) -   
                         -
                     ,   
                     .
                     
        PD  -      D.
        Q   - ,   Q,  
                   LOCAL  
                 :
                
                +Q      LOCAL  
                       ;
                -Q   (  ) -  
                     LOCAL     
                     .
        RD  -     ( .REL) 
                 D.
        S   -   S      S,
                  
                 ( .SYM):
                SD -     
                      D;
                +S -    
                         ( .PRN);
                -S -     - 
                      .

        +L  -    
                  (
                ).
        -L  - ( ) -   
                  
               .



          
     ,    
       -
        .
       "$"
     ,    
      .

               :
             -------------------------------

  $+PRINT  -     
             ;
  $-PRINT  -     
              ;
  $+MACRO  -    ,  
              +;
  $-MACRO  -    ,  
              -;
  $*MACRO  -    ,  
              *.



    1.1.3.    .

         , 
      
       
     .    -
      . -
        (
  ),       -
   .

       :

    -  :   -
            
       ;
    -  :  ,   
          ;
  D  -  :   DB  DW
              -
       ;
  E  -  :   -
            ;
  I  -  :   ;
  L  -  :        
       ;
    -   :  
        ;           
  N  -  :  
       ;
    -  :   , 
            
       LOCAL   9999;
    -  :      -
           
         ;
  R  -  :    
            ;
  S  -  :   -
       ;
  U  -  :   -
              -
           ;
  V  -  :   
          .



    1.1.4.   RMAC.

           -
     :

          /  RMAC  ASSEM  1.1

  ,     .
        
    :

          
            USE  FACTOR
          END  OF  ASSEMBLY

    -     
   ()  . 
      ,  
   ,  .
   -     ( -
   )
        , 
    RMAC   -
      .  -
        -
        
   .     
       , 
     .
      ,    -     
  ,     
  .                                             
           :

  CANNOT CLOSE FILES -      ;
  INVALID PARAMR  -     -
                       ;
  NO DIRECTORY SPACE -     -
                        ;
  UNBALANCED MACRO LIB -   -  
                         ,   -  
                          ENDM.
  SOURCE FILE NAME ERROR -    
                           ;
  NO SOURCE FILE PRESENT -    ;
  SOURCE FILE READ ERROR -     ;
  OUTPUT FILE WRITE ERROR -     ;
  LIST WAITING FOR PRINTER -      
                             ;
  SYMBOL TABLE OVERFLOW -   .



           !-1.2   - 

               -   XREF.- ! 
                                          


     1.2.1.   XREF.

     XREF    - 
        
    ,    .
     XREF     
        -
      ,  
  RMAC.



     1.2.2.   XREF.

          
    

                      XREF [d:]name[ $U]

  :
     
     name -   ( ),  
                 :

            -   (   ".PRN")
            -    (  
              ".SYM"),

                .
        XREF ,
        ,  
    .
        XREF   
     ,     
  (  ".PRN"    ".SYM") 
        .
          
  (       ".XRF")  
   U,       .

                        -:-
  
     ().
          .
       ,     
       ,   -
      ".PRN"  ".SYM".



     1.2.3.   XREF.

         XREF 
        (  -
   ".PRN").    XREF 
          -
          
     ".XRF".   XREF
        ,
       (  -
   ".SYM").    -
      XREF   -
    (   ".XRF")   
   .     
  ,    ,   -
        ".SYM".  
    XREF      
  "#"  ,      
   .     
  ,     -
   RMAC.

     1.2.4.   XREF.

       XREF     
    :

                          XREF 1.1.

  ,    .
      ,    , -
       .
           :

  NO SYM FILE -     ".SYM";
  NO PRN FILE -     ".PRN";
  INVALID SYM FILE FORMAT -    ".SYM";
  SYMBOL TABLE OVERFLOW -   ;
  SYMBOL TABLE REFERENCE OVERFLOW -    
                                    ;
  XRF MAKE ERROR -      
                   ".XRF";
  XRF CLOSE ERROR -      
                    ".XRF";
  DISK READ ERROR -     ;
  XRF ABORTED -   XRF.




     !-1.3.    LIB.- !  
                                               

     1.3.1.     LIB.

     LIB    
    :

    -      ;
    -      ;
    -      ;
    -        
            PUBLIC;
    -        
      ,   
       ( ".IRL").

        :
  
                LIB  lib=file1,file2,...,fileK,
 
      lib.REL   
    ,    

                     file1,...fileK 

          
   ,      ".REL".
          (.. -
       ),
          
         -
  .       
  (       6 !) 
   ,   : 
     ,   -
     ,   
     .
         
        
   -     
        -
  .    

                     mod=file

     mod   
   file.REL (     
  ,       
      mod).
       

                     mod=

    mod    -
   .
           
        ,
      -
  .
        
  .



      :
 
  D -       
       ;
  I -    (  ".IRL");
   -        ;
   -        
       PUBLIC   .


     1.3.2.    LIB.

     1.3.2.1.   .

         , -
      MOD1,  1-7  9
   LIB1     LIB2, 
   2.
         

    LIB  LIBRARY=MOD1,LIB1(M1-M7,M9),LIB2<X2=>

         
    
                LIBRARY.REL


     1.3.2.2.   
                         .

        -
        LIB1  
   LIB2,     2 
  ,   3     Y3.REL.
        :

    LIB  LIB3=LIB1,LIB2<X2=,X3=Y3>[I]

        

                  LIB3.IRL

     1.3.2.3.    .

     ,       
  LIBRARY.LIB   :

                  LIB  LIBRARY.LIB[M]

    1.3.2.4.       .

     ,       
    (  PUBLIC)   LIB0.IRL
    

                  LIB  LIB0.IRL[P]
 
     1.3.2.5.   .

        LIBRARY.REL 
   ,   

                  LIB  LIBRARY[D]



     1.3.3.   LIB.

          
    

                  LIB  1.1,

   ,     
   .
         , -
     ,  
  LIB       :

  ABORTED -     - -
               - .
  CANNOT CLOSE -     .
  DIRECTORY FULL -       
                     .
  DISK READ ERROR -     .
  DISK WRITE ERROR -     .
  FATAL ERROR -   /.
  INDEX ERROR -     ".IRL"  -
                 .
  NO FILE: -      .
  NO MODULE: -      .
  SYNTAX ERROR -     
                  .



     !-1.4.   LINK.- ! 
                                     

     1.4.1.     LINK.

     LINK     
    ,  e
      .  
        
  ,   (  ".REL")  
  (     
    -    ".IRL").
        :

  -   ,    
    ,       (
     ".SYM");
  -   ,    
        :

     -      (  
       ".COM"),
     -      
       (  ".OVL"),
     -     (  ".SPR"),
     -      
         (  ".PRL").

          -
    ( ".$$$")   XXABS, YYABS, XXCOMM,
  YYCOMM, XXDATA, YYDATA, XXPROG, YYPROG.  
        
   ,      
      .

        :

    LINK  prog=file1,file2,...fileK

     prog    
    (    );
     prog       -
   ,      file1.
        file1,file2,...fileK
  :  
  
  -        ( -
    ,      
     ,       -
      !).

          -
        - 
      .



     1.4.2.   LINK.

          
    ,     -
    ,      
   .
            -
     -   S  
      .
       :

  $      -         
              

                               lp,

                -
             "l"   "".
               :

              - ,
             I -   ,
             L -    ,
              -    ,
             S -    .

                -  
           :

             -:- -    ,
                  - ,
             Y     -  ,
             Z     -  ,   
                       ;
                     
        -     -
                 -
              ;
        -       -
           ,      
                 -
              ".SPR";
  Dxxx  -      (COMMON) -
               "";



  Glabel -      
                "label";
  L  -      -
            ("").     , 
            LINK    
               100,
                -
            ;
    -      
              / (  
           ".PRL").   ,   -
              
               -
            , "" -  ,
               
           ;
  


  NL     -       -
              ;
  NR     -      
            ;
       -     LINK 
                  -
            ".COM". (  );
       -    /   
             ".PRL"     
            ".COM";
  OS     -      ".SPR" -
           ;
    -      -
             "",     
           .
               
            .    ,
                 
           ,    100
           (  L   );
  Q      -        
              ,  
              (   
            ,   
               );
  S      -     
           ,      
               ,    - 
                  -
            .



     1.4.3.   .

     LINK     -
      -  
   ,     -
  ,        
  ,      ( -
       ).
    , 

  LINK  MAIN (MOD1)(MOD2(MOD3,MOD4))(MOD5)

   12 :

                    MAIN.COM,MAIN.SYM
                    MOD1.OVL,MOD1.SYM,
                    MOD2.OVL,MOD2.SYM,
                    MOD3.OVL,MOD3.SYM,                   
                    MOD4.OVL,MOD4.SYM,
                    MOD5.OVL,MOD5.SYM
   ,  :

                MOD3.OVL           MOD4.OVL
                    :                  :
                    --------------------
                             :
            MOD1.OVL     MOD2.OVL       MOD5.OVL
                :            :              :
                -----------------------------
                             :
                         MAIN.COM



     1.4.4.  

           
    :

                  LINK  1.31.

     ,   -
     .    
       
  :

                  ABSOLUTE          0000
                  CODE SIZE         03C8 (0100-04C7)
                  DATA SIZE         0000
                  COMMON SIZE       0000
                  USE FACTOR          12,

    :

  -     (Absolute);
  -    (Code size);
  -    (Data size);
  -    (Common size);
  -    , 
        . (Use factor).
      ,   
    ,     
      :

  ABORTED -       
              ( ).
  CANNOT CLOSE -      .
  COMMON ERROR -       -  
                 .
  DISK READ ERROR -      .
  DISK WRITE ERROR -      .
  FATAL ERROR -   /,  -
                  .
  FIRST COMMON NOT LARGEST -   
                                
                             ,   
                                  .
  INDEX ERROR -    .IRL  
                .
  INSUFFICIENT MEMORY -    -
                            
                        /.
  MAIN MODULE ERROR -      
                       .
  MEMORY OVERFLOW, USE [A] SWITCH - -  -
                                       
                                      -
                                      
                                       -
                                      .
  MULTIPLE DEFINITION -     -
                           .



  NO FILE: -     .
  NO SPACE -       
               .
  OVERLAPPING SEGMENTS -   MLINK 
                            ,  -
                           .
  UNDERFINED START SYMBOL -    G 
                                 
                              .
  UNDERFINED SYMBOLS -     -
                        ,   
                          .
  UNRECOGNIZED ITEM -     
                      ,   -
                       .
  

