This program analyze a raw Stream File and "decode" the transitions in the file as a Western Digital WD1772 floppy disk controller would do. For that matter the input transitions are pipelined through a DPLL (digital phase lock loop), a shift register, and an "address mark" detector. The program is based on the work I did several years ago around the Discovery Cartridge.
The program analyzes the stream input files and executes three phases:
- The read track phase: In this phase all the flux transitions of the Stream file are decoded as a WD1772 FD controller would do with a read track command. At the end of the analysis both the “layout” of the track as well as the content of the track buffer are displayed. Note that by default the analysis does not look for sync mark in ID and DATA block. You can force a “real” read track by using the –s option
- The read address phase: In this phase the program decodes from the stream file all the ID blocks of the track as a WD1772 FDC would do with multiple read address commands. At the end of the analysis the “layout” of the ID as well as the content of the ID buffers are displayed for all the IDs found.
- The read sector phase: In this phase the program decodes from the stream file all the sectors corresponding to the ID blocks found in the preceding phase. Each sector is in fact decoded multiple times corresponding to the number of rotation analyzed by the KryoFlux DTC program. This is necessary to check if the sector contains fuzzy bytes. At the end of the analysis the “layout” of the Sector as well as the content of the Sector buffer are displayed for all the sectors analyzed.
The program executable, documentation, and scripts to be used with the ploticus program can be found at http://info-coach.fr/atari/hardware/dev ... #kfanalyze
To produce plot you will need ploticus at http://ploticus.sourceforge.net/doc/welcome.html
NOTE: This is an ALPHA version of the program (already tested on many test cases but still in dev) and this program has been developed for Atari stream images. It might work for other platforms but has not been designed or tested for that
More test cases will be published on my site so you can run tests even if you do not have the KryoFlux hardware.
Please feel free to comment on the capabilities, limitations, and bugs of the program. The main goal is to provide a tool to analyze the Atari key disk protections. But I now have a library that provide the capability to do read track, read address, and read sector from stream files and it would be easy to use this library in an emulator just in case you do not want to use IPF files. The drawback is that the stream files are huge: about 35 Mb for a FD