
======================================================================

			Emmetro Grapher 1.0 
	
			by Coldplastic Software

======================================================================

----------------------------------------------------------------------
	Introduction
----------------------------------------------------------------------

        The Emmetro Grapher is a multi-feature program
that can evaluate expressions in different number systems,
draw graphs, and solve basic calculus problems.

----------------------------------------------------------------------
	Disclaimer
----------------------------------------------------------------------

        Emmetro Grapher is freeware and can be distributed freely
as long as its original contents are not modified and not packaged
with other files.  Use this software at your own risk. The author
assumes no responsibility for any damage resulting from the use or
misuse of this software. Delete the software if you don't agree
with this disclaimer.

----------------------------------------------------------------------
         Instructions
----------------------------------------------------------------------

	I. Using the Expression Evaluator

		1. Entering Expressions -- Syntax
		2. Supported Functions and operators
		3. Using hexadecimal, binary, and octal numbers

	II. Using the 2D Graphing feature

		1. Basic 2D Graphing 
		2. Adjusting range, colors, etc.
		3. Plotting raw coordinates

	III. Using the 3D Graphing feature

		1. Basic 3D Graphing
		2. Adjusting range, colors, etc.
		3. Plotting raw coordinates

	IV. Using the Polar Graphing feature
	
		1. Basic Polar Graphing
		2. Adjusting diameter, colors, etc. 	

	V. Miscellaneous
		
		1. Finding derivatives and integrals for most functions
		2. Extra Settings Window
		3. Saving Output

----------------------------------------------------------------------

I. Using the Expression Evaluator

   1. Entering Expressions -- Syntax

	Click on Tools -> Evaluate to use this feature.
    The syntax is simple and is used commonly by graphing
    calculators and similar software. Enter expressions only
    in the lower text box. 

	Order of Operations: 
		Parentheses
		Special functions and operators (which ever comes first)
		Exponents
		Multiplication or Division
		Addition or Subtraction

	Examples of valid expressions:
	
	( 2 * 3 - 2) - 2
	
	3 + 2^3 + 4.53		
	
	-3.025 + 4.053/34

	43124.534 - -34431 * 450 + ((433- 3476) + -1 * (431))^2
	
	34.43^-53.1

	sin(90) + 2 * cos(90) - 1.5 * tan(43)

	Examples of invalid expressions:
		
	1(234) + (343)(343)^2
	
	2sin(50) + (2)(arctan(50))	

   2. Supported Functions and operators

	P and Z are real numbers	

   Name			    Usage	Description
   ----			   -------	-----------
   Exponent		    P ^ Z
   Multiplication	    P * Z
   Division		    P / Z
   Addition		    P + Z
   Subtraction		    P - Z

   Squareroot		    SQR(P)
   Exponential function     EXP(P)   Raises e to the X power
   Natural Logarithm	    LOG(P)   Returns natural logarithm of X
   Absolute Value	    ABS(P)   Returns absolute value of X
   Modulus		    P MOD Z  Returns the remainder of X / Y

   Bitwise AND		    P AND Z
   Bitwise OR		    P OR  Z
   Bitwise NOT		    NOT (P)
   Bitwise XOR		    P XOR Z

   Sine                     SIN(P)
   Cosine		    COS(P)
   Tangent                  TAN(P)   
   Secant                   SEC(P) 
   Cosecant                 CSC(P) 
   Cotangent                COT(P) 
   Hyperbolic Sine          SINH(P) 
   Hyperbolic Cosine        COSH(P) 
   Hyperbolic Tangent       TANH(P)
   Hyperbolic Secant        SECH(P) 
   Hyperbolic Cosecant      CSCH(P) 
   Hyperbolic Cotangent     COTH(P)
   Inverse Sine             ARCSIN(P)
   Inverse Cosine           ARCCOS(P)
   Inverse Tangent          ARCTAN(P)
   Inverse Secant           ARCSEC(P) 
   Inverse Cosecant         ARCCSC(P) 
   Inverse Cotangent        ARCCOT(P) 
   Inverse Hyperbolic Sine  ARCSINH(P) 
   Inverse Hyperbolic Cos   ARCCOSH(P)
   Inverse Hyperbolic Tan   ARCCTANH(P) 
   Inverse Hyperbolic CSC   ARCCSCH(P) 
   Inverse Hyperbolic Sec   ARCSECH(P)
   Inverse Hyperbolic Cot   ARCCOTH(P) 

	You can change what kind of angle the program
