RFC 769 UNKNOWN DATA FORMAT · FACSIMILE

Rapicom 450 facsimile file format

How a specific fax machine encoded image data into computer files.

On rfc-editor.org ↗
PUBLISHED
September 1980
AUTHORS
J. Postel
STREAM
Legacy
DATA BLOCK SIZE
585 bits per block
RECORD STRUCTURE
length byte + command byte + data bytes
FULL RECORD LENGTH
76 bytes (for standard data blocks)
SYNC MARK VALUE
271141344 (octal)
DOI
10.17487/RFC0769

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                          J. Postel
Request for Comments: 769                                            ISI
                                                       26 September 1980



                   Rapicom 450 Facsimile File Format
                   ---------------------------------

Introduction:

Several  organizations  in the ARPA Internet  community have RAPICOM 450
facsimile   machines   interfaced   to  computers.   This  allows  these
organizations  to enter a facsimile  representation  of a  page  into  a
computer  file, and to produce a page from stored facsimile data.  These
organizations  can exchange  stored facsimile data via file transfer and
other protocols.   The purpose  of this note is to document  the  format
used for  these  files  so  that  other  organizations  with  compatible
facsimile devices can join in this information exchange procedure.

The Rapicom 450:

The Rapicom  450 has a built in encoding/decoding  scheme.   It produces
data blocks  of 585 bits.   There are "set up" blocks and "data" blocks.
The machine sends/receives several copies of the set up block, but since
they are identical only one set up block is stored in the file.

Records:

Each 585 bit block  is placed  in a record  of 8-bit  bytes.  The record
format is a length byte, a command byte and the data bytes.  Each record
is an integral  number  of bytes.   The length value includes the length
byte and the command  byte.   The command describes the data in the data
field.


   0        1        2        3                              length
   +--------+--------+--------+--------+---//---+--------+--------+
   | length | command|   data                                     |
   +--------+--------+--------+--------+---//---+--------+--------+

                      Rapicom 450 Facsimile Record

Commands:

56 - SET-UP

  The command code 56 (70 octal) indicates the following data field is a
  set up block.

                                                       26 September 1980
Rapicom 450 Facsimile File Format                                RFC 769



57 - DATA

  The command code 57 (71 octal) indicates the following data field is a
  data block.

58 - END

  The command  code 58 (72 octal) indicates that this is the last record
  in the file.   In this case the length may be 2, indicating that there
  is no data in this record.

Conventions:

In the files exchanged  to date,  each record  contains one block.  This
means the data field is 74 bytes long  (585/8=73.125),  and  the  length
field  has the value  76 (114 octal),  except  the last record which may
carry no data and have a length of 2.

The first  record  of a file is always  a SET UP record,  the  following
records are DATA records, until the last record which is an END record.

Details:

The 585 bit data  block  is encoded by the Rapicom 450 and so can not be
used a bit map unless the encoding/decoding procedure is known and used.

The first 24 bits of the block is always a synchronization mark with the
value 271 141 344 in octal or 101110010110000111100100 in binary.

The low order  two bits of the  next  byte  contain  a  sequence  number
(modulo 4).  The sequence number bits cycle in the order 11, 01, 10, 00,
starting with the first DATA record (not the SET UP record).

The line below represents  a DATA record,  where L represents  a  length
bit,  C represents a command bit, M represents the synchronization mark,
S represents  a  sequence  bit,  F  represents  a  fill  bit,  the  dash
represents 68 other data octets, and an D represents a data bit.

LLLLLLLLCCCCCCCCMMMMMMMMMMMMMMMMMMMMMMMMDDDDDDSSDDDDDDDD-DFFFFFFF

In the line below  the normal values have been filled in for the length,
the command, the synchronization mark and fill bits.

0100110000111001101110010110000111100100DDDDDDSSDDDDDDDD-D0000000

AI ELI5

On this page
PROBLEMOrganizations with Rapicom 450 fax machines needed a way to store and exchange fax images in a standard computer file format.
MECHANISMThe RFC documents the record structure that wraps the fax machine's 585-bit encoded blocks into bytes: a length byte, a command byte, and the data, with specific commands for setup blocks, data blocks, and end-of-file markers.
HARDWARE-DEPENDENT FORMATOrganizations with compatible fax equipment could exchange fax files reliably. The format is specific to this hardware and depends on understanding the machine's proprietary encoding.

§1Fax File Storage

Several organizations connected Rapicom 450 facsimile machines to computers so they could store fax images in files and retrieve them later. This memo documents the file format they adopted, so that other organizations with the same fax equipment could exchange these files reliably.

A fax machine turns a picture into numbers. This memo says how to write those numbers into a file.

§2The Record Format

The Rapicom 450 produces 585-bit data blocks. Each block is stored in a record of 8-bit bytes: a length byte (including itself and the command byte), a command byte, and the data bytes. The length value includes both the length and command bytes, so a record with a 585-bit data block is 76 bytes long (one length, one command, 73.125 rounded to 74 data bytes).

Three command codes are defined: 56 (octal 70) for a setup block, 57 (octal 71) for a data block, and 58 (octal 72) for an end-of-file marker.

Each piece of the picture gets wrapped in a labeled package: a number saying how big it is, a code saying what kind of data it is, and the picture data itself.

§3File Organization

A complete fax image file always starts with a setup block (the fax machine's configuration), followed by one or more data blocks (the actual scanned image), and ends with an end-of-file record. The first 24 bits of each data block are always a synchronization mark with the value 271141344 in octal. The next two bits of the byte after the sync mark contain a sequence number that cycles 11, 01, 10, 00 across the data records.

The 585-bit data is encoded by the Rapicom 450 hardware, so it cannot be used as a simple bitmap without understanding the machine's proprietary encoding and decoding procedure.

A fax file is like a deck of labeled cards: first comes the setup card, then picture cards in order, then a done card at the end.