What's missing in wd1010_device?
I didn't see a clear way to implement the buffer_ready stuff that wd2010_device has. Maybe I overlooked something.
and besides, the only difference between the WD1010 and the WD2010 is the latter has one additional bit in the upper cylinder register and the WD2010 is a more complete implementation to my eye than the wd1010 one, though I base that in part on the number of comments about edge cases.