<IMG SRC="pierotating.gif" WIDTH=80 HEIGHT=80 BORDER=0>

TI-85 Emulator
       TI-85 Emulator
       ROM dumps
TI-85 Stuff
About me

Ash School


Z80 core based on Amstrad Emulator by
  Bernd Schmidt (crux@pool.informatik.rwth-aachen.de)

TI-85 emulation by (sorted by last name):
  David Ellsworth (davidells@aol.com)
  Ilya Haykinson (haykinso@ucla.edu)
  Dines Justesen (c958362@student.dtu.dk)
  Robert Taylor (rtaylor@rtaylor.u-net.com)


Version 1.00

Version 1.50
The following modifications were made by David Ellsworth:

  • Accurate TI-85 interrupt handling
  • Keyboard interrupt handler, allowing multiple keys to be read at once by the TI-85
  • Timer interrupt handler at true speed (200 Hz)
  • ON key interrupts
  • Linking port emulation through parallel cable
  • Ability to save and load images of the TI-85's state
Version 2.00
The following modifications were made by David Ellsworth:
  • Replaced the Z80 core with one written in assembly. The emulator is now *dramatically* faster. In fact, it runs faster than a real TI-85 on my 486DX-25.
  • Added support for the gray Graphlink cable and the Connect-85 serial cable. The link emulation can now be switched from the command line. (Note: the Graphlink support does not quite fully work yet.)
  • Added command line option to change the backup file name

Keyboard layout

Note: Many TI-85 keys have alphabetic and symbolic equivalents. I have not listed those here.

TI-85 key PC key
ON \
2nd Left Shift
ALPHA Left Ctrl
x-VAR '
DEL Pad Insert or Pad Delete
CLEAR Backspace
Cursor keys Pad Cursor keys
F1 - F5 F1 - F5
A - Z A - Z
0 - 9 0 - 9 or Num 0 - 9
+ Pad+
- Pad-
* Pad*
/ / or Pad/
^ `
(-) - or Space
STO> =
( [
) ]
, ,
. . or ;
Special keys
F11 Quit emulator and save state
F12 Quit emulator without saving state

Startup instructions

Upon startup, this emulator will try to load a backup file. If you did not specify one at the command line, it will be TI85.IMG. If it cannot find this file, it memory will be initialized. You'll get the message "Mem cleared/Defaults set", and a checkerboard cursor. Press the [ON] key (backslash).

Command line parameters

Use a parallel cable on LPTx.
If "x" is omitted, it will default to LPT1.

Use a (black) serial cable on COMx (not implemented yet)
If "x" is omitted, it will default to COM1.

Use a gray TI-Graph Link cable on COMx (not implemented yet)
If "x" is omitted, it will default to COM1.

Use PC speaker (as if it were plugged into the link port)

Load the backup image "file". If you quit the emulator and
save a backup, this file will be updated instead of TI85.IMG.

Backup files (state images)

When you use F11 to quit the emulator, its state will be saved as TI85.IMG. When you start it again, this file will be loaded. You can override the default name of TI85.IMG using a command line parameter.

Note: The backup file format was changed in version 2.00.

The current file format is as follows:

0x0000 0x8000 Image of RAM
0x8000 0x0002 AF register
0x8002 0x0002 BC register
0x8004 0x0002 DE register
0x8006 0x0002 HL register
0x8008 0x0002 PC register
0x800A 0x0002 AF' register
0x800C 0x0002 BC' register
0x800E 0x0002 DE' register
0x8010 0x0002 HL' register
0x8012 0x0002 R register (F)
0x8014 0x0002 R register (Fhi)
0x8016 0x0002 I register
0x8018 0x0002 imode (IM0, IM 1, IM 2)
0x801A 0x0002 IX register
0x801C 0x0002 IY register
0x801E 0x0001 IFF1 register
0x801F 0x0001 IFF2 register
0x8020 0x0002 SP register
0x8022 0x0002 Video offset (((port[0] & 0x3F) + 0xC0) << 8)
0x8024 0x0001 Current ROM page (port[5])
0x8025 0x0001 Keypad Mask (port[1])
0x8026 0x0001 Interrupt Mask (port[3])
0x8027 0x0001 Interrupt Flag (port[3])
0x8028 0x0001 Power Register (port[6])
0x8029 0x0001 Contrast Value (port[2])
0x802A 0x0001 Link Register (port[7])

Linking port information

This program can emulate a linking port through a parallel cable. Here is the plan for the cable. If you are cutting a TI link cable, use this plan. If you are connecting the cable you make to one end of a TI link cable (you don't want to cut one), swap ring and tip.

 Parallel        TI-Link cable                      
 (DB25)          (2.5mm 3cond phone)                
   2  --|<--                      | |
   12 -----|---  red (ring)       | | tip
   3  --|<--                      |_|               
   13 -----|---  white (tip)      | | ring          
   22 ---------  shield (sheath)  | | sheath        
The diodes can be any small silicon switching diode.
To tell the emulator what kind of cable you are using, pass the appropriate command-line parameters.

1999 Content: Dines Justesen; Design, Graphics, Animation: mousewasher's WebDesign