|
|
1.1 root 1: /* ABSOLUTE ADDRESSING MODE TEST */
2: /* */
3: /* */
4: /* */
5: /* Syst.s - Constants */
6: /* */
7: .set IPL,8
8: .set HIGH,31
9: .set ZERO,0
10: .set ONES,0xffffffff
11: .set N,8
12: .set Z,4
13: .set V,2
14: .set C,1
15: .set T,16
16: .set IV,32
17: .set FU,64
18: .set DV,128
19: .set PSWMASK,0x003f
20:
21:
22: .globl _ab_mode
23: _ab_mode:
24: callf $4,_setjmp
25: a_mode:
26: movab a_mode,_stpc /* save pc of subtest start */
27: movl $1,_no_opr /* number of operands involved */
28: movl $1,_subtst /* subtest number */
29: movl $bloc,_opr
30: 0: movl *$bloc,r3 /*r3 = (bloc) */
31: cmpl r3,$0xaaaaaaaa /*r3 = literal value? */
32: jeql 1f /*if yes, goto next test */
33: er1:
34: bbs $0,_scoplp,0b /* if set tight loop for scope */
35: movl $1,_ercode /*error code*/
36: movl r3,_actual
37: movl $0xaaaaaaaa,_expected /*expected data*/
38: jmp *badrtn
39: 1:
40: bbs $0,_force_lp,0b /* if set loop on sub test */
41: 1: callf $4,_setjmp
42: movab 1b,_stpc /* save pc of subtest start */
43: movl $2,_subtst /* subtest number */
44: 0: bicpsw $PSWMASK /*psw = 0 */
45: movl $wloc,_opr
46: movl *$wloc,r3 /*r3 = (wloc) */
47: cmpl r3,$0xbbbbbbbb /*r3 = literal value? */
48: jeql 2f /*if yes, goto next test */
49: er2:
50: bbs $0,_scoplp,0b /* if set tight loop for scope */
51: movl $1,_ercode /*error code*/
52: movl r3,_actual
53: movl $0xbbbbbbbb,_expected /*expected data*/
54: 9: jmp *badrtn
55: /* */
56: 2:
57: bbs $0,_force_lp,0b /* if set loop on sub test */
58: 2: callf $4,_setjmp
59: movab 2b,_stpc /* save pc of subtest start */
60: movl $3,_subtst /* subtest number */
61: 0: bicpsw $PSWMASK /*psw = 0 */
62: movl $0x55555555,lloc
63: movl $lloc,_opr
64: movl *$lloc,r3 /*r3 = (lloc) */
65: cmpl r3,$0x55555555 /*r3 = literal value? */
66: jeql 3f /*if yes, goto next test */
67: er3:
68: bbs $0,_scoplp,0b /* if set tight loop for scope */
69: movl $1,_ercode /*error code*/
70: movl r3,_actual
71: movl $0x55555555,_expected /*expected data*/
72: 9: jmp *badrtn
73: /* */
74: 3:
75: bbs $0,_force_lp,0b /* if set loop on sub test */
76: 3: callf $4,_setjmp
77: movab 3b,_stpc /* save pc of subtest start */
78: movl $4,_subtst /* subtest number */
79: 0: bicpsw $PSWMASK /*absolute addressing in */
80: movl $-1,*$lloc
81: movl $lloc,_opr
82: cmpl *$lloc,$-1
83: jeql 4f
84: er4:
85: bbs $0,_scoplp,0b /* if set tight loop for scope */
86: movl $1,_ercode /*error code*/
87: movl $lloc,_actual /* actual data */
88: movl $-1,_expected /*expected data*/
89: jmp *badrtn
90: 4:
91: bbs $0,_force_lp,0b /* if set loop on sub test */
92: jmp *return /*end of test - goto monitor */
93:
94:
95: /* Variables list */
96: .align 2
97: bloc: .long 0xaaaaaaaa
98: bloc1: .long bloc
99: empty1: .space 255 /*255 bytes of zeros */
100: .align 2 /*to force word addressing */
101: wloc: .fill 1,4,0xbbbbbbbb
102: wloc1: .long wloc
103: empty2: .space 16565 /*to force long word addressing */
104: .align 2
105: lloc: .fill 1,4,0x55555555
106: lloc1: .long lloc
107: savepc: .long 0 /* save location for pc */
108:
109:
110: /* End of file */
111:
112:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.