Autoscale problem for Retina

I’ve got this game designed for the iPad resolution (1024x768). The game is not too graphic intensive so it autoscales down to appropriate size for iPhone.

To autoscale… basically I scale a “root node” and attach objects to this node:
root = CCBReader::getInstance().nodeGraphFromFile(“Screens/LoginScreen/login-screen.ccb”, “Screens/LoginScreen/”);
CCSize size = CCDirector::sharedDirector()>getWinSize;
root
>setScaleX(SCALE_X);
root->setScaleY(SCALE_Y);
addChild(root);

SCALE_X and SCALE_Y are defined as follows:
#define SCALE_X CCDirector::sharedDirector()->getWinSize().width/DESIGN_WIDTH
#define SCALE_Y CCDirector::sharedDirector()~~>getWinSize.height/DESIGN_HEIGHT

To get it to work properly on all resolutions I had to disable retina: pDirector~~>enableRetinaDisplay(false);

The only problem is that retina display looks abit blurry.

Enabling retina display will result to improper position placement.

Any suggestions?

Yes, you must enable retina otherwise it will look pixelated.
What you can do is to patch CCDirector to handle the coordinated differently while in Retina display mode.

Just CCDirector::sharedDirector()->getWinSize()?