Not quite done deal
The floppy is working 100%. I thought the reading and writing from the drive would be the hardest part. I also thought that moving the head would be the easiest part. I cannot believe how wrong I was. It ended up being much easier to read and write. The documentation on moving the head states that different phases should be turned on then off one at a time. It appears that ProDOS as well as other programs turn on the next phase before turning off the previous phase. After I figured out that the documentation was wrong, it did not take too long to get the head stepping to working. One side effect to my implementation is the drives will support half tracks. I did not really plan on supporting half tracks, but that is the way it turned out. Just like the real hardware, you still have to keep each track at least one track apart from the next. It is for a different reason, but the results are the same.
The FPGA Apple now supports two floppy drives with 40 tracks on each drive. I have used Filer and Copy II Plus 7.2 to format the drives. I loaded ProDOS on the first drive and was able to boot using the original DISK II ROM code. It works equally well at 16.67 MHz as it does at 1 MHz. The interface automatically compensates for CPU speed. At 16.67 MHz, it is like a floppy with a rotational speed of 5000 RPM. One modification I recommend, this drive does not require the slow head stepping that a real floppy will require. By changing the speed of the stepping, the disk accesses can be speeded up tremendously. But it will work with the original stepping. I still have to do some DOS 3.3 testing, but there is about a 99% chance that it will work just the way it is.