|
|
1.1 ! root 1: .globl _runerr ! 2: .globl _ckadd ! 3: .globl _cksub ! 4: .globl _ckmul ! 5: ! 6: ! 7: .text ! 8: .even ! 9: _ckadd: ! 10: link a6,#0 ! 11: movl a6@(8),d0 | Perform addition ! 12: addl a6@(12),d0 | " " " ! 13: jvs oflow | Branch if overflow ! 14: unlk a6 ! 15: rts | Return result in d0 ! 16: ! 17: .even ! 18: ! 19: _cksub: ! 20: link a6,#0 ! 21: movl a6@(8),d0 | Perform subtraction ! 22: subl a6@(12),d0 | " " " ! 23: jvs oflow | Branch if overflow ! 24: unlk a6 ! 25: rts | Return result in d0 ! 26: ! 27: .even ! 28: ! 29: _ckmul: ! 30: link a6,#0 ! 31: movl a6@(8),d0 | Perform multiplication ! 32: movl a6@(12),d1 ! 33: jsr lmult ! 34: jvs oflow | Branch if overflow ! 35: unlk a6 ! 36: rts | Return result in d0 ! 37: ! 38: oflow: | Got overflow on an operation ! 39: pea 0 ! 40: pea 203 ! 41: jbsr _runerr | runerr(203,0)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.