Tandy Portable Disk Drive - Tools and API


The python files included in this suite are for use with the Tandy Portable Disk Drive (TPDD) and the Tandy Portable Disk Drive 2 (TPDD2) external 3.5” floppy disk drives for the Tandy Model 100, 102 and 200 series of portable computers.

The suite is made up of the TpddTool python script which is a command line based tool that utilises the Tpdd API for communicating with the TPDD/TPDD2 disk drives. There is also a Tpdd_test python script which is designed to be used with the nose automated test harness.

The TpddTool script has been tested with a TPDD and TPDD2. The development of the suite was done with Python 2.7.11 on a Windows 10 PC. The TpddTool has been run successfully on a CentOS 6 VM, a CentOS 7 VM and a MacBook running OSX El Capitan. The design has been done with portability in mind and should run on any platform that supports Python 2.7. Testing on a Raspberry Pi is on the list of todo’s. There has not been any testing with long pathnames or complex directory structures so there may be some bugs still lurking in these areas.

To use the suite, you will need Python 2.7. Current version as of writing this document is 2.7.11. I would recommend the usage of virtualenv to keep the Python installation seperate from the hosts PC’s Python installation. This is required for Linux installs and Mac installs as the OS itself uses Python for package management. There are a number of HowTo’s on the web for how to install and setup virtualenv.

The additional packages that are required for the suite are:

  • pyserial - Serial communications library.
  • argparse - Command line argument parsing library.
  • sphinx - (optional) Documentation library used for auto generation of this documentation.
  • nose - (optional) Unittest/autotest framework.

To use the tools, only TpddTool.py and Tpdd.py is required.

Using TpddTool

To run the script on a Windows host use:

python TpddTool.py com1

To run the script on a Linux host use:

python TpddTool.py /dev/ttyS0

To run the script on a Mac host with a USB serial port use:

python TpddTool.py /dev/tty.usbserial-xxxxxxxx

Indices and tables