From Fedora Project Wiki
(Add a personal page documenting work packaging TI calculator related stuff)
 
m (Fix a link)
Line 71: Line 71:
== Other ==
== Other ==


For more information about the Texas Instruments graphing calculator hacking community, please refer to the community site [https://www.ticalc.org/|ticalc.org]. A large repository of software for graphing calculators, and additional utilities, can be found there. However, please be advised that not all of this software is free and open source.
For more information about the Texas Instruments graphing calculator hacking community, please refer to the community site [https://www.ticalc.org/ ticalc.org]. A large repository of software for graphing calculators, and additional utilities, can be found there. However, please be advised that not all of this software is free and open source.

Revision as of 21:03, 16 May 2018

Texas Instruments Graphing Calculators

This page details Fedora support for connecting to, building software for, or emulating Texas Instruments graphing calculators and other handheld devices.

Linking

Most TI graphing calculators have a "link port". This can be used to communicate with a computer or other calculator. Mode modern calculator models frequently have a miniUSB port that can be used to connect to a computer; older calculators only have a 2.5 mm port and use a proprietary serial communications protocol. (TI sells a serial to USB adapter generally called a "SilverLink").

The open source program tilp2 supports both methods, and can be installed from Fedora's repositories:

dnf install tilp2

Group Files

To manipulate a TI "group file" (a TI file format which contains many other TI files squashed together into a single archive), the program gfm can be used:

 dnf install gfm

Development

There are open source compilers and assemblers to build programs for most TI graphing calculators.

z80 Calculators (TI-83/84+)

The Fedora repositories contain a package of [1], a z80 assembler with extra features to support development for TI's z80 series of calculators. This includes the popular TI-83+, TI-84+ (SE), and TI-84+ CE models.

dnf install spasm-ng

The upstream spasm-ng project distributes a set of include files that define system calls, etc. on the TI calculator models. Unfortunately, we cannot distribute them in Fedora because of licensing issues.

ez80 Calculators (TI-84+ CE)

While you can write (e)z80 assembly for the TI-84+ CE using an assembler, it is also possible to write C programs. There is a toolchain for doing so. Unfortunately this toolchain depends on tools from the Zilog Development Studio, which is under a proprietary license and cannot be included in Fedora.

68k Calculators (TI-89)

The TI-89, TI-92 (+) , TI-89 Titanium, and Voyage 200 calculators all have a Motorola 68000 CPU. It is possible to compile C programs for these calculators using an open-source toolchain built on top of gcc. The most commonly used, and most recently updated, version of the toolchain is GCC4Ti, a fork of the older TIGCC.

GCC4TI is not currently packaged in Fedora. However, I maintain a gcc4ti package in a copr repository, from which the package can be installed.

 dnf copr enable tc01/gcc4ti
 dnf install gcc4ti

gcc4ti is installed into /usr/m68k-gcc4ti/, following the Fedora guidelines for cross-compiler toolchains. Its setup depends on some environment variables; a script is installed into /etc/profile.d/gcc4ti.{csh,sh} to set those up automatically.

I have been reluctant to get gcc4ti into the official repositories; the package bundles an antique copy of gcc and binutils (which is cross-compiled for m68k targets) and upstream is not that active. That being said, the software is reasonably mature and has yet to fail to build on new Fedora releases, so perhaps it is worth doing.

Emulation

Unfortunately, most TI calculator emulators require nonfree firmware blobs from physical calculators to run, or dumps of the nonfree calculator's operating system, and so are not suitable to package in Fedora. Some, however, may be found in various third party repositories, including RPM Fusion.

z80 Calculators (TI-83/84+)

tilem is an emulator for various z80-based graphing calculators, including the TI-83+ and TI-84+, that runs on Linux. Because tilem requires an image of a real calculator to run, it is not eligible for inclusion in Fedora. However, there is a "tilem" package in rpmfusion-free that I maintain.

68k Calculators (TI-89)

There is an open-source emulator for the TI-89, and other 68k-based calculators, called tiemu. Unfortunately, it is mostly un-maintained upstream, though it still mostly works on modern Linux systems.

Fortunately, unlike many other graphing calculator emulators, it does not depend on proprietary firmware blobs. Even better, there is actually a free and open source operating system (GPL-licensed) for the TI-89 available called PedroM. Therefore, it is permitted for Fedora to distribute tiemu.

For the moment, tiemu and its skin editor are available in a copr repository:

dnf copr enable tc01/tiemu
dnf install tiemu

For the skin-editor, install the package "tiemu-skinedit":

dnf install tiemu-skinedit

Other

For more information about the Texas Instruments graphing calculator hacking community, please refer to the community site ticalc.org. A large repository of software for graphing calculators, and additional utilities, can be found there. However, please be advised that not all of this software is free and open source.