The only think "rainbow" mode does is set the speed and mode to static/colour shift(they are actually the same and behaviour depends on the amount of colours set). Since they both set the mode to colour shift(/static) and both set the speed, the only diference is that colour shift also sets the colours.
So it would make sense to have either rainbow mode set the colours to the collours of the rainbow itself, so it makes a rainbow, it remove it.
Additional context
Same as my last issue, encountered this while implementing a kernel driver for h100i pro.
All of this is on asetek pro driver:
The only think "rainbow" mode does is set the speed and mode to static/colour shift(they are actually the same and behaviour depends on the amount of colours set). Since they both set the mode to colour shift(/static) and both set the speed, the only diference is that colour shift also sets the colours.
So it would make sense to have either rainbow mode set the colours to the collours of the rainbow itself, so it makes a rainbow, it remove it.
Additional context Same as my last issue, encountered this while implementing a kernel driver for h100i pro.