So there you go. Bochs shoud be able to be made generic. I think it is generic right now but I seem to remember that it did some stuff with delays rather than checking the busy flag and that was the difference between the ADLO that worked and the latest stuff.
I still remmber an IDE code that would work with Samsung HDD's but not IBM hdd's. So it is possible to have disk/chipset specific code.
now all we need someone to fix the code :-)