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