An issue + a small fix for Game Boy games

Thanks to Godlance we now have the option of using 608x480 for Gambatte and VBA Next: Download link

What’s the purpose behind this?

In short, it’s what Nintendo has always used since 2003 to get GB/GBA games to look “correct” on TVs via the GC/Wii, the last game to use this was Kirby’s Dream Collection in 2012.

At this time I can only encourage you to try this under these settings and post your opinion: *The viewports are all based on Nintendo’s consistent sizes.

For VBA Normal view 608x480 Point filtering Viewport - 64,80 480x320

Optional Full view: Bilinear filtering Viewport - 19,50 570x380

For Gambatte Normal view 608x480 Point filtering Viewport - 144,96 320x288

Optional Full view: Bilinear filtering Viewport - 104,60 400x360

OK, now onto the issue: Naturally the scaling is more correct but there is one thing that’s not right, I will use a picture to demonstrate how it looks currently with an overlay as a border of the same width. See, how it doesn’t fill the entire screen? Scaling the overlay higher will only get the overlay covered by the black “pillars” on both sides.

Here’s a picture of Kirby’s Dream Collection with borders enabled. See how it fills the entire screen? KDC’s border is 608x456 I am just using the border to outline the problem, every pixel of the border is seen in RA I’m just asking for a way to expand the display a bit to fill the screen just a little bit. From what I understand some TVs will not show the black pillars in the same size as mine due to overscan being different.

I find this to be quite minor but an option to scale the display a bit wider could fix this. The Internet Channel is the only common software that allows the user to set the width. If anybody has the time please explain this to me, why certain software display black pillars while others don’t. The HBC doesn’t have any noticeable pillars. I should probably also clarify that while I used 608 as width this happens in all other widths, even 640. Even if this doesn’t get accepted by the devs I still would like to understand what causes it.

Video encoder. This is all I’ve talked about for like a week. :stuck_out_tongue: Nintendo uses a 608-wide framebuffer and scales to 668 in the video encoder for their Game Boy stuff. The video encoder is 100% in charge of how wide things will show up on the TV. RetroArch does not currently offer direct control over the video encoder’s scaling.

Right now, there is one way you can adjust the video encoder’s scaling in RetroArch, which is to change the settings on the Wii itself. When the Wii is set to 4:3, RetroArch uses 640 in the video encoder. If the Wii is set to 16:9, it’ll be switched up to 678. Regardless of the actual kind of TV you’re using, you can tweak this setting in order to switch between a slimmer and wider screen (640 vs. 678 pixels). In this case, you should switch the Wii to wide, because the 678 is closer to 668 than 640 is.

For another place you can mess with it, see Genesis Plus GX under the “Menu” settings. (This won’t affect how your games are displayed, just how much the video encoder scales when showing the menu.)

Oh, then that’s kind of important, hopefully the option to change it gets added.

Using Genesis Plus GX to test, my maximum video encoder width is 678 anything higher gets covered by my TV.

I downloaded both of these updated cores and have them set to the full view on both with this new resolution. Looking great!

The Super Game Boy borders are nice with Gambatte. The borders in your “RA Ready” folder don’t have corresponding config files so I am unable to use those at the moment. I assume it’s as simple as taking an existing file, renaming it to match the png and editing the code in notepad to point to that particular png file?

EDIT: Yep, that does it :slight_smile: This is great. In full view mode the borders are not visible at the sides though as you have to change the overlay scale to 1:45 on my tv, no big deal though.

It’s not your TV, the overlay0_rect is probably set to the “normal” size and needs to be recalculated for any other size. I haven’t figured out how to calculate it accurately, yet. Perhaps Vague Rant can figure it out.

Right; for us, the overlay is scaled with the image, so you’d need to redo a second version of the overlay for so-called “Full” view. I haven’t been able to figure out how to get overlay0_rect to accurately fit the image and have just been using trial and error until it looks right, so with apologies, I can’t be any help.