Group coded recording

(Redirected from Group-coded recording)

In computer science, group coded recording or group code recording (GCR) refers to several distinct but related encoding methods for representing data on magnetic media. The first, used in 6250 bpi magnetic tape since 1973, is an error-correcting code combined with a run-length limited (RLL) encoding scheme, belonging into the group of modulation codes.[1] The others are different mainframe hard disk as well as floppy disk encoding methods used in some microcomputers until the late 1980s. GCR is a modified form of a NRZI code, but necessarily with a higher transition density.[1]

Magnetic tape

Group coded recording was first used for magnetic-tape data storage on 9-track reel-to-reel tape.[1] The term was coined during the development of the IBM 3420 Model 4/6/8 Magnetic Tape Unit[2] and the corresponding 3803 Model 2 Tape Control Unit,[3][2] both introduced in 1973.[2][4] IBM referred to the error correcting code itself as "group coded recording". However, GCR has come to refer to the recording format of 6250 bpi (250 bits/mm[1]) tape as a whole, and later to formats which use similar RLL codes without the error correction code.

In order to reliably read and write to magnetic tape, several constraints on the signal to be written must be followed. The first is that two adjacent flux reversals must be separated by a certain distance on the media, defined by the magnetic properties of the media itself. The second is that there must be a reversal often enough to keep the reader's clock in phase with the written signal; that is, the signal must be self-clocking and most importantly to keep the playback output high enough as this is proportional to the density of flux transitions. Prior to 6250 bpi tapes, 1600 bpi tapes satisfied these constraints using a technique called phase encoding (PE), which was only 50% efficient. For 6250 bpi GCR tapes, a (0, 2) RLL code is used, or more specifically a 4/5 (0, 2) block code[1] sometimes also referred to as GCR (4B-5B) encoding.[5] This code requires five bits to be written for every four bits of data.[1] The code is structured so that no more than two zero bits (which are represented by lack of a flux reversal) can occur in a row,[1] either within a code or between codes, no matter what the data was. This RLL code is applied independently to the data going to each of the nine tracks.

Of the 32 five-bit patterns, eight begin with two consecutive zero bits, six others end with two consecutive zero bits, and one more (10001) contains three consecutive zero bits. Removing the all-ones pattern (11111) from the remainder leaves 16 suitable code words.

The 6250 bpi GCR RLL code:[6][7][8][5]

4-bit valueGCR code[6][7]
hexbinbinhex
0x000001.10010x19
0x100011.10110x1B
0x200101.00100x12
0x300111.00110x13
0x401001.11010x1D
0x501011.01010x15
0x601101.01100x16
0x701111.01110x17
4-bit valueGCR code[6][7]
hexbinbinhex
0x810001.10100x1A
0x910010.10010x09
0xA10100.10100x0A
0xB10110.10110x0B
0xC11001.11100x1E
0xD11010.11010x0D
0xE11100.11100x0E
0xF11110.11110x0F

11 of the nibbles (other than xx00 and 0001) have their code formed by prepending the complement of the most significant bit; i.e. abcd is encoded as aabcd. The other five values are assigned codes beginning with 11. Nibbles of the form ab00 have codes 11baa, i.e. the bit reverse of the code for ab11. The code 0001 is assigned the remaining value 11011.

Because of the back then extremely high density of 6250 bpi tape, the RLL code is not sufficient to ensure reliable data storage. On top of the RLL code, an error-correcting code called the Optimal Rectangular Code (ORC) is applied.[9] This code is a combination of a parity track and polynomial code similar to a CRC, but structured for error correction rather than error detection. For every seven bytes written to the tape (before RLL encoding), an eighth check byte is calculated and written to the tape. When reading, the parity is calculated on each byte and exclusive-ORed with the contents of the parity track, and the polynomial check code calculated and exclusive-ORed with the received check code, resulting in two 8-bit syndrome words. If these are both zero, the data is error free. Otherwise, error-correction logic in the tape controller corrects the data before it is forwarded to the host. The error correcting code is able to correct any number of errors in any single track, or in any two tracks if the erroneous tracks can be identified by other means.

In newer IBM half-inch 18-track tape drives recording at 24000 bpi, 4/5 (0, 2) GCR was replaced by a more efficient 8/9 (0, 3) modulation code, mapping eight bits to nine bits.[1]

Hard disks

In the mid-1970s, Sperry Univac, ISS Division was working on large hard drives for the mainframe business using group coding.[10]

Floppy disks

