Press the a key to instantly generate a maze. press the b key to show the maze generation process.
This algorithm works by drawing a random maze path until every space adjacent to the current cell has been visited. It then backtracks until it finds a cell with unvisited adjacent cells and draws another random path from there. It repeats this until the maze is full. When you press b, the green dots show that that cell has been visited once, and red dots show that the cell has been visited twice. This is not necessary for the algorithm to work, but helps show how it works. There is a bug or too, but I might get around to fixing them. Maybe.