|
|
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.