|
|
1.1 root 1:
2: XTrap(code)
3: long code;
4: { register long r12, r11, r10, r9;
5: long tpc, tpsl;
6:
7: asm("pushab e_type");
8: asm("callf $8,_writes");
9:
10: writeh(code); writec('\n');
11: asm("movl 8(fp),r12"); /* par 0 */
12: asm("movl 12(fp),r11"); /* par 1 */
13: asm("movl 16(fp),r10"); /* par 2 */
14: asm("movl 20(fp),r9"); /* par 3 */
15:
16: if ((code==0x20) || (code==0x2f) || (code==0x30)) {
17: asm("pushab par_0");
18: asm("callf $8,_writes");
19: writeh(r12); writec('\n');
20: asm("pushab par_1");
21: asm("callf $8,_writes");
22: writeh(r11); writec('\n');
23: tpc = r10;
24: tpsl = r9;
25: }
26: else {
27: if ((code==0x34) || (code==0x2b)) {
28: asm("pushab par_0");
29: asm("callf $8,_writes");
30: writeh(r12); writec('\n');
31: tpc = r11;
32: tpsl = r10;
33: }
34: else {
35: tpc = r12;
36: tpsl = r11; }
37: }
38: r9 = 0;
39: asm("pushab par_pc");
40: asm("callf $8,_writes");
41: writeh(tpc); writec('\n');
42: asm("pushab par_psl");
43: asm("callf $8,_writes");
44: writeh(tpsl); writec('\n');
45: asm("halt");
46: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.