Mosaic
Mosaic is a screen pixellation effect. It can be enabled or disabled on a per-background basis via bits 0-3 of 2106h. For a given background, the color of the pixel at screen position (H,V) is:
output_color(H,V) = input_color(floor(H/size)*size, floor(V/size)*size)
where size is the value of bits 4-7 of 2106h plus one. Thus, the shaded output consists of a grid of solid-colored squares where each entire square's color matches that of its top-leftmost input pixel.
The first mosaic square's location is always (0,0). Sprites are unaffected by the mosaic filter.
The mosaic filter has a horizontal and vertical subsystem. The horizontal mosaic latches remember the color of the top-leftmost pixel of each mosaicized block. The vertical mosaic latch remembers what the value of the PPU vertical scanline counter was at the top of each mosaicized block. [3]
Examples
Game Name | Mosaic Usage | Animated GIF |
---|---|---|
Final Fantasy III (US) | when trying to select a disabled menu option | |
Final Fantasy Mystic Quest | upon entering battles and before/after loading new sections of the map | |
Star Ocean | upon entering every battle | |
Super Mario World | after selecting and entering a level |
References
- setting example: page 2-4-1 of Book I of the official Super Nintendo development manual
- bit-by-bit breakdown of the mosaic register: page 2-27-3 lbid
- display example of mosaic effect: Appendix A-7 lbid
- https://problemkaputt.de/fullsnes.htm#snesppubgcontrol
- [3] https://board.zsnes.com/phpBB3/viewtopic.php?p=204966#p204966