Hacking Possible to Disable the Wii's (De)Flicker Filter?

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,180
Trophies
1
XP
3,387
Country
Spain
Sorry for bothering you @NoobletCheese , but time ago we talked about making "16:9 only games" be full screen on 4:3. I've been trying stuff to no avail, but I found a couple of codes for DKCR and Xenoblade Chronicles, unfortunately only for the NTSC-US versions.

I would like to ask if you could try them if you have the time, to see if they really work.

Here's the link to the DKCR one.

C20CF210 00000009 3E408063 625249E0 8272001C C0228D90 2C130001 41820014 3E803F80 9282CE44 3E803F40 48000014 3E803F80 62940000 9282CE44 3E803F80 9282CE3C 60000000 60000000 00000000 C24E4930 00000002 C162CE3C ED0B4024 60000000 00000000 0408e4a0 38000001 0408e4cc 38000001 0414a064 38000001 0428892c 38000001 042897f8 38000001 042de078 38000001 042de290 38600001 042fcf34 38000001 044e4908 c162CE44

I tried with PAL , just in case it was compatible but no, it hangs the game on title screen. I'd like to port them but it seems it would take quite a lot of time and I don't have an NTSC version to compare memory addresses.
 
  • Like
Reactions: Webardo

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
252
Trophies
0
Age
40
XP
598
Country
Germany
dont know if 240p is possible, but again the hint in the upper right corner says only 480i/p
png.png
 

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,180
Trophies
1
XP
3,387
Country
Spain

totakeke95

Well-Known Member
Member
Joined
Dec 25, 2020
Messages
146
Trophies
0
XP
869
Country
Spain
There's a little trick to getting 240p on VC. You have to go to the electronic manual (wii home menu) and connect the nunchuk to the wii mote.
Press A+1+Z at the same time and you'll hear a high-pitched ringer and now you'll have 240p resolution in VC.
I think VC 64 doesn't work but in SNES for example yes, I don't know if in arcade or others they work too, just do the test.
 

iGom

Well-Known Member
Newcomer
Joined
Jul 5, 2019
Messages
57
Trophies
0
XP
313
Country
United Kingdom
Just search for every occurance of 060606060606060606060606060606060606060606060606 and 03020906030A03020906030A09020306090A09020306090A in main.dol, and look at the following 7 bytes which is the vertical filter setting, according to GXRModeObj definition in https://github.com/devkitPro/libogc/blob/master/libogc/video.c

00001516150000 = no filter
08080A0C0A0808 = Ntsc480ProgSoft
04080C100C0804 = Ntsc480ProgAa
07070C0C0C0707 = Mario Kart Wii
05050F0E0F0505 = Mario Kart Wii
20002000000000 = Mario Galaxy 1&2

The number says how much to blend the source pixel with the above/below pixel.

I'm not sure why there are 3 values for the source pixel (is it the mix of RGB?) and 2 values each for above/below pixel (luma/chroma?).

In any case, we can see the leading and trailing 0's in [0000][151615][0000] means don't blend any above/below pixels, and the middle 3 numbers sum to 64 (0x40) which is the largest 6-bit value*, so the source pixel gets passed through unmolested.

* actually 63 (0x3F) if we start from 0, so I'm not sure why the middle number is 16 instead of 15.



I have been trying to patch Donkey Kong Country without success.

I found the block which the game uses at offset 57F306, as I can modify some of the parameters there and change display mode to interlace or split the frame in 2 like in Superrsonic's image.

By default its filter is already set to 00001516150000 (disabled) but visually it still appears a bit softened and the system menu overlays are showing that too, just like Mario Kart Wii and Mario Galaxy.

No matter what values I put in there, there is no change to the image. Also tried putting values in every other video mode block to no effect. The game appears to be completely ignoring the filter setting.

I speculate the game may be calling some other API function which sets the filter manually without referencing a GXRModeObj, so changing the GXRModeObj won't work.

I think we need to use a break point with Dolphin find the address of that function so we can patch it, but I lack the knowledge to do this. Someone like @SuperrSonic or @Extrems might know...
I know it's now possible to patch the game through WiiFlow Lite, but I'd like to do it manually just to learn the thing. But what if the *.dol file has more than one of these occurences, for example the Metroid Trilogy dols get more than one of 06060606060606060606060606060606060606060606060608080A0C0A0808
Do I have to patch all of them?
 
Last edited by iGom,

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,180
Trophies
1
XP
3,387
Country
Spain
There should be as many as video modes the devs added to the game (not necessarily support), so yeah, the normal thing is having more than one. If you're playing on Progressive Scan, probably you need only to change the one related to that video mode, but if you don't know which one it is, you can simply edit all of them.

On the dols I modified for my own use I did change all of them and had no issues.

Also, are you sure Wiiflow is capable of patching out the filter with games such as Metroid Prime Trilogy? As far as I read patching-on-the-fly that loaders can do can't really keep on the patch on games that switch between dols.
 
  • Like
Reactions: iGom

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
252
Trophies
0
Age
40
XP
598
Country
Germany
no, just disable gxsetcopyfilter and you dont have to bother with individual vfilters.
(edit: but be aware that this can cause issues with some games, e.g. brightness setting in re4 wont work anymore)
 
  • Like
Reactions: iGom

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,809
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,800
Country
Cyprus
Hey everyone, I'm adding the new deflicker priiloader hack to ModMii, and in it's custom guides it includes a table describing each system menu hack, similar to the one seen at the bottom of this page: https://wii.guide/priiloader

This is what I have drafted so far:
Remove Deflicker: Prevents "blurring" on 480i video signals which were originally meant to prevent "flickering" on CRT TVs.

Does anyone suggest any adjustments?
 

fledge68

Well-Known Member
Member
Joined
Jan 30, 2012
Messages
2,438
Trophies
2
XP
4,960
Country
United States
Hey everyone, I'm adding the new deflicker priiloader hack to ModMii, and in it's custom guides it includes a table describing each system menu hack, similar to the one seen at the bottom of this page: https://wii.guide/priiloader

This is what I have drafted so far:
Remove Deflicker: Prevents "blurring" on 480i video signals which were originally meant to prevent "flickering" on CRT TVs.

Does anyone suggest any adjustments?
Don't you mean prevents blurring on 480p? Interlaced TV need the deflicker or am I wrong?
 

smf

Well-Known Member
Member
Joined
Feb 23, 2009
Messages
6,642
Trophies
2
XP
5,860
Country
United Kingdom
Don't you mean prevents blurring on 480p? Interlaced TV need the deflicker or am I wrong?
I thought the deflicker was used in 480i mode to blur between odd and even lines to prevent flicker.

lcd tvs will have their own processing to deinterlace and they don't suffer from flicker, which is why you'd want to disable the deflicker.

The does however have wii has a soften filter in 480p modes.
 
Last edited by smf,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    HiradeGirl @ HiradeGirl: :discuss: