

Well, there's no way that can fit in the Arduino's 2k of memory, nor its 1k of EEPROM. A track in memory is 11*512 bytes (5638 bytes), however, after MFM encoding and putting in correct AmigaDOS format, the track works out as 14848 bytes. The Amiga would write an entire track in one go. I also noticed that while the /WRITE_GATE was low the drive didn't switch back off like it used to until that pin had returned to its default HIGH state. At this point you could obtain the write protect status. At this point I guessed that the output is probably only available when you actually want to write data.Īfter a lot of experimentation, I found that you needed to pull the /WRITE_GATE pin LOW before spinning up the drive to enable writing. So I pulled the drive apart and followed the traces from the little switches that detect the write protect status to a little IC. I wanted to read the status of the write protect line, but no matter what I set it to it didn't seem to change voltage. Meanwhile I continued working on the code for writing disks. I waited until I was happy with the Retr0brite process before reassembling the computer. I then checked all of the joints on the main motherboard and found a loose connection by the power connector, a few touchups with the soldering iron and as good as new. Whilst cleaning it, I decided it was time to get rid of the yellowing, so I followed the information about Retr0brite and tried it. I even took the floppy drive apart to clean it. Whilst at it, I pulled the entire machine out and set about cleaning up 20 years of dust and grime. So I desoldered this from the board and set about cleaning the board up. Taking my A500+ apart, I noticed it had suffered one of the most common problems, the clock battery had leaked everywhere. After all, I can't test any disks I create if I don't have anything real to test them on. While working on this I decided to try to find out what was wrong with my Amiga. Knowing I could potentially test the data I created by feeding it back into the decoding part, I started work on this. So I started by adding classes to read an ADF disk, and encode all the sectors as one track. I figured I'd work this out in reverse, starting with the software (i.e.: converting the ADF disk files into MFM data for the interface to write somehow ).

So after successfully being able to read disks, I figured if you want to keep the original physical medium, you might want to write disks back again. Also, a normal PC can't read/write Amiga disks due to the way they are written. Why: To preserve data from these disks for the future.My Solution: An Arduino sketch + a Windows application ( which can be ported to other O/S ) that actually works!.My Aim: To create a simple, cheap and open source way to recover and rewrite data from and to Amiga DD floppy disks from within Windows 10.This project continues the work from my previous disk reader project at
