Heres what my code looks like
Code:
IF vPWMPos=vPWM[0] THEN pA1=1
IF vPWMPos=vPWM[1] THEN pA2=1
IF vPWMPos=vPWM[2] THEN pA3=1
IF vPWMPos=vPWM[3] THEN pA4=1
IF vPWMPos=vPWM[4] THEN pA5=1
IF vPWMPos=vPWM[5] THEN pA6=1
Multiple ifs are needed because its possible for all of the vPWM values to be the same.

That ASM looks complicated but ill try and figure it out.

Im not at the PC i program on at the moment. Do you know if setting the value directly would work and if it does how many instructions it would take?