This simply happens because of the way php is trying to connect to the mysql server... it has to do with the mysql module in php. Whats weird is that with the exact same configuration, you have it working on win98 (provided the mysql server version is THE SAME that in the xp box).
Likely, there are many solutions... Since im a little tired, Im gonna leave you this:
1. Check the mysql manual (docs folder somewhere in your mysql installation path), as it deals with some possible solutions (that have to do with the way new mysql servers deal with passwords).
2. Google for it, maybe do a search with the error message "Client does not support authentication protocol requested by server; consider upgrading mySQL client", and some good answers might arise. IIRC, one of them is to change the mysql.dll or whatever module for another version or something like that.
Cheers