Samba will permit that. The thing that sucks is embedding the password
in a shell script. But for a printer? Not been a big deal in my
experience.
Basic outline - create a share on the XP box
install Samba from packages/ports
create a shell script that calls smbclient -P \\pc-name\sharename password
Works like a charm! Been using that type of thing for the last 10 years.
Cheers,
Steve