Hi Mark, welcome to SoR!
I just read all the xrover thread at Lynxmotion and I have to say I'm impressed. This is what I want my robot to be able to do. So, I'll go through your code and translate it to Arduino and AVRcam that I have. Hopefully it'll work out, although, if I remember correctly, the AVRcam returns bounding box of the color blob, so I need to calculate the center of mass (not a problem, I have a library written by one of our members that does all the calculations, thanks Frank!). A problem may be that a bounding box gets 2 sets of coordinates for the opposite corners, that's taking more time on the serial link. Perhaps the fact that I can use 115200 baud will even out the speed loss. The good part is, knowing the size of the tracked object, I can get distance info by the size of the bounding box (I'll play with this latter).
This will take some time until I'll have it ready, because I am also working on other stuff. Hopefully during the weekend I'll be able to do some preliminary testing.
Oh, and the targeting is also impressive, perhaps I should mount a gun to my robot's right arm to shoot the bad guys while the left arm puts out the fire started by all that firing...