## Calculator art: Ordered dithering

I found a way to draw 1-bit sketches in TI-BASIC on my calculator using dithering. I used ordered dithering because it is the easiest to implement, and all that is needed on a 96×64 screen. Below is the code I used, with comments.

First, set a 4×4 Bayer matrix to `[J]`

.

This will clear drawings, but make sure your *graphs* are also cleared before running this program.

Iterate through each pixel in range, from the top left $(0, 0)$ to the bottom right $(94, 62)$.

We are graphing $z$, a function of $x$ and $y$, with a range of $[0, 1]$, where $0$ represents lightness and $1$ represents darkness. Here, I am graphing $z = (x / 94 + y / 62) / 2$.

Note that matrix indices start at `1`

instead of `0`

in TI-BASIC.
If $z$ is greater than the value of the Bayer matrix at $(x, y)$, the pixel will be displayed in black.

The program ends here. This is how it came out:

And with more interesting functions, like
`remainder(X,Y+1)/(Y+1)→Z`

:

Or even
`(cos(X^2/400)+cos(Y^2/200)+2)/4→Z`

:

If you try this out, get ready for long drawing times, as TI-BASIC for the Z80 chipset is *extremely* slow.