Like magnetic tape drives, floppy disk drives have physical limits on the spacing of flux reversals (also called transitions, represented by one-bits).

Micropolis

Offering GCR-compatible diskette drives and floppy disk controllers (like the 100163-51-8 and 100163-52-6[11]), Micropolis endorsed data encoding with group coded recording[12] on 5¼-inch 100 tpi 77-track diskette drives to store twelve 512-byte sectors per track since 1977 or 1978.[13][14][15][16]

Micro Peripherals

Micro Peripherals, Inc. (MPI) marketed double-density 5¼-inch disk drives (like the single-sided B51 and double-sided B52 drives) and a controller solution implementing GCR since early 1978.[17][18]

Durango

The Durango Systems F-85 (introduced in September 1978[19][20]) used single-sided 5¼-inch 100 tpi diskette drives providing 480 KB utilizing a proprietary high-density 4/5 group coded encoding. The machine was using a Western Digital FD1781 floppy disk controller, designed by a former Sperry ISS engineer,[16] with 77-track Micropolis drives.[21] In later models such as the Durango 800[22] series this was expanded to a double-sided option for 960 KB (946 KB formatted[22][nb 1]) per diskette.[20][23][21][13]

Apple

For the Apple II floppy drive, Steve Wozniak invented a floppy controller which (along with the Disk II drive itself) imposed two constraints:

  • Between any two one bits, there may be a maximum of one zero bit.
  • Each 8-bit byte must start with a one bit.

The simplest scheme to ensure compliance with these limits is to record an extra "clock" transition before each data bit according to differential Manchester encoding or (digital) FM (Frequency Modulation). Known as 4-and-4 encoding, the resulting Apple implementation allowed only ten 256-byte sectors per track to be recorded on a single-density 5¼-inch floppy. It uses two bytes for each byte.

