Login [Register]
Don't have an account? Register now to chat, post, use our tools, and much more.
[Prizm] Introducing LuaZM
Published by KermMartian on August 17, 2012 at 5:55:25 PM CST | Discuss this article (114)

The Casio Prizm is a powerful calculator, great for both math and playing games. It is particularly great for programming, and for months thoroughly bested the TI-Nspire calculator in offering ASM, BASIC, and C programming. In an attempt to reduce criticism of their apparently anti-student stance, Texas Instruments improved the TI-Nspire to run Lua programs. Lua is a "fast, lightweight, embeddable scripting language," an interpreted procedural language. The language has allowed budding Nspire programmers to quickly write games and programs without needing to use a computer.

I am happy to announce that I am now bringing Lua to the Casio Prizm graphing calculator, in the form of a full-featured Lua interpreter. After days of porting, rewriting parts of libc (including the longjmp/setjmp system), and learning some SH4 assembly, I am proud to present the first screenshot of the interpreter successfully running on a Prizm. Special kudos to Juju for the PrizmIO library, a port of an Nspire I/O library for C programmers. As you can see from the screenshots, this is just the raw interpreter; although it understands Lua syntax and can parse/lex the language, load libraries, and recognize incorrect code, it is almost entirely lacking in functioning libraries. From here, I will be porting over each of the standard libraries, starting with numbers, strings, and I/O. Please feel free to share thoughts and suggestions in the attached thread. Bonus features: Planned transparent support for Nspire and Lua FX programs.

August 2012 Articles
August 2012 August 2012 [Back to News Archives Index]

» TI-89 Titanium Disassembly and Backlighting published August 9, 2012 by KermMartian
» [Prizm] Introducing LuaZM published August 17, 2012 by KermMartian
» Back-To-School Guide 2012 Part 1: Buying a Graphing Calc published August 27, 2012 by KermMartian