Programs

TI-82 | TI-83| TI-83+ | TI-85| TI-86 | TI-89 | Ports | Routines | Misc | Levels


This section contains miscellaneous code and programming tidbits that we've picked up over the years.
Warning! Some of these files may be non-existant or not work properly. Don't get discouraged, because the odds are either a .H file or .ZIP exists. Please respect that current projects will get more attention than the routines in this section.
To save .H files, right-click on the link and select "Save Target As".

8x8 Tile Map Routineby Harper Maddox
mapdemo.h
mapdemo.zip
A tilemap routine that uses 8x8 sprites, which cover the full screen (an area of 8x12 tiles). Scrolls one tile (8 pixels) at a time. This should be the easiest tilemap routine to implement in your game. This same routine was used in Chicken Shoot.

12x12 Tile Map Routineby Harper Maddox
tilemap.h
tilemap.zip
An advanced dual buffered tilemap routine that uses 12x12 sprites, which cover the full screen (5+ rows by 8+ columns) and scrolls one pixel at a time. The routine allows faster scrolling, since the second buffer is only replaced every time the map becomes aligned (ie. a multiple of 12). The only drawback to this routine is that 1300 bytes are used up to make the second buffer, thus this is optimized for speed not size.

How to animate a tilemapby Harper Maddox
bg_animation.txt description of how to animate the tiles on a tilemap

Find Tileby Harper Maddox
findTile.txt How to find the tile ID for a point (perhaps where your character is at) in a tilemap.

3x4 Fontby Harper Maddox
font.h A very small, but spiffy font that I use in the Galaxy Game Demo. This also includes routines to display numbers with this font. The code that I used within this should provide enough information for you to design your own font.

ChangeChar v1.0
EditString v1.0
by Wouter Demuynck
cchar.zip A routine that allows you to edit strings with a given length or single characters. It's really simple to use. It is also used in Attrib. This routine works in CrASH v1.1+

D_ZC_STRby Kouri Rosenberg
D_ZC_STR.zip D_ZC_STR stands for Display_Zero-terminated_Custom-font_String. Included in the .zip are several routines to display strings or characters of a fixed-width, 4x6 pixel font, and two sample fonts. These routines were used in TxtView.

String Input Routineby Harper Maddox
input.h This routine allows you to read in keypresses as a string. I used this in Jumble, Punchout, and Memory.

Menu Routine v1.2by Wouter Demuynck
menurout.zip A routine that allows you to make menus in a simple way. The menus are like the CrASH and Ash menus, but they also scroll down. It is the menu routine used in Attrib. This routine works in CrASH v1.1+

8 Bit Division Routineby Harper Maddox
divhbyl.h Divides register H by register L, keeps result in E, and provides a remainder in register A. It is a fairly small routine and it is quick.

Invert Screenby Harper Maddox
invert.txt Short code used to invert the screen

Line Drawing Routineby Harper Maddox
line.h
line.zip
Draws a line to the graph buffer without using any rom calls. Uses Bresham's line drawing algorithm, and requires an 8 bit division routine, so the above routine I made is included. This routine quickly draws a line from BC to DE, where B and C are X-Coordinates and C and E are Y-Coordinates. I decided to take out the logic to flip these around, so B must < D.

Listsby Harper Maddox
list.txt Shows how to take a variable from a list.

LDIRby Harper Maddox
ldir.txt Explanation of what LDIR, a common ASM opcode does. I show what it does with another piece of ASM code.

Register Pairsby Harper Maddox
regPairs.txt Short tutorial on how register pairs (such as DE,HL) work.

Register Pairs 2by Harper Maddox
HLintoDE.txt How to store a register pair (BC,DE,HL) into a dynamic memory address(ie. address stored in HL or DE).