There have been several complaints about this already (mainly from people who are using that book, since circles are used right in the first chapter). It seems that the problem is present in various degrees on different computers. On my machine, your dbSetWindowOff method does not solve the issue.
Have you tried if re-drawing the circles every loop helps or not? A Dark GDK program should contain a "main loop" which continuously redraws the screen. Try if you see the circles with this code (this helps on my computer):
#include "DarkGDK.h"
void DarkGDK()
{
dbSyncOn();
// Variables for the center points.
int x = 319, y = 239;
while (LoopGDK()){
dbCLS();
// Draw concentric circles.
for (int radius = 50; radius <= 200; radius += 50)
dbCircle(x, y, radius);
dbSync();
}
}
(The dbWaitKey is not needed in this case, because you can exit the program by pressing the Escape key. You can try commenting out the dbCLS as well, which clears the screen before redrawing - but if you have the bug, the circles will be cleared anyway.)
If you continue to have problems with circles, ellipses or dots, and especially if the above code does not work for you, then please add your experience to the bug reports thread, describing the problem and your hardware configuration. You can also try the code snippets posted in the bug report thread and describe what result they produce on your machine:
http://forum.thegamecreators.com/?m=forum_view&t=158209&b=15
Finally, as a workaround, here are replacement functions which let you draw circles and ellipses, in case dbCircle or dbEllipse don't want to work:
http://forum.thegamecreators.com/?m=forum_view&t=158250&b=22&p=0