The entire article is not adequately provided with evidence ( e.g. individual evidence ). Information without sufficient evidence could be removed soon. Please help Wikipedia by researching the information and including good evidence.
(May 2016)
Group Coded Recording (group coded recording or group swap, abbreviated: GCR ) describes a recording process for magnetic data carriers such as magnetic tapes or floppy disks . With this method, a data byte with ten or more bits is encoded in such a way that never more than two zero bits follow one another. One bits are represented by a polarity change on the magnetic data carrier surface, zero bits by no polarity change within a certain period of time. The occurrence of one-bits after two zero-bits at the latest results in constant synchronization of the reading electronics. This is necessary because with longer sequences of zero bits (i.e., with more than two consecutive zeros), the exact number of zero bits present could no longer be reliably determined because of the slight fluctuations in the rotational speed that are always present.
The GCR process was used for B. in 5¼ "floppy disk drives from Commodore (see also CBM floppy disk drives ) and Apple , whereby there are various slightly different variants of the GCR process. Therefore, Commodore and Apple floppy disks are not interchangeable.
With Commodore there was the additional condition that no more than nine one-bits may follow one another, since such a sequence would be misinterpreted as a sector start mark (sync). One nibble (four bits) was encoded in five bits. This means that four bytes must be encoded in five bytes. The table for Commodore's GCR coding looks like this (on the left the user data, on the right the code written for it on the diskette):
Data
code
0000
01010
0001
01011
0010
10010
0011
10011
0100
01110
0101
01111
0110
10110
0111
10111
Data
code
1000
01001
1001
11001
1010
11010
1011
11011
1100
01101
1101
11101
1110
11110
1111
10101
This coding ensures that never more than two zero bits or more than nine one bits occur in succession.
Apple GCR
At Apple there was no restriction on the number of one-bits that can follow one another, since different sector start marks were used there. There were other additional conditions for this: Each byte must begin with a one bit, and the remaining seven bits must contain at least one pair of consecutive one bits and no more than one pair of consecutive zero bits (in an early code variant, the was only used at Apple in the operating systems Apple DOS 3.1 and 3.2 from 1978 to 1980, no consecutive zero bits were allowed). Ultimately, Apple-GCR (in the 1980s version, introduced with Apple DOS 3.3 and used on the Macintosh until the 1990s) each recoded six bits into eight bits, making the code around six percent less efficient than Commodore -GCR, but at the same time the hardware effort was significantly lower. The 1978 variant only re-encoded five bits into eight bits and was therefore significantly less efficient. The code table for Apple GCR in the 1980 variant looks like this:
Data
code
000000
10010110
000001
10010111
000010
10011010
000011
10011011
000100
10011101
000101
10011110
000110
10011111
000111
10100110
Data
code
001000
10100111
001001
10101011
001010
10101100
001011
10101101
001100
10101110
001101
10101111
001110
10110010
001111
10110011
Data
code
010000
10110100
010001
10110101
010010
10110110
010011
10110111
010100
10111001
010101
10111010
010110
10111011
010111
10111100
Data
code
011000
10111101
011001
10111110
011010
10111111
011011
11001011
011100
11001101
011101
11001110
011110
11001111
011111
11010011
Data
code
100,000
11010110
100001
11010111
100010
11011001
100011
11011010
100100
11011011
100101
11011100
100110
11011101
100111
11011110
Data
code
101000
11011111
101001
11100101
101010
11100110
101011
11100111
101100
11101001
101101
11101010
101110
11101011
101111
11101100
Data
code
110000
11101101
110001
11101110
110010
11101111
110011
11110010
110100
11110011
110101
11110100
110110
11110101
110111
11110110
Data
code
111000
11110111
111001
11111001
111010
11111010
111011
11111011
111100
11111100
111101
11111101
111110
11111110
111111
11111111
Other systems
In IBM PCs instead was Modified Frequency Modulation (MFM) used. The MFM coding and decoding is implemented in PCs by hardware in the floppy controller of the chipset and can therefore not be bypassed easily. With the help of special controllers such as the Catweasel controller or KryoFlux , PC floppy drives can also read and write GCR-coded Commodore and Apple floppy disks.
However, there is also software (e.g. "Disk2FDI") that at least enables reading of GCR disks and other non-PC formats in normal PCs through sophisticated tricks using two coupled disk drives, provided that the PC's mainboard also has two Floppy drives supported (which is no longer the case with the vast majority of newer boards). According to the current state of knowledge, writing GCR disks for PC drives on conventional PC disk controllers is not possible even with tricks.