


***************************************************************
*                                                             *
*                                                             *
*      S I N L A I R      R E S E A R C H      L T D.         *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*              ***********   **       **                      *
*                      **      **   **                        *
*                   ***          ***                          *
*                ***             ***                          *
*              **             **    **                        *
*             ***********   **        **                      *
*                                                             *
*                                                             *
*                                                             *
*  ****  *****  *****  ****  *****  *****   *    * **   **    *
* *    * *    * *     *    *   *    *    *  *    * * * * *    *
*  **    *    * *     *        *    *    *  *    * *  *  *    *
*    **  *****  ****  *        *    *****   *    * *     *    *
* *    * *      *     *    *   *    * **    *    * *     *    *
*  ****  *      *****  ****    *    *   *    ****  *     *    *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
* G E N S - 3           *
*                                                             *
* M O N S - 3                    *
*                                                             *
*                                      *
*                                                             *
*                                                             *
*                                                             *
*       ,               *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                             *
*                                                 *
*     THE LEAGRAVE PRESS LTD,LUTTON AND LONDON,GREAT BRITAIN  *
*     THIRD EDITION 1983.                                     *
*                                                             *
*                           S A M P R I N T     1 9 8 8       *
*                                                             *
***************************************************************


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

         ,  
 GENS3       [Y-TQFCUSVN
 '   [80.        
       
  Z80.
             -
  ZX-SPECTRUM      -
 .
                 
        GENS3.
     GENS3   8 ,   
           -
,  .
           
GENS3  ' .   GENS3 -
    .

     GENS3       LOAD:

                 LOAD "GENS3" CODE XXXXX

( XXXXX -   , 24064 )
      :

                 RANDOMIZE USR  XXXXX

              
,    (  
  ):

                 RANDOMIZE USR  XXXXX + 56

      (    ):

                 RANDOMIZE USR  XXXXX + 61

      , GENS3     
 "XXXXX" .  ,        
GENS3   24064,      -
 24120,     24125.

       "XXXXXX"  :

                 "BUFFER SIZE ? "

        0  9 (      4.  1
 = 256  ).      -
 ("INCLUDE")  (.  2.8  ).
      0     64 .
         "BUFFER SIZE ?"   
  ">" (.  2  3   ).
     ! GENS3  ,  ,  
 ,      "I".  K  ,  GENS3
  "IR".

                        2. A
                        ------------

                 2.1   GENS3
                 ----------------------

     GENS3 -   ,KOTO  -
  Z80 M,   -
    .
       (    "" -
.  )        -
   ( "TABLE SIZE ? " )    -
.         
  .      GENS3    -
,  .     -
.
     !     "INCLUDE",  
     ,  ..      
  ,    .
           -
     ( "OPTIONS" ),  
,  

 :

    1 -      
    2 -     
    3 -    
    8 -    
   16 -    (    )

       .      (  LOCALION
COUNTER )   ,    -
           -
    .
      32 -  ,     -
.    .

     :  36   , 
         -
  .

     !    16,    -
 "NT"    .    ,  
  ,    "X" -  
   (  ,    ) 
       + 2.

       :

     1  -      -
.

     2  -        (    
  2).

           ()    -
,     .    -
           
 ( .  4 ).    ""   
        -
   .

         :

    " PSS 1 ERRORS : NN".

            
     .    
   ,  '   ,   
:

     * WARNING * LABEL ABSENT ( )    
 ' .

               (
      2).   -
    ,      
4    "*L-".

                  

000           210100           25             LABEL
                                                LD         HL,1
 1               6              15              21         26

          ,  
           -
ORG,EQU  ENT (. 2,6).         
     .
             -
,       ,  
  "*D+" (.  2.8).
       (  6,  8  ,  ..
 4- )     ,  -
  (.  GENS3 "*C").
         -     1   32656
      21-26     6  -
 , '   .
                
 -      40 ,    -
         
 .
      -     -    
   21-24,     -  ,  
    .
              
,   ZX-SPECTRUM. GENS3     ,
    '       -
    ZX-SPECTRUM.
      "*C"     
     -    -
  9     ,   
         
(.  2.8).
           
,       3-  
GENS3.     .
            ,  
  ,       
  -  ,      .  
       .
       "START OF GENS3 + 51" ,   
 ( 5   )        
    .      0,
   (       
 )      ( <256 )   -
.
        "START OF GENS + 52 "    (
  1 ),         
 - .
        "START OF GENS  +53  "  ,  
        -
     .
     :  ,       
   20  ( ..   
 )        
 1    . ,    GENS3
  500 (24064 ),    -
 :

       POKE 24115,20: POKE 24116,1: POKE 24117,34

     (         -
  ).
       ,     -
  "*C" (      
  ,  ).
            
   CAPS SHIFT  SPFCE,  
""            -
 .

         :
* ERROR 10 * (.  )  " BAD ORG ".
         :

      "PASS 2 ERRORS : NN "
      (.  ).
  :

     "TABLE USED : XXXX FROM YYYY "

            
  .  ,    ENT    -
 ,  :

      "EXECUTES: NNNNN "

         ' .  -
  ,    "R".   -
,   ,      -
     : " XECUTES : NNNNN ".
      ,    ,    -
      .  ,  -
   ,     :
     POKE "START OF GENS3 + 50  "  ,(  )  
   2.     -
.


         2.2.   .
         __________________________________


       ,  GENS3,    
 ,     :

LABEL     MNEMONIK    OPERAND      COMENT

--------------------------------------------------------------

START LD         HL,LABEL       "PICK UP" LABEL

         ( )  
.   :    
       :

     ";" -     , .. -
.

     "+" -   ,    -
  (.  2.8).       
  .

     " " -     

     " " - (  ).      
,  GENS3  ,     
,           
Z80.

         -    ,  TO  GENS3
    (.    2.3).    
 ,       ,  -
     ,     
" "    Z80 (.   )  
      "/ -
  " ".      -
   ,     
.       , 
     .    
       ,  -
   ,   .

                  2.3.  
                  ___________

      -  ,    16  .
        -
   .,       (
 EQU. .  2.7).

      ,   ,   -
 8  ,      -
 ,      :

     LABEL    EQU         1234
              LD          A,LABEL

       :

     * ERROR 10 *

           
(. ),          6
.        
(.  ),      
    .

      ,    :

 0....9, $   ()........Z ()

      !   .....Z      
   "[", "", "]", "", "", .

   LOOP, ALONGLABEL , L[1], L[2], B,
   LDIR (LDIR  , TWO5.

        2.4.      (LOCATION COUNTER).
        _______________________

         ,    
          -
 .   ()    -
 ORG (.  2.6).

      "$"          
 . : LD HL,$+5  ,  -
    HL ,   5  ,  
  .

                2.5.  
                _____________________

          ,     -
     ,    
,     (  
)     .

        (   ),  -
   (     )
   EQU.
      ,       -
 ,          
    ,      
 .
           8   13
,     .

             ,  
    ,   ,    
,      .

       * RRRS 4 *

           ,   
    :

      * WARNING * SYMBOL ABSENT

O     .

      !         
.      .

         ,  ,
       .
  ' ,   ,  -
     :

        "BLE SIZE :" (. 2.8)


               2.6. 
               ______________

      -   ,     
  ,  .

     -  ,  1988
         -  ,  496
         -  ,  %101010
         -  ,  ""
         - ,  L1234
         -  $ -   
            .

      - "+", "-", ""( AND),  "@"  (
R), "!" ( XOR), "*" (  ),  "/"  (
), "?" ( MOD, A?B=A-(A/B)*B).

     :  " "      -
 .

     "%" -  , " " -   .

     GENS3       -
   (..   65536).    ,  70016
 4480,  524  24.
      !    , ..  -
     .
         ,  ,  
  ,     .  :
LD HL,(LOC+5)     HL  
,       LOC+5  LOC+6.
       Z80  (  JR    DJNR)  
      -
. GENS3         (
LOCATION COUNTER      
    ).    
     -127  + 127.  -
     .   
     :  $+<>,
      -126  129.

      :

   5000 - LABEL
  %1001101 ! %1011 -----------   %1000110
   3456 ?  1000    -----------    456
  4+5*3-8          -----------   19
  $-LFBEL+8        -----------
  2347/7-8         -----------   334
  "A"+128
  "Y"-";"+7
  (5*LABEL-%1000  %1111)
  17 @ %1000

      !          
,    .

             
32767,    "*ERROR 14 *".



              2.7.  .
              _________________________

     GENS3   ,   -
 .        Z80
    . ..   -
   ,    
     ' .

       ORG <>

                
(LOCATION COUNTER).     2 / 16,    -
   RG    
  ,        
"BAD ORG"    (.  2.0  -
   2  16   ORG).

       EQU <>

        .  -
    .    -
 ,     .

       DEFB <>,<>.....

         8 ,    -
    . LOCATION  COUNTER
  1.    .

       DEFN <>,<>.....

      (2 )       
. LOCATION COUNTER   2.   -
   ,   .

       DEFS <>

      LOCATION COUNTER    - -
     ,    
.

       DEFM <>

      N  ASCII -   .  N  M
  1  256,      -
 .        -
      ASCII -   ,
  .

     ENT <>

          
  .     "R"
(.  3).
     ENT    .



           2.8.   .
           __________________________________

          -
    ,     -
 .     :

      "IF", "ELSE", "END"

      IF <>

         ,   -
   ,     ELSE  END.

      ELSE

       ""  ""  .
    ""  .

      ND

        , .. "" -
,    ""  IF  ELSE.

      :

            
   ,      
        -
.



               2.9.  .
               _______________________

      ,    ,    
      '  .    
  .

     *               ,
    .

     *         <>
     ,   ,     
 "*"       .  -
 "*"   "*".

     *S              
(   ).

     *L-          ,    
.

     *L+          ,   


     *D+           LOCANION COUNTER  -
     .  
    .

     *D-            LOCANION  COUNTER  
  

     *C-             
,      9 . 
         32-
  .

     *C+            ,  -
   2.0.

     *F        < >.

        ,   -
,      .    
   (1   1 )     -
,     , .. -
      .   (10  ),
 ,        
"F".   ,        
  .

      ,   ,    -
        ""  (    ""),
..          -
 ,      -
      .

      ,    (   -
  ""),         
GENS3    :

            BUFFER SIZE ? (.  1)

     ,        256,    
   (   4*256 ).

            -
  :  /      
 . ,      "*F" 
 ,,  ,    
      ,  
GENS3    .

      !  ,    
 "*F",           
  .

         "*F",   -
:

           START THE TAPE

             ,  ..  -
       .  -
          -
   .       -
 ,   : FOUND < >,   
.       :  USING
< >        .
       .

      ,  "*F",    
 .

        ""    -
 ,  ,      
 ,   .

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

              3.1.   

     ,        GENS3,  ,
          
Z80,       -
 .
         ,  -
            
 :

         ,   
   ,     -
  ( ENTER),      
     (     )
   "".      -
     .

         ,    
   "" (CI- .)  
   ,      
  .

              :      
 .       
  ,    .

            
 :

     ENTER -  "ENTER" .
     CC - "CAPS SHIFT"  "1"     -
    .
     CH -  "DELETE".
     CI - "CAPS SHIFT"  "8".       
.
     CX - "CAPS SHIFT  "5".   .

             GENS3  -
   :

      "COPYRIGHT HISOFT 1983. ALL RIGHTS RESEVED.

          ,  -
 :

            C N1,N2,S1,S2 ENTER

            C  -   (.  3,2)
            N1 -    1 - 32767
            N2 -    1 - 32767
            S1 -    20 
            S2 -    20 

          (  
, .  "S"),  ,   -
   .         -
,     (, DELETE)   -
   N1  N2.      -
    ,       
 .

     N1  N2  10, A S1  S2 -  .
    , :

      F1 -, 100, HELLO

           - "PARDON?".  
      (1,10,HELLO).    
    ,   S1  20  -
.   S2   .    
      .    -
        (CI,  CX,  
..).

         .  -
. ,    , 


     3.2.  .


     3.2.1.  .


               -
 ,     ,    -
  "I". E         
"ENTER" (..  ),          
   ,   .

           
: CX (   ), CI (    -
  )  CC (   ), 
DELETE (CH)      (    
 ).

          GENS3 ,   ,
  -    CH  CX   -
   .
             
,       RAM, -
 :

             "BAD MEMORY"

        ,         


       :

     I, N, M -        -
        (N -
   ,  -  ).

         ,      
  .     -
 , ENTER -   .   
    "".     
   ,       
 ENTER.
              
32767,   .
            (  -
 ,    64  -  ), -
            
  -    
.


               3.2.2.  


         "L".

     L N,M -         
  N   .   N=1, M=32767  (T.E.
       ).

            "L"  
.           
  .    ,  
  .
              
"".       ,   -
 (      ).   -
       , 
     .

     ,N -       
  (  ).  N    
 . ,  "5",  ,  -
  "L"       .


             3.2.3.  .


       ,  ,   -
 .  GENS3   
,   .


                  D ,N,M

              N      . -
 >N,     ,   -
,     .      
,  N=M,    ,   
 ENTER.


                  M N,M

                   N.
   N  .  N ,
   .    ""
   ,       N
(   )   .     -
    32767,   
 .


                  F N,M,F,S

               TEKT         N    
    "F".    ,  -
           
EDIT (. ). ,    , 
       
F A  S    (.   ). -
  "F"      ,  
     F   -
 (.    3.3).


                  E,N

             N. E     
,     .    
         -
   .     
     EDIT.

          ,  
 .        -
    .        
   ,       -
     :

     " " () -      -
.      .

     CH (DELETE) -      -
.      .

     CI -       
.

    ENTER        -   .

     Q (QUIT) -   , ..  -
        .

     R (RELOAD) -    EDIT    ..
  ,   ,      
   .

     L (LIST) -      
.   .  -
   .

     (KILL)     -      .

     Z -   ,    .

     F (FIN) -        
(.   "F").        
 ,       
.       "F"  -
  ,  ,  , -
    EDIT.    -
    .

     S (SUBSTITUTE)-      -
  "F"      - 
 "F" (.    3.3).

     I (INSERT) -      .
    ,     ENTER,
      EDIT  , -
       .      CH
(DELETE)   ,      -
  ,  CI      
,    .

     X -         -
   "I".

     C -  ,      
       . 
   -  ENTER,       EDIT  
,     .  CH
          .
CI    .


               3.2.4.  .


              
       "", "G"  "".

     P N,M,S -          -
 N < X < M  ,   S.  ,
         .
   ,      
 "".    ,   
   ""   -     "F"
.     "I".

     G ,,S -        S. -
  ,       -
 .     ,    -
  .    "G",  -
: START TAPE...    "-
".   ,   "USING  <  >".  
  ,       -
  (  )      -
   1,   1,  .

     T ,N,M,S -         -
 N < X < M  ,   S,  
  ""      
  "*F" (.  2.8).      -
    ENTER,    
,     .


        3.2.5.      .


      -   ,      
   (.  2).

     R -           
   (    ENT),  
        
.     GENS3 "RET"
(C9H)       ,    ,
      ,       -
.

      !  ENT       
 16.


                   3.2.6.  


      -        .
     ""  ,  
""  (.  1).

      -         ,
 GENS1   GENS1   GENS3.   -
     "G"      
 "",      .

      !          
   .

     S ,,D -    ,   
     .    
    .

      !       
(   "S")   ,     -
.

    !            .

     V - KOMA    N1,  N2,    S1,  S2,
    .     
          
   .

     W N,M- KOMA        
 N DO . E   N  ,   
.       -
 ""  .       
.

     X -        
   .       
   BASIC      -
 ,      .  GENS3  
,        ,  -
  ""      ,         
"TEXTEND",     "START OF GENS3 + 54".
TAK   ,    ( -
   MONS3),       
,   "X",    -
  "TEXTEND"   ""  .  ,
,          
 (    )   902.
  ,  GENS3       24064,  
    BASIC:

             POKE 24064+54,2    (02)
             POKE 24064+55,154  (9A)

          GENS3 :

             RANDOMIZE USR24125

               
.


         3.2.7.   


               (:  "I
10,10")

  10 ; DII RFNDOM
  20
  30 ; INPUT: HL CONTAIN PREVIOS NUMBER OF SEED
  40 ; OUTPUT: HL CONTAIN NEW RANDON NUMBER
  50
  60 RANDOMS     PUSH    HL      ; SAVE REGISTERS
  70 PUSH BC
  80             PUSH   HL,HL
  90             ADD    HL,HL    ; *2
 100             ADD    HL,HL    ; *4
 110             ADD    HL,HL    ; *8
 120             ADD    HL,HL    ; *16
 130             ADD    HL,HL    ; *32
 140             ADD    HL,HL    ; *64
 150             PIP    BC       ; OLD RANDOM NUMBER
 160             ADD    HL,DE
 170             LD     DE,A1
 180             ADD    HL,DE
 190             POP    BC       ; RESTORE REGISTERS
 200             POP    AF
 210             REV

         :
 40  - "RANDON" -   "RAND"
 70  - "PUSH BC" -    
 150 -  "PIP"   "POP"
 160 -    (  ,  )
 210 -  "REV"   "RET"

    :

           ADD     HL,HL

          160-180       "DE"
      "BC".

      ,    ,    -
 :

F40,40,RANDON,RANDON "ENTER"

ZATEM "S"  "E70" "ENTER"

I ( ) (6 ) "ENTER" "ENTER"

I 142,2 "ENTER"
   142    ADD HL,HL     ; *128
   144    ADD HL,HL     ; *256

F150,150,PIP,POP "ENTER"

 "S"  "E160" "ENTER"

 "" ;256 +41  "NTER"

F160,180,DE,BC  "ENTER"

 3  "S"  "E210" "ENTER"

"CI" "CI" "C" ( )

  "ENTER" "ENTER"

N 10,10  

***************************************************************
*                                                             *
* !      *
*                                                             *
*               .  *
*                                                             *
***************************************************************

***************************************************************
*                                                             *
*   ,         *
*                                                             *
***************************************************************


                    4.  NONS3
                    ----------------

                 4.1.  

      MONS3  :      
   ,       .

            MONS3  BASIC, 
      29 () ,  
 .

   :       9000 (49152).
           LOAD "MONS3" CODE 49152
           RANDOMIZE USR 49152

         BASIC    49181.

      MONS3  5,       -
  6,          
    .   MONS3   -
 .

         :

     "* MOBS3 COPYRIGHT HISOFT 1983 *",      -
    (.  D), KOTO -
     Z80  24   
,      "<"  ">" -
      (  
 ),       
   .

        MONS3 ,  ,   
 ,         
,   "SYMBOL SHIFT  3",   
     .

           ">". -
     "SIMBOL SHIFT".    -
     "SIMBOL  SHIFT"    -
  "", ,  "Z"  "SIMBOL  SHIFT"
 "Z"  .

            -
   "NTER",     -
,      
.

          ,  
        
  (.. 0..9,..F)   
      ,      
""()    ,   -
,   "-"(),     -
    , ..1800  800 ,  
  4 ,    4 .

          BASIC    MONS3  
  "CAPS SHIFT"  "1".

       , MONS3    ()-
,       ,
      MONS3.
              4.2. .

     SIMBOL SHIFT  3 -      
    ,   -
.

     SIMBOL SHIFT  4 -     
       .  
"4"    .   
 .

     CAPS SHIFT  7 -     .

     CAPS SHIFT  5 -     8 .-
    .

     CAPS SHIFT  8 -     8.

     ","() -      ,
      (   SP).
          
 .

     "G" -     ,  .
  ":"   ,   
  "ENTER",            
,  ,  .

     :      3FFF(2  -
),   8000. :

:8000 "ENTER" -     8000.

     G:3F "ENTER" -       
.

     FF "ENTER" -         
.

       "ENTER" -   .

       "ENTER"     
   "G".

     "" -       -
.      .

            :

     :41472 = 420 (    )

     "I" - ""      
     .""  
,    ,   -
     .          "I"     
"FIRST:","LAST:",      -
,   ":" -      -
, "FIRST"  "LAST",    -
.

     "J" -         
   ":"   ,-
    ,      
    .   
      MONS3,  TO    
  (. "W"),      
.        ,  "CAPS
SHIFT  5" ,  "J"     -
 ,,       
,   "SIMBOL SHIFT K".

     "SIMBOL SHIFT  " -      -
,      ().    -
   "W".

     ,    ("Z")   -
 ,    892D  .      
   9000.     -
       8800.

     891      3FFF                  LD              A,-1
     8920      CD0090                CALL            9000
     8923      2A0080                LD              HL,(8000)
     8936      7E                    LD              A,(HL)
     8927      111488                LD              DE,8814
     892A      CD0088                CALL            8800
     892D      2003                  CR              NZ,LAB1
     892F      320280                LD              (8002),A
     8932      211488    LAB1        LD              HL,8814

         :   -
 ,   "W"   892D (,  "M"
      ),  
 "" ,        
,      8920.    
     (892).   
        ..   
      ,..""  -
       
         
   "J".

     "L" -    ,   -
   .  "L"      
      80   -
,      . 
      (."3").-
  20   4   ,    -
  (0..31)    .
  ( "CAPS SHIFT  1")   -
,"CAPS SHIFT  5"    .

     "" -      -
.  ":"    ,-
  .    .

     "N" -       -
,    "G".
     "O" -       ,  -
   . ,   
6800,     16,       
 (67FF)  20,      
"JR NZ,+24,        -
   ""    
,     .
     ,      7F  (127)  
   .(.  "U").

     "P" -        -
.  "FIRST:","LAST:","WISH:".

        :

FIRST: 7000 "ENTER"
LAST:  77FF "ENTER"
WISH:  55   "ENTER"

       7000  77FF    55 ("U").
         ,     -
 .

     "Q" -    .
            -
 (AF,HL, DE,BC)<   "Q"    -
   (AF',HL',DE',BC'). 
 "Q"    .

     SIMBOL SHIFT   -    
    . :

      9000      87           R          
      9001      20098       COLL        NZ, 9800
      :         :            :           :
      9800      21FFFF       LD          HL,-1

                  
 9001     .   -
 "Z"     ,    
  9800.          -
 9800   "T",     -
    9004.   ""    
          "K"  (.
 "K").

     "" -      
 .   "FIRST"   "LAST"    
.    "PRINTER?",  "Y" (-
   "Y")    ,   
    .   "TEXT:", -
     ,  -
   .      
,    "ENTER"  .    -
        
  GENS3.    GENS3,  -
 "X",     .     
  MONS3 ,   
     .      
 ,       "WORK  SPACE:",
       -
    ,  -
 2    .      6000.
      "FIRST:"  "LAST:" (-
),     ,   -
   .    
,        
Z80.      "DFB",   -
      32  127 ( 20  7F)   -
   ASCII.      
 ,   "ENTER"   .   ""
    MONS3     
,         (
4   ). ,  ""     -
   (.  "W").

       (   ,    -
 )          
.            
"ENTER"  "SPARCE".  "CAPS SHIFT  5"   -
 .     ( "CAPS SHIFT
 1")  .    -
 ,     "NOP", -
  ("*"),   .

           ,
    ,   :  "END"
OF TEXT XXXXX",  "XXXXX" -    
,      GENS3     
.       
      "CAPS SHIFT  1"    -
  BASIC.

          LXXXX,    XXXX  -
  .       
 ,    ,  -
   .

          
          FIRST: 88         "ENTER"
          LAST : 9E         "ENTER"
          PRINTER? Y
          TEXT              "ENTER"
          FIRST: 95
          LAST : 9E         "ENTER"
          FIRST:            "ENTER"
          LAST :            "ENTER"
          008B   FE16       CP        16
          008D   3801       JP       C,L0090
          008F   23         INC      HL
          0090   27         SCE
          0091   225DSC     LD       ( SC5D),HL
          0094   C9         RET
          0095   BFS24E     DEF8     BF,"R","N"
          0098   S4494E     DEFB     C4,"I","N"
          009B   4B4559     DEFB     "K","E","Y"
          009E   A4         DEFB     F4

     "U" -    "". ,    
""         
JR  DJNZ, "U"         
    "".

      :        7200         47         71F3
                     7201         20         714F
                    <7202         F2>       <71FS F5
                     7203         06         71F6
                      1                  2

        1      202,   
 ""     2,    -
 71F5,       ,    
"U"    1. ,   "U"   -
      "O".

     "W" -        
.      "CALL"  
  MONS3,   .    
      
,     .

             
9876.  ,   "",    -
   9876,  ,   "W"    
  .       -
,       "CALL", 
              
MONS3.

     : MONS3       -
,          
 ,      -
   .      -
 5 .      MONS3  
      .  
""     .    -
  3   "CALL".

      :

        8000            3      8008            00
        8001            01      8009            00
        8002            18      800            06
        8003            06      800B            02
       >8004            AF      800C            18
        8005            0      800D            F7
        8006            FF      800            06
        8007            01      800F            44

            8004   -
    8000,   "A"     -
  1        800,  
"B"   2       8005,
    8005        
   ,       
  .         -
      (. Z).

     "X" -      -
          "CALL"  
"JP".         -
    +1. ,     
   ,     ,   -
   INTEL. ,     
,    CD0563,   "M"
 ,        "CALL"
  "X",   ,   (  -
 )    6305 (. "U"   "X").

     "Y" -   SCII   .    "Y"
   ,      ASCII  -
   ,      
   ,      
.     "CAPS SHIFT  5".   -
      "DELETE".   -
    ,    -
    .

     "SIMBOL SHIFT  Z" -   .

       "Z" ( "T")   "PC"
         
      . "Z"   -
      
 . ,       -
   "RAM",    "ROM",     
 .

     :        -
 .   -     .  
   "HL"  "DE"    
 ( )    (  
"HL") , ,    "AOUT"  (  ),
    .

7080    20072          LD          HL,(7200)       ; SECTION 1
7083    DSB0272        LD          DE,(7202)
7087    CD0071          CALL        MULT
708A    7C              LD          A,H
708B    CD1D71          CALL        AOUT
708E    7D              LD          A,L
708F    CD1D71          CALL        AOUT
7092    210000          LD          HL,0

7100    AF       MULT   XOR         A               ; SECTION 2
7101    ED52            SBC         HL,DE
7103    19              ADD         HL,DE
7104    3001            JR          NC,MUL
7006    EB              EX          DE,HL
7107    B2       MU1    OR          D
7108    37              SCF
7109    C0              RET         NZ
710A    B3              OR          E
710B    5A              LD          E,D
710C    2007            JR          NZ,MU4
710E    EB              EX          DE,HL
710F    C9              RET
7110    EB       MU2    EX          DE,HL
7111    19              ADD         HL,DE
7112    EB              EX          DE,HL
7113    29       MU3    ADD         HL,HL
7114    D8              RET         C
7115    1F       MU4    RRA
7116    30BF            JR          NC,MU3
7118    B7              OR          A
7119    20F5            JR          NZ,MU2
711B    19              ADD         HL,DE
711C    C9              RET

711D    F5       AOUT   PUSH        AF              ;SECNION 3
711E    0F              RRCA
711F    0F              RRCA
7120    0F              RRCA
7121    0F              RRCA
7122    CD2671          CALL        NIBLE
7125    F1              POP         AF
7126    E60F     NIBLE  ANT         %1111
7128    C690            ADD         A, 90
712A    27              DAA
712B    CE40            ADC         A, 40
712D    27              DAA
712E    FD213A5C        LD          IY, 5C3A
7132    D7              RST         10
7133    C9              RET

7200    1B2A            DEFW        10779
7202    0300            DEFW        3

       :

  :7080   "ENTER"        7080
  7080 .                  7080
  Z                   
  Z                   
  :7115   "ENTER"      .  
  W                     
                        7100
                       
  Z                   
  Z                     
  Z                   
  Z                   
  Z                   
  Z                   
  Z                   
  Z                   
  Z                      
  Z                   
  :7128                 
                       
  W                     
                        711D
                       
  Z                   
  Z                   
  Z                   
  Z                   
  ,                     
  W                     
                      
  Z                   
  ,                        
  W                     
  
  Z                   
                      "LOUT"

     "SIMBOL SHIET  " -       "L"  
    . ,    
    "CAPS SHIFT  5"    -
         (    "CAPS
SHIFT  1"    .

     " " -     -
         -
.     .

:

F2  "ENTER"       F2      1.
123 "CAPS SHIFT 8"   23    
                      8.
8CO               8C     (
                   "")  
                 8.
25D             5D,    ,
                ..  ("")   .

     " " -     -
   ">"    ".",   -
     780,   -
   "->". ,    -
 (  )    "SP"    
"IR". :

        .         "IY"
        .         "IX"
        0.       "IX"  0
        .         "HL"
        123      123  "HL"
        .         "DE"
        .         "B"
        27     27  "B"
        .         "AF"
        FF00      ""  FF    
        .         "PC"
        8000.    8000  "PC"

     ,  "."      -
  ,    .  
 "Q"      .


                  
                -------------
          
        -----------------------

* ERORRS * 1  -      .
* ERORRS * 2  -    .
* ERORRS * 3  -   .
* ERORRS * 4  -    .
* ERORRS * 5  -       
                  .

* ERORRS * 6  -         
* ERORRS * 7  -      -
                  .

* ERORRS * 8  -    .
* ERORRS * 9  -       .
* ERORRS * 10 -      -
                 .

* ERORRS * 11 -     JP (IX+D)  JP (IY+D).
* ERORRS * 12 -     
* ERORRS * 13 -    , ..  
                 EQU    .

* ERORRS * 14 -    .
* ERORRS * 15 -     .

BAD MEMORI    -        -
                       
                   .

BAD ORG       -      
                 ORG     GENS3, -
                     . 
                   .

OUT OF TABL SPACE  -       
                       ,   
                      .   -
                      .


                  8
                -------------
  , , , 
----------------------------------------------------------
                GENS3
                -----

**********************************************************
*                                                        *
* !       *
*            , ,*
*                                              *
*                                                        *
*                          ! ! !              *
*                                                        *
**********************************************************

                B1.  .
              -------------------------------

    B    C    D    E    H    L    J    R    S    AF    AF
BC   DE   HL   IX   IY   SP   NC   Z    NZ    M   PE    PO

                B2.    Z80.
              ---------------------------------------------

DC     ADD     AND     BIT     CALL    CCF     CP      CPD
CPRD    CPI     CPIR    CPL     DAA     DEC     DI      DJNZ
EI      EX      EXX     HALT    IM      IN      INC     IND
INDR    INI     INIR    JP      JR      LD      LDD     LDDR
LDI     LDIR    NEG     NOP     OTDR    OTIR    OUT     OUTD
OOT     I       POP     PUSH    REG     RET     RETI    REIN
RL      RLA     RLC     RLCA    RLD     RR      RRA     RRC
RRCA    RRD     RST     SBC     SCF     SET     SLA     SPA
SRL     SUB     XOR

                 B3.  .
               ----------------------------

DEFB    DEFM    DEFS    DEFW    ELSE    END     ENT
EQU     IF      ORG

                 B4.  .
               ---------------------------

*D      *E      *H      *L      *S      *C      *F

                     .
                  -----------------

                    .
                 -------------------

             ,  -
     .  ,  
"ENTER"      "ENTER" 
.

                    .

     1.           ,
           "" ,    
           .
     2.   ,    -
        .
     3.     ,    -
          "T",     
           .

       GENS3: LOAD "" CODE 24064 ;     :
BUFFER SIZE ? ;  :1 "ENTER",      -
 256 .  ">" ,      -
        .

               .

            
"I".   "CI" ( )   
  .


**************************************************************
*                                                            *
* ! ,    ,   *
*               ',   *
*              .                         *
*                                                            *
**************************************************************

        I 10,10 "ENTER"
10  ;  A FAST INTEGER MULTIPLY                  "ENTER"
20  ;  ROUTINE. MULTIPLIES HL                   "ENTER"
30  ;  BY DE. RETURN THE RESULT                 "ENTER"
40  ;  IN HL. C FLA SET ON FN                   "ENTER"
50  ;  OVERFOW.                                 "ENTER"
60                                              "ENTER"
70  ;  ORG        7F00                          "ENTER"
80                                              "ENTER"
90  ;  MULT     OR      A                       "ENTER"
100             SBC     HL,DE   ; HL > DE       "ENTER"
110             ADD     HL,DE                   "ENTER"
130             JR      NC,MUL  ; YES           "ENTER"
140 ;MUL        OR      D                       "ENTER"
150             SCF             ; OVERFLOW IF   "ENTER"
160             RET     NZ      ; DE > 255      "ENTER"
170             OR      E       ; TIMES 0       "ENTER"
180             LD      E,D                     "ENTER"
190             JR      NZ,MU5  ; NO            "ENTER"
200             EX      DE,HL   ; 0             "ENTER"
210             RET                             "ENTER"
220                                             "ENTER"
230 ;  MINE ROUTINE                             "ENTER"
240                                             "ENTER"
250 MU2         EX      DE,HL                   "ENTER"
260             ADD     HL,DE                   "ENTER"
270             EX      DE,HL                   "ENTER"
280 MU3         ADD     HL,HL                   "ENTER"
290             RET     C        ; OVERFLOW     "ENTER"
300 MU4         RRA                             "ENTER"
310             JR      NC,MU3                  "ENTER"
320             JR      A                       "ENTER"
330             JR      NZ,MU2                  "ENTER"
340             ADD     HL,DE                   "ENTER"
350             RET                             "ENTER"
360 CC
> P 10,350
>

                
.         ""  
  "".

                 .

      ,         ,
          "6"
(      ' ).

>               "ENTER"
TABLE SIZE:      "ENTER" (    )
TIONS : 6
                 * HISOFT GENS3 ASSEMBLER *
                   COPYRIGHT HISOFT 1983
                    ALL RIGHTS RESERVED
                    PASS 1 ERORRS : 00
                    PASS 2 ERORRS : 00
                 * WARNING * MU5 ABSENT
                 TABLE  USED 74 FROM 161

          190  :  U4  U5.
  :

>F190,190,MU5,MU4
  190   JR      NZ       (   "S")
>

       ,   
.        -
   .

>N 300,10    ()                           "ENTER"
>I 10,10                                               "ENTER"

 10 ; THE MULT ROUNINE                                 "ENTER"
 20 ; TEST CODES                                       "ENTER"
 30                                                    "ENTER"
 40      LD       HL,50                                "ENTER"
 50      LD       DE,20                                "ENTER"
 60      CALL     MULT           ; MULTIPLY            "ENTER"
 70      LD       A,H            ; O/P RESULT          "ENTER"
 80      CALL     AOUT                                 "ENTER"
 90      LD       A,L                                  "ENTER"
 100     CALL     AOUT                                 "ENTER"
 110     RET                     ; RETURN NO EDITOR    "ENTER"
 120                                                   "ENTER"
 130 ; ROUTINE TO C/P A IN HE                         "ENTER"
 140                                                   "ENTER"
 150 AOUT          PUSH     AF                         "ENTER"
 160               RRCA                                "ENTER"
 170               RRCA                                "ENTER"
 180               RRCA                                "ENTER"
 190               RECA                                "ENTER"
 200               CALL     NIBLE                      "ENTER"
 210               POP      AF                         "ENTER"
 220 NIBLE         AND      %1111                      "ENTER"
 230               ADD      A, 90                      "ENTER"
 240               DAA                                 "ENTER"
 250               ADC      A, 40                      "ENTER"
 260               DAA                                 "ENTER"
 270               LD       TY, 5C3A  ; FOR ROM        "ENTER"
 280               RST       10       ; ROM CALL       "ENTER"
 290               RAT                                 "ENTER"
 300 CC
 >

              -
 :

        >                   "ENTER"
        TABLE SIZE :         "ENTER"
        OPTIONS  : 6         "ENTER"


           ****************************
           *                          *
           *       GENS3      *
           *                          *
           ****************************

     7EAC       190     RECA
     * ERORR    * 02   (    )
     PASS 1     EROORS : 01
     NFBLE USED  : 88     FROM     210
     >

         -   190  RRCA 
RECA.   :

        >190                     "ENTER"
        190          RECA
.      ENT:)"ENTER"

        >300            N         <>           "ENTER"

         :4 ( -
).    . ,   
,     TABLE USED 88 FROM  211  -
   EXECUTES : 32416

        ,      -
,    "R".   
 ( 20  50)   1000  038 
  .

        >R
        0032>

      ! ?   380-500 (L380,500).
    430  "R D",     
"RET NZ". K   R   
 D          
 "".    - , DE  <  256,  
    .   -
,  ""   0.     
 ,     -
.  , ,    380  "R  "
   "XOR A",      "SBC
HL,DE"   .

        >380                "ENTER"
        380 MULT          OR        A
        380          I   ( )    "ENTER"   "ENTER"

       ( 4).  , -
 "R".    : 38.

           ,  -
  20  40        
   .

               -
,   ""    -
.

        > 300,999,UL         "NTR"

     !     ""  -
   "NTER".


                   D
                -----------------

  :

710            2007             JR
PC   710C           20 07 EB C9  EB 19 EB
SP   D0AF           8A 70 06 03  0A 03 0D
IY   0F6A           0D 11 0C 0F  09 18 18
IX   DO0F           04 03 04 00  00 00 1B
HL   2A18           DF FE 29 28  02 CF 02
DE   0000           F3 AF 11 FF  FF C3 CB
BC   0004           FF C3 CB 11  2F 5D 5C
AF   0304                V
IR   3F7C

7100   AF           7108  37     7110  EB
7101   ED           7109  C0     7111  19
7102   52           710A  83     7112  EB
7103   19           710B  5A     7113  29
7104   30          >710C  20<    7114  D8
7105   EB           710E  E8     7116  30
7107   B2           710F  09     7117  EB
 >

             "SIMBOL
SHIFT  Z".      7  
      .  -
       
 - .   " "      
  (. " "),  -
      ">".
