This really is a hardware problem. Before the hardware guys cast these interfaces into stone, they need to go to the software people and ask "Is this interface stupid?" In the current instance, the software people would have assuredly said "Yes, that's moronic, please go back and do it differently." We could have avoided this whole unpleasant business with sane hardware/software interfaces.