I just had an absolutely cursed idea on how to implement programmable blending on GPUs that don’t support it, all you need is 2 color rendering targets and to write your color values twice.
Then you have both a lookup texture for blending and a destination texture.
Of course, this only works if each item to be blended with programmable blending is done in its own draw call, but still!