====== Analyser: Automatic Descriptor Building ====== //28 June 2005// Now the system is able to build a complete description of the [[:glossary:custom disk format|disk format]] based on the data found on a [[:glossary:track|track]]. This is tested on various [[:glossary:copy_protection|protection]] methods, and once it is proven okay the cached data needs to be translated into the script language used by the rest of the [[:glossary:cta|analyser]]. That is, translating the collected information into scripts that the rest of the analyser actually understands. Currently we are tweaking existing functionality to ensure exceptions (and manual intervention) as rare as is possible. We are also adding some safeguards like making positively correct information have higher priority than "guessed" data. This is fairly important for broken disks. For example, if you find a bad [[:glossary:block|block]] header on one revolution but another sample got it right, the good sample should be used to decide the block size. This actually happens. On hardware MFM there is normally a header block and a data block following each other (except for certain protection types) and the header will tell us the correct data size. Anyway, this process is also able to spot modified blocks while building the format. It works perfectly on everything we have tried so far. Whenever it complained, it turned out the block being reported contained a high-score, or similar modification. This is exactly what we want. ===== Modified Disks on the Atari ST ===== We have now seen that [[:article:importance_of_data_authenticity|modified disks]] on the Atari ST are a far bigger problem than on the Commodore Amiga. This actually makes sense because writing a reliable save routine on an Amiga is a considerable programming effort, whereas using the [[:glossary:FDC|FDC]] on the Atari ST is just a matter of a few lines of code and is often implemented. Statistically, from hundreds of disk images, it seems that roughly every third Atari ST game dumped is modified...