What are the most common solutions to my problems?
Can I use the Parallel Port Cable with my new TI-89?
zeotrope wrote:The problem is, that it doesnt seem to be any link software for the 89 except texas graphlink, and I dont want to buy a graph link. I tried some 92 link software but the only thing i managed to do was a screendump and remote control.
Use the DOS "ren" command to rename the files on your computer. Otherwise link85x/link85xp is not able to list the files, because of its fixed *.85g file mask.
I do not really know what the problem is, because I cannot reproduce this using my 48666. My conjection is, that the i/o port read/writedelay is processor clock dependent. This is not the first time I hear from problems with fast computers. Another possibility is the change of the parallel port hardware. Most of the new computers have three modes for the LPT. I don't know wether this has any influence. I tested my cable with a 28612 and Hercules Monochrome Graphics Card LPT, as well with my 48666 PCI and onboard LPT (all three modes are working).Try a lower clock rate. Switch off the memcaching. (Just to see wether this is the problem.)
from Steve Peterson: I found that the link will NOT work if in a windows environment. Both version 3.1x and 95. I have to actually "Restart in MS-DOS Mode" to use the link.
BTW: I'm using a Pentium 100 now and I was using a DX2-80. Both work outside of windows
from James Reedy: . . . In the end I fixed the problem on accident, it turns out that your link will work only when the turbo switch is in the off position.
from David Ingham: I've fixed my problem and I think it was due to the fast computer problem. I didn't buy a new I/O card, I just made a boot disk with the old dos 6.22 command.com there by kidding the computer into thinking it was a 16 bit machine NOT a 32 bit, since most pentiums etc come with WIN 95 (32-bit) it might be worth trying makeing a 16 bit boot disk, Just find a 16 bit machine, Format a disk to a system disk (i.e. format a: when thats done, type sys a: ) then make a autoexec.bat and config.sys WITH THE BEAR MINIMUM settings, just enough to get you in dos and run the link85xp program it's worked with me but i don't know if this will be the general case.
In some cases new batteries didn't work, but older batteries work. I use accus with 1.2 volts each (instead of new batteries). It sounds unlikely that new batteries will work not as good as older, but I got this feedback several times.
The problem interfacing the ticalculator and the serial port is the different voltages. The calculator uses 5 volts and the com port (RS232) uses 12 volts. Therefor a schematic for a serial port interface includes some parts to change the voltage (Zdiodes in the simpliest case, or a MAX232). Why should I use these parts? On my computer is a 5 volts port as well. Unfortunately it is not the serial port. So I have to use the parallel port for the serial i/o. It is only a question of the software. Because I am too lazy to write a new program, I downloaded the freely available link85x.exe from ti and replaced all occurences of serial i/o addresses by lpt i/o addresses using the dos command debug. The result I named link85xp.exe (p for parallel port). link85xp.exe drives the lpt port instead of the serial port.
I have a web page which contains step by step instructions for building your link. This may be of use to people who want to build the link who have had little previous experience of electronics. It also has hints for people whose links do not work.Nicholas Metcalfe
Try the Link Cable Page.
The calculator freezes if you shortcircuit its interface, or if you switch it to ground (0 volts).Don't use Zdiodes, it is unnecessary (they are more expensive than normal diodes).
- Try the plug alone (without any wires or cables). It should not freeze. Otherwise you cannot use this plug. Or grind the socket down. Look at the original plug what could be done.
- You have to start the link program first. If the lpt is not initialized by the link85xp.exe, it may initialized that you switch the calculator to ground.
- Check the direction of the diodes (look at the schematic).
- Check the diodes, perhaps they are gone.
Try this link: List of Link Makers
You may. Please do not sell the idea, but only the hardware, i. e. tell everybody, who is asking you for, that he can get the info on how to build this cable for free.
This is a question to you all. My isolating tube (see my web page) is certainly not the safest way to connect the plug. Makeshifts have a long life.
I think either this is a problem of the plug (the TI plug is different from a 2.5 mm stereo plug), or your parallel port is not compatible (try to use different computers/parallel ports).
LPT1 at 0278 send 00 read 20 should be 00 send 01 read 20 should be 20 send 02 read 30 should be 10 send 03 read 30 should be 30
The values you measure with the computer have, in general, nothing to do with the calculator. It is only a loop back test. These values tell you that one diode is working, the other one is not. This could be a problem of the diode, or it is a loose connection. (Or your LPT is not working correctly.) The diodes are used to drag down the voltage of the anode by switch the cathode to 0 volts. You may check using debug and a voltmeter. In the following example your port is at (hex) 278. The calculator is not attached to the cable. The cable is plugged to the LPT at (hex) 278.
C:\>debug -o 278 0 ; both lines low -o 278 1 ; only one line is low -o 278 2 ; only the other line is low -o 278 3 ; both lines high -q C:\>
It is better to use Sidiodes in the range from 50 . . . 150 (400?) volts. Diodes (diode devices) with very high voltages are often realized by an internal chain of several diodes with lower voltages. The problem is, that such a chain of diodes leaves more than 0.7 volts from anode to cathode (0.7 volts is the forward voltage for a single silicon diode), which may cause difficulties. We need a low forward voltage.
It is better not to use Zdiodes. You should prefer fast switching diodes. But Z-diodes with 5.1 volts or higher should work, I think.
Magnus Hagander (mha@algonet.se) told me, that he will implement the parallel port driver into his CONNECT software. I don't know wether it is finished.
All the test programs you can find on my web page have source code included. It should be possible to get the screen dump program working if you change all "0x05" to "0x02" in the C source code. There is also a link program for the TI92 on my web page. If you want to write a link program this is perhaps the best start. Ask the authors for the source code.
1. Try the test software you can find on my web page. 2. It is not necessary to pass command line args to link85xp. 3. Read about the "fast computer problem" above. Perhaps you can try another computer. 4. There is a setup menu in link85xp, select the right LPT there.
Perhaps some readers of this can help.
This sounds like a clobbered file. The are also socalled "edit locked" programs. These programs include a few handchanged bytes. It is not possible to edit the code from within the TI85, but you can execute the code. Perhaps there are newer, smarter ROM versions detecting this as an error. I think your link is "in Ordnung".
For both, sending and receiving, you need to have bits exchanged in both directions (handshaking protocol). The difference is only in the size of the packets. The sender transmits larger packets than the receiver. I only have conjectures. Perhaps the batteries of the calculator are weak and not able to hold the voltage necessary to transmit a large package. But I use 4 accus, each of it with 1.2 volts, and it is working.You should try several parallel ports, there are sometimes tiny differences in voltage.
It is the side of the parallel port plug you solder.
- my cable does not work with the original TI GraphLink software, use the patched one on my web page
- my cable does not need any Zener diodes
- There is another cable, not for the parallel port, but for the serial port. This one is a bit more complicated but compatible.
Does the TI92 use a different plug?
Pin 22 is ground (0 volts). Pins 2 and 3 are to set the lines either to high or low, pins 12 and 13 are to read in the level of the lines set by the computer (this is used for the loop back test linktest.com), or set by the calculator. In two cases it was necessary to connect the pins 18 ... 25 all together (they are all specified to be ground, so it is only necessary with incompatible parallel ports).
Please use a parallel port plug and solder the connections.
See the note on the TI82. It should be possible to get the screen dump program working if you change all "0x05" to "0x03" in the C source code.
All source code I wrote is included in linktest.zip (see the web page). There is also a link92xp with source code available by the authors.
Good question, unfortunately I only have a TI85. Ask the authors of link92xp for the source code. So you have a description of the 92@ format.
As they came out of my rejects box: one is SAY 17, the other one is SAY 30 (old silicon diodes made in GDR).SAY 30 SAY 17 forward current 50 mA 175 mA reverse voltage 25 V 50 V total power loss 150 mW 300 mW total capacity < 8 pF < 3 pF 65 ns 2 nsNote: There is no special reason to use different diodes. Just use the cheapest switching diodes. They should be good enough.Here some successfully used diode types: 1N914 glass switching diodes, 1N4148, . . .
Yes, it does, and it works just great. (This info is from Oskari Ojala, okko@mtv3.fi)
This sounds like a loose connection. Use the solder iron again. Look at the 2.5 mm plug, is it an original TI? If you would like to be sure wether you can use particular stereo plug, try to build a TI-to-TI link cable with two such plugs. If it works, you can use this type of plug.
One line is ground. The other two lines are two i/o lines, I will call them A and B. Initial state: both lines high (1). If you want to know it exactly, please have a look at the source code of the test software.
To send a 0: sender: switches line A to low (0). receiver (detects the change on line A): switches line B to 0. sender (detects the change on line B): switches line A back to 1. receiver (detects the change on line A): switches line B back to 1. sender waits for line B = 1 end To send a 1: sender: switches line B to 0. receiver (detects the change on line B): switches line A to 0. sender (detects the change on line A): switches line B back to 1. receiver (detects the change on line B): switches line A back to 1. sender waits for line A = 1 end