There is a good chance that a floppy controller will not work with a 8080 processor, not because one can't make code that will do the same thing at the Z80 but because the 8080 will not be fast enough to keep up with the data rate. Most non-DMA floppy controllers need the processor to keep up with a faster data rate than the 8080 can keep up with, especially if one tries to emulate the Z80 code with a 8080 processor. I remember looking at the problem and writing some code that I never had time to test that would keep up with the data rate of the floppy but had to transfer 4 bytes in the loop instead of just a single loop. In other words, the loop counter was divided by 4. This isn't an issue since the sectors are powers of 2 in size.
As I recall, there wasn't enough time between bytes to both increment or decrement the loop counter between bytes but one could do one thing at a time between bytes reads from the controllers. If the loop counter was L then you get both a loop counter and a memory pointer in one. I believe if you play with that sequence and use careful buffer alignment for the data, it can be done. You need to understand the controllers timing because you don't have time to do much more than read the data with only occasional syncing with the controllers status. As I recall, the code would get a little ahead for part of the cycle and a little behind for the rest.
Dwight