Skip to main content

pyILPR (Virtual HP-IL Devices)

pyilper

Index

Description

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 a generic ISA bus card or a serial interface controller. As these devices are not available anymore, 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.

Note: pyiILPER version 1.x is now in maintenance mode, during which only critical bug fixes will be addressed. The successor to version 1.x is pyILPER version 2.x, which is currently in beta testing.

Features

  • Entirely written in Python3 using the Qt GUI-Framework (Qt5 and Qt6)
  • Virtual mass storage drive with integrated directory list, file management (import, export, rename, purge, view) and disk management functions (label, pack, initialize)
  • Virtual generic printer emulating the HP-71B, HP-41C, HP-75 and ROMAN-8 character sets
  • Terminal emulator with keyboard support for HP-71B and HP-75.
  • Virtual plotter emulating the HP-7470A HP-IL plotter
  • Virtual printer emulating the HP-82162A thermal printer
  • Virtual printer emulating the ThinkJet HP-2225B printer
  • HP-IL scope
  • The number of virtual devices is configurable,
  • The virtual devices can be either organized in a compact tabbed view or in independent floating windows
  • The output of the scope or the virtual printer(s) is logged to file(s)
  • Monitoring the status of the virtual HP-IL devices
  • Support for the PIL-Box via serial-over-USB interface
  • Support for virtual HP-IL over TCP/IP (dual TCP/IP V4/V6 stack)
  • Support to connect the emulators EMU41, EMU71 and EMU75 running on DOSBox to pyILPER.

See the pyILPER virtual devices gallery for details.

Compatibility

pyILPER has been successfully tested with LINUX, Windows 11 and macOS.

Installation

pyILPER requires the Python interpreter and the Qt framework installed.

See the Installation Instructions for details.

In order to use the file and disk management functions and the virtual HP7470A plotter, an up-to-date version of the LIFUTILS is required as well.

License

pyILPER is published under the GNU General Public License v2.0 License (see LICENSE file).

Acknowledgements

Much code was taken from ILPER for Windows (Copyright (c) 2008-2013 J-F Garnier, Visual C++ version by Christoph Gießelink 2016). The terminal emulator code was taken from the pyqterm console widget written by Henning Schroeder. The virtual TCP/IP support of pyILPER was significantly improved by Christoph Gießelink who also provided many other improvements. The virtual HP7470A plotter engine was derived from the HP2XX software (Heinz W. Werntges, Martin Kroeker). Parts of the HP82162A printer emulation were taken from Eric Smith's Nonpareil emulator.

Metadata

Release files for pyilper 1.9.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pyilper 1.9.1
File Interpreter ABI Platform
pyilper-1.9.1-py3-none-any.whl Python 3 none any Details

Release files / pyilper-1.9.1-py3-none-any.whl

Download URL pyilper-1.9.1-py3-none-any.whl
Size 266.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8f71a26f5d3d0a829615726da8503d95ef0bfaa5d4a572ad177dca109d11d706
BLAKE2b-256 checksum
How to use checksums
7fef3de21ed8783882a3a632250962b8c79d024d07ba97e9fda02d874ab4eed4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.15.0

Security for pyilper 1.9.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page