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

1.1       root        1: #include "definitions"
                      2: 
                      3: extern long *p_ptr, exp_par0, exp_par1, exp_par2, exp_par3;
                      4: char *Tname = "\n";            /* PTR to test name */
                      5: 
                      6: chk_pars(msg1)
                      7: char *msg1;
                      8: {      char *msg2;
                      9:        long *pcb_base, act_param;
                     10: 
                     11:        /* Check fault parameter words  */
                     12:        act_param = *p_ptr++;
                     13:        if (exp_par0 != act_param)
                     14:                { msg2="** fault indicator (1st word) is not as expected !!\n"; 
                     15:                  pverr_handler(msg1,msg2,exp_par0,act_param); }
                     16:        act_param = *p_ptr++;
                     17:        if (exp_par1 != act_param)
                     18:                { msg2="** virtual addr in 2nd parameter is not as expected\n"; 
                     19:                  pverr_handler(msg1,msg2,exp_par1,act_param); }
                     20:        act_param = *p_ptr++;
                     21:        if (exp_par2 != act_param)
                     22:                { msg2="** PC in 3rd parameter word is not as expected\n"; 
                     23:                  pverr_handler(msg1,msg2,exp_par2,act_param); }
                     24:        act_param = (*p_ptr) & 0xffffffc0;  /* Mask out PSW flags */
                     25:        if (exp_par3 != act_param)
                     26:                { msg2="** PSL in 4th parameter word is not as expected \n"; 
                     27:                  pverr_handler(msg1,msg2,exp_par3,act_param); }
                     28: 
                     29: }
                     30: 
                     31: pverr_handler(msg1,msg2,exp,act)
                     32: char *msg1, *msg2;
                     33: long exp, act;
                     34: {      
                     35: 
                     36:        writes(Tname);
                     37:        writes(msg1); writec('\n'); writes(msg2); writec('\n');
                     38:        writes("** Expected data : "); writeh(exp); writec('\n');
                     39:        writes("** Actual data   : "); writeh(act); writec('\n');
                     40:        asm("halt");
                     41: }
                     42: 
                     43: 
                     44: 
                     45: print_params()
                     46: {      
                     47:        long *param_ptr;
                     48: 
                     49:        param_ptr = p_ptr;
                     50:        writes("        Parameter 1 : "); writeh(*param_ptr++); writec('\n');
                     51:        writes("        Parameter 2 : "); writeh(*param_ptr++); writec('\n');
                     52:        writes("        Parameter 3 : "); writeh(*param_ptr++); writec('\n');
                     53:        writes("        Parameter 4 : "); writeh(*param_ptr); writec('\n');
                     54:        asm("halt");
                     55: }
                     56: 
                     57: 
                     58: 
                     59: 

unix.superglobalmegacorp.com

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