| ESBSinCos Procedure | 
Unit
QESBPCSMath
Declaration
Procedure ESBSinCos(const Angle: Extended; out SinX, CosX: Extended);
| Parameters | 
| Angle | Angle in Radians. | 
Category
Arithmetic Routines for FloatsImplementation
 
| procedure ESBSinCos (const Angle: Extended; out SinX, CosX: Extended);
procedure FSinCos (Angle: Extended; var SinX, CosX: Extended);
     asm
		fld		[Angle]			// St(0) <- Angle
		fsincos
		fstp		tbyte ptr [edx]    // St(0) -> CosX
		fstp    	tbyte ptr [eax]    // St(0) -> SinX
		fwait
     end;
begin
     if abs (Angle) >= TwoToPower63 then // must be less then 2^63
          raise EMathError.Create (rsAngleTooLarge);
     FSinCos (Angle, SinX, CosX);
End; | 
|  |