|
|
1.1 root 1: .globl _runerr
2: .globl _ckadd
3: .globl _cksub
4: .globl _ckmul
5:
6: .globl csv, cret
7: .text
8: _ckadd:
9: mov r5,-(sp)
10: mov sp,r5
11: mov 6(r5),r1
12: mov 4(r5),r0
13: add 12(r5),r1
14: adc r0
15: bvs oflow
16: add 10(r5),r0
17: bvs oflow
18: br return
19:
20: _cksub:
21: mov r5,-(sp)
22: mov sp,r5
23: mov 6(r5),r1
24: mov 4(r5),r0
25: sub 12(r5),r1
26: sbc r0
27: bvs oflow
28: sub 10(r5),r0
29: bvs oflow
30: return:
31: mov r5,sp
32: mov (sp)+,r5
33: rts pc
34:
35: _ckmul:
36: jsr r5,csv
37: mov 6(r5),r2
38: sxt r1
39: sub 4(r5),r1
40: mov 10.(r5),r0
41: sxt r3
42: sub 8.(r5),r3
43: mul r0,r1
44: mul r2,r3
45: add r1,r3
46: mul r2,r0
47: sub r3,r0
48: jmp cret
49:
50: oflow:
51: clr -(sp)
52: mov $203.,-(sp)
53: jsr pc,_runerr
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.