Mirrors in the Torus
Multiply every row number by every column number, keep the remainder after dividing by m, and colour the result. Repeat the table in every direction and it wraps around like the surface of a torus. Try a prime, then a composite, and watch the zeros.
Controls
Numbers appear when the cells are large enough: try a smaller m or zoom in.
Counter
How to read it
The cell in row a and column b has the remainder v = a × b mod m. Colours, mirror pairs and zero highlighting always use v itself. With single digit on, the number written in the cell is the digital root of v: 0 stays 0, and any other v shows 1 + ((v − 1) mod 9), so 9, 18, 27… show 9, 10 shows 1 and 11 shows 2. Row m−a is row a with every v replaced by m−v: that is the mirror, and it is why k and m−k share a colour when you colour the mirror pairs. The first row and column (0) are always zero; the interesting part is the outlined square, rows and columns 1 to m−1.
The settings are kept in the address after #, so a link to this page can open with the numbers you chose. Nothing is stored or sent anywhere.