TILP (formerly GtkTiLink) can transfer data between Texas Instruments graphing calculators and a computer. It works with all link cables (parallel, serial, Black/Gray/Silver/Direct Link) and it supports the TI-Z80 series (73..86), the TI-eZ80 series (83PCE, 84+CE), the TI-68k series (89, 92, 92+, V200, 89T) and the Nspire series (Nspire Clickpad / Touchpad / CX, both CAS and non-CAS)
After being suggested years ago, the TCP client and TCP server cables are now part of libticables' API, but they aren't implemented yet.
One of the ways not to reinvent the socket handling wheels, and have to deal with all kinds of functionality (send with timeout, etc.) and portability issues ourselves, is to take advantage of Glib's sockets, or ZeroMQ ZMQ_STREAM sockets. Using raw socket APIs would be more suitable for Emscripten builds, though.
After being suggested years ago, the TCP client and TCP server cables are now part of libticables' API, but they aren't implemented yet. One of the ways not to reinvent the socket handling wheels, and have to deal with all kinds of functionality (send with timeout, etc.) and portability issues ourselves, is to take advantage of Glib's sockets, or ZeroMQ ZMQ_STREAM sockets. Using raw socket APIs would be more suitable for Emscripten builds, though.