uses by clicking on Misc and select Degrees, Radians, or Grad.


   3. Using hexadecimal, binary, and octal numbers

	Add a base suffix ( b, o, h, or d) to the 
    number and enclose it brackets. Unbracked 
    numbers are always decimal.

	Examples:    [2434d]	decimal number
		     [1110b]	binary number
		     [1234o]    octal number
		     [fadfh]    hexadecimal number

	234 + [145h] * [11100011b] OR [00101011b]

    The expression evaluator automatically translates them
    to decimal numbers before calculation. You can mix
    different kinds of numbers in an expression.
    The default result is in decimal unless you change
    the base by clicking on Misc and then click on
    one of the 4 available bases. Note that only base decimal
    can handle fractional numbers. All other bases accept
    only integer values.

    The evaluator can only handle 16 bit or 32 bit non-decimal numbers
    and you can adjust this by clicking on Misc -> Integer or
    Misc -> Long .

    Finally, the expression evaluator is case-insensitive and spaces
    and tabs are ignored.

---------------------------------
II. Using the 2D Graphing feature

   1. Basic 2D Graphing 

	() Click on Mode -> 2D Graph
	() Click on Options -> 2D Graph
	() Select one of the graph slots available on the left
	() Enter an expression in the box next to y= using
	   only x as the variable
	() Click on the visible checkbox
	() Click on Save
	() Repeat with the next available slot if you
	   want to plot more graphs
	() Click on Apply
	() Close the 2D Graph Options window to see the graph

	() Manipulate the graph by clicking on the edges to
	   shift the graph in various directions. 
	   Leftclick to zoom in and rightclick to zoom out.

   2. Adjusting range, colors, etc.

	Change colors by clicking on the appropriate colored boxes,
	which will open a color selection window. Select your desired
	color and click on OKAY.

	Axis Width -- Affects the thickness of the axes. You should only
		enter 1 to 3 for practical reasons.

	Plot Width -- Affects how thick the plotted dots and lines will
		look. I recommend 2 as to best setting.

	Max Ticks -- Affects the amount of tick marks on the axes.
		Multiply this value by the x interval or y interval,
		then divide by 2 to get a number.

		The range is from  -number to +number.

	X and Y interval -- This changes the numeric value between each
		tick mark. These values change as you manipulate the 
		graph with your mouse.

	Neg. Squareroot -- Checking this box allows you to see
		nonfunction versions of certain graphs.

	Show Axes, Show Range, and Show Grid are self-explanatory. 


   3. Plotting raw coordinates

	Check the "User Defined Points" checkbox and enter the 
	coordinates like this:

		(1, 2), (4, 3), (5.3, 15), (4, 3)

