/EXTENDED FUNCTION PACKAGE FOR FOCAL 5/69 /E.A.TAFT, 6/10/69 / /FSIN: SIN(X) X IN RADIANS /FCOS: COS(X) X IN RADIANS /FATN: ARC TAN(X) RESULT IN RADIANS /FEXP: EXP(X) /FLOG: LN(X) ///// /DEFINITIONS FIXMRI FAD=1000 FIXMRI FSB=2000 FIXMRI FMY=3000 FIXMRI FDV=4000 FIXMRI FGT=5000 FIXMRI FPT=6000 FNR=7000 FENT=4407 FEXT=0 FIXTAB ///// NEGATE= 4450 GETSGN= 1045 RETURN= 5500 SN= 10 FIX= 4452 PUSHA= 4503 POPA= 1413 FLAC= 44 FLTEMP= 7545 FLTONE= 1573 PDLXR= 13 ERROR= 4526 FLOAT= 4430 FNTABF= 571 BOTTOM= 27 COMGO= 1164 SORTJ= 4510 M5= 67 CNTR= 132 AXIN= 10 TSTERM= 4565 PROC= 616 ERROR5= 2735 DBCONV= 5600 *BOTTOM FCOS-1 /TOP OF TEXT *FNTABF+7 FATN /POINTERS TO EXTENDED FUNCTIONS FEXP FLOG FSIN FCOS ///// /ENABLE A "LIBRARY DELETE" COMMAND /WHICH WILL DELETE THE EXTENDED FUNCTIONS AND /FREE MORE FOR USER AREA. *COMGO+10 LIBRARY *6555 LIBLST, "D ///// LIBRARY,SORTJ /"LIBRARY" - EXPANDABLE COMMAND LIBLST-1 LIBGO-LIBLST ERROR /ILLEGAL LIBRARY COMMAND ///// LIBD, TAD M5 /DELETE THE EXTENDED FUNCTIONS DCA CNTR TAD EXTAB DCA AXIN TAD PERROR DCA I AXIN /SET ERROR5 POINTERS ISZ CNTR JMP .-3 TAD DTOP DCA BOTTOM /MOVE TOP POINTER UP JMP 6461 /OPTRET (TO REACH END OF COMMAND) ///// EXTAB, FNTABF+6 DTOP, DBCONV-1 LIBGO, LIBD *175 PERROR, ERROR5 /FOCAL EXTENDED FUNCTIONS *5113 / COSINE FCOS, NEGATE /COS(X)=SIN(PI/2-X) FENT FAD I PI2 FEXT ///// / SINE FSIN, GETSGN SNA RETURN /SIN(0)=0 SPA CLA JMS I NEG2 /SIN(-X)=-SIN(X) DCA SN FENT FDV TWOPI /REDUCE MODULO 2 PI FPT I X2 FEXT FIX NEGATE FENT FNR FAD I X2 FMY TWOPI FPT I X2 FSB PI FEXT GETSGN /X