0                    1                    2                     3                     4                     5                     6                     7                     8                     9

                                                                                         This microprogram tests the mask of the condition reg             S5=1 No branch                                                 
                                                                                         with the 4 bit mask from byte 2 of the branch on cond             S5=0 Branch if condition matches mask                                           
A                                                                                        instruction. If a branch, the branch address is read out          S2=1 Condition matches                                                                    
                                                                                         and placed in IJ for the entrance into the I cycles               S2=0 Condition does not match mask                                 
                                                                                         for the new instruction                                           S2 set at end to indicate BR addr unavail or off boundry        
                                                                                                                                                           S6 set at end to indicate address unavailable                 

B

                              00 --- 02D8           10 --- 0272                                                                                                                                                           
                          K 0011        |       |             |                                                                                                                                                          
                          A DH+KL>T     |       A V+0+1>V     |                                                                                                                                                                 
C                     ---*S UV>MN    LS S*------S WRITE       |*-----------------------------------------------------------------------------------------------------------------------------------------------------------------------QA171------CBE
                      |   |             |       C 0>S2        |                                                                                                                                                                        (00,01)
                      |   |             |       |             |                                                                                                                                                                        RR branch
                      |   R 1,0       72R       R 0,S5      70R                                                                                                                                                                        on count
                      |   C1--    10 --CA       C2--    0* --CB                                                                                                                                                            
                      |  BR on count           Read out unavail
D                     |  Set up count          Branch address
                      |  Reg address           Test if branch
                      |       01 --- 02D9           00 --- 0214                                                                                                                                               ** ---  XXX
                      |   K 0010        |       K 0001,0      |                                                                                                                                           | Go to       |
                      |   A V+KL>V      |       A 0>S         |                                                                                                                                           | QA001.GBB   |    
E   QA011.JGE---------O---S UV>MN    LS S*--O---S WRITE   K>W R*--------------------------------------------O---------------------------------------------------------------------------------------------|             |                            
    (00,01)               C 0>S2        |   |   |             |                                             |                                                                                             |             |    
    BR cond count         |             |   |   |             |                                             |                                                                                             |             |
                          R S2,S5     14R   |   R S1,INTR   00R                                             |                                                                                             |             |
                          E1--    ** --EA   |   E2--    ** --EB                                             |                                                                                             E9--    ** --EJ
                         BR on cond         |  No branch                                                    |
F                        Begin read-out     |                                                               |
                         of unavail addr    |                                                               |
                         set up for LD      |       01 --- 0215                                             |         11 --- 0203           00 --- 0284           01 --- 0201           01 --- 0281                        
                         addr read-out      |   K 0001,0      |                                             |     K 0000,0      |       |             |       K 0001        |       K 0001,0      |                        
                                            |   A 0>S         |                                             |     A L>R         |       |             |       A J.KL>L      |       A R>I         |                           
G                                           O---S WRITE   K>W R---------------------------------------------O ----S *A8      LS S*------S STORE       |*------S UV>MN    LS S*--O---S WRITE   K>W R*------------------------                         
                                            |   |             |                                             | |   C 1,S6        |       |             |       C ANSNZ>S2    |   |   C 0>S0        |                        |    
                                            |   |             |                                             | |   |             |       |             |   ----|             |   |   |             |                        |
                                            |   R S1,INTR   00R                                             | |   R 0,0       84R       R 0,1       01R   |   R S1,1      81R   |   R 0,INTR    00R                        |
                                            |   G2--    ** --GB                                             | |   G5--    00 --GE       G6--    01 --GF   |   G7--    *1 --GG   |   G8--    0* --GH                        |
                                            |  No branch                                                    | |  Store unavail                            |  Test J for being   |  Transfer to I                           |
H                                           |                                                               | |  addr byte in K16                         |  on boundry         |                                          |
                                            |                                                               | |                                           |  Read out Hi addr   |                                          |
                                            |       10 --- 0216           10 --- 0206           01 --- 02c1 | |                                           |  L=00 if J even     |       11 --- 0283                        |
                                            |   |             |       |             |       |             | | |                                           |  L=01 if J odd      |   |             |                        |
                                            |   A R>L         |       A V-0>V       |       A R>J         | | |                                           |                     |   A R>U         |                        |   
J                                           O---S WRITE       |*------S UV>MN    LS S*------S WRITE       |*--O--------------------------------------------                     ----S WRITE       |*-------                |                         
                                            |   C ANSNZ>S2    |       |             |       |             | |                                                                       |             |       |                |  
                                            |   |             |       |             |       |             | |                                                                       |             |       |                |
                                            |   R 1,0       06R       R 0,1         |       R S2,1      01R |                                                                       R 1,1       1FR       |                |
                                            |   J2--    10 --JB       J3--    01 --JC       J4--    *1 --JD |                                                                       J8--    11 --JH       |                |
                                            |  Branch                Read out lo           Put in J, test   |                                                                      Execute Op             |                |