ValueCode[24]
hexbinbinhex
0x400100.00001010.1010 1110.10100xAA 0xEA
0x410100.00011010.1010 1110.10110xAA 0xEB
0x420100.00101010.1011 1110.10100xAB 0xEA
0x430100.00111010.1011 1110.10110xAB 0xEB
0x440100.01001010.1010 1110.11100xAA 0xEE
0x450100.01011010.1010 1110.11110xAA 0xEF
0x460100.01101010.1011 1110.11100xAB 0xEE
0x470100.01111010.1011 1110.11110xAB 0xEF
0x480100.10001010.1110 1110.10100xAE 0xEA
0x490100.10011010.1110 1110.10110xAE 0xEB
0x4A0100.10101010.1111 1110.10100xAF 0xEA
0x4B0100.10111010.1111 1110.10110xAF 0xEB
0x4C0100.11001010.1110 1110.11100xAE 0xEE
0x4D0100.11011010.1110 1110.11110xAE 0xEF
0x4E0100.11101010.1111 1110.11100xAF 0xEE
0x4F0100.11111010.1111 1110.11110xAF 0xEF
0x500101.00001010.1010 1111.10100xAA 0xFA
0x510101.00011010.1010 1111.10110xAA 0xFB
0x520101.00101010.1011 1111.10100xAB 0xFA
0x530101.00111010.1011 1111.10110xAB 0xFB
0x540101.01001010.1010 1111.11100xAA 0xFE
0x550101.01011010.1010 1111.11110xAA 0xFF
0x560101.01101010.1011 1111.11100xAB 0xFE
0x570101.01111010.1011 1111.11110xAB 0xFF
0x580101.10001010.1110 1111.10100xAE 0xFA
0x590101.10011010.1110 1111.10110xAE 0xFB
0x5A0101.10101010.1111 1111.10100xAF 0xFA
0x5B0101.10111010.1111 1111.10110xAF 0xFB
0x5C0101.11001010.1110 1111.11100xAE 0xFE
0x5D0101.11011010.1110 1111.11110xAE 0xFF
0x5E0101.11101010.1111 1111.11100xAF 0xFE
0x5F0101.11111010.1111 1111.11110xAF 0xFF
0x600110.00001011.1010 1110.10100xBA 0xEA
0x610110.00011011.1010 1110.10110xBA 0xEB
0x620110.00101011.1011 1110.10100xBB 0xEA
0x630110.00111011.1011 1110.10110xBB 0xEB
0x640110.01001011.1010 1110.11100xBA 0xEE
0x650110.01011011.1010 1110.11110xBA 0xEF
0x660110.01101011.1011 1110.11100xBB 0xEE
0x670110.01111011.1011 1110.11110xBB 0xEF
0x680110.10001011.1110 1110.10100xBE 0xEA
0x690110.10011011.1110 1110.10110xBE 0xEB
0x6A0110.10101011.1111 1110.10100xBF 0xEA
0x6B0110.10111011.1111 1110.10110xBF 0xEB
0x6C0110.11001011.1110 1110.11100xBE 0xEE
0x6D0110.11011011.1110 1110.11110xBE 0xEF
0x6E0110.11101011.1111 1110.11100xBF 0xEE
0x6F0110.11111011.1111 1110.11110xBF 0xEF
0x700111.00001011.1010 1111.10100xBA 0xFA
0x710111.00011011.1010 1111.10110xBA 0xFB
0x720111.00101011.1011 1111.10100xBB 0xFA
0x730111.00111011.1011 1111.10110xBB 0xFB
0x740111.01001011.1010 1111.11100xBA 0xFE
0x750111.01011011.1010 1111.11110xBA 0xFF
0x760111.01101011.1011 1111.11100xBB 0xFE
0x770111.01111011.1011 1111.11110xBB 0xFF
0x780111.10001011.1110 1111.10100xBE 0xFA
0x790111.10011011.1110 1111.10110xBE 0xFB
0x7A0111.10101011.1111 1111.10100xBF 0xFA
0x7B0111.10111011.1111 1111.10110xBF 0xFB
0x7C0111.11001011.1110 1111.11100xBE 0xFE
0x7D0111.11011011.1110 1111.11110xBE 0xFF
0x7E0111.11101011.1111 1111.11100xBF 0xFE
0x7F0111.11111011.1111 1111.11110xBF 0xFF
ValueCode[24]
hexbinbinhex
0x801000.00001110.1010 1010.10100xEA 0xAA
0x811000.00011110.1010 1010.10110xEA 0xAB
0x821000.00101110.1011 1010.10100xEB 0xAA
0x831000.00111110.1011 1010.10110xEB 0xAB
0x841000.01001110.1010 1010.11100xEA 0xAE
0x851000.01011110.1010 1010.11110xEA 0xAF
0x861000.01101110.1011 1010.11100xEB 0xAE
0x871000.01111110.1011 1010.11110xEB 0xAF
0x881000.10001110.1110 1010.10100xEE 0xAA
0x891000.10011110.1110 1010.10110xEE 0xAB
0x8A1000.10101110.1111 1010.10100xEF 0xAA
0x8B1000.10111110.1111 1010.10110xEF 0xAB
0x8C1000.11001110.1110 1010.11100xEE 0xAE
0x8D1000.11011110.1110 1010.11110xEE 0xAF
0x8E1000.11101110.1111 1010.11100xEF 0xAE
0x8F1000.11111110.1111 1010.11110xEF 0xAF
0x901001.00001110.1010 1011.10100xEA 0xBA
0x911001.00011110.1010 1011.10110xEA 0xBB
0x921001.00101110.1011 1011.10100xEB 0xBA
0x931001.00111110.1011 1011.10110xEB 0xBB
0x941001.01001110.1010 1011.11100xEA 0xBE
0x951001.01011110.1010 1011.11110xEA 0xBF
0x961001.01101110.1011 1011.11100xEB 0xBE
0x971001.01111110.1011 1011.11110xEB 0xBF
0x981001.10001110.1110 1011.10100xEE 0xBA
0x991001.10011110.1110 1011.10110xEE 0xBB
0x9A1001.10101110.1111 1011.10100xEF 0xBA
0x9B1001.10111110.1111 1011.10110xEF 0xBB
0x9C1001.11001110.1110 1011.11100xEE 0xBE
0x9D1001.11011110.1110 1011.11110xEE 0xBF
0x9E1001.11101110.1111 1011.11100xEF 0xBE
0x9F1001.11111110.1111 1011.11110xEF 0xBF
0xA01010.00001111.1010 1010.10100xFA 0xAA
0xA11010.00011111.1010 1010.10110xFA 0xAB
0xA21010.00101111.1011 1010.10100xFB 0xAA
0xA31010.00111111.1011 1010.10110xFB 0xAB
0xA41010.01001111.1010 1010.11100xFA 0xAE
0xA51010.01011111.1010 1010.11110xFA 0xAF
0xA61010.01101111.1011 1010.11100xFB 0xAE
0xA71010.01111111.1011 1010.11110xFB 0xAF
0xA81010.10001111.1110 1010.10100xFE 0xAA
0xA91010.10011111.1110 1010.10110xFE 0xAB
0xAA1010.10101111.1111 1010.10100xFF 0xAA
0xAB1010.10111111.1111 1010.10110xFF 0xAB
0xAC1010.11001111.1110 1010.11100xFE 0xAE
0xAD1010.11011111.1110 1010.11110xFE 0xAF
0xAE1010.11101111.1111 1010.11100xFF 0xAE
0xAF1010.11111111.1111 1010.11110xFF 0xAF
0xB01011.00001111.1010 1011.10100xFA 0xBA
0xB11011.00011111.1010 1011.10110xFA 0xBB
0xB21011.00101111.1011 1011.10100xFB 0xBA
0xB31011.00111111.1011 1011.10110xFB 0xBB
0xB41011.01001111.1010 1011.11100xFA 0xBE
0xB51011.01011111.1010 1011.11110xFA 0xBF
0xB61011.01101111.1011 1011.11100xFB 0xBE
0xB71011.01111111.1011 1011.11110xFB 0xBF
0xB81011.10001111.1110 1011.10100xFE 0xBA
0xB91011.10011111.1110 1011.10110xFE 0xBB
0xBA1011.10101111.1111 1011.10100xFF 0xBA
0xBB1011.10111111.1111 1011.10110xFF 0xBB
0xBC1011.11001111.1110 1011.11100xFE 0xBE
0xBD1011.11011111.1110 1011.11110xFE 0xBF
0xBE1011.11101111.1111 1011.11100xFF 0xBE
0xBF1011.11111111.1111 1011.11110xFF 0xBF
ValueCode[24]
hexbinbinhex
0xC01100.00001110.1010 1110.10100xEA 0xEA
0xC11100.00011110.1010 1110.10110xEA 0xEB
0xC21100.00101110.1011 1110.10100xEB 0xEA
0xC31100.00111110.1011 1110.10110xEB 0xEB
0xC41100.01001110.1010 1110.11100xEA 0xEE
0xC51100.01011110.1010 1110.11110xEA 0xEF
0xC61100.01101110.1011 1110.11100xEB 0xEE
0xC71100.01111110.1011 1110.11110xEB 0xEF
0xC81100.10001110.1110 1110.10100xEE 0xEA
0xC91100.10011110.1110 1110.10110xEE 0xEB
0xCA1100.10101110.1111 1110.10100xEF 0xEA
0xCB1100.10111110.1111 1110.10110xEF 0xEB
0xCC1100.11001110.1110 1110.11100xEE 0xEE
0xCD1100.11011110.1110 1110.11110xEE 0xEF
0xCE1100.11101110.1111 1110.11100xEF 0xEE
0xCF1100.11111110.1111 1110.11110xEF 0xEF
0xD01101.00001110.1010 1111.10100xEA 0xFA
0xD11101.00011110.1010 1111.10110xEA 0xFB
0xD21101.00101110.1011 1111.10100xEB 0xFA
0xD31101.00111110.1011 1111.10110xEB 0xFB
0xD41101.01001110.1010 1111.11100xEA 0xFE
0xD51101.01011110.1010 1111.11110xEA 0xFF
0xD61101.01101110.1011 1111.11100xEB 0xFE
0xD71101.01111110.1011 1111.11110xEB 0xFF
0xD81101.10001110.1110 1111.10100xEE 0xFA
0xD91101.10011110.1110 1111.10110xEE 0xFB
0xDA1101.10101110.1111 1111.10100xEF 0xFA
0xDB1101.10111110.1111 1111.10110xEF 0xFB
0xDC1101.11001110.1110 1111.11100xEE 0xFE
0xDD1101.11011110.1110 1111.11110xEE 0xFF
0xDE1101.11101110.1111 1111.11100xEF 0xFE
0xDF1101.11111110.1111 1111.11110xEF 0xFF
0xE01110.00001111.1010 1110.10100xFA 0xEA
0xE11110.00011111.1010 1110.10110xFA 0xEB
0xE21110.00101111.1011 1110.10100xFB 0xEA
0xE31110.00111111.1011 1110.10110xFB 0xEB
0xE41110.01001111.1010 1110.11100xFA 0xEE
0xE51110.01011111.1010 1110.11110xFA 0xEF
0xE61110.01101111.1011 1110.11100xFB 0xEE
0xE71110.01111111.1011 1110.11110xFB 0xEF
0xE81110.10001111.1110 1110.10100xFE 0xEA
0xE91110.10011111.1110 1110.10110xFE 0xEB
0xEA1110.10101111.1111 1110.10100xFF 0xEA
0xEB1110.10111111.1111 1110.10110xFF 0xEB
0xEC1110.11001111.1110 1110.11100xFE 0xEE
0xED1110.11011111.1110 1110.11110xFE 0xEF
0xEE1110.11101111.1111 1110.11100xFF 0xEE
0xEF1110.11111111.1111 1110.11110xFF 0xEF
0xF01111.00001111.1010 1111.10100xFA 0xFA
0xF11111.00011111.1010 1111.10110xFA 0xFB
0xF21111.00101111.1011 1111.10100xFB 0xFA
0xF31111.00111111.1011 1111.10110xFB 0xFB
0xF41111.01001111.1010 1111.11100xFA 0xFE
0xF51111.01011111.1010 1111.11110xFA 0xFF
0xF61111.01101111.1011 1111.11100xFB 0xFE
0xF71111.01111111.1011 1111.11110xFB 0xFF
0xF81111.10001111.1110 1111.10100xFE 0xFA
0xF91111.10011111.1110 1111.10110xFE 0xFB
0xFA1111.10101111.1111 1111.10100xFF 0xFA
0xFB1111.10111111.1111 1111.10110xFF 0xFB
0xFC1111.11001111.1110 1111.11100xFE 0xFE
0xFD1111.11011111.1110 1111.11110xFE 0xFF
0xFE1111.11101111.1111 1111.11100xFF 0xFE
0xFF1111.11111111.1111 1111.11110xFF 0xFF

