- Eigenmath port - the first and only Prizm CAS (v1.0 out!)
- 23 Aug 2013 06:40:55 am
- Last edited by gbl08ma on 08 Sep 2019 06:30:02 am; edited 11 times in total
This is a port of the Eigenmath math engine to the Casio Prizm in the form of an add-in, providing numerous math functions not originally available in these calculators, including symbolic computation.
This add-in has serious compatibility problems with the fx-CG 50, because I hardcoded the VRAM address and it changed on the fx-CG50 (and possibly recent OS versions of the fx-CG 10/20), leading to UI display issues. But worry not: someone has released a patched version for this more recent model. See here: https://github.com/gbl08ma/eigenmath/issues/9
Download links are near the end of this post, on the "Download" section.
Many more screenshots here
Features
In addition to the complete feature set of the text-only version of Eigenmath, this port also supports some things exclusive to graphical versions, including graph plotting, script creation and execution and a function catalog with help for each function.
As you can see in the screenshots, results are displayed in "natural" or "pretty-print" form whenever possible. When typing a command, brackets are easier to match, thanks to a color highlight. One can recall commands previously entered, to run them verbatim or to write new ones based on them.
10 lines of content are displayed at once, but one can see the previous 200 lines of output by pressing Shift then Up or Down, to enter scrolling mode.
Calculations with big numbers are supported without losing accuracy, meaning even things like 100! (factorial of 100) will work. If desired, one can turn fractions or big numbers into scientific notation, by using the "float" command.
Eigenmath is faster than the Prizm OS for most calculations, and for certain function graphs too.
The state of the add-in is saved when exiting, so that when you come back, your command history, output and symbols (variables and custom functions) are there like when you left (this behavior can be disabled).
You can add commands to be run whenever the terminal is cleared (with the "clear" command), so that you can have custom functions and constants always at your disposal. Certain keys, normally unused, can also be made to run Eigenmath expressions. This includes the function keys F1 through F4 and F6.
The add-in can work as a eActivity strip, and you can set a script to run when the strip is opened. This script is stored inside the eActivity file, meaning that it will work on any calculator with Eigenmath installed, by simply transferring the eActivity.
This port shows floating point numbers with 10 significant digits, has two additional commands called "random" and "finetiming", and certain variables are checked to trigger special UI behavior. See this page for more information.
Result reliability
This port was tested, and gives the same results as the desktop version of Eigenmath. Of course, whether such results are right is out of my control. Nobody is responsible for any problems Eigenmath may cause, so use it responsibly.
Installation instructions
To install, connect the Prizm calculator to the computer with a miniUSB<->USB cable. On the calculator, press F1 when a pop-up appears on the screen. Wait for the USB connection to be established. When it's finished, your Prizm will appear on your computer as if it were a pendisk.
Copy "eigenmath.g3a" to the root folder of the calculator (i.e., out of any folders but inside the "pendisk") and safely remove it. Wait for the calculator to finish "updating the Main Memory". When it does, you should notice a new Main Menu item, called "Eigenmath".
Usage instructions
You should read the Eigenmath manual (at least the beginning) if you are not familiar with Eigenmath in general.
To see instructions on how to use this port (focused on the port-specific features), click here.
License
The add-in is available under the GNU GPL version 2. The license text is available online at https://www.gnu.org/licenses/gpl-2.0.html
The source code and compilation instructions are available on GitHub.
Download
Download g3a directly (simpler, you can even download directly to the calculator drive)
Download ZIP archive with Read-Me, license and suggested startup script
If you are planning on hosting this Eigenmath port on calculator software archives, please use the unmodified ZIP file which has the Read-Me and license files.
Still, I would appreciate you didn't host it yourself, and just linked to the above links. It makes updating easier and also lets me count the downloads better.
For sending directly to your friends' calculators, you only need to send the g3a file.
Last words
This Eigenmath port is the result of over one year of research, work and extensive testing. Eigenmath itself has been in development for over ten years. That said, we or the original Eigenmath authors can't guarantee you will have no problems using the add-in or that everything will work as described. You are welcome to report problems, as well as modify the source code to your needs as long as you respect the license.
We hope you enjoy using this Eigenmath port as much as we did developing it. And if this add-in ever becomes useful, you just found a secret feature
---
Original post for historical purposes: http://tny.im/12X
This add-in has serious compatibility problems with the fx-CG 50, because I hardcoded the VRAM address and it changed on the fx-CG50 (and possibly recent OS versions of the fx-CG 10/20), leading to UI display issues. But worry not: someone has released a patched version for this more recent model. See here: https://github.com/gbl08ma/eigenmath/issues/9
Download links are near the end of this post, on the "Download" section.
Many more screenshots here
Features
In addition to the complete feature set of the text-only version of Eigenmath, this port also supports some things exclusive to graphical versions, including graph plotting, script creation and execution and a function catalog with help for each function.
As you can see in the screenshots, results are displayed in "natural" or "pretty-print" form whenever possible. When typing a command, brackets are easier to match, thanks to a color highlight. One can recall commands previously entered, to run them verbatim or to write new ones based on them.
10 lines of content are displayed at once, but one can see the previous 200 lines of output by pressing Shift then Up or Down, to enter scrolling mode.
Calculations with big numbers are supported without losing accuracy, meaning even things like 100! (factorial of 100) will work. If desired, one can turn fractions or big numbers into scientific notation, by using the "float" command.
Eigenmath is faster than the Prizm OS for most calculations, and for certain function graphs too.
The state of the add-in is saved when exiting, so that when you come back, your command history, output and symbols (variables and custom functions) are there like when you left (this behavior can be disabled).
You can add commands to be run whenever the terminal is cleared (with the "clear" command), so that you can have custom functions and constants always at your disposal. Certain keys, normally unused, can also be made to run Eigenmath expressions. This includes the function keys F1 through F4 and F6.
The add-in can work as a eActivity strip, and you can set a script to run when the strip is opened. This script is stored inside the eActivity file, meaning that it will work on any calculator with Eigenmath installed, by simply transferring the eActivity.
This port shows floating point numbers with 10 significant digits, has two additional commands called "random" and "finetiming", and certain variables are checked to trigger special UI behavior. See this page for more information.
Result reliability
This port was tested, and gives the same results as the desktop version of Eigenmath. Of course, whether such results are right is out of my control. Nobody is responsible for any problems Eigenmath may cause, so use it responsibly.
Installation instructions
To install, connect the Prizm calculator to the computer with a miniUSB<->USB cable. On the calculator, press F1 when a pop-up appears on the screen. Wait for the USB connection to be established. When it's finished, your Prizm will appear on your computer as if it were a pendisk.
Copy "eigenmath.g3a" to the root folder of the calculator (i.e., out of any folders but inside the "pendisk") and safely remove it. Wait for the calculator to finish "updating the Main Memory". When it does, you should notice a new Main Menu item, called "Eigenmath".
Usage instructions
You should read the Eigenmath manual (at least the beginning) if you are not familiar with Eigenmath in general.
To see instructions on how to use this port (focused on the port-specific features), click here.
License
The add-in is available under the GNU GPL version 2. The license text is available online at https://www.gnu.org/licenses/gpl-2.0.html
The source code and compilation instructions are available on GitHub.
Download
Download g3a directly (simpler, you can even download directly to the calculator drive)
Download ZIP archive with Read-Me, license and suggested startup script
If you are planning on hosting this Eigenmath port on calculator software archives, please use the unmodified ZIP file which has the Read-Me and license files.
Still, I would appreciate you didn't host it yourself, and just linked to the above links. It makes updating easier and also lets me count the downloads better.
For sending directly to your friends' calculators, you only need to send the g3a file.
Last words
This Eigenmath port is the result of over one year of research, work and extensive testing. Eigenmath itself has been in development for over ten years. That said, we or the original Eigenmath authors can't guarantee you will have no problems using the add-in or that everything will work as described. You are welcome to report problems, as well as modify the source code to your needs as long as you respect the license.
We hope you enjoy using this Eigenmath port as much as we did developing it. And if this add-in ever becomes useful, you just found a secret feature
---
Original post for historical purposes: http://tny.im/12X