HP 21xx
Software for HP21xx Series  

Contents (this page): External:

Basic Binary Loaders

In HP parlance, a Basic Binary Loader, also referred to as an Absolute loader, is a small program for loading Absolute Load Format (ABS) files. BBLs are intended for bootstrapping a processor, there will normally be a BBL residing in the top 64 words of memory.

Several disassembled and newly-commented versions of the old BBLs are included here. The machine code used for the disassembly was obtained from the "STANDARD SOFTWARE SYSTEMS Operating Manual" for the 2116A/2115A models (1967). These period BBLs are:

The following is 'new', but is just a slightly modified version of one of the originals:

ABS Format:

Absolute Load Format is an encoding format used with the HP2100 series for loading binary images into a machine. 'Absolute' refers to the encoding containing absolute addresses at which to load data, in contrast to the data being relocatable.

An Absolute Load file is a sequence of 0 or more blocks, followed by a trailer of 10 or more null bytes:

        AbsFile = Block ... Block 0 0 0 0 0 0 0 0 0 0
where each block is a sequence of bytes:
        Block = lenByt ignoreByt addrHiByt addrLoByt data1HiByt data1LoByt
                  ... data{Len}HiByt data{LEN}LoByt checksumHiByt checksumLoByt

len = the number of data words in the block. The checksum is the sum of the address word and the data words.

The trailer is necessary as an EOF indication for the BBLs. The null bytes of the trailer correspond to unpunched paper tape.

Shift/Rotate Demonstration

A simple program to demonstrate the various shift and rotate instructions. The front panel is used for the display. This program was obtained from the back of the 2116A Vol. 1 manual.

Single-User BASIC

The period single-user BASIC interpreter HP produced for the 21xx series.

Blinkenlight Programs

Some simple routines to display a variety of active bit patterns on the front panel of a 2116 CPU. These routines will run on a bare CPU with no I/O interfaces.


A monitor for the HP21xx machines. Provides for exercising of memory and I/O devices.

An HP21xx Cross-Assembler

This is a cross-assembler for the HP21xx machines. It accepts source in the original HP syntax.

  CTµL | 2116 | I/O Interfaces | Programming Ref | Software | 2116C Refurb
HP 21xx Series
Jun 2004