The price cap you mentioned is not the best at this time in the video card cycle... $150 is too high a cap for a low-quality budget card, but not really enough money for a low-cost performance card.
If you're willing to spend $150, I would NOT settle on a GeForceFX 5700... If you can find a GeForceFX 5900 in stock, I would go with one of those.
Also, the ATI 9800PRO listed earlier is a nice card roughly in your price range. The link given earlier is a good deal for a very solid card.
If you're willing to up the amount you spend a little bit, you should be able to afford a GeForce 6600GT at around $200 bucks, which is an excellent performer card and will last you longer then any card in the sub $150 price range.
If NVidia releases AGP versions of the 6600 (vanilla) or 6200 chipset, those should fall in your sub $150 price range.
If you must buy this minute, and you aren't willing to go over $150, then I'd say go with the linked ATI 9800Pro, or see about finding a GeForceFX5900. I would not get anything less then one of them.