Annotation of cci/d/memman/error_hdl.s, revision 1.1.1.1

1.1       root        1: LL0:
                      2:        .data
                      3:        .set SBR,0
                      4:        .set SLR,1
                      5:        .set P0BR,2
                      6:        .set P0LR,3
                      7:        .set P1BR,4
                      8:        .set P1LR,5
                      9:        .set P2BR,6
                     10:        .set P2LR,7
                     11:        .set IPL,8
                     12:        .set MAPEN,9
                     13:        .set MME,9
                     14:        .set TBIA,10
                     15:        .set TBIS,11
                     16:        .set DCK,12
                     17:        .set CCK,13
                     18:        .set PCBB,14
                     19:        .set KSP,19
                     20:        .set USP,20
                     21:        .set CPMDCB,21
                     22:        .set PADC,25
                     23:        .set DCR,27
                     24:        .set DC_ON,1
                     25:        .set DC_OFF,2
                     26:        .set TB_ON,256
                     27:        .set TB_OFF,512
                     28:        .align  2
                     29:        .globl  _Tname
                     30: _Tname:
                     31:        .data   2
                     32: L17:
                     33:        .ascii  "\12\0"
                     34:        .data
                     35:        .long   L17
                     36:        .text
                     37:        .align  1
                     38:        .globl  _chk_pars
                     39: _chk_pars:
                     40:        .word   L19
                     41:  # #include "definitions"
                     42:  # 
                     43:  # extern long *p_ptr, exp_par0, exp_par1, exp_par2, exp_par3;
                     44:  # char *Tname = "\n";         /* PTR to test name */
                     45:  # 
                     46:  # chk_pars(msg1)
                     47:  # char *msg1;
                     48:  # {   char *msg2;
                     49:        jbr     L21
                     50: L22:
                     51:  #     long *pcb_base, act_param;
                     52:  # 
                     53:  #     /* Check fault parameter words  */
                     54:  #     act_param = *p_ptr++;
                     55:        movl    *_p_ptr,-64(fp)
                     56:        addl2   $4,_p_ptr
                     57:  #     if (exp_par0 != act_param)
                     58:        cmpl    _exp_par0,-64(fp)
                     59:        jeql    L23
                     60:  #             { msg2="** fault indicator (1st word) is not as expected !!\n"; 
                     61:        .data   1
                     62: L24:
                     63:        .ascii  "** fault indicator (1st word) is not as expected !!\12\0"
                     64:        .text
                     65:        movl    $L24,-56(fp)
                     66:  #               pverr_handler(msg1,msg2,exp_par0,act_param); }
                     67:        pushl   -64(fp)
                     68:        pushl   _exp_par0
                     69:        pushl   -56(fp)
                     70:        pushl   4(fp)
                     71:        callf   $20,_pverr_handler
                     72:  #     act_param = *p_ptr++;
                     73: L23:
                     74:        movl    *_p_ptr,-64(fp)
                     75:        addl2   $4,_p_ptr
                     76:  #     if (exp_par1 != act_param)
                     77:        cmpl    _exp_par1,-64(fp)
                     78:        jeql    L26
                     79:  #             { msg2="** virtual addr in 2nd parameter is not as expected\n"; 
                     80:        .data   1
                     81: L27:
                     82:        .ascii  "** virtual addr in 2nd parameter is not as expected\12\0"
                     83:        .text
                     84:        movl    $L27,-56(fp)
                     85:  #               pverr_handler(msg1,msg2,exp_par1,act_param); }
                     86:        pushl   -64(fp)
                     87:        pushl   _exp_par1
                     88:        pushl   -56(fp)
                     89:        pushl   4(fp)
                     90:        callf   $20,_pverr_handler
                     91:  #     act_param = *p_ptr++;
                     92: L26:
                     93:        movl    *_p_ptr,-64(fp)
                     94:        addl2   $4,_p_ptr
                     95:  #     if (exp_par2 != act_param)
                     96:        cmpl    _exp_par2,-64(fp)
                     97:        jeql    L28
                     98:  #             { msg2="** PC in 3rd parameter word is not as expected\n"; 
                     99:        .data   1
                    100: L29:
                    101:        .ascii  "** PC in 3rd parameter word is not as expected\12\0"
                    102:        .text
                    103:        movl    $L29,-56(fp)
                    104:  #               pverr_handler(msg1,msg2,exp_par2,act_param); }
                    105:        pushl   -64(fp)
                    106:        pushl   _exp_par2
                    107:        pushl   -56(fp)
                    108:        pushl   4(fp)
                    109:        callf   $20,_pverr_handler
                    110:  #     act_param = (*p_ptr) & 0xffffffc0;  /* Mask out PSW flags */
                    111: L28:
                    112:        andl3   $-64,*_p_ptr,r0
                    113:        movl    r0,-64(fp)
                    114:  #     if (exp_par3 != act_param)
                    115:        cmpl    _exp_par3,-64(fp)
                    116:        jeql    L30
                    117:  #             { msg2="** PSL in 4th parameter word is not as expected \n"; 
                    118:        .data   1
                    119: L31:
                    120:        .ascii  "** PSL in 4th parameter word is not as expected \12\0"
                    121:        .text
                    122:        movl    $L31,-56(fp)
                    123:  #               pverr_handler(msg1,msg2,exp_par3,act_param); }
                    124:        pushl   -64(fp)
                    125:        pushl   _exp_par3
                    126:        pushl   -56(fp)
                    127:        pushl   4(fp)
                    128:        callf   $20,_pverr_handler
                    129:  # 
                    130:  # }
                    131: L30:
                    132:        ret
                    133:        .set    L19,0x0
                    134: L21:
                    135:        subl3   $64,fp,sp
                    136:        jbr     L22
                    137:        .data
                    138:        .text
                    139:        .align  1
                    140:        .globl  _pverr_handler
                    141: _pverr_handler:
                    142:        .word   L32
                    143:  # 
                    144:  # pverr_handler(msg1,msg2,exp,act)
                    145:  # char *msg1, *msg2;
                    146:  # long exp, act;
                    147:  # {   
                    148:        jbr     L34
                    149: L35:
                    150:  # 
                    151:  #     writes(Tname);
                    152:        pushl   _Tname
                    153:        callf   $8,_writes
                    154:  #     writes(msg1); writec('\n'); writes(msg2); writec('\n');
                    155:        pushl   4(fp)
                    156:        callf   $8,_writes
                    157:        pushl   $10
                    158:        callf   $8,_writec
                    159:        pushl   8(fp)
                    160:        callf   $8,_writes
                    161:        pushl   $10
                    162:        callf   $8,_writec
                    163:  #     writes("** Expected data : "); writeh(exp); writec('\n');
                    164:        .data   1
                    165: L38:
                    166:        .ascii  "** Expected data : \0"
                    167:        .text
                    168:        pushl   $L38
                    169:        callf   $8,_writes
                    170:        pushl   12(fp)
                    171:        callf   $8,_writeh
                    172:        pushl   $10
                    173:        callf   $8,_writec
                    174:  #     writes("** Actual data   : "); writeh(act); writec('\n');
                    175:        .data   1
                    176: L40:
                    177:        .ascii  "** Actual data   : \0"
                    178:        .text
                    179:        pushl   $L40
                    180:        callf   $8,_writes
                    181:        pushl   16(fp)
                    182:        callf   $8,_writeh
                    183:        pushl   $10
                    184:        callf   $8,_writec
                    185:  #     asm("halt");
                    186: halt
                    187:  # }
                    188:        ret
                    189:        .set    L32,0x0
                    190: L34:
                    191:        jbr     L35
                    192:        .data
                    193:        .text
                    194:        .align  1
                    195:        .globl  _print_params
                    196: _print_params:
                    197:        .word   L42
                    198:  # 
                    199:  # 
                    200:  # 
                    201:  # print_params()
                    202:  # {   
                    203:        jbr     L44
                    204: L45:
                    205:  #     long *param_ptr;
                    206:  # 
                    207:  #     param_ptr = p_ptr;
                    208:        movl    _p_ptr,-56(fp)
                    209:  #     writes("        Parameter 1 : "); writeh(*param_ptr++); writec('\n');
                    210:        .data   1
                    211: L46:
                    212:        .ascii  "\11Parameter 1 : \0"
                    213:        .text
                    214:        pushl   $L46
                    215:        callf   $8,_writes
                    216:        movl    -56(fp),r0
                    217:        addl2   $4,-56(fp)
                    218:        pushl   (r0)
                    219:        callf   $8,_writeh
                    220:        pushl   $10
                    221:        callf   $8,_writec
                    222:  #     writes("        Parameter 2 : "); writeh(*param_ptr++); writec('\n');
                    223:        .data   1
                    224: L47:
                    225:        .ascii  "\11Parameter 2 : \0"
                    226:        .text
                    227:        pushl   $L47
                    228:        callf   $8,_writes
                    229:        movl    -56(fp),r0
                    230:        addl2   $4,-56(fp)
                    231:        pushl   (r0)
                    232:        callf   $8,_writeh
                    233:        pushl   $10
                    234:        callf   $8,_writec
                    235:  #     writes("        Parameter 3 : "); writeh(*param_ptr++); writec('\n');
                    236:        .data   1
                    237: L48:
                    238:        .ascii  "\11Parameter 3 : \0"
                    239:        .text
                    240:        pushl   $L48
                    241:        callf   $8,_writes
                    242:        movl    -56(fp),r0
                    243:        addl2   $4,-56(fp)
                    244:        pushl   (r0)
                    245:        callf   $8,_writeh
                    246:        pushl   $10
                    247:        callf   $8,_writec
                    248:  #     writes("        Parameter 4 : "); writeh(*param_ptr); writec('\n');
                    249:        .data   1
                    250: L49:
                    251:        .ascii  "\11Parameter 4 : \0"
                    252:        .text
                    253:        pushl   $L49
                    254:        callf   $8,_writes
                    255:        pushl   *-56(fp)
                    256:        callf   $8,_writeh
                    257:        pushl   $10
                    258:        callf   $8,_writec
                    259:  #     asm("halt");
                    260: halt
                    261:  # }
                    262:        ret
                    263:        .set    L42,0x0
                    264: L44:
                    265:        subl3   $56,fp,sp
                    266:        jbr     L45
                    267:        .data
                    268:  # 
                    269:  # 
                    270:  # 
                    271:  # 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.