Close to a month prior to the shipment of the disk drive in spring 1978,[25] Wozniak realized that a more complex encoding scheme would allow each eight-bit byte on disk to hold five bits of useful data rather than four bits. This is because there are 34 bytes which have the top bit set and no two zero bits in a row. This encoding scheme became known as 5-and-3 encoding, and allowed 13 sectors per track; it was used for Apple DOS 3.1, 3.2, and 3.2.1, as well as for the earliest version of Apple CP/M [de]:[26]

5-bit valueGCR code[26][27]
hexbinbinhex
0x101.00001101.11010xDD
0x111.00011101.11100xDE
0x121.00101101.11110xDF
0x131.00111110.10100xEA
0x141.01001110.10110xEB
0x151.01011110.11010xED
0x161.01101110.11100xEE
0x171.01111110.11110xEF
0x181.10001111.01010xF5
0x191.10011111.01100xF6
0x1A1.10101111.01110xF7
0x1B1.10111111.10100xFA
0x1C1.11001111.10110xFB
0x1D1.11011111.11010xFD
0x1E1.11101111.11100xFE
0x1F1.11111111.11110xFF

Reserved GCR-codes: 0xAA and 0xD5.[26]

Wozniak called the system "my most incredible experience at Apple and the finest job I did".[25]

