Bar code for printed software distribution

barcode format
Figure 1: Bar code format
In the late 70's, long before the internet became commonplace, barcode was introduced by the Byte journal for cheap and reliable distribution of software amongst personal computer users. For various reasons this hasn't been a lasting success. Barcode printing had to be done on an offset press and hence was not accessible for individuals. For reading barcode a hand-held pen was used.

As used in Paperbytes® products, data is coded using a bar width modulation technique where width is measured in terms of a single unit. In current practice the unit of width is 1/72 inch (0.353 mm). Each bit is represented as a bar followed by a space one unit in width. The 0 bar is one unit in width; the 1 bar is two units in width. Thus the complete pattern of a single bit cell is either two units or three units in width.

frame format
Figure 2: Frame format
The frame is divided into 3 major sections. The header section contains 4 bytes of overhead information. It begins with a sync character (96H). This is followed by a checksum of the remaining bytes in the frame. The frame ID byte is a sequential 8-bit integer used to keep track of the order of the frames. The length byte specifies the number n of data bytes contained in the balance of the frame. The data section contains the n data bytes. The trailer consists of a single zero bit used to define the space following the last bit cell in the frame.

data field formats
Figure 3: Data field formats
In Paperbytes® software products (anno 1977) two data field formats have been used. The most common practice was to use a text format data field (a) used to transfer an address-independent block of text. Alternative (b) is the absolute loader format.

Today (2001) the art of stowing digital information on paper has made considerable progress ¹). This is partly due to the availability of laser and inkjet printers, and flatbed scanners. Probably the main use now is archiving information on acid-free paper, still one of the most reliable and durable storage media.
The picture gives an enlarged view of 1 square centimeter of information encoded using the PaperDisk® program ²). Printed at 300 pixels per inch, the information content of this area is about 140 bytes. This is roughly 70 times the information density possible with the barcode scheme described above.
As a testfile we used the MS-DOS file which after being compressed is about 42 kB in size. This takes 60% of the surface of an A4 sheet. Notice that the (compressed) TIFF file representing the image is 725 kB!

Figures 1,2 and 3 and their captions are adapted from: Ken Budnick, Bar Code Loader. BYTE Publications Inc. 1977.
¹) Th.Pavlidis, J.Swartz, Y.P.Wang: Information encoding with two-dimensional bar codes.
IEEE Computer Mag. June 1992 p 18ff.
²) Technology described in this white paper.
rev April, 2017