Mal rein interessehalber, was kommt denn bei

p = p + ((X1 + X2 + 3791) >> 4);
*druck = p;

strcpy(Buffer, "Druck : ");
sprintf(Buffer+strlen(Buffer), "%ld", *druck);
scroll_display(Buffer,SCROLL_CAL_VALUE);

bzw

*druck = p + ((X1 + X2 + 3791) >> 4);
p = *druck;

strcpy(Buffer, "Druck : ");
sprintf(Buffer+strlen(Buffer), "%ld", p);
scroll_display(Buffer,SCROLL_CAL_VALUE);

heraus?