             ;******* Set address of trap operand 
             oldX4:   .EQUATE 7          ;oldX + 4 with two return addresses 
             oldPC4:  .EQUATE 9          ;oldPC + 4 with two return addresses 
             oldSP4:  .EQUATE 11         ;oldSP + 4 with two return addresses 
FD19  DB000D setAddr: LDBYTEX oldIR4,s   ;X := old instruction register 
FD1C  980007          ANDX    0x0007,i   ;Keep only the addressing mode bits 
FD1F  1D              ASLX               ;An address is two bytes 
FD20  05FD23          BR      addrJT,x   
FD23  FD33   addrJT:  .ADDRSS addrI      ;Immediate addressing 
FD25  FD3D            .ADDRSS addrD      ;Direct addressing 
FD27  FD4A            .ADDRSS addrN      ;Indirect addressing 
FD29  FD5A            .ADDRSS addrS      ;Stack relative addressing 
FD2B  FD6A            .ADDRSS addrSF     ;Stack relative deferred addressing 
FD2D  FD7D            .ADDRSS addrX      ;Indexed addressing 
FD2F  FD8D            .ADDRSS addrSX     ;Stack indexed addressing 
FD31  FDA0            .ADDRSS addrSXF    ;Stack indexed deferred addressing 
             ; 
FD33  CB0009 addrI:   LDX     oldPC4,s   ;Immediate addressing 
FD36  880002          SUBX    2,i        ;Oprnd = OprndsSpec 
FD39  E9FC55          STX     opAddr,d   
FD3C  58              RET0               
             ; 
FD3D  CB0009 addrD:   LDX     oldPC4,s   ;Direct addressing 
FD40  880002          SUBX    2,i        ;Oprnd = Mem[OprndSpec] 
FD43  CD0000          LDX     0,x        
FD46  E9FC55          STX     opAddr,d   
FD49  58              RET0               
             ; 
FD4A  CB0009 addrN:   LDX     oldPC4,s   ;Indirect addressing 
FD4D  880002          SUBX    2,i        ;Oprnd = Mem[Mem[OprndSpec]] 
FD50  CD0000          LDX     0,x        
FD53  CD0000          LDX     0,x        
FD56  E9FC55          STX     opAddr,d   
FD59  58              RET0               
             ;          
FD5A  CB0009 addrS:   LDX     oldPC4,s   ;Stack relative addressing 
FD5D  880002          SUBX    2,i        ;Oprnd = Mem[SP + OprndSpec] 
FD60  CD0000          LDX     0,x        
FD63  7B000B          ADDX    oldSP4,s   
FD66  E9FC55          STX     opAddr,d   
FD69  58              RET0               
             ; 
FD6A  CB0009 addrSF:  LDX     oldPC4,s   ;Stack relative deferred addressing 
FD6D  880002          SUBX    2,i        ;Oprnd = Mem[Mem[SP + OprndSpec]] 
FD70  CD0000          LDX     0,x        
FD73  7B000B          ADDX    oldSP4,s   
FD76  CD0000          LDX     0,x        
FD79  E9FC55          STX     opAddr,d   
FD7C  58              RET0               
             ; 
FD7D  CB0009 addrX:   LDX     oldPC4,s   ;Indexed addressing 
FD80  880002          SUBX    2,i        ;Oprnd = Mem[OprndSpec + X] 
FD83  CD0000          LDX     0,x        
FD86  7B0007          ADDX    oldX4,s    
FD89  E9FC55          STX     opAddr,d   
FD8C  58              RET0               
             ; 
FD8D  CB0009 addrSX:  LDX     oldPC4,s   ;Stack indexed addressing 
FD90  880002          SUBX    2,i        ;Oprnd = Mem[SP + OprndSpec + X] 
FD93  CD0000          LDX     0,x        
FD96  7B0007          ADDX    oldX4,s    
FD99  7B000B          ADDX    oldSP4,s   
FD9C  E9FC55          STX     opAddr,d   
FD9F  58              RET0               
             ; 
FDA0  CB0009 addrSXF: LDX     oldPC4,s   ;Stack indexed deferred addressing 
FDA3  880002          SUBX    2,i        ;Oprnd = Mem[Mem[SP + OprndSpec] + X]
FDA6  CD0000          LDX     0,x        
FDA9  7B000B          ADDX    oldSP4,s   
FDAC  CD0000          LDX     0,x        
FDAF  7B0007          ADDX    oldX4,s    
FDB2  E9FC55          STX     opAddr,d   
FDB5  58              RET0               
