As it stands I'm probably gonna have to buy a new HDD, install XP on it, boot from that, then hope there's enough of a filesystem (and files) left to access and retrieve info off the other drive as a slave.
I don't wanna appear to be advertising anything (I hate spam), but have you considered
SpinRite 6? It's designed for this kind of data recovery/hard disk repair situation.