Bit position to bitmask conversion using MPASM directives
I haven't used MPASM before, but does this work?

movlw (1 &lt;&lt; O_RED) | (1 &lt;&lt; O_GREEN) | (1 &lt;&lt; O_BLUE)


Shifting to the left doubles a number.

1 &lt;&lt; x == 2x