TO DO: A summary of what it does
Implemented by: Simons1, trs80, level2, trscolor, colormc
With variations:
Also written as: