|
|
1.1 root 1:
2:
3: /* WORD DISPLACEMENT ADDRESSING MODE TEST */
4: /* */
5: /* */
6: /* */
7: /* Syst.s - Constants */
8: /* */
9: .set IPL,8
10: .set HIGH,31
11: .set ZERO,0
12: .set ONES,0xffffffff
13: .set N,8
14: .set Z,4
15: .set V,2
16: .set C,1
17: .set T,16
18: .set IV,32
19: .set FU,64
20: .set DV,128
21: .set PSWMASK,0x003f
22:
23: .globl _wdisp_mode
24: _wdisp_mode:
25: movl $1,r1 /* subtest number */
26: movl bb1,r3 /*move address of label bbase1 */
27: movb $0x55,w^32767(r3) /*change byte 32767 of bbase1 */
28: cmpl wbasel,$0xffffff55 /*see if it happened */
29: beql 1f
30: er1:
31: movl $1,r2 /*error code*/
32: movl wbasel,r3 /*observed*/
33: movl $0xffffff55,r4 /*expected*/
34: jmp *$9f
35: 9: jmp *badrtn
36: /*word disp mode did not move */
37: /*right byte*/
38: 1: cmpl r3,bb1 /*check r3 did not changed */
39: beql 2f
40: er2:
41: movl $2,r2 /*error code*/
42: movl bb1,r4 /*exp original value in r3*/
43: jmp *$9f
44: 9: jmp *badrtn
45: /*word disp mode changed base which*/
46: /*r3 */
47: 2: movl $2,r1 /* subtest number */
48: movb w^134(r3),w^32766(r3)
49: cmpl wbasel,$0xffff0055
50: beql 3f
51: er3:
52: movl $3,r2 /*error code*/
53: movl wbasel,r3 /*observed*/
54: movl $0xffff0055,r4 /*expected*/
55: jmp *$9f
56: 9: jmp *badrtn
57: /*word disp mode did not move */
58: /*right byte*/
59: 3: cmpl r3,bb1
60: beql 4f
61: er4:
62: movl $4,r2 /*error code*/
63: movl bb1,r4 /*exp original value in r3*/
64: jmp *$9f
65: 9: jmp *badrtn
66: /*word disp mode changed base which*/
67: /*r3 */
68: 4: movl $3,r1 /* subtest number */
69: movb w^132(r3),w^32765(r3)
70: cmpl wbasel,$0xff110055
71: beql 5f
72: er5:
73: movl $5,r2 /*error code*/
74: movl wbasel,r3 /*observed*/
75: movl $0xff110055,r4 /*expected*/
76: jmp *$9f
77: 9: jmp *badrtn
78: /*word disp mode did not move */
79: /*right byte*/
80: 5:
81: movl $0,r2 /*no error*/
82: movl $0x33221100,bbase1
83: movl $0xaaaaaaaa,bbase2
84: movl $0xbbbbbbbb,bbase3
85: movl $0xffffffff,bbasel
86: movl $0x11110000,wbase1
87: movl $0xffffffff,wbasel
88: jmp *return /*end of test - goto monitor */
89:
90:
91:
92: /* Variables */
93: .align 2
94: bbase1: .fill 1,4,0x33221100 /*relative location 0*/
95: bbase2: .fill 1,4,0xaaaaaaaa /*rl 4 */
96: bbase3: .fill 1,4,0xbbbbbbbb /*rl 8 */
97: .space 112
98: bbasel: .fill 1,4,0xffffffff /*rl 124 */
99: .space 4
100: wbase1: .fill 1,4,0x11110000 /*rl 132 */
101: .space 32628
102: wbasel: .fill 1,4,0xffffffff /*rl 32764 */
103:
104: bb1: .long bbase1
105: bbl: .long bbasel
106: wb1: .long wbase1
107: wbl: .long wbasel
108:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.