Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site decwrl.UUCP Path: utzoo!watmath!clyde!bonnie!akgua!mcnc!decvax!decwrl!dec-rhea!dec-dosadi!binder From: binder@dosadi.DEC (Wherever you go, there you are.) Newsgroups: net.micro Subject: Re: Reading Apple II disks Message-ID: <1535@decwrl.UUCP> Date: Mon, 8-Apr-85 10:57:59 EST Article-I.D.: decwrl.1535 Posted: Mon Apr 8 10:57:59 1985 Date-Received: Wed, 10-Apr-85 06:12:50 EST Sender: daemon@decwrl.UUCP Organization: DEC Engineering Network Lines: 54 You can't read an Apple disk with any system whose controller was not explicitly designed to read the Apple format. That includes Apple, various third parties, and one IBM plug-in that emulates the Apple. The only way to get data to or from an Apple is via serial communication lines and either a terminal emulator like ASCII Express or Softerm, or a file transfer utility like Kermit. For anyone interested in the technicalities of the Apple recording scheme and why it is so different, here's a brief explanation of it. 1. Apple uses soft sectoring, and even soft indexing - ALL format information is written on the disk at INIT time. Any 5-1/4 floppy, hard-sectored, or soft-sectored, or even without an index hole, works just fine. 2. Where all other controllers today use Modified Frequency Modulation (MFM) recording, Apple's recording scheme is group-coded recording (GCR). The sector headers are written in a 4+4 scheme, in which each two bytes of header contain one usable byte of information. The data byte is broken into two nibbles, and each nibble is translated into a byte in which the two most significant bits are both ones. These translated bytes are then written to the disk. The start of a header or data field is marked by a specific pattern of bytes that include GCR violations such as a byte value of AA hex. DOS 3.3, 16 sectors: Data fields are written in a 6+2 scheme, in which every disk byte contains six meaningful bits - four disk bytes have three useful bytes of data. Each set of 24 bits (3 bytes) is broken into four 6-bit groups, which are translated into bytes in which one or the other of the upper two bits may be a zero, but not both, and certain patterns, like the AA, are still reserved. 342 disk bytes are required to record 256 data bytes. DOS 3.2, 13 sectors: Data fields are written in the same 4+4 scheme as headers. 512 disk bytes are required to record 256 bytes of data. 3. In MFM, synchronisation is done by detecting MFM violations coupled with a specific bit pattern. In the Apple, synchronisation is done by the use of special 10-bit patterns called self-synch bytes, in which the two end bits are zeroes, and the centre eight bits are ones. A preamble consists of five self-synch bytes in a row, and the controller's state machine uses them so that a start anywhere in the first 40 bits of the 50-bit field will result in synchronisation before its end. Cheers, Dick Binder (The Stainless Steel Rat) UUCP: { decvax, allegra, ucbvax... }!decwrl!dec-rhea!dec-dosadi!binder ARPA: binder%dosadi.DEC@decwrl.ARPA Mon 8-Apr-1985 10:51 Eastern Standard Time