Skip to content

Add Integer Scaling - #1212

Draft
298A-E9E3 wants to merge 1 commit into
EmulatorJS:mainfrom
298A-E9E3:main
Draft

298A-E9E3 wants to merge 1 commit into
EmulatorJS:mainfrom
298A-E9E3:main

Conversation

@298A-E9E3

@298A-E9E3 298A-E9E3 commented May 1, 2026 •

Copy link
Copy Markdown
Contributor

Pretty basic implementation of integer scaling. There are still a few problems with it, though.

  1. It only works if the pixels are square. Using it on consoles like the NES and SNES that have rectangular pixels will result in uneven pixels (the exact thing integer scaling is meant to prevent). Setting their aspects to pixel-perfect and uncorrected respectively will fix this, but that's obviously not an optimal solution.
  2. Effects generated by the core (i.e. snes9x blargg, fceumm ntsc filter) will make the canvas far too big, as they increase the size of the video

These 2 should be able to be fixed by using a different method of getting the size of the video stream.

  1. The canvas won't resize if the video changes sizes (i.e. SNES changing to mode 5, PSX changing resolution)
  2. The canvas is pinned to the top-right while integer scaling is enabled

This PR would resolve issue #1100

@298A-E9E3
298A-E9E3 marked this pull request as ready for review May 1, 2026 16:09
@298A-E9E3
298A-E9E3 marked this pull request as draft May 1, 2026 16:09

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant