Scaling the screen

I’m new to using the Arduboy and I just wanted to know how to stretch the screen. I have a Pygamer which can run Arduboy games but when I run Arduboy games on my Pygamer the display looks ugly. Is there a way I can fill the screen or scale it to look better?

The Pygamer has a 168x128 pixel screen whereas the Arduboy has a 128x64 screen.

When you play the games, do they fill the screen both verticall and horizontally

I assume they are stretching the graphics to fit into 168pixels and as this is not an even multiple, sometimes it must render 2 pixels where the Arduboy has 1, sometimes not. The end result is the graphics are all distorted.

If they are stretching the y-axis, they can do this easily because the pygame pixel count is a multiple of the Arduboy. However, this would create a 2x scaling whereas the x-axis would result in a 1.3 scaling - the gaphics would be out of proportion!

I suggest you buy an Arduboy if you want the Arduboy experience :slight_smile:

2 Likes

It’s 160x128, not 168x128. So, only 32 extra horizontal pixels, not 40. And 1.25 scaling, not 1.3.

Either way, it would indeed look hideous. It’s not even the same aspect ratio.


I should point out that it’s also technically not our problem since this forum is unaffiliated with Adafruit, who make the Pygamer. If there’s any way to fix the issue, it’s up to Adafruit to choose to implement it in their fork of Arduboy 2, so it’s really them who you ought to ask, @Wesleylewis05.

Must of misread it … either way, as you say, its not going to look good.

They could letterbox it top bottom and sides to have a 1:1 mapping. Given that the screen is 1.8" then it might not be any smaller than if rendered on the Arduboy.

They could also add an artistic border like the Super Game Boy did.

(Which is what I was intending to do for a port of Arduboy2 for another console that I never got round to finishing.)