As you can see
here, a proper 2600XT should be 3 times faster than 6600GT. If it doesn't, it means the video card is waiting for the cpu to send data. And since you already got the 2600XT (which is not bad), you could buy a 3200+ (I think you could get it really cheap (2nd hand)).
Also, 2gb of RAM makes a big difference on your gaming experience.
I play SH4 in 1600*1200 with a Barton 3200+, ATi 3850 and 2Gb of ram and I get over 50 FPS (settings on high, including Volumetric fog).
Even in 2048*1536 it manages to render 22 fps in port:
