Found the way

B := TBitMap.Create;
B.Width := VideoModeX;
B.Height := VideoModeY;
B2 := TBitMap.Create;
B2.Width := VideoModeX div 2;
B2.Height := VideoModeY div 2;
B.Canvas.CopyRect(Rect(0,0,VideoModeX-1, VideoModeY-1),DXDraw1.Surface.Canvas,Rect(0,0,VideoModeX-1, VideoModeY-1));
B2.Canvas.StretchDraw(Rect(0,0,B2.Width-1, B2.Height-1), B);
B.SaveToFile('TEST.BMP');
B2.SaveToFile('TestSmall.bmp');
B.Free;
B2.Free;

Works well with hardly a flicker on the screen.

If someone can tell me how to post an image I'll put a screen dump of two on the projects forum.