I’ve made a dither code that uses a buffer and getRows/setRows, and is ~105-107% faster (~205-207% of the speed) on my pygamer!
I’m most likely going to use this in my screen effects extension (with a slightly changed sequence of dithering, and credit in a code comment for @hasanchik’s idea/coding and @kwx 's/your
(@AqeeAqee’s) contributions to optimizing this code).