Reduces an image's colors to those in a specific palette.

Does not directly consider other restrictions of said hardware. In particular, you can get a lot more pixels in than most consoles had, which together with the dithering will look better than they could. Also, a lot of early home computers could not do anything like full screen sprites, so even using their screen resolution is optimistic..

Image file
Scale down if width or height larger than pixels.
Lower imitates the resolutions of the time
Palette name:

Dithering is quite noisy at lower resolutions, unnecessarily so for already-crisp images. At higher resolutions, dithering is less noticeable and does a better job of color approximation, at least to human eyes.

When not dithering you can optionally denoise, which makes smooth areas look less messy (and more banded), while preserving edges.
Scale up:

A nearest-neighbour scale-up for chunkier pixels, useful when using these images in contexts that want to do smooth rescales. (will look the same in this webpage because I ask it to do a fixed-width and nearest-neighbor via CSS)