GetPixel ungenau im Vollbildmodus

Liebe Leute

Wenn ich ein Programm im Vollbildmodus ausführe, wird GetPixel ungenau. Die Funktion GetPixel sieht so aus:

Uint32 GetPixel(SDL\_Surface \*surf, int x, int y)
{
 //This function returns pixels color
 int bpp = surf-\>format-\>BytesPerPixel;
 Uint8 \*p = (Uint8 \*)surf-\>pixels + y \* surf-\>pitch + x \* bpp;

 switch (bpp)
 {
 case 1:
 return \*p;

 case 2:
 return \*(Uint16 \*)p;

 case 3:
 if (SDL\_BYTEORDER == SDL\_BIG\_ENDIAN)
 return p[0] 

Mein Bildschirmformat stimmt nicht mit dem vom Programm überein. Liegt das Problem daran?
Falls ja: Wie kann ich das am besten beheben? Die Bildschirmauflösung kann ich dank einer speziellen Funktion abfragen.

LG
Kalsan