Programming Projects

Click on a thumbnail to learn more about that project.

Numstrat Source Code (Lua)

Click image to view full image in new tab/window.

I have had prior programming experience in Lua. Lua is an object/event based programming language that is structured differently to other popular languages such as C++ and Java. Lua is composed of functions that are executed when certain conditions are met (eg: when a key is pressed, when a variable is set to the value 0. This particular project was written in a Lua API developed especially for the TI-nspire Graphing calculator, where some functions have been modified.

In Numstrat, this was an attempt to get a fully functioning working program that would display and change numbers depending on what key you pressed. You would control whether you would want to attack or defend and your power value would go up or down accordingly. Each move would take 1 turn. I programmed so that several statistics including the average score would be displayed on the screen and these would dynamically update on every variable change.

Future improvements including improving the Game interface to include sprites/images, and more complex strategy in ways to increase your power.

Calculator Programming

Personally I have a long interest in calculator programming. I first started in 2008 when I had a Casio CFX-9850 GB+ graphing calculator. I soon realised there were many calculator games made by others on the internet. They consisted of code that was packaged in a file suitable for sending through a link cable, but were able to be viewed in mostly plain text in a program like Microsoft Word. Since I had no link cable, I began printing out the code and typing it manually into the calculator when I had spare time. On the way I made some modifications to some programs myself.

I heavily modified a game called Indy2000, which was a fast-paced car track racing game, by adding highscores, help pages, multiple users and other features to it. The largest program I ever typed manually was Star Wars for Casio, over 19000 bytes. An optimisation with using a list for variables instead of a matrix saved nearly 3000 bytes. Since memory/RAM on the calculator was limited to 32K this was a siginificant save in file size.

In 2010 I obtained a TI-nspire graphing calculator as part of the school required list. The TI-nspire is a more modern graphing calculator than the Casio, with megabytes of memory, and documents that can consist of dynamic graphs, calculations, spreadsheets, data and notes. While impressive, the basic programming language on the calculator was far reduced, even by the standards. You were unable to execute functions through a menu, instead the program name had to be typed into the calculator app and executed from there. Graphical support was limited within programs. Despite the limitations, I still managed to make some useful programs and games, most notable of which is my TI-nspire Texas Hold 'em Poker. It has over 3700 downloads on ticalc.org.

Close this search popup

jhdesign Search

Congratulations! You have successfully performed a search!

The terms you searched for were:

(blank)