----------------------------------
III. Using the 3D Graphing feature

   1. Basic 3D Graphing

	() Click on Mode -> 3D Graph
	() Click on Options -> 3D Graph
	() Select one of the graph slots available on the left
	() Enter an expression in the box next to Z= using
	   only x, y, or both x and y as variables
	() Click on the visible checkbox
	() Click on Save
	() Repeat with the next available slot if you
	   want to plot more graphs
	() Click on Apply
	() Close the 3D Graph Options window to see the graph

	() There is no manipulation of the 3D graph window with
	   the mouse, but you can do it through 3D Options window.

   2. Adjusting range, colors, etc.

	LOWERX, UPPERX, LOWERY, UPPERY, LOWERZ, and UPPERZ --
		These specify the range in which the 3D coordinates
		are plotted.

	ANGLE1 -- Specifies how many degrees you want to rotate the graph
		 horizontally.
	ANGLE2 -- Specifies how many degrees you want to rotate the
		 vertically.

	X Displace -- Shifts your view of the graph in the graph window
			horizontally

	Y Displace -- Shifts your view of the graph in the graph window
			vertically

	Orig X Disp, Orig Y Disp, and Orig Z Disp -- Adjusts the
		position of the origin. Edit this if the x-y-z range
		you specify is far away from the coordinate 0,0,0.

	Axes Width and Plot Width -- affects the thicknesses of the
		axes and the graph

	Show Axes Names -- Not very significant, only specifies whether
		X, Y, and Z are shown

	Show Axes -- self explanatory

	Zoom -- Keep this value between 30 and 280 for practical reasons.
 		Affects how close the graph is to the viewer.

	Graph Size -- This is the squareroot of how many points that will
		be plotted. Increase the number to make the graph look
		sharper. I recommend staying in between 50 and 300.

	Colors -- Click on the appropriate boxes to bring up a color
		selection window to change the colors.

------------------------------------
IV. Using the Polar Graphing feature
	
   1. Basic Polar Graphing

	() Click on Mode -> Polar Graph
	() Click on Options -> Polar Graph
	() Select one of the graph slots available on the left
	() Enter an expression in the box next to r= using
	   only x as the variable
	() Click on the visible checkbox
	() Click on Save
	() Repeat with the next available slot if you
	   want to plot more graphs
	() Click on Apply
	() Close the Polar Graph Options window to see the graph

	() Manipulate the graph by clicking on the edges to
	   shift the graph in various directions. 
	   Leftclick to zoom in and rightclick to zoom out.
   
   2. Adjusting diameter, colors, etc. 	

	Diameter -- edit this box to change the diameter of the polar grid

	Pixels/Diam. -- Sort of like a quality setting. This value should
		not be greater than the vertical resolution of your
		monitor.

	No. of Rings and No. of lines -- affects how the polar grid will
		look like

	Angle Step -- This value should be a factor of No. of lines or
		else the graph will look ugly.  This affects the amount
		of angles that will be displayed on the periphery of
		the polar grid

	Plot Width and Grid Width are self-explanatory

	Text Color, Grid Color, Background, Show Polar Grid, and 
	Show Polar Angle are also self explanatory.

  3. Plotting Raw Coordinates


	Check the "User Defined Points" checkbox and enter the 
	coordinates like this:

		(0, 2), (45, 3), (90, 4), (135, 3)

------------------------------------

V. Miscellaneous
		
   1. Finding derivatives and integrals for most functions
	
	Click on Tools -> Calculus
   	
	What you see in this window is self-explanatory.

   2. Extra Settings Window

	Click on Options -> Extra Settings

	ScaleWidth -- Sets the horizontal resolution for the graph output
		window. The vertical resolution is automatically calculated.
		Changes take place after the program is restarted.

	Cartesian or Polar Trace Modes -- These only apply to the
		polar and 2d graphs. You can pick either when in
		one of the two graph modes, which doubles as a
		convenient polar-to-rectangular convertor and vice versa.

   3. Saving Output

	For the Calculus and Expression Evaluator tools, use the mouse
	to simply copy the text in the big text box and paste it in
	your favorite text editor.

	When in the graphing screen, click on Files -> Export to create
	automatically named Picture file, which contains a snapshot of
	the graphing window. The Picture files are created it
	the following order:

		graph000.bmp, graph001.bmp, graph002.bmp, etc.


----------------------------------------------------------------------
         Contact
----------------------------------------------------------------------

  Email: coldplastic@hotmail.com
  
  Website: http://www.geocities.com/coldplastic
