From CPCWiki - THE Amstrad CPC encyclopedia!
NEC D765AC-2 is a floppy disc controller used in the Amstrad.
The structure of the data on the disc which defines the sectors is IBM System 34 double density format.
The following applies to the NEC D765AC-2 and was found through testing:
- The index mark pre-amble, syncs and address mark are not required for operation. If this area is filled with 0x04e then the FDC will still read the sectors.
- The only address mark which identifies the ID field is 0x0fe. Attempting to use any other mark for an ID field will result in the ID field being ignored.
- The only data marks which identify the data field are 0x0fb (Data) and 0x0f8 (Deleted Data). Attempting to use any other mark for a data field will result in the field being ignored.
- Only 3 sync marks (4489) can proceed an ID field or data field. Fewer or more will result in the field being ignored (applies to both ID and Data fields).
- Following the data separator synchronization the first sync mark (0x0a1/0x04489) must be seen within 3 MFM words.
- When a valid ID field has been read the data field must be found within a certain number of bytes from the end of the ID field. The minimum and maximum are to be determined. This does mean that if you have multiple IDs followed by a data block and read each using READ DATA then only the last will have data.
- Sector within sector is possible.
- If an ID field with a CRC error is found then the ID will not be reported by READ ID and the data field will not be read when using READ DATA or similar commands.
- Any data can exist in Gap 2 and will not affect reading of the ID fields or sectors.
- Any data can exist in Gap 3 and will not affect reading of the ID fields or sectors.
- The first sector ID of the track will not be seen when using READ DATA if the "index gap" is 896 microseconds or less. (TODO: Find exact value because 896 is within 4 MFM words).