pyILPER

Introduction

HP-IL (Hewlett Packard Interface Loop) is a serial interconnection bus introduced by Hewlett-Packard in the early 1980s. It enabled the communication between peripheral devices such as printers, floppy disk drives etc. with programmable calculators such as the HP-41C, HP71B and HP-75C/D.

The connection to PCs was realized by either an generic ISA bus card or a serial interface controller. As these devices are not available any more, Jean-Francois Garnier published his PIL-Box project in 2009 to link a PC via USB to the HP-IL system.

The PC operating system communicates with the PIL-Box as a virtual serial device over USB. The PIL-Box is connected to the HP-IL Loop.

pyILPER is a program that reads incoming HP-IL frames from the PIL-Box, processes them by emulating some virtual HP-IL devices, like a printer, a disk drive or a terminal and sends the processed frames back to the loop.

The first program ILPER (HP-IL peripheral emulator) was written by Jean-Francois Garnier in VisualBasic. The current Version of ILPER is written in Visual C++ and is maintained by Christoph Gießelink. pyILPER is a Python version of ILPER with modifications and enhancements.

pyILPER provides the following virtual HP-IL devices in one application:

  • A scope to watch the HP-IL traffic
  • Generic line printer(s)
  • Mass storage device(s)
  • Terminal emulator (display and keyboard)
  • HP7470A plotter
  • HP82161A thermal printer
  • HP2225B ThinkJet printer

To use pyILPER you need at the PIL-Box and a HP-IL controller such as the HP-41, HP-75 or the HP-71B. Most fun you will have with the HP-71B which is a powerful device to control a HP-IL system.

In addition pyILPER can be used with emulator programs for the HP-41, HP-71 or HP-75 which do not require a PIL-Box or any other HP calculator hardware. For this purposes pyILPER supports virtual HP-IL over TCP/IP. and a Serial over TCP/IP PIL-Box emulator to connect to DOS based emulators running on DOSBox or VirtualBox.

pyILPER can be used for stand alone file management operations for virtual LIF image files. The latest version of the LIFUTILS must be installed to use this feature.

pyILPER was written in pure Python 3 and its user interface was implemented with the Qt framework. The software was tested successfully on Ubuntu LINUX 16.04/18.04, Windows 7/10 and macOS 10.14.