Linking software

ASM archive


IR Link


PIC16x84 programmer

Hosted by:

Parallel link support in TI-Graphlink

Last Update on:16/6/00

In the last version of the GraphLink from TI , TI has added the support of the 'Old Black' cable which is compatible with the homemade "$4 cable". This was a solution for the users who built the "$4 link", since the software from TI has some features that are not yet supported in the other linking programs, like my W32Tran8x , like Flash ROM updating (which will be added soon to W32Tran8x).In this page I will describe how to patch the files that come with the TI-GraphLink software in order to make it work with the homemade parallel link (or "$5 link").

Disclaimer: The method described on this page is for educational purposes only and should in no way prevent you from buying the original GraphLink cable from TI. The software from TI is intented to function with the original cable only. If you want to use a homemade cable, then you have to used homemade software (like WTran8x, GTILink, CAL or many others) only. I cannot and will not answer requestes for pre-modified files. You have to modify the file yourself. I cannot be held responsible for any damage caused.

The method described here works with Windows NT, as it uses the driver file ticalc.sys. I dont have Windows 9x, but I suspect that ticalc.sys is not used. I think that under Windows 3.1/9x the program acess the port directly without using any drivers. Please correct me if I am wrong or if you have new information concerning Windows 3.1/9x.

This has been sucessfuly tested under Windows NT 4.0 SP6, with the TI89-GraphLink v2.0 ( Rel: Feb 17 2000).

The steps to modify ticalc.sys in order to use the parallel link and the parallel port at address 0x378 (generaly LPT1):

  1. Make a backup of the ticalc.sys file found in the \WINNT\SYSTEM32\DRIVERS directory.
  2. Open a DOS-Command-prompt and type "net stop ticalc" in order to stop the TICalc driver service.
  3. Open ticalc.sys (after making a backup) using a Hex-Editor and modify the following bytes (all values in hex):


Original Value New Value
0x83 0xC5 0x04
0xBD 0x78 0x03
0x83 0xC6 0x06
0xBE 0x79 0x03
0x83 0xC6 0x06
0xBE 0x79 0x03
0x83 0xC5 0x04
0xBD 0x78 0x03
0x83 0xC6 0x06
0xBE 0x79 0x03
0x83 0xC6 0x04
0xBE 0x78 0x03
0xE8 0x4A
0x2D 0x8A
  1. Save ticalc.sys. In the DOS-command-prompt type "net start ticalc". If the modification was carried correctly, the service will start correctly. If not, then check ticalc.sys for errors.

This modification will make the program work with the parallel link at the parallel port at address 0x378. In order to use a different port (eg. 0x278 or 0x3BC) you will have to modify the values above (the 0x78 0x03 and the 0x79 0x03) AND the checksum bytes at 0x00D8. It is a little bit tricky to change the checksum bytes because Microsoft did not quite document how the 2 checksum bytes are created.

Back to index.
Author : Sami Khawam