davidgiven / fluxengine

PSOC5 floppy disk imaging interface
MIT License
358 stars 69 forks source link

Feature Request : Amiga ADF #143

Closed ourIThome closed 4 years ago

ourIThome commented 4 years ago

Hi,

An ADF file, when created looses the header info. So, when a sector is bad ... most tools will blank the sector... looking in a hex editor, you have no way to know if its bad / formatted.

In the Amiga world, there is a tool called : DiskRipper If DiskRipper detects a bad sector, after trying to retry/recover ... it will fill the whole sector with : -=[BAD SECTOR]=- -=[BAD SECTOR]=- -=[BAD SECTOR]=- etc

I would like a similar feature in FluxEngine, this helps the TOSEC Amiga team detect sectors bad / needing repairing.

Would it be possible to have something like : -=[BAD SECTOR]=- -=[0xff010009]=- -=[BAD SECTOR]=- -=[BAD SECTOR]=- .....

the -=[BAD SECTOR]=- was purposely to be 16 bytes in length. Having the CRC would help to take existing ADF file, CRC check the sector and inject those bytes via hex editor.

If getting the CRC injected in the string is a pain, just -=[BAD SECTOR]=- would be a great start / help.

davidgiven commented 4 years ago

The ADF file is the wrong place to put this information. There's no way to distinguish between bad sectors and good sectors which happen to contain the string "-=[BAD SECTOR]=-", and also this means there's nowhere to put the bad data --- which may still contain useful information.

However it is a reasonable request to have a machine-readable version of the output map. Counting tracks is a pain, true.

davidgiven commented 4 years ago

Try the writereport branch. It has a --write-csv=X option which will produce a machine-readable report of all sectors read.

ourIThome commented 4 years ago

I managed to compile the code for Windows, I am now able to generate a report. A must for proving a good / bad rip. Is there any way to report expected CRC for each sector? Report is very handy.