It works fine if I ghost all of your particles, for some reason not all attributes are copied when you instance an object so make sure it's outside the condition:
for (int i=61;i<2061;i++){
if (i==61){
// dbMakeObjectPlane(i,0.5,0.5);
dbMakeObjectSphere(i,0.5,8,8);
dbTextureObject(i,10);
dbSetObjectAmbient (i,dbRGB(0,0,0));
dbSetObjectDiffuse (i,dbRGB(0,0,0));
dbSetObjectEmissive (i,dbRGB(255,150,180));
// dbSetObjectTransparency (i,2);
}
else dbInstanceObject (i,61);
dbGhostObjectOn(i,2);//2 for fire, 4 for smoke
dbPositionObject(i,(dbRnd(100)-50)/10.0,(dbRnd(200)-100)/10.0,(dbRnd(100)-50)/10.0);
Also, your water object isn't transparent so you shouldn't give it a transparency flag(though in this particular case it doesn't seem to affect the result).
You can also get the desktop resolution using the following:
width = GetSystemMetrics( SM_CXSCREEN );
height = GetSystemMetrics( SM_CYSCREEN );