|
|
1.1 root 1:
2:
3:
4: /* AUTOINCREMENT DEFERRED ADDRESSING MODE TEST */
5: /* */
6: /* */
7: /* */
8: /* Syst.s - Constants */
9: /* */
10: .set IPL,8
11: .set HIGH,31
12: .set ZERO,0
13: .set ONES,0xffffffff
14: .set N,8
15: .set Z,4
16: .set V,2
17: .set C,1
18: .set T,16
19: .set IV,32
20: .set FU,64
21: .set DV,128
22: .set PSWMASK,0x003f
23:
24: .globl _aincd_mode
25: _aincd_mode:
26: callf $4,_setjmp /* save context for error return */
27: movl $tloc3,i1 /* initialize test data for loop */
28: movl $tloc2,i2 /* initialize test data for loop */
29: movl $tloc2,i3 /* initialize test data for loop */
30: movl $tloc1,i4 /* initialize test data for loop */
31: movab _aincd_mode,_stpc /* save subtest pc */
32: movl $1,_no_opr /* number of operands used */
33: movl $1,_subtst /* subtest number */
34: movl spb16,_opr /* test operand */
35: 0:
36: bicpsw $PSWMASK
37: movl spb16,sp
38: movl *(sp)+,r3
39: cmpl r3,$0xddeeff00
40: beql 1f
41: er1:
42: bbs $0,_scoplp,0b /* tight loop for scope if set */
43: movl $1,_ercode /* error code data miscompare */
44: movl r3,_actual /* actual data read */
45: movl $0xddeeff00,_expected /* expected data */
46: jmp *badrtn /*display error */
47: /*auto inc def mode did not fetch right */
48: /* byte */
49: 1:
50: bbs $0,_force_lp,0b /* if set loop on subtest */
51: 1: callf $4,_setjmp /* save context for error return */
52: movab 1b,_stpc /* save subtest pc */
53: movl $2,_subtst /* subtest number */
54: movl spb12,_opr /* test operand */
55: 0: movab (sp),r3
56: cmpl r3,spb12
57: beql 2f
58: er2:
59: bbs $0,_scoplp,0b /* tight loop for scope if set */
60: movl $1,_ercode /* error code data miscompare */
61: movl r3,_actual /* actual data read */
62: movl spb12,_expected /* expected data */
63: jmp *badrtn /*display error */
64: /*auto inc def mode did not increment */
65: /*sp properly */
66: 2: bbs $0,_force_lp,0b /* if set loop on subtest */
67: 2: callf $4,_setjmp /* save context for error return */
68: movab 2b,_stpc /* save subtest pc */
69: movl $3,_subtst /* subtest number */
70: movl $0xffff99aa,_opr /* test operand */
71: 0: clrl r3
72: movw *(sp)+,r3
73: cmpl r3,$0xffff99aa
74: beql 3f
75: er3:
76: bbs $0,_scoplp,0b /* tight loop for scope if set */
77: movl $1,_ercode /* error code data miscompare */
78: movl r3,_actual /* actual data read */
79: movl $0xffff99aa,_expected /* expected data */
80: jmp *badrtn /*display error */
81: /*auto inc def mode did not fetch right */
82: /* byte */
83: 3: bbs $0,_force_lp,0b /* if set loop on subtest */
84: 3: callf $4,_setjmp /* save context for error return */
85: movab 3b,_stpc /* save subtest pc */
86: movl $4,_subtst /* subtest number */
87: movl spb8,_opr /* test operand */
88: 0: movab (sp),r3
89: cmpl r3,spb8
90: beql 4f
91: er4:
92: bbs $0,_scoplp,0b /* tight loop for scope if set */
93: movl $1,_ercode /* error code data miscompare */
94: movl r3,_actual /* actual data read */
95: movl spb8,_expected /* expected data */
96: jmp *badrtn /*display error */
97: /*auto inc def mode did not increment */
98: /*sp properly */
99: 4: bbs $0,_force_lp,0b /* if set loop on subtest */
100: 4: callf $4,_setjmp /* save context for error return */
101: movab 4b,_stpc /* save subtest pc */
102: movl $5,_subtst /* subtest number */
103: movl $0xffffff99,_opr /* test operand */
104: 0: clrl r3
105: movb *(sp)+,r3
106: cmpl r3,$0xffffff99
107: beql 5f
108: er5:
109: bbs $0,_scoplp,0b /* tight loop for scope if set */
110: movl $1,_ercode /* error code data miscompare */
111: movl r3,_actual /* actual data read */
112: movl $0xffffff99,_expected /* expected data */
113: jmp *badrtn /*display error */
114: /*auto inc def mode did not fetch right */
115: /* byte */
116: 5: bbs $0,_force_lp,0b /* if set loop on subtest */
117: 5: callf $4,_setjmp /* save context for error return */
118: movab 5b,_stpc /* save subtest pc */
119: movl $6,_subtst /* subtest number */
120: movl $spb4,_opr /* test operand */
121: 0: movab (sp),r3
122: cmpl r3,spb4
123: beql 6f
124: er6:
125: bbs $0,_scoplp,0b /* tight loop for scope if set */
126: movl $1,_ercode /* error code data miscompare */
127: movl r3,_actual /* actual data read */
128: movl spb4,_expected /* expected data */
129: jmp *badrtn /*display error */
130: /*auto inc def mode did not increment */
131: /*sp properly */
132: /*autoincrementdeferred addressing mode*/
133: /*in second operand */
134: 6:
135: bbs $0,_force_lp,0b /* if set loop on subtest */
136: movl $0,_ercode /*no error*/
137: jmp *return /*end of test*/
138:
139:
140: /* Variables */
141:
142: .align 2
143: tloc: .fill 1,4,0x11223344
144: tloc1: .fill 1,4,0x55667788
145: tloc2: .fill 1,4,0x99aabbcc
146: tloc3: .fill 1,4,0xddeeff00
147: .align 2
148: splimit: .space 100
149: .align 2
150: i1: .long tloc3
151: i2: .long tloc2
152: i3: .long tloc2
153: i4: .long tloc1
154: spbase: .long tloc
155: spb: .long spbase
156: spb1: .long spbase - 1
157: spb2: .long spbase - 2
158: spb3: .long spbase - 3
159: spb4: .long spbase - 4
160: spb5: .long spbase - 5
161: spb6: .long spbase - 6
162: spb7: .long spbase - 7
163: spb8: .long spbase - 8
164: spb9: .long spbase - 9
165: spb10: .long spbase - 10
166: spb11: .long spbase - 11
167: spb12: .long spbase - 12
168: spb13: .long spbase - 13
169: spb14: .long spbase - 14
170: spb15: .long spbase - 15
171: spb16: .long spbase - 16
172: spb17: .long spbase - 17
173: spb18: .long spbase - 18
174: spb19: .long spbase - 19
175:
176:
177: /* End of file */
178:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.