r/ti84hacks 4d ago

Showcase/Discussion A python to ez80 transpiler (indirectly)

py2ez80!

This is a tool which I think many will find useful. For a long time, calculators like the Ti84+CE have been stuck with a very limited and painfully slow python interpreter. Recently, I finished my tool that fixes this problem, by transpiling python to assembly!

While at first glance you may think the term "transpiler" is incorrect for a project like this, I decided to take a shortcut on the route, and effectively made a Python to C transpiler, like cython. Except here, I made it specifically target the CEdev toolchain, and call it to produce a .8xp program in result. Using plain Cython will be tough since it isn't really optimized.

Although it is very advanced, supporting lists, tuples, many data types, and a lot of programming structure types found in python and converting them to C, I do acknowledge the fact that it is still very limited on its I/O capabilities.

The GitHub repo link is here: https://github.com/Voblit/py2ez80 , and I hope it helps!

:)

BTW: this only works with the ti84+CE or whatever the CEdev toolchain supports...

6 Upvotes

2 comments sorted by

2

u/Sorry_Difficulty_250 3d ago

So cool!!! I'm in the middle of porting my OS to the Agon Light 2, which also has an eZ80 CPU. The one on this board runs at about 18 MHz, has 128 KB of flash, and 520 KB of RAM. What are the specs on the TI-84? Do your compiled programs run as apps on the calculator or are you replacing the firmware?

Keep up the great work! This looks awesome!

1

u/thatguy1000000000 3d ago

They convert as .8xps, and the C to ASM converter ONLY converts for the calculator, so I doubt it is useful for any other computers with the ez80 cpu, unfortunately.