|
|
1.1 ! root 1: | /* Copyright (c) 1982, Regents, University of California */ ! 2: .data ! 3: .text ! 4: .globl _emul ! 5: _emul: ! 6: link a6,#-_F1 ! 7: moveml #_S1,a6@(-_F1) ! 8: movl a6@(20),a5 ! 9: | A1 = 24 ! 10: clrb a6@(-9) ! 11: clrb a6@(-13) ! 12: clrl d7 ! 13: tstl a6@(8) ! 14: bge .L13 ! 15: eorb #1,a6@(-9) ! 16: negl a6@(8) ! 17: .L13: ! 18: tstl a6@(12) ! 19: bge .L14 ! 20: eorb #1,a6@(-9) ! 21: negl a6@(12) ! 22: .L14: ! 23: movw a6@(10),d1 ! 24: mulu a6@(14),d1 ! 25: movl d1,a6@(-4) ! 26: movw a6@(8),d1 ! 27: mulu a6@(12),d1 ! 28: movl d1,a6@(-8) ! 29: movw a6@(8),d1 ! 30: mulu a6@(14),d1 ! 31: addl d1,a6@(-6) ! 32: bcc .L16 ! 33: addqw #1,a6@(-8) ! 34: .L16: ! 35: movw a6@(10),d1 ! 36: mulu a6@(12),d1 ! 37: addl d1,a6@(-6) ! 38: bcc .L17 ! 39: addqw #1,a6@(-8) ! 40: .L17: ! 41: tstb a6@(-9) ! 42: beq .L18 ! 43: negl a6@(-4) ! 44: negxl a6@(-8) ! 45: .L18: ! 46: tstl a6@(16) ! 47: bge .L20 ! 48: moveq #-1,d7 ! 49: .L20: ! 50: movl a6@(-8),d1 ! 51: movl a6@(16),d0 ! 52: addl a6@(-4),d0 ! 53: addxl d1,d7 ! 54: movl d0,a5@(4) ! 55: movl d7,a5@ ! 56: .L12: moveml a6@(-_F1),#8320 ! 57: unlk a6 ! 58: rts ! 59: _F1 = 24 ! 60: _S1 = 8320 ! 61: | M1 = 0 ! 62: .globl _vlsub ! 63: _vlsub: ! 64: movl sp@(4),a0 ! 65: addql #8,a0 ! 66: movl sp@(8),a1 ! 67: addql #8,a1 | this should clear the carry bit. ! 68: subxl a1@-,a0@- ! 69: subxl a1@-,a0@- ! 70: rts
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.