This header file is quite incomplete and a bit unconsistent. In the near future it will contain about 100 new functions. I started to develop this header file, but the shortage of my free time forces me to stop developing for a while. I don't want to prolongue releasing of whole TIGCCLIB only because this header file is not complete. Be patient, I will continue developing it as soon as possible...
cmd_clrdraw cmd_clrgraph cmd_clrhome cmd_clrio cmd_clrtable cmd_custmoff cmd_custmon cmd_disp cmd_dispg cmd_disphome cmd_disptbl cmd_fnoff cmd_fnon cmd_graph cmd_input cmd_inputstr cmd_get cmd_getcalc cmd_newprob cmd_output cmd_pause cmd_printobj cmd_prompt cmd_rclgdb cmd_send cmd_sendcalc cmd_sendchat cmd_stogdb cmd_style push_getkey push_getmode push_setgraph push_setmode push_settable push_switchand the following predefined types:
ESINOTE: All functions from this header file get parameters from the expressions stack, so this header file must be use in conjecture with estack.h. You need to learn about usage of the expressions stack before using any function from this header file. All functions defined here (including functions which will be implemented in the near future) execute particular TI-Basic commands or functions. They sometimes may be useful to perform some operations which can not be easily implement in C. But note that if you use functions from this header file too much, you will degrade the performance of your program significantly. In an extreme case, it will in fact reduce to a TI-Basic program! So use functions from this header file only if it is really necessary. Also note that these functions acts exactly like appropriate TI-Basic commands (including throwing errors if something is wrong), so usage of error traping mechanism from error.h header file is highly recommended.
push_quantum (VAR_X_TAG); push_string ($(Enter your name:)); cmd_inputstr (top_estack);If PromptAndVar points directly to a variable tag, "?" is displayes as a prompt.
Graph mode | Requested layout on the expressions stack |
Function graphing | END_TAG var_name expression |
Parametric graphing | END_TAG var_name y_expression x_expression |
Polar graphing | END_TAG var_name expression |
3D graphing | END_TAG y_var_name x_var_name expression |
push_quantum (VAR_T_TAG); push_parse_text ("sin(t)+sin(2t)"); cmd_graph (top_estack);Or, you can avoid push_parse_text by transforming the expression into the RPN manually (which is very easy):
static unsigned char rpn[] = {END_TAG, VAR_T_TAG, VAR_T_TAG, SIN_TAG, VAR_T_TAG, 2, 1, POSINT_TAG, MUL_TAG, SIN_TAG, ADD_TAG}; cmd_graph (rpn + sizeof(rpn) - 1);All expressions entered using cmd_graph are remembered and assigned increasing function numbers starting with 1. The currently selected Y= functions are ignored. Use cmd_clrgraph to clear these functions (they will also be cleared after you go to the Y= Editor to re-enable the system Y= functions).
Graph mode | Valid styles |
Function | LINE, DOT, THICK, ANIMATE, PATH, ABOVE, BELOW, SQUARE |
Parametric/Polar | LINE, DOT, THICK, ANIMATE, PATH, SQUARE |
Sequence | LINE, DOT, THICK, SQUARE |
3D | none |
Diff Equations | LINE, DOT, THICK, ANIMATE, PATH, SQUARE |
Mode name | Possible settings |
"Graph" | "FUNCTION", "PARAMETRIC", "POLAR", "SEQUENCE", "3D", "DIFF EQUATIONS" |
"Display Digits" | "FIX 0", "FIX 1", ..., "FIX 12", "FLOAT 1", "FLOAT 2", ..., "FLOAT 12" |
"Angle" | "RADIAN", "DEGREE" |
"Exponential Format" | "NORMAL", "SCIENTIFIC", "ENGINEERING" |
"Complex Format" | "REAL", "RECTANGULAR", "POLAR" |
"Vector Format" | "RECTANGULAR", "CYLINDRICAL", "SPHERICAL" |
"Pretty Print" | "OFF", "ON" |
"Split Screen" | "FULL", "TOP-BOTTOM", "LEFT-RIGHT" |
"Split 1 App" | "Home", "Y= Editor", "Window Editor", "Graph", "Table", "Data/Matrix Editor", "Program Editor", "Text Editor", "Numeric Solver" |
"Split 2 App" | "Home", "Y= Editor", "Window Editor", "Graph", "Table", "Data/Matrix Editor", "Program Editor", "Text Editor", "Numeric Solver" |
"Number of Graphs" | "1", "2" |
"Graph2" | "FUNCTION", "PARAMETRIC", "POLAR", "SEQUENCE", "3D", "DIFF EQUATIONS" |
"Exact/Approx" | "AUTO", "EXACT", "APPROXIMATE" |
"Base" | "DEC", "HEX", "BIN" |
Mode name | Possible settings |
"Coordinates" | "RECT", "POLAR", "OFF" |
"Graph Order" | "SEQ", "SIMUL" (not available in SEQUENCE, 3D or DIFF EQUATIONS graph mode) |
"Grid" | "OFF", "ON" (not available in 3D graph mode) |
"Axes" | "OFF", "ON" (not 3D graph mode) "OFF", "AXES", "BOX" (3D graph mode) |
"Leading Cursor" | "OFF", "ON" (not available in 3D graph mode) |
"Labels" | "OFF", "ON" |
"Style" | "WIRE FRAME", "HIDDEN SURFACE", "CONTOUR LEVELS", "WIRE AND CONTOUR", "IMPLICIT PLOT" (applies only to 3D graph mode) |
"Seq Axes" | "TIME", "WEB", "U1-VS-U2" (applies only to SEQUENCE graph mode) |
"DE Axes" | "TIME", "T-VS-Y'", "Y-VS-Y'", "Y1-VS-Y2", "Y1-VS-Y2'", "Y1'-VS-Y2'" (applies only to DIFF EQUATIONS graph mode) |
"Solution Method" | "RK", "EULER" (applies only to DIFF EQUATIONS graph mode) |
"Fields" | "SLPFLD", "DIRFLD", "FLDOFF" (applies only to DIFF EQUATIONS graph mode) |
Parameter name | Possible settings |
"Graph <-> Table" | "OFF", "ON" |
"Independent" | "AUTO", "ASK" |