Later, the design of the floppy drive controller was modified to allow a byte on disk to contain up to one pair of zero bits in a row. This allowed each eight-bit byte to hold six bits of useful data, and allowed 16 sectors per track. This scheme is known as 6-and-2 encoding,[26] and was used on Apple Pascal, Apple DOS 3.3[26] and ProDOS,[28] and later with Apple FileWare drives in the Apple Lisa and the 400K and 800K 3½-inch disks on the Macintosh and Apple II.[29][30] Apple did not originally call this scheme "GCR", but the term was later applied to it[30] to distinguish it from IBM PC floppies which used the MFM encoding scheme.

6-bit valueGCR code[29][26][28][27][24]
hexbinbinhex
0x1001.00001011.01000xB4
0x1101.00011011.01010xB5
0x1201.00101011.01100xB6
0x1301.00111011.01110xB7
0x1401.01001011.10010xB9
0x1501.01011011.10100xBA
0x1601.01101011.10110xBB
0x1701.01111011.11000xBC
0x1801.10001011.11010xBD
0x1901.10011011.11100xBE
0x1A01.10101011.11110xBF
0x1B01.10111100.10110xCB
0x1C01.11001100.11010xCD
0x1D01.11011100.11100xCE
0x1E01.11101100.11110xCF
0x1F01.11111101.00110xD3
6-bit valueGCR code[29][26][28][27][24]
hexbinbinhex
0x2010.00001101.01100xD6
0x2110.00011101.01110xD7
0x2210.00101101.10010xD9
0x2310.00111101.10100xDA
0x2410.01001101.10110xDB
0x2510.01011101.11000xDC
0x2610.01101101.11010xDD
0x2710.01111101.11100xDE
0x2810.10001101.11110xDF
0x2910.10011110.01010xE5
0x2A10.10101110.01100xE6
0x2B10.10111110.01110xE7
0x2C10.11001110.10010xE9
0x2D10.11011110.10100xEA
0x2E10.11101110.10110xEB
0x2F10.11111110.11000xEC
6-bit valueGCR code[29][26][28][27][24]
hexbinbinhex
0x3011.00001110.11010xED
0x3111.00011110.11100xEE
0x3211.00101110.11110xEF
0x3311.00111111.00100xF2
0x3411.01001111.00110xF3
0x3511.01011111.01000xF4
0x3611.01101111.01010xF5
0x3711.01111111.01100xF6
0x3811.10001111.01110xF7
0x3911.10011111.10010xF9
0x3A11.10101111.10100xFA
0x3B11.10111111.10110xFB
0x3C11.11001111.11000xFC
0x3D11.11011111.11010xFD
0x3E11.11101111.11100xFE
0x3F11.11111111.11110xFF

