|
|
1.1 ! root 1: ! 2: ! 3: /* REGISTER DEFERRED 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: ! 24: .globl _regd_mode ! 25: _regd_mode: ! 26: /*register deferred */ ! 27: callf $4,_setjmp /* save context */ ! 28: movab _regd_mode,_stpc /* save subtest pc */ ! 29: movl $1,_subtst /* subtest number */ ! 30: movl $1,_no_opr /* number of operands in use */ ! 31: 0: movl $0xaaaaaaaa,bloc ! 32: movl $0xbbbbbbbb,wloc ! 33: movl $0x55555555,lloc ! 34: bicpsw $PSWMASK /*psw = 0 */ ! 35: movl bloc1,r4 /*r4 = bloc address */ ! 36: movl r4,_opr /* first operand */ ! 37: movl (r4),r3 ! 38: cmpl r3,$0xaaaaaaaa /*r3 = literal value? */ ! 39: beql 1f /*if yes, goto next test */ ! 40: er1: ! 41: bbs $0,_scoplp,0b /* if set loop on error */ ! 42: movl $1,_ercode /* error code data miscompare */ ! 43: movl r3,_actual /* actual data */ ! 44: movl $0xaaaaaaaa,_expected /* expected data */ ! 45: jmp *badrtn /*error - dislay error */ ! 46: 1: ! 47: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 48: 1: callf $4,_setjmp /* save context */ ! 49: movab 1b,_stpc /* save subtest pc */ ! 50: movl $2,_subtst /* subtest number */ ! 51: movl $1,_no_opr /* number of operands in use */ ! 52: 0: bicpsw $PSWMASK /*psw = 0 */ ! 53: movl wloc1,r4 /*r4 = wloc address */ ! 54: movl r4,_opr /* first operand */ ! 55: movl (r4),r3 ! 56: cmpl r3,$0xbbbbbbbb /*r3 = literal value? */ ! 57: beql 2f /*if yes, goto next test */ ! 58: er2: ! 59: bbs $0,_scoplp,0b /* if set loop on error */ ! 60: movl $1,_ercode /* error code data miscompare */ ! 61: movl r3,_actual /* actual data */ ! 62: movl $0xbbbbbbbb,_expected /* expected data */ ! 63: jmp *badrtn /*error - dislay error */ ! 64: 2: ! 65: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 66: 2: callf $4,_setjmp /* save context */ ! 67: movab 2b,_stpc /* save subtest pc */ ! 68: movl $3,_subtst /* subtest number */ ! 69: movl $1,_no_opr /* number of operands in use */ ! 70: 0: bicpsw $PSWMASK /*psw = 0 */ ! 71: movl lloc1,r4 /*r4 = lloc address */ ! 72: movl r4,_opr /* first operand */ ! 73: movl (r4),r3 ! 74: cmpl r3,$0x55555555 /*r3 = literal value? */ ! 75: beql 3f /*if yes, goto next test */ ! 76: er3: ! 77: bbs $0,_scoplp,0b /* if set loop on error */ ! 78: movl $1,_ercode /* error code data miscompare */ ! 79: movl r3,_actual /* actual data */ ! 80: movl $0x55555555,_expected /* expected data */ ! 81: jmp *badrtn /*error - dislay error */ ! 82: 3: ! 83: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 84: 3: callf $4,_setjmp /* save context */ ! 85: movab 3b,_stpc /* save subtest pc */ ! 86: movl $4,_subtst /* subtest number */ ! 87: movl $2,_no_opr /* number of operands in use */ ! 88: 0: bicpsw $PSWMASK /*register deferred addressing in*/ ! 89: /*second operand */ ! 90: movl $4,r1 /* subtest number */ ! 91: movl lloc1,r4 ! 92: movl $-1,r3 ! 93: movl r3,_opr /* first operand */ ! 94: movl r4,_opr + 4 /* second operand */ ! 95: movl r3,(r4) ! 96: cmpl $-1,lloc ! 97: beql 4f ! 98: er4: ! 99: bbs $0,_scoplp,0b /* if set loop on error */ ! 100: movl $1,_ercode /* error code data miscompare */ ! 101: movl lloc,_actual /* actual data */ ! 102: movl $-1,_expected /* expected data */ ! 103: jmp *badrtn /*error - dislay error */ ! 104: ! 105: 4: ! 106: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 107: movl $0,_ercode /*no error*/ ! 108: jmp *return /*end of test - goto monitor */ ! 109: ! 110: ! 111: /* Variables list */ ! 112: .align 2 ! 113: bloc: .fill 4,1,0xaa ! 114: .align 2 ! 115: bloc1: .long bloc ! 116: empty1: .space 255 /*255 bytes of zeros */ ! 117: .align 2 ! 118: /*to force word addressing */ ! 119: wloc: .fill 1,4,0xbbbbbbbb ! 120: .align 2 ! 121: wloc1: .long wloc ! 122: empty2: .space 16565 /*to force long word addressing */ ! 123: .align 2 ! 124: lloc: .fill 1,4,0x55555555 ! 125: .align 2 ! 126: lloc1: .long lloc ! 127: ! 128: ! 129: /* End of file */ ! 130: ! 131:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.