Sorry to say this but after patch 1.3 BF2 stopped working for users of 9000, 9100, and 9200 series cards (not sure about 8500's). The 9500, 9700, 9800 all work fine. Also, Mloot is correct, 256MB is very low for running BF2. I have one system running BF2 rigth now with a 9500 abd 512 MB RAM and it runs BF2 at very acceptable frame rates.
If you want to play BF2 I'm afraid you may need an upgrade. The cheapest way to go would be to get a stick of 512MB DDR & a used 9800 or a X700 pro. Just make sure your PSU is good enough to handle it b/c they both require a decent PSU.
And for those above stop crapping on his system. Not everbody can afford to upgrade every 6 months. The only people who should be responding are people who have information that can HELP the poster.