DEFINITION MODULE CalcFunctions; (* This module creates the functions for the calculator. This is the lowest level module. Four functions need the gadget information and are in the Module CalcGadgets. These functions are: STO RCL DEG (toggles between degrees and radians) GOLD (selects alternate gadgets in display) Created: Duncan Prindle, September 10, 1986 Modified: Perhaps *) TYPE ErrorType = (NoError, DivideByZero, NegSqrt, NegLog, NegLn, XTooBigForSIN, AsinTooBig, XTooBigForCOS, AcosTooBig, XTooBigForTAN, OverFlow, piOver2, OtherError); VAR X : REAL; SAME : BOOLEAN; DECI : BOOLEAN; NDeci : INTEGER; INDEG : BOOLEAN; stored : ARRAY[0..9] OF REAL; PROCEDURE BLANK (): ErrorType; PROCEDURE CLRStack; PROCEDURE StackUp; PROCEDURE StackDown; PROCEDURE Add (): ErrorType; PROCEDURE Subtract (): ErrorType; PROCEDURE Multiply (): ErrorType; PROCEDURE Divide (): ErrorType; PROCEDURE POINT (): ErrorType; PROCEDURE PI (): ErrorType; PROCEDURE CLX (): ErrorType; PROCEDURE RDN (): ErrorType; PROCEDURE ENTER (): ErrorType; PROCEDURE LASTX (): ErrorType; PROCEDURE SIN (): ErrorType; PROCEDURE ASIN (): ErrorType; PROCEDURE COS (): ErrorType; PROCEDURE ACOS (): ErrorType; PROCEDURE TAN (): ErrorType; PROCEDURE ATAN (): ErrorType; PROCEDURE LN (): ErrorType; PROCEDURE EXP (): ErrorType; PROCEDURE TENtotheX (): ErrorType; PROCEDURE LOG (): ErrorType; PROCEDURE YtotheX (): ErrorType; PROCEDURE OneOverX (): ErrorType; PROCEDURE XSquared (): ErrorType; PROCEDURE SQRT (): ErrorType; PROCEDURE XtoY (): ErrorType; PROCEDURE CHS (): ErrorType; PROCEDURE CLRST (): ErrorType; PROCEDURE EXTENDX( Digit: CARDINAL ); END CalcFunctions.