111 lines
2.1 KiB
INI
111 lines
2.1 KiB
INI
Macintosh 7 & 8 bit File Transfer Format - Protocol Independent
|
|
|
|
|
|
|
|
Here is a description of the Hqx7 (7 bit format as implemented in BinHex
|
|
|
|
4.0) and Hqx8 (8 bit format) formats for Macintosh Application and File
|
|
|
|
transfers. The main features of the formats are:
|
|
|
|
1) Error checking even using ASCII download (Hqx7 & Hqx8)
|
|
|
|
2) Compression of repetitive characters (Hqx7 & Hqx8)
|
|
|
|
3) 7 bit encoding for ASCII download (Hqx7)
|
|
|
|
|
|
|
|
HQX Format Description (This is not intended to be a programmer's reference).
|
|
|
|
|
|
|
|
The format is processed at three different levels:
|
|
|
|
|
|
|
|
1) 8 bit encoding of the file:
|
|
|
|
|
|
|
|
Byte: Length of FileName (1->63)
|
|
|
|
Bytes: FileName ("Length" bytes)
|
|
|
|
Byte: Version
|
|
|
|
Long: Type
|
|
|
|
Long: Creator
|
|
|
|
Word: Flags (And $F800)
|
|
|
|
Long: Length of Data Fork
|
|
|
|
Long: Length of Resource Fork
|
|
|
|
Word: CRC
|
|
|
|
Bytes: Data Fork ("Data Length" bytes)
|
|
|
|
Word: CRC
|
|
|
|
Bytes: Resource Fork ("Rsrc Length" bytes)
|
|
|
|
Word: CRC
|
|
|
|
|
|
|
|
2) Compression of repetitive characters.
|
|
|
|
|
|
|
|
($90 is the marker, encoding is made for 3->255 characters)
|
|
|
|
|
|
|
|
00 11 22 33 44 55 66 77 -> 00 11 22 33 44 55 66 77
|
|
|
|
11 22 22 22 22 22 22 33 -> 11 22 90 06 33
|
|
|
|
11 22 90 33 44 -> 11 22 90 00 33 44
|
|
|
|
|
|
|
|
3) 7 bit encoding (Hqx7 only).
|
|
|
|
|
|
|
|
The whole file is considered as a stream of bits. This stream will
|
|
|
|
be divided in blocks of 6 bits and then converted to one of 64
|
|
|
|
characters contained in a table. The characters in this table have
|
|
|
|
been chosen for maximum noise protection.
|
|
|
|
The format will start with a ":" (first character on a line) and
|
|
|
|
end with a ":". There will be a maximum of 64 characters on a line.
|
|
|
|
It can be preceeded by comments for novice users.
|
|
|
|
|
|
|
|
Table:
|
|
|
|
!"#$%&'()*+,-012345689@ABCDEFGHIJKLMNPQRSTUVXYZ[`abcdefhijklmpqr
|
|
|
|
|
|
|
|
Comment:
|
|
|
|
(This file must be converted with BinHex 4.0)
|
|
|
|
|
|
|
|
Yves Lempereur [YVES]
|
|
|
|
|
|
|
|
|