Join us on Discord!
You can help CodeWalrus stay online by donating here.

PineappleCAS - A generic CAS targeted for the TI-84+ CE

Started by squishy, August 01, 2019, 03:09:55 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

squishy

Hello!

You might know me from the Symbolic Derivative Project. I thought I could do better so I am working on a CAS (computer algebra system) for the TI 84+ CE. It is nearly done and I want to tease a little bit about the progress and work I still have to do before it is released. It is called PineappleCAS and you can check it out here: https://github.com/nathanfarlow/PineappleCAS

It can already simplify algebra identities and like terms, manipulate complex numbers, expand things (A+B)(B+C) or (A+B)^8, evaluate large constants like 2 * 3 ^ 1001 or 100! that the calculator cannot do normally, and can take derivatives that are completely simplified and beautifully exported to avoid necessary multiplication signs or parentheses and look way better than the result of the previous project.

You will be able to pass arguments to PineappleCAS from a TI BASIC program to operate on algebra from within a TI BASIC program.

The only things that I need to finish is the TI-BASIC interface.

Here are some screenshots:








Dream of Omnimaga

I haven't seen your projects before but this looks very promising, especially if its features can be used in TI-BASIC programs too, as this opens so many more possibilities for school programs.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

squishy


Dream of Omnimaga

Great! I didn't expect this to come out so fast. We are right before the start of school year, so it's good to see this come out right now.

Did you have trouble implementing hooks (assuming you use them)? I am not familiar with how ASM and C programmers circumvent the lack of third-party Flash APP support on this machine, since I was mostly active with older models before TI cracked down on third-party Flash app support.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

squishy

I used the CE C toolchain developed by members of the community (https://github.com/CE-Programming/toolchain). This allowed me to program in C and not worry about any hooks. The toolchain compiles the code and cleverly compresses and decompresses it so that it can execute on the calculator despite the fact that the decompressed binary is 117721 bytes! Much larger than the usual ~64kb limit. It executes as a program, not an app, and I haven't had any problems with that yet thanks to the great work by the toolchain programmers :)

Powered by EzPortal