S.U.P.E.R. HP 200LX Archive
← Back to the catalogue

Work in progress. This program is still being tested against real hardware and is not ready yet — it is deliberately kept out of the catalogue, the search and the sitemap. You are welcome to look, but do not expect it to work.

ibComm

Version 1.0 · Joseba Ibarra

Download 12.0 KB
Screenshot of ibComm
Original screenshot from the S.U.P.E.R. archive.

Description

ZMODEM file transfer written specifically for the HP 100LX/200LX, to replace Data Comm at the one job most people use it for: moving files to and from a PC. It sends and receives, weighs 16 KB and stays out of memory. Unlike Data Comm it does not stop after each batch —it announces itself again and keeps listening— it remembers where received files go, and it shows the file name, a progress bar, the byte count, the average speed and "file 3 of 7". The connection settings are fixed at COM1, 9600 baud, 8N1: the values that actually work with the cable, so there is nothing to set up. Written in C for bcc, with the interrupt handler in assembler; the ZMODEM implementation is tested against lrzsz in both directions. Full source included.

This program was not rescued from the archive: it was written for this site. Full source is included in the package and on GitHub.

Technical details

File
ibcomm10.zip
Size
12.0 KB
Format
.zip
Year
2026
Added to S.U.P.E.R.
2026-08-16
Files inside
4
Author
Joseba Ibarra
Path
propio/ibcomm10.zip

How to install it

What to send to the palmtop saves 6.6 KB

These are the files you need. You can send them from the package contents below.

  • IBCOMM.COM → A:\SOFT programa de DOS 17.0 KB

No need to put README.TXT, LEEME.TXT, FILE_ID.DIZ: they are manuals, source code or supporting material. Read them here and save 6.6 KB on a 1 MB disk.

Steps
  1. Copy IBCOMM.COM to A:\SOFT. They are DOS programs: run them from the DOS icon, or add A:\SOFT to the PATH in C:\AUTOEXEC.BAT to call them by name.

Derived from the package contents and the 200LX conventions. It installs to A: on purpose: C: is a RAM disk and every byte there is memory taken from the system.

The author's instructions
INSTALLING

Copy IBCOMM.COM anywhere: the RAM disk (C:) or, better, the memory card
(A:), which costs no system memory. It is a plain DOS program, so run it
from the DOS prompt or add it to the Application Manager as a DOS
application.

IBCOMM.CFG is written next to wherever you run it from.

Nothing else is needed. It does not stay in memory, it does not patch the
system, and it restores the interrupt vector and the serial port power
state when it exits.


A NOTE ON BATTERY

The serial port on the 200LX is powered down to save battery. ibComm only
powers it up while a transfer is actually running, and turns it back off the
moment you return to the menu. It says so on screen both times.


LICENCE AND SOURCE

Free to use, copy and modify. The full source is at:

  https://github.com/Wajalot/hp200lx     (branch: own-apps)

Written in C for bcc (dev86) with the interrupt handler in as86. The ZMODEM
implementation is tested against lrzsz in both directions.

Literal excerpt from README.TXT, exactly as it came in the package.

Send to my palmtop

The palmtop must be waiting before you press the button, or the transfer will fail. It is the palmtop that announces it is ready, not the other way round.

On the palmtop

  1. Connect the serial cable between the palmtop and the computer.
  2. Open Data Comm and go to Menu → Connect → Settings. Set: 9600 baud, 8 data bits, parity None, 1 stop bit.
  3. Go back to the menu and enter Menu → File → Receive, with the Zmodem protocol. The palmtop now waits: leave it like that.

On the computer

  1. Use Chrome (or Edge / Opera). Firefox and Safari cannot open the serial port, and no mobile browser can either.
  2. Find out which port is yours — if you are not sure, open the help below.
  3. Press the button and pick it in the window Chrome opens.
How do I know which port is mine?

Linux — your USB-serial adapter will be /dev/ttyUSB0 or /dev/ttyACM0. The /dev/ttyS0ttyS31 are legacy motherboard ports: the kernel lists them even when none exist, so they are almost never yours. To be sure:

ls -l /dev/serial/by-id/

It shows the manufacturer and model, and which ttyUSB* it points to. If nothing appears, unplug and replug the cable and check dmesg | tail: you will see a line like «ch341-uart converter now attached to ttyUSB0».

Permissions: on Debian and derivatives your user must be in the dialout group or the port will not open. Check with groups, and if it is missing:

sudo usermod -aG dialout $USER

You must log out and back in for it to take effect.

Windows — Device Manager → Ports (COM & LPT). Your adapter shows up as COM3, COM4… If it has a yellow triangle, you are missing the chip driver (FTDI, Prolific or CH340 depending on the cable).

macOSls /dev/cu.*; your adapter will be something like /dev/cu.usbserial-A50285BI. Always use the cu. one, not tty..

The 200LX has no standard serial connector: you need HP's connectivity cable (the F1015A or an equivalent) and, unless your computer has a real serial port, a USB-serial adapter behind it.