Reserved GCR-codes: 0xAA and 0xD5.[26][28]

Commodore

Independently, Commodore Business Machines (CBM) created a group coded recording scheme for their Commodore 2040 floppy disk drive (launched in the spring of 1979). The relevant constraints on the 2040 drive were that no more than two zero bits could occur in a row; the drive imposed no special constraint on the first bit in a byte. This allowed the use of a scheme similar to that used in 6250 bpi tape drives. Every four bits of data are translated into five bits on disk, according to the following table:

4-bit valueGCR code[31]
hexbinbinhex
0x000000.10100x0A
0x100010.10110x0B
0x200101.00100x12
0x300111.00110x13
0x401000.11100x0E
0x501010.11110x0F
0x601101.01100x16
0x701111.01110x17
4-bit valueGCR code[31]
hexbinbinhex
0x810000.10010x09
0x910011.10010x19
0xA10101.10100x1A
0xB10111.10110x1B
0xC11000.11010x0D
0xD11011.11010x1D
0xE11101.11100x1E
0xF11111.01010x15

Each code starts and ends with at most one zero bit, ensuring that even when the codes are concatenated, the encoded data will never contain more than two zero bits in a row. With this encoding at most eight one bits in a row are possible. Therefore, Commodore used sequences of ten or more one bits in a row as synchronization mark.

This more efficient GCR scheme, combined with an approach at constant bit-density recording by gradually increasing the clock rate (zone constant angular velocity, ZCAV) and storing more physical sectors on the outer tracks than on the inner ones (zone bit recording, ZBR), enabled Commodore to fit 170 kB on a standard single-sided single-density 5.25-inch floppy, where Apple fit 140 kB (with 6-and-2 encoding) or 114 kB (with 5-and-3 encoding) and an FM-encoded floppy held only 88 kB.

Sirius/Victor

Similar, the 5.25-inch floppy drives of the Victor 9000 aka Sirius 1, designed by Chuck Peddle in 1981/1982, used a combination of ten-bit GCR and constant bit-density recording by gradually decreasing a drive's rotational speed for the outer tracks in nine zones (a form of zoned constant linear velocity (ZCLV)) while increasing the number of sectors per track (a variant of zone bit recording (ZBR)) to achieve formatted capacities of 606 kB (single sided) / 1188 kB (double-sided) on 96 tpi media.[32][33][34][35]

Brother

Starting around 1985, Brother introduced a family of dedicated word processor typewriters with integrated 3.5-inch 38-track[nb 2] diskette drive. Early models of the WP and LW series [de] used a Brother-specific group-coded recording scheme with twelve 256-byte sectors to store up to 120 KB[nb 3] on single-sided and up to 240 KB[nb 3] on double-sided double-density (DD) diskettes.[16][36][37][38] Reportedly, prototypes were already shown at the Internationale Funkausstellung 1979 (IFA) in Berlin.

Sharp

In 1986, Sharp introduced a turnable 2.5-inch pocket disk drive solution (drives: CE-1600F, CE-140F; internally based on the FDU-250 chassis; media: CE-1650F) for their series of pocket computers with a formatted capacity of 62464 bytes per side (2× 64 kB nominal, 16 tracks, 8 sectors/track, 512 bytes per sector, 48 tpi, 250 kbit/s, 270 rpm) with GCR (4/5) recording.[39][40]

Other uses

GCR was also evaluated for a possible use in bar code encoding schemes (packing efficiency, timing tolerances, amount of storage bytes for timing information, and DC output level).[41]

See also

Notes

References

Further reading

External links