Wii output is fixed. Hooray!

OilFreak

Active Member
Newcomer
Joined
Feb 7, 2023
Messages
39
Trophies
0
XP
218
Country
United States
Would it ever be possible to get custom HD textures to load into wii games playing on the Wii U? I like playing my games natively, and for Wii games I like to play on a TV.
It's probably not possible but I figured I'd just ask lol
 

CheatFreak47

Catgirl Expert
Member
Joined
Oct 11, 2011
Messages
1,574
Trophies
2
Age
28
Location
Michigan, USA
XP
2,771
Country
United States
As @Vague Rant already teased, I've spent the past few weeks reverse engineering the DMCU firmware and trying to fix some of the issues mentioned with vWii mode.
This resulted in the following Aroma plugin which can apply DMCU patches to achieve a custom viewport and maybe more things in the future: https://github.com/GaryOderNichts/evwii
Note that I'm definitely not a video quality enthusiast so any feedback would be appreciated : P
Also thanks to @Vague Rant who helped a lot with this!
Disregard the previous edit of this post. After further testing, I've determined the issue may now be related to hacking games to match the internal framebuffer for video width.

All I can say is WOW this is a definitely massive improvement over stock vWii. Settings used for the DMCU are 704x480 on both the TV and Gamepad.

Interestingly the issues with Chroma shift aren't really a problem now with evwii, almost at all, if you're running without the patches to games that resize the framebuffer, the problem rears it's ugly head again only when patching the video witch of games so far, at least in my testing. So assuming you just like patching out deflicker, I'd say this is more or less unilaterally an improvement as is.

If you use the framebuffer patch, you're more likely to run into the chroma shift issue it seems. Anyway, here's a few screenshots.
My Great Capture Screenshot 2023-03-26 03-21-21.png
My Great Capture Screenshot 2023-03-26 03-27-45.png


Also, upscaling artifacts seem much less noticable in 1080p/720p mode now too, but that could just be placebo?
 
Last edited by CheatFreak47,

Clector

Well-Known Member
Member
Joined
Mar 15, 2016
Messages
1,076
Trophies
0
Location
Not here
XP
458
Country
Bangladesh
It seems to be a problem with how most homebrew sets the video output actually, but some official software also gets affected by it through the disc channel.
 

Deleted member 42501

Well-Known Member
OP
Member
Joined
Jun 16, 2006
Messages
1,724
Trophies
2
XP
4,259
Crisp!

@GaryOderNichts This is great progress. I am wondering if it would be possible to add in some kind of screen filtering? The SNES Classic CRT with scanlines looks so pleasing without being too blurry and it really hides a lot of the jaggies.

It seems like this with the mods we've got already would be very close to bringing the original Wii picture back on HD sets. Possible?

Zfast CRT is a close second and is also quite lightweight:

https://github.com/libretro/glsl-shaders/blob/master/crt/shaders/zfast_crt.glsl
 
  • Like
Reactions: RetroGen

CheatFreak47

Catgirl Expert
Member
Joined
Oct 11, 2011
Messages
1,574
Trophies
2
Age
28
Location
Michigan, USA
XP
2,771
Country
United States
It seems to be a problem with how most homebrew sets the video output actually, but some official software also gets affected by it through the disc channel.
I've been spending some time testing with Nintendont's Video Width Option and it seems, at least, according to my current results, that the chroma shift problem actually has corrilation to video width, and the same probably applies to Wii games as well (which would imply good things if Blackb0x could figure out fully custom width patching)

I'm currently getting the best results for reducing chromashift in Nintendont by setting width to 86 or 88., but I'm not entirely sure if this is causal or just a coincidence. (It doesn't seem 100% consistent)

It would be better if this could be improved with patches to DMCU though.
 
Last edited by CheatFreak47,

ber71

Well-Known Member
Member
Joined
Apr 24, 2019
Messages
561
Trophies
0
Age
58
XP
2,461
Country
Spain
As @Vague Rant already teased, I've spent the past few weeks reverse engineering the DMCU firmware and trying to fix some of the issues mentioned with vWii mode.
This resulted in the following Aroma plugin which can apply DMCU patches to achieve a custom viewport and maybe more things in the future: https://github.com/GaryOderNichts/evwii
Note that I'm definitely not a video quality enthusiast so any feedback would be appreciated : P
Also thanks to @Vague Rant who helped a lot with this!
Great work. Do you have plans for include this plugin into the Additional Plugins and Modules section from https://aroma.foryour.cafe ?
 

martindrengen

Member
Newcomer
Joined
Jul 21, 2020
Messages
20
Trophies
0
Age
36
XP
154
Country
Denmark
I tried the framebuffer aspect fix on my Wii Dual modified console. Combined with the mods chroma fix option It does make a noticeable difference. It's still far from great image quality, I have long since given up on a decent picture from that console anyway, but I'll welcome any kinds of improvements :)

