mathlib.def 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. (* Copyright (C) 1987 Jensen & Partners International *)
  2. DEFINITION MODULE MATHLIB;
  3. IMPORT SYSTEM;
  4. IMPORT Lib;
  5. PROCEDURE Sin (A : LONGREAL) : LONGREAL;
  6. PROCEDURE Cos (A : LONGREAL) : LONGREAL;
  7. PROCEDURE Tan (A : LONGREAL) : LONGREAL;
  8. PROCEDURE SinH(A : LONGREAL) : LONGREAL;
  9. PROCEDURE CosH(A : LONGREAL) : LONGREAL;
  10. PROCEDURE TanH(A : LONGREAL) : LONGREAL;
  11. PROCEDURE ASin(A : LONGREAL) : LONGREAL;
  12. PROCEDURE ACos(A : LONGREAL) : LONGREAL;
  13. PROCEDURE ATan(A : LONGREAL) : LONGREAL;
  14. PROCEDURE Exp (A : LONGREAL) : LONGREAL;
  15. PROCEDURE Log (A : LONGREAL) : LONGREAL;
  16. PROCEDURE Log10(A : LONGREAL) : LONGREAL;
  17. PROCEDURE Pow(X,Y : LONGREAL) : LONGREAL;
  18. PROCEDURE ATan2(X,Y : LONGREAL) : LONGREAL;
  19. PROCEDURE Mod(X,Y : LONGREAL) : LONGREAL;
  20. PROCEDURE Rexp(VAR I : INTEGER;A : LONGREAL) : LONGREAL;
  21. PROCEDURE Sqrt(A : LONGREAL) : LONGREAL;
  22. (* 8087 instructions *)
  23. TYPE
  24. PackedBcd = ARRAY[0..9] OF SHORTCARD;
  25. Environment = RECORD
  26. ControlWord : BITSET;
  27. StatusWord : BITSET;
  28. TagWord : BITSET;
  29. IP : CARDINAL;
  30. Opcode : CARDINAL;
  31. DataPointer : CARDINAL;
  32. R80287 : CARDINAL;
  33. END;
  34. PROCEDURE LongToBcd(A: LONGREAL) : PackedBcd;
  35. PROCEDURE BcdToLong(A: PackedBcd) : LONGREAL;
  36. PROCEDURE LoadControlWord(C : BITSET);
  37. PROCEDURE StoreControlWord() : BITSET;
  38. PROCEDURE ClearExceptions();
  39. PROCEDURE StoreEnvironment() : Environment;
  40. (* end of 8087 instructions *)
  41. VAR
  42. MathError : PROCEDURE (LONGREAL, ARRAY OF CHAR);
  43. MathError2 : PROCEDURE (LONGREAL, LONGREAL, ARRAY OF CHAR);
  44. END MATHLIB.