|
|
1.1 root 1: /*
2: Error processor for the memory test
3: options:
4: loop_flg = if TRUE we will loop on error
5: else continue testing
6: */
7: #include "definitions"
8:
9: #define MEMUNIT (64*1024)
10:
11: extern long cycle,test_no,errcnt;
12: extern long loop_flg,hlt_flg,prt_flg;
13:
14:
15: error(address,expected)
16: register long *address;
17: int expected ;
18: {
19: long dummy;
20:
21: if(prt_flg) {
22: writes("\n Test Address Expected Actual Count Cycle ");
23: writec('\n');
24: writes(" ");
25: pt_hex(test_no,8);writes(" ");
26: pt_hex(address,8);writes(" ");
27: pt_hex(expected,8);writes(" ");
28: pt_hex(*address,8);writes(" ");
29: pt_hex(errcnt++,8);writes(" ");
30: pt_hex(cycle,8);
31: locate(address,expected,*address); /* Locate Board */
32: }
33: if (loop_flg) return(TRUE);
34: else {
35: dummy = dummy;
36: asm("halt");
37: dummy = dummy;
38: }
39: }
40:
41:
42: pt_hex(i,num)
43: register long i;
44: register short num; /* num = number of digits to print; max is 8 */
45:
46: {
47: register nib, ch, hchar;
48: register n;
49:
50: for( n= (num - 1); n >= 0; n--) {
51: nib = (int) (i >> ( n << 2));
52: ch = nib & 0x0f;
53: if(ch >= 0xA && ch <= 0xF)
54: hchar = (ch - 0xA) + 'A';
55: else
56: hchar = ch + '0';
57: writec(hchar);
58: }
59: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.