This project was started during an unexpected 6 day winter vacation (due to snow). The idea is to allow the user of a TI-84 calculator to scroll through the entirety of the calculator's RAM visually and be allowed to modify values. The ultimate goal is a full hex editor for the calculator with support for modifying and analyzing the RAM of other running programs. It is my first TI Assembly project.
To Do
Learn TI-84 assembly.
Write program to display RAM to screen.
Modify program to scroll through RAM.
Modify program to allow arrow key control.
Modify program to allow 2 speeds.
Modify program to allow scroll pause.
Modify program to allow address input.
Modify program to allow modification of RAM.
Modify program to allow resolution to be changed.
Modify program to allow hex values to be viewed.
Modify program to be interrupt based to analyze/modify other running programs.
Timeline
2/11/10 (1:00 PM)-I've learned enough about TI 84 asm to give this a try. Just now I managed to draw the first 744 bytes of RAM to the screen. It doesn't look like much, but hopefully if I add the ability to move the display to different addresses in RAM I'
ll see some interesting things.
- 2/11/10 (1:34 PM)-It's been tough understanding why the damn HL register won't increment, but hopefully I'll have that fixed soon. I'm starting a new program to see if I can increment a 16 bit register correctly and display it to the screen in decimal form.
2/11/10 (2:57 PM)-I FINALLY GOT THE STUPID THING TO INCREMENT!!! I completely gave up using the inc command, I'm just storing the current position to a RAM location and subtracting or adding a value from/to that to change position in RAM. At the moment I have it scrolling as fast as it can manage through all RAM. When the value exceeds 16 bits it just rolls over to zero, taking you back to the beginning, which isn't all that bad of a thing. Next I'll try to add control.
2/11/10 (5:45 PM)-With some code changed around and the whole program restructured I can now move up and down in RAM using the arrow keys on the calculator. Next I will make 2 speeds and add the ability to pause scrolling.
2/11/10 (7:58 PM)-RAM flier is completely useable now. 2 speed scrolling, pausing, and fast exit with save to graph screen. I've already found a couple interesting parts of RAM. You can easily see where the character map is, because it is basically drawn right there on the screen for you. The graph buffer is the super interesting spot though, when you look at it in RAM Flier you see what is on the screen, an effect that is the same as when you take a video camera and point it at its picture on your computer screen. The next features I have planned are the ability to type in an address to look at and being able to change the size of the screen so certain patterns are more visible.