|
|
1.1 ! root 1: /* (BYTE,WORD,LONGWORD) DISPLACEMENT DEFERED ADDRESSING MODES 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: .globl _dispd_mode ! 22: _dispd_mode: ! 23: callf $4,_setjmp /* save context */ ! 24: movab _dispd_mode,_stpc /* save pc of subtest start */ ! 25: movl $1,_subtst /* subtest number */ ! 26: movl $1,_no_opr /* number of operands in use */ ! 27: movl base_add,_opr /* first operand */ ! 28: 0: movl base_add,r3 /*base of the address_table*/ ! 29: movl *b^4(r3),r4 /*byte disp deferred mode*/ ! 30: cmpl r4,$0x33221100 ! 31: beql 1f ! 32: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 33: movl $1,_ercode /*error code data miscompare*/ ! 34: movl r4,_actual /* actual data */ ! 35: movl $0x33221100,_expected /*expected data*/ ! 36: jmp *badrtn ! 37: ! 38: 1: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 39: 1: callf $4,_setjmp /* save context */ ! 40: movab 1b,_stpc /* save pc of subtest start */ ! 41: movl $2,_subtst /* subtest number */ ! 42: movl $1,_no_opr /* number of operands in use */ ! 43: 0: movl $0x55555555,r4 ! 44: movl r4,*b^4(r3) ! 45: cmpl bbase1,$0x55555555 /*this is the actual location */ ! 46: beql 2f /* changed by the previous inst. */ ! 47: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 48: movl $1,_ercode /*error code data miscompare*/ ! 49: movl bbase1,_actual /* actual data */ ! 50: movl $0x55555555,_expected /*expected data*/ ! 51: jmp *badrtn ! 52: 2: ! 53: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 54: 2: callf $4,_setjmp /* save context */ ! 55: movab 2b,_stpc /* save pc of subtest start */ ! 56: movl $3,_subtst /* subtest number */ ! 57: movl $1,_no_opr /* number of operands in use */ ! 58: 0: movl $0x33221100,bbase1 /* Restore original value */ ! 59: movl *w^32012(r3),r4 /*word disp deferred mode*/ ! 60: cmpl r4,$0xaaaaaaaa ! 61: beql 3f ! 62: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 63: movl $1,_ercode /*error code data miscompare*/ ! 64: movl r4,_actual /* actual data */ ! 65: movl $0xaaaaaaaa,_expected /*expected data*/ ! 66: jmp *badrtn /*byte disp def mode did not move right value*/ ! 67: 3: ! 68: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 69: 3: callf $4,_setjmp /* save context */ ! 70: movab 3b,_stpc /* save pc of subtest start */ ! 71: movl $4,_subtst /* subtest number */ ! 72: movl $1,_no_opr /* number of operands in use */ ! 73: 0: movl $0x55555555,r4 ! 74: movl r4,*w^32012(r3) ! 75: cmpl bbase2,$0x55555555 /*this is the actual location */ ! 76: beql 4f /* changed by the previous inst. */ ! 77: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 78: movl $1,_ercode /*error code data miscompare*/ ! 79: movl bbase2,_actual /* actual data */ ! 80: movl $0x55555555,_expected /*expected data*/ ! 81: jmp *badrtn /*byte disp def mode did not move right value*/ ! 82: 4: ! 83: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 84: 4: callf $4,_setjmp /* save context */ ! 85: movab 4b,_stpc /* save pc of subtest start */ ! 86: movl $5,_subtst /* subtest number */ ! 87: movl $1,_no_opr /* number of operands in use */ ! 88: 0: movl $0xaaaaaaaa,bbase2 /* Restore original value */ ! 89: movl $0xbbbbbbbb,bbase3 /* rload bbase3 changed by subtst 5*/ ! 90: movl *l^66020(r3),r4 /*longword disp deferred mode*/ ! 91: cmpl r4,$0xbbbbbbbb ! 92: beql 5f ! 93: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 94: movl $1,_ercode /*error code data miscompare*/ ! 95: movl r4,_actual /* actual data */ ! 96: movl $0xbbbbbbbb,_expected /*expected data*/ ! 97: jmp *badrtn /*byte disp def mode did not move right value*/ ! 98: 5: ! 99: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 100: 5: callf $4,_setjmp /* save context */ ! 101: movab 5b,_stpc /* save pc of subtest start */ ! 102: movl $6,_subtst /* subtest number */ ! 103: movl $1,_no_opr /* number of operands in use */ ! 104: 0: movl $0x55555555,r4 ! 105: movl r4,*l^66020(r3) ! 106: cmpl bbase3,$0x55555555 /*this is the actual location */ ! 107: beql 6f /* changed by the previous inst. */ ! 108: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 109: movl $1,_ercode /*error code data miscompare*/ ! 110: movl bbase3,_actual /* actual data */ ! 111: movl $0x55555555,_expected /*expected data*/ ! 112: jmp *badrtn /*byte disp def mode did not move right value */ ! 113: 6: ! 114: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 115: movl $0,r2 /*no error*/ ! 116: jmp *return /*end of test */ ! 117: # ! 118: # ! 119: # ! 120: /* LONGWORD DISPLACEMENT ADDRESSING MODE TEST */ ! 121: /* */ ! 122: /* */ ! 123: /* */ ! 124: ! 125: .globl _ldisp_mode ! 126: _ldisp_mode: ! 127: callf $4,_setjmp /* save context */ ! 128: movab _ldisp_mode,_stpc /* save pc of subtest start */ ! 129: movl $1,_subtst /* subtest number */ ! 130: movl $1,_no_opr /* number of operands in use */ ! 131: movl base_add,_opr /* first operand */ ! 132: 0: movl base_add,r3 /*move address of label bbase1 */ ! 133: movl $0xffffffff,lbasel /* initialize data changed by tst */ ! 134: movb $0x55,l^65539(r3) /*change byte 127 of bbase1 */ ! 135: cmpl lbasel,$0xffffff55 /*see if it happened */ ! 136: beql 1f ! 137: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 138: movl $1,_ercode /*error code data miscompare*/ ! 139: movl lbasel,_actual /* actual data */ ! 140: movl $0xffffff55,_expected /*expected data*/ ! 141: jmp *badrtn /*longword disp mode did not */ ! 142: 1: ! 143: cmpl r3,$add_table /*check r3 did not changed */ ! 144: beql 2f ! 145: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 146: movl $3,_ercode /*error code operand was changed*/ ! 147: movl r3,_actual /* actual data */ ! 148: movl $add_table,_expected /*expected data*/ ! 149: jmp *badrtn /*longword disp changed base in r1*/ ! 150: 2: ! 151: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 152: 2: callf $4,_setjmp /* save context */ ! 153: movab 2b,_stpc /* save pc of subtest start */ ! 154: movl $2,_subtst /* subtest number */ ! 155: movl $1,_no_opr /* number of operands in use */ ! 156: 0: movb l^32768(r3),l^65538(r3) ! 157: cmpl lbasel,$0xffff1155 ! 158: beql 3f ! 159: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 160: movl $1,_ercode /*error code data miscompare*/ ! 161: movl lbasel,_actual /* actual data */ ! 162: movl $0xffff1155,_expected /*expected data*/ ! 163: jmp *badrtn /*longword disp mode did not */ ! 164: /*changed byte correctly */ ! 165: 3: ! 166: cmpl r3,$add_table ! 167: beql 4f ! 168: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 169: movl $3,_ercode /*error code operand was changed*/ ! 170: movl r3,_actual /* actual data */ ! 171: movl $add_table,_expected /*expected data*/ ! 172: jmp *badrtn /*longword disp changed base in r1*/ ! 173: 4: ! 174: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 175: 4: callf $4,_setjmp /* save context */ ! 176: movab 4b,_stpc /* save pc of subtest start */ ! 177: movl $3,_subtst /* subtest number */ ! 178: movl $1,_no_opr /* number of operands in use */ ! 179: 0: movb l^32770(r3),l^65537(r3) ! 180: cmpl lbasel,$0xff111155 ! 181: beql 5f ! 182: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 183: movl $1,_ercode /*error code data miscompare*/ ! 184: movl lbasel,_actual /* actual data */ ! 185: movl $0xff111155,_expected /*expected data*/ ! 186: jmp *badrtn /*longword disp mode did not */ ! 187: /*changed byte correctly */ ! 188: 5: ! 189: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 190: jmp *return /*end of test - goto monitor */ ! 191: # ! 192: # ! 193: # ! 194: /* WORD DISPLACEMENT ADDRESSING MODE TEST */ ! 195: /* */ ! 196: /* */ ! 197: /* */ ! 198: .globl _wdisp_mode ! 199: _wdisp_mode: ! 200: callf $4,_setjmp /* save context */ ! 201: movab _wdisp_mode,_stpc /* save pc of subtest start */ ! 202: movl $1,_subtst /* subtest number */ ! 203: movl $1,_no_opr /* number of operands in use */ ! 204: movl base_add,_opr /* first operand */ ! 205: 0: movl base_add,r3 /*move address of label bbase1 */ ! 206: movl $0xffffffff,wbasel /* initialize wbasel */ ! 207: movb $0x55,w^32767(r3) /*change byte 32767 of bbase1 */ ! 208: cmpl wbasel,$0xffffff55 /*see if it happened */ ! 209: beql 1f ! 210: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 211: movl $1,_ercode /*error code data miscompare*/ ! 212: movl wbasel,_actual /* actual data */ ! 213: movl $0xffffff55,_expected /*expected data*/ ! 214: jmp *badrtn /* Word disp mode did not move right byte */ ! 215: 1: ! 216: cmpl r3,$add_table /*check r3 did not changed */ ! 217: beql 2f ! 218: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 219: movl $3,_ercode /*error code operand was changed*/ ! 220: movl r3,_actual /* actual data */ ! 221: movl $add_table,_expected /*expected data*/ ! 222: jmp *badrtn /* Word disp mode changed base */ ! 223: 2: ! 224: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 225: 2: callf $4,_setjmp /* save context */ ! 226: movab 2b,_stpc /* save pc of subtest start */ ! 227: movl $2,_subtst /* subtest number */ ! 228: movl $1,_no_opr /* number of operands in use */ ! 229: 0: movb w^134(r3),w^32766(r3) ! 230: cmpl wbasel,$0xffff0055 ! 231: beql 3f ! 232: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 233: movl $1,_ercode /*error code data miscompare*/ ! 234: movl wbasel,_actual /* actual data */ ! 235: movl $0xffff0055,_expected /*expected data*/ ! 236: jmp *badrtn /* Word disp mode did not move right byte */ ! 237: 3: ! 238: cmpl r3,$add_table ! 239: beql 4f ! 240: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 241: movl $3,_ercode /*error code operand was changed*/ ! 242: movl r3,_actual /* actual data */ ! 243: movl $add_table,_expected /*expected data*/ ! 244: jmp *badrtn /* Word disp mode changed base */ ! 245: 4: ! 246: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 247: 4: callf $4,_setjmp /* save context */ ! 248: movab 4b,_stpc /* save pc of subtest start */ ! 249: movl $3,_subtst /* subtest number */ ! 250: movl $1,_no_opr /* number of operands in use */ ! 251: 0: movb w^132(r3),w^32765(r3) ! 252: cmpl wbasel,$0xff110055 ! 253: beql 5f ! 254: bbs $0,_scoplp,0b /* if set scope loop on error */ ! 255: movl $1,_ercode /*error code data miscompare*/ ! 256: movl wbasel,_actual /* actual data */ ! 257: movl $0xff110055,_expected /*expected data*/ ! 258: jmp *badrtn /* Word disp mode did not move right byte */ ! 259: 5: ! 260: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 261: movl $0,_ercode /*no error*/ ! 262: jmp *return /*end of test - goto monitor */ ! 263: ! 264: ! 265: /* Variables */ ! 266: ! 267: .align 2 ! 268: bbase1: .long 0x33221100 /*relative location 0*/ ! 269: bbase2: .long 0xaaaaaaaa /*rl 4 */ ! 270: bbase3: .long 0xbbbbbbbb /*rl 8 */ ! 271: ! 272: .align 2 ! 273: base_add: ! 274: .long add_table ! 275: ! 276: .align 2 ! 277: add_table: ! 278: .long 0 ! 279: .long bbase1 /* relative location 4 */ ! 280: ! 281: .space 124 ! 282: .long 0x11110000 /*relative location 132 */ ! 283: ! 284: .space (32004-128) ! 285: .long bbase2 /*relative location 32012 */ ! 286: ! 287: .space 748 ! 288: wbasel: ! 289: .long 0xffffffff /*relative location 32764 */ ! 290: .long 0x11111111 /*relative location 32768 */ ! 291: ! 292: .space 32764 ! 293: lbasel: ! 294: .long 0xffffffff /*relative location 65536 */ ! 295: ! 296: .space 480 ! 297: .long bbase3 /*relative location 66020 */ ! 298: ! 299: /*end of file */ ! 300: ! 301:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.