|
|
1.1 ! root 1: .386P ! 2: .model FLAT ! 3: externdef _d_zistepu:dword ! 4: externdef _d_pzbuffer:dword ! 5: externdef _d_zistepv:dword ! 6: externdef _d_zrowbytes:dword ! 7: externdef _d_ziorigin:dword ! 8: externdef _r_turb_s:dword ! 9: externdef _r_turb_t:dword ! 10: externdef _r_turb_pdest:dword ! 11: externdef _r_turb_spancount:dword ! 12: externdef _r_turb_turb:dword ! 13: externdef _r_turb_pbase:dword ! 14: externdef _r_turb_sstep:dword ! 15: externdef _r_turb_tstep:dword ! 16: externdef _r_bmodelactive:dword ! 17: externdef _d_sdivzstepu:dword ! 18: externdef _d_tdivzstepu:dword ! 19: externdef _d_sdivzstepv:dword ! 20: externdef _d_tdivzstepv:dword ! 21: externdef _d_sdivzorigin:dword ! 22: externdef _d_tdivzorigin:dword ! 23: externdef _sadjust:dword ! 24: externdef _tadjust:dword ! 25: externdef _bbextents:dword ! 26: externdef _bbextentt:dword ! 27: externdef _cacheblock:dword ! 28: externdef _d_viewbuffer:dword ! 29: externdef _cachewidth:dword ! 30: externdef _d_pzbuffer:dword ! 31: externdef _d_zrowbytes:dword ! 32: externdef _d_zwidth:dword ! 33: externdef _d_scantable:dword ! 34: externdef _r_lightptr:dword ! 35: externdef _r_numvblocks:dword ! 36: externdef _prowdestbase:dword ! 37: externdef _pbasesource:dword ! 38: externdef _r_lightwidth:dword ! 39: externdef _lightright:dword ! 40: externdef _lightrightstep:dword ! 41: externdef _lightdeltastep:dword ! 42: externdef _lightdelta:dword ! 43: externdef _lightright:dword ! 44: externdef _lightdelta:dword ! 45: externdef _sourcetstep:dword ! 46: externdef _surfrowbytes:dword ! 47: externdef _lightrightstep:dword ! 48: externdef _lightdeltastep:dword ! 49: externdef _r_sourcemax:dword ! 50: externdef _r_stepback:dword ! 51: externdef _colormap:dword ! 52: externdef _blocksize:dword ! 53: externdef _sourcesstep:dword ! 54: externdef _lightleft:dword ! 55: externdef _blockdivshift:dword ! 56: externdef _blockdivmask:dword ! 57: externdef _lightleftstep:dword ! 58: externdef _r_origin:dword ! 59: externdef _r_ppn:dword ! 60: externdef _r_pup:dword ! 61: externdef _r_pright:dword ! 62: externdef _ycenter:dword ! 63: externdef _xcenter:dword ! 64: externdef _d_vrectbottom_particle:dword ! 65: externdef _d_vrectright_particle:dword ! 66: externdef _d_vrecty:dword ! 67: externdef _d_vrectx:dword ! 68: externdef _d_pix_shift:dword ! 69: externdef _d_pix_min:dword ! 70: externdef _d_pix_max:dword ! 71: externdef _d_y_aspect_shift:dword ! 72: externdef _screenwidth:dword ! 73: externdef _vright:dword ! 74: externdef _vup:dword ! 75: externdef _vpn:dword ! 76: externdef _BOPS_Error:dword ! 77: externdef _snd_scaletable:dword ! 78: externdef _paintbuffer:dword ! 79: externdef _snd_linear_count:dword ! 80: externdef _snd_p:dword ! 81: externdef _snd_vol:dword ! 82: externdef _snd_out:dword ! 83: externdef _r_leftclipped:dword ! 84: externdef _r_leftenter:dword ! 85: externdef _r_rightclipped:dword ! 86: externdef _r_rightenter:dword ! 87: externdef _modelorg:dword ! 88: externdef _xscale:dword ! 89: externdef _r_refdef:dword ! 90: externdef _yscale:dword ! 91: externdef _r_leftexit:dword ! 92: externdef _r_rightexit:dword ! 93: externdef _r_lastvertvalid:dword ! 94: externdef _cacheoffset:dword ! 95: externdef _newedges:dword ! 96: externdef _removeedges:dword ! 97: externdef _r_pedge:dword ! 98: externdef _r_framecount:dword ! 99: externdef _r_u1:dword ! 100: externdef _r_emitted:dword ! 101: externdef _edge_p:dword ! 102: externdef _surface_p:dword ! 103: externdef _surfaces:dword ! 104: externdef _r_lzi1:dword ! 105: externdef _r_v1:dword ! 106: externdef _r_ceilv1:dword ! 107: externdef _r_nearzi:dword ! 108: externdef _r_nearzionly:dword ! 109: externdef _edge_aftertail:dword ! 110: externdef _edge_tail:dword ! 111: externdef _current_iv:dword ! 112: externdef _edge_head_u_shift20:dword ! 113: externdef _span_p:dword ! 114: externdef _edge_head:dword ! 115: externdef _fv:dword ! 116: externdef _edge_tail_u_shift20:dword ! 117: externdef _r_apverts:dword ! 118: externdef _r_anumverts:dword ! 119: externdef _aliastransform:dword ! 120: externdef _r_avertexnormals:dword ! 121: externdef _r_plightvec:dword ! 122: externdef _r_ambientlight:dword ! 123: externdef _r_shadelight:dword ! 124: externdef _aliasxcenter:dword ! 125: externdef _aliasycenter:dword ! 126: externdef _a_sstepxfrac:dword ! 127: externdef _r_affinetridesc:dword ! 128: externdef _acolormap:dword ! 129: externdef _d_pcolormap:dword ! 130: externdef _r_affinetridesc:dword ! 131: externdef _d_sfrac:dword ! 132: externdef _d_ptex:dword ! 133: externdef _d_pedgespanpackage:dword ! 134: externdef _d_tfrac:dword ! 135: externdef _d_light:dword ! 136: externdef _d_zi:dword ! 137: externdef _d_pdest:dword ! 138: externdef _d_pz:dword ! 139: externdef _d_aspancount:dword ! 140: externdef _erroradjustup:dword ! 141: externdef _errorterm:dword ! 142: externdef _d_xdenom:dword ! 143: externdef _r_p0:dword ! 144: externdef _r_p1:dword ! 145: externdef _r_p2:dword ! 146: externdef _a_tstepxfrac:dword ! 147: externdef _r_sstepx:dword ! 148: externdef _r_tstepx:dword ! 149: externdef _a_ststepxwhole:dword ! 150: externdef _zspantable:dword ! 151: externdef _skintable:dword ! 152: externdef _r_zistepx:dword ! 153: externdef _erroradjustdown:dword ! 154: externdef _d_countextrastep:dword ! 155: externdef _ubasestep:dword ! 156: externdef _a_ststepxwhole:dword ! 157: externdef _a_tstepxfrac:dword ! 158: externdef _r_lstepx:dword ! 159: externdef _a_spans:dword ! 160: externdef _erroradjustdown:dword ! 161: externdef _d_pdestextrastep:dword ! 162: externdef _d_pzextrastep:dword ! 163: externdef _d_sfracextrastep:dword ! 164: externdef _d_ptexextrastep:dword ! 165: externdef _d_countextrastep:dword ! 166: externdef _d_tfracextrastep:dword ! 167: externdef _d_lightextrastep:dword ! 168: externdef _d_ziextrastep:dword ! 169: externdef _d_pdestbasestep:dword ! 170: externdef _d_pzbasestep:dword ! 171: externdef _d_sfracbasestep:dword ! 172: externdef _d_ptexbasestep:dword ! 173: externdef _ubasestep:dword ! 174: externdef _d_tfracbasestep:dword ! 175: externdef _d_lightbasestep:dword ! 176: externdef _d_zibasestep:dword ! 177: externdef _zspantable:dword ! 178: externdef _r_lstepy:dword ! 179: externdef _r_sstepy:dword ! 180: externdef _r_tstepy:dword ! 181: externdef _r_zistepy:dword ! 182: externdef _D_PolysetSetEdgeTable:dword ! 183: externdef _D_RasterizeAliasPolySmooth:dword ! 184: externdef float_point5:dword ! 185: externdef Float2ToThe31nd:dword ! 186: externdef izistep:dword ! 187: externdef izi:dword ! 188: externdef FloatMinus2ToThe31nd:dword ! 189: externdef float_1:dword ! 190: externdef float_particle_z_clip:dword ! 191: externdef float_minus_1:dword ! 192: externdef float_0:dword ! 193: externdef fp_16:dword ! 194: externdef fp_64k:dword ! 195: externdef fp_1m:dword ! 196: externdef fp_1m_minus_1:dword ! 197: externdef fp_8:dword ! 198: externdef entryvec_table:dword ! 199: externdef advancetable:dword ! 200: externdef sstep:dword ! 201: externdef tstep:dword ! 202: externdef pspantemp:dword ! 203: externdef counttemp:dword ! 204: externdef jumptemp:dword ! 205: externdef reciprocal_table:dword ! 206: externdef DP_Count:dword ! 207: externdef DP_u:dword ! 208: externdef DP_v:dword ! 209: externdef DP_32768:dword ! 210: externdef DP_Color:dword ! 211: externdef DP_Pix:dword ! 212: externdef DP_EntryTable:dword ! 213: externdef pbase:dword ! 214: externdef s:dword ! 215: externdef t:dword ! 216: externdef sfracf:dword ! 217: externdef tfracf:dword ! 218: externdef snext:dword ! 219: externdef tnext:dword ! 220: externdef spancountminus1:dword ! 221: externdef zi16stepu:dword ! 222: externdef sdivz16stepu:dword ! 223: externdef tdivz16stepu:dword ! 224: externdef zi8stepu:dword ! 225: externdef sdivz8stepu:dword ! 226: externdef tdivz8stepu:dword ! 227: externdef reciprocal_table_16:dword ! 228: externdef entryvec_table_16:dword ! 229: externdef ceil_cw:dword ! 230: externdef single_cw:dword ! 231: externdef fp_64kx64k:dword ! 232: externdef pz:dword ! 233: externdef spr8entryvec_table:dword ! 234: _DATA SEGMENT ! 235: align 4 ! 236: Ljmptab dd Lcase0, Lcase1, Lcase2, Lcase3 ! 237: dd Lcase4, Lcase5, Lcase6, Lcase7 ! 238: _DATA ENDS ! 239: _TEXT SEGMENT ! 240: public _Invert24To16 ! 241: _Invert24To16: ! 242: mov ecx,ds:dword ptr[4+esp] ! 243: mov edx,0100h ! 244: cmp ecx,edx ! 245: jle LOutOfRange ! 246: sub eax,eax ! 247: div ecx ! 248: ret ! 249: LOutOfRange: ! 250: mov eax,0FFFFFFFFh ! 251: ret ! 252: align 2 ! 253: public _TransformVector ! 254: _TransformVector: ! 255: mov eax,ds:dword ptr[4+esp] ! 256: mov edx,ds:dword ptr[8+esp] ! 257: fld ds:dword ptr[eax] ! 258: fmul ds:dword ptr[_vright] ! 259: fld ds:dword ptr[eax] ! 260: fmul ds:dword ptr[_vup] ! 261: fld ds:dword ptr[eax] ! 262: fmul ds:dword ptr[_vpn] ! 263: fld ds:dword ptr[4+eax] ! 264: fmul ds:dword ptr[_vright+4] ! 265: fld ds:dword ptr[4+eax] ! 266: fmul ds:dword ptr[_vup+4] ! 267: fld ds:dword ptr[4+eax] ! 268: fmul ds:dword ptr[_vpn+4] ! 269: fxch st(2) ! 270: faddp st(5),st(0) ! 271: faddp st(3),st(0) ! 272: faddp st(1),st(0) ! 273: fld ds:dword ptr[8+eax] ! 274: fmul ds:dword ptr[_vright+8] ! 275: fld ds:dword ptr[8+eax] ! 276: fmul ds:dword ptr[_vup+8] ! 277: fld ds:dword ptr[8+eax] ! 278: fmul ds:dword ptr[_vpn+8] ! 279: fxch st(2) ! 280: faddp st(5),st(0) ! 281: faddp st(3),st(0) ! 282: faddp st(1),st(0) ! 283: fstp ds:dword ptr[8+edx] ! 284: fstp ds:dword ptr[4+edx] ! 285: fstp ds:dword ptr[edx] ! 286: ret ! 287: align 2 ! 288: public _BoxOnPlaneSide ! 289: _BoxOnPlaneSide: ! 290: push ebx ! 291: mov edx,ds:dword ptr[4+12+esp] ! 292: mov ecx,ds:dword ptr[4+4+esp] ! 293: xor eax,eax ! 294: mov ebx,ds:dword ptr[4+8+esp] ! 295: mov al,ds:byte ptr[17+edx] ! 296: cmp al,8 ! 297: jge Lerror ! 298: fld ds:dword ptr[0+edx] ! 299: fld st(0) ! 300: jmp dword ptr[Ljmptab+eax*4] ! 301: Lcase0: ! 302: fmul ds:dword ptr[ebx] ! 303: fld ds:dword ptr[0+4+edx] ! 304: fxch st(2) ! 305: fmul ds:dword ptr[ecx] ! 306: fxch st(2) ! 307: fld st(0) ! 308: fmul ds:dword ptr[4+ebx] ! 309: fld ds:dword ptr[0+8+edx] ! 310: fxch st(2) ! 311: fmul ds:dword ptr[4+ecx] ! 312: fxch st(2) ! 313: fld st(0) ! 314: fmul ds:dword ptr[8+ebx] ! 315: fxch st(5) ! 316: faddp st(3),st(0) ! 317: fmul ds:dword ptr[8+ecx] ! 318: fxch st(1) ! 319: faddp st(3),st(0) ! 320: fxch st(3) ! 321: faddp st(2),st(0) ! 322: jmp LSetSides ! 323: Lcase1: ! 324: fmul ds:dword ptr[ecx] ! 325: fld ds:dword ptr[0+4+edx] ! 326: fxch st(2) ! 327: fmul ds:dword ptr[ebx] ! 328: fxch st(2) ! 329: fld st(0) ! 330: fmul ds:dword ptr[4+ebx] ! 331: fld ds:dword ptr[0+8+edx] ! 332: fxch st(2) ! 333: fmul ds:dword ptr[4+ecx] ! 334: fxch st(2) ! 335: fld st(0) ! 336: fmul ds:dword ptr[8+ebx] ! 337: fxch st(5) ! 338: faddp st(3),st(0) ! 339: fmul ds:dword ptr[8+ecx] ! 340: fxch st(1) ! 341: faddp st(3),st(0) ! 342: fxch st(3) ! 343: faddp st(2),st(0) ! 344: jmp LSetSides ! 345: Lcase2: ! 346: fmul ds:dword ptr[ebx] ! 347: fld ds:dword ptr[0+4+edx] ! 348: fxch st(2) ! 349: fmul ds:dword ptr[ecx] ! 350: fxch st(2) ! 351: fld st(0) ! 352: fmul ds:dword ptr[4+ecx] ! 353: fld ds:dword ptr[0+8+edx] ! 354: fxch st(2) ! 355: fmul ds:dword ptr[4+ebx] ! 356: fxch st(2) ! 357: fld st(0) ! 358: fmul ds:dword ptr[8+ebx] ! 359: fxch st(5) ! 360: faddp st(3),st(0) ! 361: fmul ds:dword ptr[8+ecx] ! 362: fxch st(1) ! 363: faddp st(3),st(0) ! 364: fxch st(3) ! 365: faddp st(2),st(0) ! 366: jmp LSetSides ! 367: Lcase3: ! 368: fmul ds:dword ptr[ecx] ! 369: fld ds:dword ptr[0+4+edx] ! 370: fxch st(2) ! 371: fmul ds:dword ptr[ebx] ! 372: fxch st(2) ! 373: fld st(0) ! 374: fmul ds:dword ptr[4+ecx] ! 375: fld ds:dword ptr[0+8+edx] ! 376: fxch st(2) ! 377: fmul ds:dword ptr[4+ebx] ! 378: fxch st(2) ! 379: fld st(0) ! 380: fmul ds:dword ptr[8+ebx] ! 381: fxch st(5) ! 382: faddp st(3),st(0) ! 383: fmul ds:dword ptr[8+ecx] ! 384: fxch st(1) ! 385: faddp st(3),st(0) ! 386: fxch st(3) ! 387: faddp st(2),st(0) ! 388: jmp LSetSides ! 389: Lcase4: ! 390: fmul ds:dword ptr[ebx] ! 391: fld ds:dword ptr[0+4+edx] ! 392: fxch st(2) ! 393: fmul ds:dword ptr[ecx] ! 394: fxch st(2) ! 395: fld st(0) ! 396: fmul ds:dword ptr[4+ebx] ! 397: fld ds:dword ptr[0+8+edx] ! 398: fxch st(2) ! 399: fmul ds:dword ptr[4+ecx] ! 400: fxch st(2) ! 401: fld st(0) ! 402: fmul ds:dword ptr[8+ecx] ! 403: fxch st(5) ! 404: faddp st(3),st(0) ! 405: fmul ds:dword ptr[8+ebx] ! 406: fxch st(1) ! 407: faddp st(3),st(0) ! 408: fxch st(3) ! 409: faddp st(2),st(0) ! 410: jmp LSetSides ! 411: Lcase5: ! 412: fmul ds:dword ptr[ecx] ! 413: fld ds:dword ptr[0+4+edx] ! 414: fxch st(2) ! 415: fmul ds:dword ptr[ebx] ! 416: fxch st(2) ! 417: fld st(0) ! 418: fmul ds:dword ptr[4+ebx] ! 419: fld ds:dword ptr[0+8+edx] ! 420: fxch st(2) ! 421: fmul ds:dword ptr[4+ecx] ! 422: fxch st(2) ! 423: fld st(0) ! 424: fmul ds:dword ptr[8+ecx] ! 425: fxch st(5) ! 426: faddp st(3),st(0) ! 427: fmul ds:dword ptr[8+ebx] ! 428: fxch st(1) ! 429: faddp st(3),st(0) ! 430: fxch st(3) ! 431: faddp st(2),st(0) ! 432: jmp LSetSides ! 433: Lcase6: ! 434: fmul ds:dword ptr[ebx] ! 435: fld ds:dword ptr[0+4+edx] ! 436: fxch st(2) ! 437: fmul ds:dword ptr[ecx] ! 438: fxch st(2) ! 439: fld st(0) ! 440: fmul ds:dword ptr[4+ecx] ! 441: fld ds:dword ptr[0+8+edx] ! 442: fxch st(2) ! 443: fmul ds:dword ptr[4+ebx] ! 444: fxch st(2) ! 445: fld st(0) ! 446: fmul ds:dword ptr[8+ecx] ! 447: fxch st(5) ! 448: faddp st(3),st(0) ! 449: fmul ds:dword ptr[8+ebx] ! 450: fxch st(1) ! 451: faddp st(3),st(0) ! 452: fxch st(3) ! 453: faddp st(2),st(0) ! 454: jmp LSetSides ! 455: Lcase7: ! 456: fmul ds:dword ptr[ecx] ! 457: fld ds:dword ptr[0+4+edx] ! 458: fxch st(2) ! 459: fmul ds:dword ptr[ebx] ! 460: fxch st(2) ! 461: fld st(0) ! 462: fmul ds:dword ptr[4+ecx] ! 463: fld ds:dword ptr[0+8+edx] ! 464: fxch st(2) ! 465: fmul ds:dword ptr[4+ebx] ! 466: fxch st(2) ! 467: fld st(0) ! 468: fmul ds:dword ptr[8+ecx] ! 469: fxch st(5) ! 470: faddp st(3),st(0) ! 471: fmul ds:dword ptr[8+ebx] ! 472: fxch st(1) ! 473: faddp st(3),st(0) ! 474: fxch st(3) ! 475: faddp st(2),st(0) ! 476: LSetSides: ! 477: faddp st(2),st(0) ! 478: fcomp ds:dword ptr[12+edx] ! 479: xor ecx,ecx ! 480: fnstsw ax ! 481: fcomp ds:dword ptr[12+edx] ! 482: and ah,1 ! 483: xor ah,1 ! 484: add cl,ah ! 485: fnstsw ax ! 486: and ah,1 ! 487: add ah,ah ! 488: add cl,ah ! 489: pop ebx ! 490: mov eax,ecx ! 491: ret ! 492: Lerror: ! 493: call near ptr _BOPS_Error ! 494: _TEXT ENDS ! 495: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.