K                                           |  Test unavail byte     address               addr unavail     |                                                                      Go to restore          |                |
                                            |                     ------------------------------------------O                                                                      PSW bit                |                |
                                            |       11 --- 0217   |                             01 --- 0275 |                                                                      Put Hi addr in U       |                |
                                            |   K 0001,0      |   |                         K 0001,0      | |                                                                      to use that            |                |
                                            |   A 0>L         |   |                         A 0>S         | |                                                                      routine                |                |   
L                                           ----S WRITE   K>W R----                     ----S         K>W R-O                                                                                             |                |                         
                                                C 0>S2        |                         |   |             | |                                                                                             |                |  
                                                |             |                         |   |             | |                       ----------------------------------------------------------------------|                |
                                                R S1,INTR   00R                         |   R S1,INTR   00R |                       |                                                                                      |
                                                L2--    ** --LB                         |   L4--    ** --LD |                       |                                                                                      |
                                               No branch                                |  No branch        |                       |                                                                                      |
M                                                                                       |                   |                       |                                                                                      |
                                                                                        |                   |                       |                                                                                      |
                              11 --- 015B           10 --- 01AA           01 --- 02FD   |       11 --- 0277 |                       |       11 --- 021F           01 --- 0261           01 --- 0221                        |
                          K 1011,1      |       K 0010,0      |       |             |   |   K 0001,0      | |                       |   K 0100,0      |       K 0100        |       K 0100        |                        |
                          |             |       A RM,LH>Z     |       A 0>L         |   |   A 0>S         | |                       |   A 0>R         |       A S.-KH>S     |       A 0+KH>G      |                        | 
N   QA051.JCE------------*S *BB      LS S*------S WRITE   K>W R*------|             |*--O---S         K>W R--                       ----S *8C      LS S*------S STORE       |*------|             |*---                    |                          
    (11)                  |             |       |             |       |             |   |   |             |                             |             |       |             |       |             |   |                    |   
    MX Branch             |             |       |             |       |             |   |   |             |   --------------------------|             |       |             |       |             |   |                    |
    on condition          R 1,0       AAR       R 0,1       FDR       R S2,Z=0    74R   |   |S1,INTR    00R   |                         R 0,1       61R       R 0,1       21R       R 0,1       1DR   |                    |
                          N1--    10 --NA       N2--    01 --NB       N3--    ** --NC   |   N4--    ** --ND   |                         N6--    01 --NF       N7--    01 --NG       N8--    01 --NH   |                    |
                         Read out cond         Mask cond reg         Test masking       |  No branch          |                        Reset PSW bit in      Reset S1              Restore ILC        |                    |
P                        register                                    and for invalid    |                     |                        local storage                                                  |                    |  
    QA191.EJE----------                                              branch addr        |                     |                                                                                       |                    | 
    (00,10)           |                                                                 |       00 --- 0274   |                                                                                       |       01 --- 021D  | 
    BR IX end         |                                                                 |   |             |   |                                                                                       ----K 0001        |  | 
                      |                                                                 |   A V>J         |   |                                                                                           A U>I         |  | 
Q   QA171.JEE---------O-----------------------------------------------------------------O---|             |*--O-------------------------------------------------------------------------------------------S         K>W R--O-----------QA001------GHE
    (00,01,10,11)                                                                       |   |             |                                                                                               C 0>S0        |              (00,01)
    BR ending                                                                           | --|             |                                                                                               |             |              Branch I
                                                                                        | | R S1,1      1DR                                                                                               R 0,INTR    00R              cycle start
                                                                                        | | Q4--    *1 --QD                                                                                               Q9--    0* --QJ
                                                                                        | |Br Lo addr to J                                                                                               Hi addr to I
R                                                                                       | |
                                                                                        | ---------------------
                                                                                        |       10 --- 0276   |
                                                                                        |   K 0001        |   | In step SD, it has been determined that the branch
                                                                                        |   A V.KL>L      |   | addr is invalid. L will then be set to 00 if the
S                                                                                       ----|             |*--- branch addr is even, or to 01 if the branch addr
                                                                                            |             |     is odd
 Q                                                                                          |             |
 A                                                                                          R 0,0       74R
 1                                                                                          S4--    00 --SD
 6                                                                                                                                                | 128015        08/24/65 | Mach          2030       | Date  11/07/67          Sheet    1  QA161 |
 1                                                                                                                                                | 128045        11/17/65 | Name                     | Log    2046             Version           |
                                                                                                                                                  | 128065        07/26/67 | Mode          Manual     |                                           |
                                                                                                                                                  |                        | P.N.          837010     |    BRANCH ON CONDITION                    |
                                                                                                                                                  |                        | IBM Corp.     SDD        |                                           |