|
|
1.1 ! root 1: ! 2: .set ISP,15 ! 3: .set NBPG,1024 ! 4: .set HIGH,0x1f /*mask for disabling all interrupts */ ! 5: .set MCKVEC,4 /*scb offset for machinecheck vector */ ! 6: .set NISP,2 /*no. of interrupt stack pages */ ! 7: .set DONE,255 /*user process done code */ ! 8: ! 9: ! 10: .data ! 11: .set NLWU,31 /*no. of longwords already used */ ! 12: ! 13: .globl _savvec0 /*save vectors area */ ! 14: _savvec0: ! 15: .space 4 ! 16: .globl _savvec1 /*save vectors area */ ! 17: _savvec1: ! 18: .space 4 ! 19: .globl _savvec2 /*save vectors area */ ! 20: _savvec2: ! 21: .space 4 ! 22: .globl _savvec3 /*save vectors area */ ! 23: _savvec3: ! 24: .space 4 ! 25: .globl _savvec4 /*save vectors area */ ! 26: _savvec4: ! 27: .space 4 ! 28: .globl _savvec5 /*save vectors area */ ! 29: _savvec5: ! 30: .space 4 ! 31: .globl _savvec6 /*save vectors area */ ! 32: _savvec6: ! 33: .space 4 ! 34: .globl _savvec7 /*save vectors area */ ! 35: _savvec7: ! 36: .space 4 ! 37: ! 38: .globl badrtn ! 39: badrtn: ! 40: .long tfail ! 41: ! 42: .globl return ! 43: return: ! 44: .long goodrtn ! 45: ! 46: .globl _dbuf /*dump buffer left out of 1K */ ! 47: _dbuf: ! 48: .space NBPG - (NLWU *4) ! 49: edbuf: ! 50: .globl _intstack /*interrupt stack */ ! 51: _intstack: /*physical pages 4 & 5 */ ! 52: .space NISP*NBPG /*2pages = 2048 bytes */ ! 53: eintstack: ! 54: ! 55: .text ! 56: .globl _start ! 57: _start: ! 58: movl $_intstack+NISP*NBPG,sp /* Initialize SP */ ! 59: movab (sp),fp /* Initialize FP */ ! 60: jmp dotst + 2 /* Jump to test */ ! 61: # callf $4,_main ! 62: goodrtn: ! 63: pushab M1 ! 64: callf $8,_writes ! 65: movl $0xcafebabe,r0 ! 66: jmp *return /* Good : R0 == CAFE BABE */ ! 67: tfail: ! 68: movl $0xffffffff,r0 ! 69: jmp *badrtn ! 70: ! 71: .data 1 ! 72: M1: .ascii "** congratulation , test passed **\n\0" ! 73: ! 74: .text ! 75: .globl dotst ! 76: dotst: /* test start from here */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.