TO DO: A summary of what it does
Implemented by: VBDOS, FreeBASIC, Gambas
With variations:
Also written as: