|
|
1.1 ! root 1: .data ! 2: .align 2 ! 3: _twoopi:.long 0x4022F983, 0x6E4E4415 # .double .63661977236758134 ! 4: .align 2 ! 5: _p0:.long 0x40C90FDA, 0x90304197 # .double 1.57079631844 ! 6: .align 2 ! 7: _p1:.long 0xC0255DE0, 0xB36CEE75 # .double -.645963710599 ! 8: .align 2 ! 9: _p2:.long 0x3EA33457, 0xA736E807 # .double .079689678945999999 ! 10: .align 2 ! 11: _p3:.long 0xBC992665, 0x5E9A6554 # .double -.0046737666099999999 ! 12: .align 2 ! 13: _p4:.long 0x3A1ED7FA, 0xCC54924E # .double .000151485129 ! 14: .text ! 15: LL0: .align 1 ! 16: .globl _Kcosf ! 17: .set L18,0x0 ! 18: .data ! 19: .text ! 20: _Kcosf: .word L18 ! 21: tstl 4(fp) # if (arg < 0) ! 22: jgeq L23 ! 23: lnd 4(fp) ! 24: std 4(fp) # arg = -arg; ! 25: L23: pushl 20(fp) # hfs ! 26: pushl $1 ! 27: pushl 8(fp) ! 28: pushl 4(fp) ! 29: callf $20,_sinus ! 30: ret # return(sinus(arg,1)); ! 31: ! 32: .align 1 ! 33: .globl _Ksinf ! 34: .set L25,0x0 ! 35: .data ! 36: .text ! 37: .data ! 38: .align 2 ! 39: L36: .long 0x47FFF800, 0x00000000 # .double 32764 ! 40: .text ! 41: .data ! 42: .align 2 ! 43: L37: .long 0x3F800000, 0x00000000 # .double .25 ! 44: .text ! 45: .data ! 46: .align 2 ! 47: L38: .long 0x41800000, 0x00000000 # .double 4 ! 48: .text ! 49: .data ! 50: .align 2 ! 51: L41: .long 0x40800000, 0x00000000 # .double 1 ! 52: .text ! 53: .set L29,0x0 ! 54: .data ! 55: .text ! 56: _Ksinf: .word L25 ! 57: pushl 20(fp) # hfs ! 58: pushl $0 ! 59: pushl 8(fp) ! 60: pushl 4(fp) ! 61: callf $20,_sinus ! 62: ret # return(sinus(arg, 0)); ! 63: ! 64: .align 1 ! 65: _sinus: .word L29 ! 66: subl3 $112,fp,sp ! 67: movl 8(fp),-80(fp) ! 68: movl 4(fp),-84(fp) # x = arg; ! 69: jgeq L34 # if (x < 0) { ! 70: lnd -84(fp) ! 71: std -84(fp) # x = -x; ! 72: addl2 $2,12(fp) # quad = quad + 2;} ! 73: L34: pushl 16(fp) ! 74: ldd _twoopi ! 75: pushd ! 76: ldd -84(fp) ! 77: pushd ! 78: callf $24,_Kmuld ! 79: movl r1,-88(fp) ! 80: movl r0,-84(fp) # std -84(fp) x = x * twoopi; ! 81: cmpd2 -84(fp),L36 # if (x > 32764) { ! 82: jleq L35 ! 83: pushl 16(fp) # hfs ! 84: subl3 $60,fp,-(sp) # &e ! 85: pushl -80(fp) ! 86: pushl -84(fp) # x ! 87: callf $20,_Kmodf ! 88: clrl -92+4(fp) ! 89: movl r0,-92(fp) # y = modf(x, &e); ! 90: pushl 16(fp) # hfs ! 91: pushl $0 ! 92: pushl 12(fp) # quad ! 93: pushl $0 ! 94: pushl $0 # dummy acc ! 95: callf $24,_Kcvtld ! 96: pushl 16(fp) # hfs ! 97: pushl r1 ! 98: pushl r0 # pushd (double)quad ! 99: ldd -60(fp) ! 100: pushd # &e ! 101: callf $24,_Kaddd ! 102: movl r1,-56(fp) ! 103: movl r0,-60(fp) # std -60(fp) e = e + quad; ! 104: pushl 16(fp) # hfs ! 105: subl3 $68,fp,-(sp) # &f ! 106: ! 107: pushl 16(fp) # hfs ! 108: ldd -60(fp) ! 109: pushd # &e ! 110: ldd L37 ! 111: pushd # 0.25 ! 112: callf $24,_Kmuld ! 113: ! 114: pushl r1 ! 115: pushl r0 # pushd 0.25 * e ! 116: callf $20,_Kmodf # modf(0.25 * e, &f); ! 117: ! 118: pushl 16(fp) # hfs ! 119: movl r1,-64(fp) ! 120: movl r0,-68(fp) # ldd -68(fp) &f ! 121: pushl r1 ! 122: pushl r0 # pushd ! 123: ldd L38 ! 124: pushd ! 125: callf $24,_Kmuld # 4*f ! 126: # std r0 ! 127: pushl 16(fp) # hfs ! 128: pushl r1 ! 129: pushl r0 # pushd ! 130: ldd -60(fp) ! 131: pushd ! 132: callf $24,_Ksubd # e - 4 * f ! 133: ldd r0 # load acc with result of Ksubd ! 134: cvdl 12(fp) # quad = (e - 4 * f); } ! 135: jbr L39 ! 136: L35: ldd -84(fp) # else { ! 137: cvdl -96(fp) # k = x; ! 138: pushl 16(fp) # hfs ! 139: pushl $0 ! 140: pushl -96(fp) ! 141: pushl $0 ! 142: pushl $0 # acc ! 143: callf $24,_Kcvtld ! 144: # std r0 ! 145: pushl 16(fp) # hfs ! 146: pushl r1 ! 147: pushl r0 # pushd (double)k ! 148: ldd -84(fp) ! 149: pushd # x ! 150: callf $24,_Ksubd ! 151: movl r1,-88(fp) ! 152: movl r0,-92(fp) # std -92(fp) y = x - k; ! 153: addl3 -96(fp),12(fp),r0 ! 154: andl3 $3,r0,12(fp) # quad = (quad + k) & 03; } ! 155: L39: bitl $1,12(fp) # if (quad & 01) ! 156: jeql L40 ! 157: pushl 16(fp) # hfs ! 158: ldd -92(fp) ! 159: pushd # y ! 160: ldd L41 ! 161: pushd # 1.0 ! 162: callf $24,_Ksubd ! 163: movl r1,-88(fp) ! 164: movl r0,-92(fp) # std -92(fp) y = 1 - y; ! 165: L40: cmpl 12(fp),$1 # if (quad > 1) ! 166: jleq L42 ! 167: lnd -92(fp) ! 168: std -92(fp) # y = -y; ! 169: L42: pushl 16(fp) # hfs ! 170: ldd -92(fp) ! 171: pushd ! 172: pushd ! 173: callf $24,_Kmuld # y*y ! 174: movl r1,-72(fp) ! 175: movl r0,-76(fp) # std -76(fp) ysq=y*y; ! 176: ! 177: pushl 16(fp) # hfs ! 178: ldd -76(fp) ! 179: pushd ! 180: ldd _p4 ! 181: pushd ! 182: callf $24,_Kmuld # p4*ysq ! 183: ! 184: pushl 16(fp) # hfs ! 185: pushl _p3+4 ! 186: pushl _p3 ! 187: pushl r1 ! 188: pushl r0 # pushd ! 189: callf $24,_Kaddd # p4*ysq+p3 ! 190: ! 191: pushl 16(fp) # hfs ! 192: pushl -72(fp) ! 193: pushl -76(fp) ! 194: pushl r1 ! 195: pushl r0 # pushd ! 196: callf $24,_Kmuld # (p4*ysq+p3)*ysq ! 197: ! 198: pushl 16(fp) # hfs ! 199: pushl _p2+4 ! 200: pushl _p2 ! 201: pushl r1 ! 202: pushl r0 # pushd ! 203: callf $24,_Kaddd # (p4*ysq+p3)*ysq+p2 ! 204: ! 205: pushl 16(fp) # hfs ! 206: pushl -72(fp) ! 207: pushl -76(fp) ! 208: pushl r1 ! 209: pushl r0 # pushd ! 210: callf $24,_Kmuld # ((p4*ysq+p3)*ysq+p2)*ysq ! 211: ! 212: pushl 16(fp) # hfs ! 213: pushl _p1+4 ! 214: pushl _p1 ! 215: pushl r1 ! 216: pushl r0 # pushd ! 217: callf $24,_Kaddd # ((p4*ysq+p3)*ysq+p2)*ysq+p1 ! 218: ! 219: pushl 16(fp) # hfs ! 220: pushl -72(fp) ! 221: pushl -76(fp) ! 222: pushl r1 ! 223: pushl r0 # pushd ! 224: callf $24,_Kmuld # (((p4*ysq+p3)*ysq+p2)*ysq+p1)*ysq ! 225: ! 226: pushl 16(fp) # hfs ! 227: pushl _p0+4 ! 228: pushl _p0 ! 229: pushl r1 ! 230: pushl r0 # pushd ! 231: callf $24,_Kaddd # (((p4*ysq+p3)*ysq+p2)*ysq+p1)*ysq+p0 ! 232: ! 233: pushl 16(fp) # hfs ! 234: pushl -88(fp) ! 235: pushl -92(fp) ! 236: pushl r1 ! 237: pushl r0 # pushd ! 238: callf $24,_Kmuld # ((((p4*ysq+p3)*ysq+p2)*ysq+p1)*ysq+p0)*y; ! 239: ! 240: movl r1,-100(fp) ! 241: movl r0,-104(fp) # std -104(fp) temp1 ! 242: ldd r0 ! 243: cvdf ! 244: stf r0 ! 245: ret#1
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.