I much prefer the original Wii Menu to any harddrive launchers. Is it possible that the framebuffer aspect ratio could be added system wide somehow? Maybe through Priiloader? (I have no idea how this works) :)
 

Clector

Well-Known Member
Member
Joined
Mar 15, 2016
Messages
1,076
Trophies
0
Location
Not here
XP
458
Country
Bangladesh
The greenish at the left and right edge can be seen on the Wii Menu as is as well as some other software through official launching methods with the 1:1 output. It's just that homebrew seems more susceptible in general from suffering the chroma shift with how they set the video output.

Since most things use libogc and derivates, maybe something related with it? But it should be checked properly.

Albeit still a problem on Nintendo's part with the DMCU firmware and VI emulation implementation of the Wii U.
 

mirrorbender

New Member
Newbie
Joined
Mar 28, 2023
Messages
2
Trophies
0
Age
30
XP
43
Country
United States
I've been spending some time testing with Nintendont's Video Width Option and it seems, at least, according to my current results, that the chroma shift problem actually has corrilation to video width, and the same probably applies to Wii games as well (which would imply good things if Blackb0x could figure out fully custom width patching)

I'm currently getting the best results for reducing chromashift in Nintendont by setting width to 86 or 88., but I'm not entirely sure if this is causal or just a coincidence. (It doesn't seem 100% consistent)

It would be better if this could be improved with patches to DMCU though.
My observation has been that the chroma shift is dependent on the horizontal position, or more specifically whether the vi x origin is odd or even, rather than necessarily the vi width. Changing the width in nintendont also changes the x origin to keep the image centered in the same place which is why it has an effect.

In my testing with nintendont, it seems that the stock configuration of the vWii likes the the vi x origin to be odd. For example, Mario Kart DD has a stock width of 666, which gives an an x origin of 27 (odd), resulting in better chroma alignment. F-Zero GX, on the other hand has a stock width of 640, resulting in in an x origin of 40 (even), and misaligned chroma. However, if I shift the F-Zero output left or right by 1 in nintendont (vi x origin of 39 or 41), the chroma becomes better aligned.

This would seemingly be a result of sloppy handling of 4:2:2 chroma subsampling, where it is unable to shift the color alignment with single pixel precision.
 

dekgear

Active Member
Newcomer
Joined
Jul 31, 2022
Messages
32
Trophies
0
Age
29
Location
Araucanía
XP
370
Country
Chile
As @Vague Rant already teased, I've spent the past few weeks reverse engineering the DMCU firmware and trying to fix some of the issues mentioned with vWii mode.
This resulted in the following Aroma plugin which can apply DMCU patches to achieve a custom viewport and maybe more things in the future: https://github.com/GaryOderNichts/evwii
Note that I'm definitely not a video quality enthusiast so any feedback would be appreciated : P
Also thanks to @Vague Rant who helped a lot with this!
Does this plugin work with Wii VC titles as well? As in, Wii games loaded from the Wii U menu?
 

Ninte86hl

Member
Newcomer
Joined
Mar 5, 2022
Messages
19
Trophies
0
Age
37
Location
Lübeck
XP
692
Country
Germany
@GaryOderNichts Hey...I noticed some greenish line on the left side when using 720 as TV Viewport Width and booting into vwii 480p using boot2vwii.
Maybe you can fix it 🤔?
 

Attachments

  • PXL_20230328_072538293.jpg
    PXL_20230328_072538293.jpg
    3.8 MB · Views: 95
  • PXL_20230328_075111854.jpg
    PXL_20230328_075111854.jpg
    2.1 MB · Views: 113

Vague Rant

Deceptively cute
Member
Joined
Aug 7, 2008
Messages
2,463
Trophies
2
Location
Melbourne
Website
vaguerant.tumblr.com
XP
3,302
Country
@GaryOderNichts Hey...I noticed some greenish line on the left side when using 720 as TV Viewport Width and booting into vwii 480p using boot2vwii.
Maybe you can fix it 🤔?

This could be related to the chroma offset issue that's been discussed elsewhere in the thread. That said, even on the original Wii, you were never meant to see more than 704 pixels horizontally. Unless you have a very specific reason to want to see more than intended, 704 should be considered the correct and ideal width, and is the only option which offers the correct Wii aspect ratio when used with the maximum (480/576) viewport heights. The remainder is explicitly off-screen by design. No commercial software uses the very edges like that and only a few homebrews even have the option to.
 

Ninte86hl

Member
Newcomer
Joined
Mar 5, 2022
Messages
19
Trophies
0
Age
37
Location
Lübeck
XP
692
Country
Germany
This could be related to the chroma offset issue that's been discussed elsewhere in the thread. That said, even on the original Wii, you were never meant to see more than 704 pixels horizontally. Unless you have a very specific reason to want to see more than intended, 704 should be considered the correct and ideal width, and is the only option which offers the correct Wii aspect ratio when used with the maximum (480/576) viewport heights. The remainder is explicitly off-screen by design. No commercial software uses the very edges like that and only a few homebrews even have the option to.

Thanks for your answer. I have set 720 because that's the only way the picture is displayed centrally on my TV. if I set it to 704 then I have a slightly shifted image to the right.
Edit: the right shift is caused by my TV
 
Last edited by Ninte86hl,

Clector

Well-Known Member
Member
Joined
Mar 15, 2016
Messages
1,076
Trophies
0
Location
Not here
XP
458
Country
Bangladesh
It's the chroma shift that has been talked about.

Also if using the 480p and 576p output option (and I guess here is caring about the aspect ratio), you normally won't want to use 704. Most modern displays already zoom (for overscan), scale and stretch the image for this kind of lower resolution signals automatically already; so it'll be the Wii U doing that and then the display again to what the Wii U did on most cases.

Displays that offer 1:1 for these kind of resolutions aren't too common.
 

Feffe

Well-Known Member
Member
Joined
Oct 12, 2008
Messages
225
Trophies
1
XP
2,112
Country
Italy
If I understood correctly, the best Wii picture quality should be provided by:

evWii -> boot2vwii (480p) -> USB Loader GX with deflicker on and framebuffer off (-> something like the mClassic, I suppose)

Right?
 

CheatFreak47

Catgirl Expert
Member
Joined
Oct 11, 2011
Messages
1,574
Trophies
2
Age
28
Location
Michigan, USA
XP
2,771
Country
United States
If I understood correctly, the best Wii picture quality should be provided by:

evWii -> boot2vwii (480p) -> USB Loader GX with deflicker on and framebuffer off (-> something like the mClassic, I suppose)

Right?
I thought that too, but it seems to be in practice it's more like:
evWii set to 704x480 -> boot2vwii 720p/1080p -> USB Loader GX with deflicker set to Off (Extended) and Video Width set to Auto

If you use an mClassic I suppose that using 480p mode may be better, but I think it's considerably more blurry still, and it seems like evWii eliminates some of the problems with running in 720p/1080p mode.

I would say to match framebuffer too for more crisp visuals, but the problem then is the chroma shifting becomes significantly worse when matching framebuffer for some reason, and that problem is arguably more noticeable than the mild blur caused by framebuffer stretching.

Anyway, in my experience, this seems to get the most clear picture from vWii, and you can see the results I posted above. https://gbatemp.net/threads/wii-output-is-fixed-hooray.628514/post-10110983

For Nintendont you may also want to experiment with manual video widths as well.
 

Vague Rant

Deceptively cute
Member
Joined
Aug 7, 2008
Messages
2,463
Trophies
2
Location
Melbourne
Website
vaguerant.tumblr.com
XP
3,302
Country
If I understood correctly, the best Wii picture quality should be provided by:

evWii -> boot2vwii (480p) -> USB Loader GX with deflicker on and framebuffer off (-> something like the mClassic, I suppose)

Right?

Basically what CheatFreak47 said.

However, for anybody who does go with using USB Loader GX to match the video width to the framebuffer, you might also want to set the viewport width to 640 in evWii. The former will make the image display too slim and the latter will make it display too wide, so they sort of cancel each other out. Unless you have an external upscaler with the ability to account for the squish from changing the video width, you may as well do that step on the Wii U via evWii. But again, I think it's more advisable to just stick with viewport 704 and letting games set their own video width unless you know for a fact they're doing it wrong, because a one-size-fits-all solution isn't really possible. Every game is different (and uses different video widths), so forcing them all to use the same one will have mixed results.

As an example of a game doing it wrong, The Simpsons: Hit and Run for GameCube uses a video width of 640 (equivalent to the Framebuffer setting in USB Loader GX) but is rendered with the assumption of square pixels (equivalent to setting video width to 704). You can tell because everything in the game looks squishy: circles look like eggs, etc. In this case, it makes sense to either adjust the width in Nintendont or set evWii to viewport width 640, either of which will stretch the game out to the originally intended aspect ratio.
 

Vague Rant

Deceptively cute
Member
Joined
Aug 7, 2008
Messages
2,463
Trophies
2
Location
Melbourne
Website
vaguerant.tumblr.com
XP
3,302
Country
Maybe a stupid question, but does this new plugin, evwii, work with wii, vc injects?

Yep, covers everything that runs in Wii mode, as long as you arrive there via the Wii U Menu. That means the Wii icon, the disc icon with a Wii disc inserted, Wii retail VC or Wii VC injections. The one time it doesn't work is if you boot into Wii mode before the plugin is running. That means if you hold Plus/Start while booting up the Wii U and come to the Boot Selector (Wii U Menu, vWii System Menu, vWii Homebrew Channel), selecting either of the vWii options will boot you into Wii mode before evWii ever starts, so you won't get the enhancements.
 
  • Like
Reactions: godreborn

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: The Real Jdbye yeah those are great too