Also doch wie ich gedacht habe, aber ich verstehe nicht ganz wieso das for-Konstrukt verwendet wird. RGB wird einmal pro Schleifenaufruf aufgerufen, und wenn man das jetzt so ungefähr machen würde, begäne das ganze von vorne. Um es zu veranschaulichen:

Code:
for(int r=0; r<32; r++)
  for(int g=0; g<32; g++)
    for(int b=0; b<32; b++)
      backgroundcolor = RGB(r, g, b);
Wobei es am Schluss noch einen Spezialfall von 0, 31, 31 gibt.