Port of the Eigenmath symbolic calculus engine on the Casio fx-9860GII / Graph *5 calculators.
Go to file
Némo 56ce5c5a33 First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
include First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
lib First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
src First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
.gitignore Removing warnings in main.cpp and planning what will be the next steps. 2017-02-12 15:46:09 +01:00
LICENSE Add license 2016-07-07 00:25:03 +02:00
MainIcon.bmp Initial commit - from Mike's work 2015-01-27 21:13:27 +01:00
Makefile First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
README.md First GCC-compiled working version of Eigenmath ; still a big mess tho' 2017-03-26 23:41:23 +02:00
addin.ld It builds, and somehow works (but not as expected) ; let the debugging begin 2017-02-11 15:07:46 +01:00
eActivityIcon.bmp Initial commit - from Mike's work 2015-01-27 21:13:27 +01:00

README.md

Eigenmath

Eigenmath is a free symbolic calculus software that first targeted computers, but quickly became a popular CAS software to port on small devices, from Nintendo DS to Casio calculators. This very program is a fork of the port of the Eigenmath symbolic calculus engine, initiated by the CnCalc community and intended to run on the Casio fx-9860GII / Graph *5 monochrome calculators. Its first goals were to enhance the user interface of the first port (through the implementation of some graphic menus or pretty-printed results for instance). The project is currently being moved from the Casio S.D.K. to the GCC suite.

Building the program

To build Eigenmath, you will need a sh3eb-elf GCC toolchain, and some of the tools needed for Casio development : currently some g1a-wrapper avalaible in your PATH. At the moment, building it should take no more than a single :

$ make

I chose to put all the stuff needed directly in the git repo, because some of the libraries used are in active development and not “released” and I'd rather have the project to work and be somehow easy to compile at first. This will probably change in the future.

Some code organisation notes

The tree and the code are still quite messy, but I'll try to summarize some of the choices made here.

The src/ folder is divided in two different parts :

  • The engine/ folder, which contains mostly unmodified code (though some files like print.cpp or alloc.cpp are likely to be or to have been modified, compared to the original version) and mostly platform independant code, that composes the very calculus engine.
  • The other files, that are more related to the platform and the implementation of the engine on the platform.

TRHTBF (This readme has to be finished)