Programming cross z80 calculators
From WikiTI
Contents
Introduction
It is a nice feature to do in your games and other programs to be able to use them across all the z80 calculators.
The difficulty to port depends on every case. In some games, it is enough changes in some graphics, safe rams and b_calls to make it work. Some cases might be a nightmare (in practical too difficult) or simply impossible.
General Advices
- Avoid b_calls
- use a assembler that supports #if #else #endif directives (give a example on how to use)
- use a linker capable of all z80 calculators format
- See in a set of graphic routines to all calculators
Help Documentation
Safe Rams
Safe ram is simply some portions of fixed ram usable to the programmer without any worry to the TI-OS. But it depends from calculator to calculator. Here is a table to illustrate what is available or not across the z80 calculators:
Specific calculator info
Here you have important aspects of calculators (mostly hardware related).
TI-85
- memory mapped LCD (great but others don't)
TI-86
- memory mapped LCD (great but others don't)
TI-82
- No Hooks
TI-83
- Link port is different from TI-83+
TI-83+
TI-84+
- CPU is around 3x faster (good but not always)
- Some bad LCD can screw your beautiful graphics