OHH, very good. Thank you very much. It helps a lot.
I didn't need the "negative" angles (0-100%), so I did that:
int shift_percent=50;
dword val1, val2;
if(shift_percent>100)
shift_percent= 100;
else if(shift_percent<0)
shift_percent= 0;
val1 = (dword)getReg(PWM_PWMCM) * (100-shift_percent)/200;
val2 = (dword)getReg(PWM_PWMCM) - val1;
PWM_PWMVAL1 = val1;
PWM_PWMVAL2= val2;
PWM_PWMVAL3 = val2;
PWM_PWMVAL4 = val1;
PWM__Load();