Play them legally
Getting a 1990s game to look right on a modern screen
Why low-resolution games look blurred on a modern display, three fixes (integer scaling, shaders, an official re-release), and how to choose between them for a specific case.
The single reason an old game looks wrong on a new monitor is that its pixels were drawn for a different grid. A 320×200 image shown on a 3840×2160 display means every original pixel becomes several screen pixels, and how that multiplication is done decides whether the result looks crisp, soft, or broken.
The scale has to be a whole number
Suppose your display is 1920 by 1080 pixels and the game’s image is 320 by 200. Across, 1920 ÷ 320 is exactly 6. Down, 1080 ÷ 200 is 5.4. The scale has to fit in both directions, so the largest whole number is 5: each original pixel becomes a clean 5×5 block, the picture is 1600×1000, and the rest of the screen is border. A 6× scale would need 1,200 rows, and the screen has only 1,080.
Now suppose the display is 1440 by 900. 1440 ÷ 320 is 4.5, and 900 ÷ 200 is also 4.5. There is no way to turn one pixel into four and a half, so the software has to interpolate — it either duplicates some pixels and not others, or blurs everything. Either way a uniform block becomes an uneven one.
This is what integer scaling means: using whole-number multiples only, and accepting a smaller image, or adding a border, rather than stretching unevenly. It is the setting to look for first.
The second variable: aspect ratio
A 320×200 frame on a 4:3 display was not shown square. The pixels were non-square, stretched vertically to fill a 4:3 screen. Reconstruct that if you want the geometry the artist drew; ignore it if you prefer square pixels and a wider look.
Both choices are defensible, and they are not the same image:
- Square pixels — the file as stored, unambiguous, one pixel equals one pixel.
- 4:3 correction — what the original display produced, closer to the intended composition.
Pick one deliberately. The mistake is letting the software pick without knowing which it did.
Three practical fixes, from least to most invasive
1. Fix the scale, not the output. In the engine’s own settings, choose a whole-number scale and let the remaining space be border. This keeps you inside a tool that is being maintained for the games it supports. ScummVM and DOSBox both have graphics settings in their own options; we did not verify the exact scaling options on the pages cited, so check the project’s documentation for the version you installed.
2. Use a filter designed for pixel art. If a whole-number scale does not fit your screen, a scaling filter meant for low-resolution art looks better than the default blur your graphics driver applies. The trade-off: some filters smooth away the detail that made the art readable. Compare two or three rather than accepting the first.
3. Buy the re-release. A commercial re-release often ships with these decisions already made by someone who tested on modern hardware (our observation; quality varies by title). GOG’s adventure catalogue is one example of that model. You give up control, and in exchange you get a working result without an evening of settings.
What is not worth fixing
Some artefacts should be left alone:
- Dithering. The patterns of mixed pixels in old art are not noise; they were the technique for producing more apparent colours than the hardware had. Removing them removes the artist’s work.
- The original aspect ratio of an FMV sequence. Video cutscenes were often a different resolution from the game. Forcing them into the game’s scale adds nothing.
- Text rendering. If the game’s font was drawn for 320 pixels wide, smoothing it makes it harder to read, not easier.
A diagnostic order
When the image is wrong, change one thing at a time, in this order:
- Set a whole-number scale. If the image becomes sharp, you are done.
- If it no longer fits the screen, decide between a smaller image with a border and a filter. That is a preference, not a bug.
- If it is still wrong, the problem is in the game’s own configuration, not the scaling — check the project’s compatibility notes for the title.
Checking per-title compatibility before you spend an hour on settings is worth the two minutes: if a known rendering issue exists, it will be listed already.
A lookup table for common screens
The table lists the largest whole-number scale for four classic image sizes on four common screens, computed as the smaller of (screen width ÷ image width) and (screen height ÷ image height), rounded down. “Scale to fill” is the non-whole scale that would stretch the picture to the screen edge, which is where blur comes from.
The table assumes square pixels. With 4:3 aspect correction, a 320x200 image is displayed like a 320x240 image, so use the 320x240 rows for the corrected view.
| Image | Screen | Largest whole scale | Picture after scaling | Screen used | Scale to fill |
|---|---|---|---|---|---|
| 320x200 | 1920x1080 | 5x | 1600x1000 | 77.2% | 5.40x |
| 320x200 | 2560x1440 | 7x | 2240x1400 | 85.1% | 7.20x |
| 320x200 | 3840x2160 | 10x | 3200x2000 | 77.2% | 10.80x |
| 320x200 | 1440x900 | 4x | 1280x800 | 79.0% | 4.50x |
| 320x240 | 1920x1080 | 4x | 1280x960 | 59.3% | 4.50x |
| 320x240 | 2560x1440 | 6x | 1920x1440 | 75.0% | 6.00x |
| 320x240 | 3840x2160 | 9x | 2880x2160 | 75.0% | 9.00x |
| 320x240 | 1440x900 | 3x | 960x720 | 53.3% | 3.75x |
| 640x480 | 1920x1080 | 2x | 1280x960 | 59.3% | 2.25x |
| 640x480 | 2560x1440 | 3x | 1920x1440 | 75.0% | 3.00x |
| 640x480 | 3840x2160 | 4x | 2560x1920 | 59.3% | 4.50x |
| 640x480 | 1440x900 | 1x | 640x480 | 23.7% | 1.88x |
| 640x400 | 1920x1080 | 2x | 1280x800 | 49.4% | 2.70x |
| 640x400 | 2560x1440 | 3x | 1920x1200 | 62.5% | 3.60x |
| 640x400 | 3840x2160 | 5x | 3200x2000 | 77.2% | 5.40x |
| 640x400 | 1440x900 | 2x | 1280x800 | 79.0% | 2.25x |
Pick the row for your own screen, set that whole scale in the engine’s options, and accept the border.
Sources
- ScummVM — Downloads — the engine release and platforms, with links to the project’s documentation.
- ScummVM — Compatibility — per-title notes including known issues.
- ScummVM — Games — supported titles and freeware availability.
- DOSBox — full-machine emulation and its configuration options.
- GOG.com adventure catalogue — re-releases prepared for current systems.