
		Parallel link cable for Texas Instruments handhelds
		===================================================


Author: Romain Lievin
Homepage: http://lpg.ticalc.org/prj_tidev/index.html


INTRODUCTION:

This is a driver for the very common home-made parallel link cable, a cable 
designed for connecting TI8x/9x graphing calculators (handhelds) to a computer
or workstation (Alpha, Sparc). Given that driver is built on parport, the 
parallel port abstraction layer, this driver is architecture-independent.

It can also be used with another device plugged on the same port (such as a
ZIP drive). I have a 100MB ZIP and both of them work fine!

If you need more information, please visit the 'TI drivers' homepage at the URL
above.

WHAT YOU NEED:

A TI calculator and a program capable of communicating with your calculator.

TiLP will work for sure (since I am its developer!). yal92 may be able to use
it by changing tidev for tipar (may require some hacking...).

HOW TO USE IT:

You must have first compiled parport support (CONFIG_PARPORT_DEV): either 
compiled in your kernel, either as a module. 

Next, (as root):

       modprobe parport
       modprobe tipar

If it is not already there (it usually is), create the device:

       mknod /dev/tipar0 c 115 0
       mknod /dev/tipar1 c 115 1
       mknod /dev/tipar2 c 115 2

You will have to set permissions on this device to allow you to read/write
from it:

       chmod 666 /dev/tipar[0..2]
       
Now you are ready to run a linking program such as TiLP. Be sure to configure 
it properly (RTFM).
       
MODULE PARAMETERS:

  You can set these with:  modprobe tipar NAME=VALUE
  There is currently no way to set these on a per-cable basis.

  NAME: timeout
  TYPE: integer
  DEFAULT: 15
  DESC: Timeout value in tenth of seconds. If no data is available once this 
	time has expired then the driver will return with a timeout error.

  NAME: delay
  TYPE: integer
  DEFAULT: 10
  DESC: Inter-bit delay in micro-seconds. A lower value gives an higher data
	rate but makes transmission less reliable.

These parameters can be changed at run time by any program via ioctl(2) calls 
as listed in ./include/linux/ticable.h.

Rather than write 50 pages describing the ioctl() and so on, it is
perhaps more useful you look at ticables library (dev_link.c) that demonstrates
how to use them, and demonstrates the features of the driver. This is
probably a lot more useful to people interested in writing applications
that will be using this driver.

QUIRKS/BUGS:

None.

HOW TO CONTACT US:

You can email me at roms@lpg.ticalc.org. Please prefix the subject line
with "TIPAR: " so that I am certain to notice your message.
You can also mail JB at jb@jblache.org. He packaged these drivers for Debian.

CREDITS:

The code is based on tidev.c & parport.c.
The driver has been developed independently of Texas Instruments.
