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

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
Re: Megaman 9

I noticed patching viWidth to 512 in 00000001.app in addition to Superrsonic's cheat code, will present the game in Dolphin with symmetrical geometry and no scaling artefacts, however it doesn't work on the console -- changing viWidth causes a green flickering screen. Perhaps an additional cheat code for viWidth might do the trick?

btw I tried re-adjusting xOrigin to (720-512)/2, and fiddled some more with fbWidth in conjunction with different cheatcode values, without success.
 
Last edited by NoobletCheese,

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,167
Trophies
1
XP
3,355
Country
Spain
Yes, I also got the green flickering screen weeks ago when trying, that's why I said that it might be hard to write the changes into the game... In fact these cheat codes are the only thing that have worked on my end.

Also, not important but I got time to configure the capture card's brightness, sharpness, etc and now it does better snapshots.
 

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
I find 8:7 to be much more pleasing to me even if it takes less of the screen.

I would be satisfied with 8:7 (1.14:1).

According to Dolphin screenshots...

16:9 + no code = 1.34:1
16:9 + code = 1.39:1
4:3 + no code = 1.29:1
4:3 + code = 1.04:1
16:9 + code + viWidth 512 = 1.10:1

The last one is what produces symmetrical objects in game, eg. the + on the title screen is exactly 15x15px, so my ideal for this game is skinnier than 8:7.

edit: I suppose 4:3 + code minimises the error relative to 1.10:1.
 
Last edited by NoobletCheese,

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
Just a note that measuring aspect ratio with a ruler on the display requires overscan to be disabled (my display doesn't allow disabling overscan in 480p mode so I could only measure it in Dolphin).

Also not all displays have accurate geometry. Mine happens to have symmetrical geometry in 480p mode according to a test pattern, but not in 480i mode where it is slightly off by 2%.
 
Last edited by NoobletCheese,

void89

New Member
Newbie
Joined
Jun 16, 2021
Messages
1
Trophies
0
Age
35
XP
36
Country
United States
so how did you all figure out megaman 9 480p?? and the filters ? im stuck with interlaced

--------------------- MERGED ---------------------------

how did you figure out 480p

View attachment 266430 View attachment 266432
View attachment 266431 View attachment 266429

I got to create a Gecko Code that let us fix the width of Mega Man 10, so now we can play 9 and 10 correctly, combined with the 480p modification and removing the VFilter! It looks so much better now...

Here's the code:

Code:
WRXE
Mega Man 10

Game width1 640 to 512 4:3 [SuperrSonic & Maeson]
2046bb24 028001e0
0446bb24 020001e0
e0000000 80008000

Game width2 640 to 512 4:3 [SuperrSonic & Maeson]
2050d680 028001e0
0450d680 020001e0
e0000000 80008000

It is a variation of SuperrSonic's code for MM10. It took a bit to find the right spot, but it was worth it!
The first code is for 4:3, and it works great on real hardware.

Funny thing is, both 4:3 and 16:9 grab the data from the same place, but each require a different code to be made. My Wii is set to 4:3 so I haven't tried it yet. Just in case, here's a preliminar 16:9 code that might work:

Code:
WRXE
Mega Man 10

Game width1 492 to 512 16:9 [SuperrSonic & Maeson]
2046bb24 028001e0
0446bb24 029a01e0
e0000000 80008000

Game width2 492 to 512 16:9 [SuperrSonic & Maeson]
2050d680 028001e0
0450d680 029a01e0
e0000000 80008000

Here's SS' code for MM9, before it gets buried on the USB Loader GX thread:

Code:
WR9E
Mega Man 9

Game width1 640 to 512
203016b0 028001e0
043016b0 020001e0
e0000000 80008000

Game width2 640 to 512
2039b264 028001e0
0439b264 020001e0
e0000000 80008000
//Both must be enabled to work correctly. Wii must be set to 4:3 mode.

Game width1 492 to 512 (Wii set to 16:9)
203016b0 028001e0
043016b0 029a01e0
e0000000 80008000

Game width2 492 to 512 (Wii set to 16:9)
2039b264 028001e0
0439b264 029a01e0
e0000000 80008000
//Both must be enabled to work correctly. Wii must be set to 16:9 mode.
 

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,167
Trophies
1
XP
3,355
Country
Spain
https://gbatemp.net/threads/usb-loader-gx.149922/page-1365#post-9479924

Start there and continue reading.

For the filter, just look for the usual ones, 08 08 0A 0C 0A 08 08, or 04 08 0C 10 0C 08 04 and replace them with 00 00 15 16 15 00 00. Or alternatively, just look for the GXSetCopyFilter string in this thread and disable them from the root.

For me to get them to work on my PAL system also needed the Custom Nand Loader Mod tools.
 

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
@void89

In case you get stuck here is a quick rundown of the procedure.

- Must be NTSC version of the game

- If your console isn't NTSC, you'll need to patch the game's WAD with Custom NAND Loader

- Create a file called WR9E.txt and paste Superrsonic's cheat codes into it:

Code:
WR9E
Mega Man 9 NTSC

Force 480p
28295b94 00000280
00295b93 00000002
00295ba7 00000000
e0000000 80008000

Disable deflicker filter
28295bc2 00000808
06295bc2 00000007
00001516 15000000
e0000000 80008000

16:9 pixel fix part 1
203016b0 028001e0
043016b0 029a01e0
e0000000 80008000

16:9 pixel fix part 2
2039b264 028001e0
0439b264 029a01e0
e0000000 80008000

4:3 pixel fix part 1
203016b0 028001e0
043016b0 020001e0
e0000000 80008000

4:3 pixel fix part 2
2039b264 028001e0
0439b264 020001e0
e0000000 80008000


- Copy WR9E.txt to SD:/txtcodes

- In ULGX settings for Megaman 9, open Ocarina and enable the first 4 cheat codes (or swap the last 2 if your Wii is set to 4:3) and click Create

- In ULGX Game Load settings for Megaman 9, enable Ocarina

- In ULGX Game Load settings for Megaman 9, set video mode to NTSC480p (for some reason this is required otherwise the game black screens for me, even if I patch the game's 01.app to 480p)

- In ULGX global loader settings, ensure channel launcher is set to main dol (it should be by default).


If you are still stuck with 480i or deflicker filter on, then you'll have to manually patch them out of the 01.app using wwcxtool.exe and a hex editor (I did this, but I don't think it's necessary since the cheat codes should take care of it anyway -- @ me if it doesn't work for you).
 
Last edited by NoobletCheese,

Draxikor

Well-Known Member
Member
Joined
Apr 24, 2019
Messages
342
Trophies
0
XP
1,260
Country
Mexico
@SaulFabre
I am very curious to know why this insistence to modify the NES vc games if the emulators of this console are quite good and have many more options than their versions of VC, with the N64 games it is understood since the emulation in the Wii is very basic but in a matter of NES I do not see why put so much effort with the VC.
 

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,145
Trophies
1
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,633
Country
Ecuador
@SaulFabre
I am very curious to know why this insistence to modify the NES vc games if the emulators of this console are quite good and have many more options than their versions of VC, with the N64 games it is understood since the emulation in the Wii is very basic but in a matter of NES I do not see why put so much effort with the VC.
Well, not everyone like to use and/or can use homebrew emulators because of some issues reported with them (such missing emulation, player issues, etc.), so they use Virtual Console emulators instead.
And my friend @Zorg1996 is also seeking everywhere how to replace that dark color pallete of NES VC with a brighter one but we didn't find anything.
So, anyone knows how to do it in anywhere (00000001.app, any other files to modify, etc...)?
 
  • Like
Reactions: Draxikor

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,145
Trophies
1
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,633
Country
Ecuador
@SaulFabre I don't if this will be a solution but there is a hack for the game "Felix the Cat" that removes the dim filter the game originaly has and makes the image brighter maybe this could point out a solution to VC
https://www.romhacking.net/hacks/2152/
thanks but the VC emulator still darkens the game and doesn't enjoy the brightness improvement hacks
I'm speaking about replacing the dark color pallete of NES VC in all releases of NES on Wii VC :P
 

Maeson

Well-Known Member
Member
Joined
Apr 3, 2013
Messages
1,167
Trophies
1
XP
3,355
Country
Spain
I've looked into it, I've not found anything that works. Looking old posts, SuperrSonic must know quite a bit about the subject, there are several threads about it and it seems like people found how to in the past but there's no written instructions. Looking for the values of the found palettes got me nothing either.

It's honestly very low priority for me, homebrew emulators are basically better in every way as far as performance, extra options and access to the library of games of that system (and rom hacks and translations), though. Specially since stuff like Fceumm on Retro Arch has options to remove slowdown from games make playing a good number of games simply play better.
 

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
Well, not everyone like to use and/or can use homebrew emulators because of some issues reported with them (such missing emulation, player issues, etc.), so they use Virtual Console emulators instead.
And my friend @Zorg1996 is also seeking everywhere how to replace that dark color pallete of NES VC with a brighter one but we didn't find anything.
So, anyone knows how to do it in anywhere (00000001.app, any other files to modify, etc...)?

What about increasing the middle value in the vfilter?

So there are 3 scenarios where inputting a custom vfilter in ULGX could be useful:

1. Setting per-game brightness for VC games
2. Setting a weaker vfilter to reduce dithering artefacts in games like RE4
3. Setting a weaker vfilter for 480i CRT users who want to reduce blur a bit without too much interlace flickering

CC: @blackb0x B-)
 
  • Like
Reactions: SaulFabre

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,145
Trophies
1
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,633
Country
Ecuador
What about increasing the middle value in the vfilter?

So there are 3 scenarios where inputting a custom vfilter in ULGX could be useful:

1. Setting per-game brightness for VC games
2. Setting a weaker vfilter to reduce dithering artefacts in games like RE4
3. Setting a weaker vfilter for 480i CRT users who want to reduce blur a bit without too much interlace flickering

CC: @blackb0x B-)
Well, i have a question @NoobletCheese

I don't know how to do these things like you, but could you guide me in that? I'm not a specialized programmer, and I don't know anything about the PowerPC algorithm, so can you help me with that?
PD: Hopefully i can handle a bit the hex editing ;)

Greetings
 

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
@SaulFabre

Assuming the VC game is a WAD, unpack the wad, decompress 01.app, open in hex editor, find all 060606060606060606060606060606060606060606060606 and for each one: if the string following it looks like a vfilter such as 00001516150000 or 08080A0C0A0808 etc., replace it with 000015XX150000 where XX is the amount of brightness increase you want, eg.

00001516150000 = no brightness increase
00001517150000 = 1 step brightness increase
00001520150000 = 10 steps brightness increase (0x20 - 0x16 = decimal 10)

I believe you could find the optimal amount of brightness increase by using the screenshot technique mentioned in your Kirby blog post so that white pixels just start to become RGB 255. If the game is like Kirby and white is RGB 179, the middle vfilter number should be (((255 / 179) x 64) - 21 - 21) = 0x31.

Note that searching 060606060606060606060606060606060606060606060606 won't find all vfilters in 01.app but should be sufficient for VC games.
 
Last edited by NoobletCheese,

Zorg07

Well-Known Member
Newcomer
Joined
Jul 14, 2019
Messages
93
Trophies
0
XP
995
Country
Peru
@SaulFabre

Assuming the VC game is a WAD, unpack the wad, decompress 01.app, open in hex editor, find all 060606060606060606060606060606060606060606060606 and for each one: if the string following it looks like a vfilter such as 00001516150000 or 08080A0C0A0808 etc., replace it with 000015XX150000 where XX is the amount of brightness increase you want, eg.

00001516150000 = no brightness increase
00001517150000 = 1 step brightness increase
00001520150000 = 10 steps brightness increase (0x20 - 0x16 = decimal 10)

I believe you could find the optimal amount of brightness increase by using the screenshot technique mentioned in your Kirby blog post so that white pixels just start to become RGB 255. If the game is like Kirby and white is RGB 179, the middle vfilter number should be (((255 / 179) x 64) - 21 - 21) = 0x31.

Note that searching 060606060606060606060606060606060606060606060606 won't find all vfilters in 01.app but should be sufficient for VC games.
Hello friend, it worked perfectly, the game is wonderful now, the kirby of the NES, no longer presents the brightness it had before. Thanks.
 

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,145
Trophies
1
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,633
Country
Ecuador
Hello friend, it worked perfectly, the game is wonderful now, the kirby of the NES, no longer presents the brightness it had before. Thanks.
I'm happy it had result for you @Zorg1996. Today I saw that I will try to do it if I have luck xD
Greetings

--------------------- MERGED ---------------------------

@SaulFabre

Assuming the VC game is a WAD, unpack the wad, decompress 01.app, open in hex editor, find all 060606060606060606060606060606060606060606060606 and for each one: if the string following it looks like a vfilter such as 00001516150000 or 08080A0C0A0808 etc., replace it with 000015XX150000 where XX is the amount of brightness increase you want, eg.

00001516150000 = no brightness increase
00001517150000 = 1 step brightness increase
00001520150000 = 10 steps brightness increase (0x20 - 0x16 = decimal 10)

I believe you could find the optimal amount of brightness increase by using the screenshot technique mentioned in your Kirby blog post so that white pixels just start to become RGB 255. If the game is like Kirby and white is RGB 179, the middle vfilter number should be (((255 / 179) x 64) - 21 - 21) = 0x31.

Note that searching 060606060606060606060606060606060606060606060606 won't find all vfilters in 01.app but should be sufficient for VC games.
@NoobletCheese and for values 08080A0C0A0808 and others different of 00001516150000 it is the same procedure for "removing" darkness by only modifying one value?
Please sorry me I'm new in editing filter in VC games for Wii XD
 

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,145
Trophies
1
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,633
Country
Ecuador
@NoobletCheese Well, tried increasing bright in Kirby's Adventure (NES) NTSC release for Wii VC using your guidelines, i replaced everything I found with 00001531150000, and these are the results:

Kirbys Adventure NES NTSC DARK FILTER.PNG Kirbys Adventure NES NTSC NO DARK FILTER yay.PNG

That is so nice, I also brighten the original Super Mario Bros. 1 NES Wii VC game (NTSC release) with these guidelines from you:

SMB1 NES Wii DARK FILTER.PNG SMB1 NES Wii NO DARK FILTER yay.PNG

But I have a big problem now: I couldn't get the same result when tried with other newer official VC releases of NES games in NTSC. I tried the same method with the NTSC releases of Wii VC of the NES games Super Mario Bros. 3 (NTSC) and Metroid (NTSC) but it still has too darkness and I know i'm using the right white RGB values and replaced the correct values. And doing it doesn't bright SMB3 or Metroid game, but it brightens too much the HOME Menu... ANY help? :(

Thanks! :)
 
Last edited by SaulFabre,
  • Like
Reactions: Zorg07

NoobletCheese

Well-Known Member
Member
Joined
Aug 12, 2018
Messages
533
Trophies
0
Age
25
XP
1,075
Country
United States
And doing it doesn't bright SMB3 or Metroid game, but it brightens too much the HOME Menu... ANY help? :(

SMB3 and Metroid appear to have 18 vfilters each, and they are all either 00001516150000 or 08080A0C0A0808.

Assuming you replaced all 18 of them with your custom 000015XX150000, there is nothing more I can help you unfortunately as the solution would require writing a custom GXSetCopyFilter function which is beyond my pay grade.
 
  • Like
Reactions: SaulFabre

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    They're made with left over pancake/wafle batter, that's been sitting out all day.
  • BigOnYa @ BigOnYa:
    3 hours on a riding lawn mower, my butt is numb and my whole body is still vibrating. Gonna be a long summer. :cry: I just need to buy some goats.
    +1
  • SylverReZ @ SylverReZ:
    @BigOnYa, Did you leave your buttplug in?
    +2
  • BigOnYa @ BigOnYa:
    I feel like I spent the night with Ancientboi
    +3
  • Flame @ Flame:
    Ancientboi at it again.
    +2
  • Flame @ Flame:
    is it a bird is it a plane... no its Ancientboi banging your ass away !
    +3
  • K3Nv2 @ K3Nv2:
    Took along time to fit it in?
  • K3Nv2 @ K3Nv2:
    Snow days $25 on steam may grab it
  • SylverReZ @ SylverReZ:
    Measuring sizes with AncientBoi, I see.
  • K3Nv2 @ K3Nv2:
    I guess Ancientboi would be Peter
    +2
  • SylverReZ @ SylverReZ:
    Loooooool :rofl2:
  • SylverReZ @ SylverReZ:
    So true
  • BigOnYa @ BigOnYa:
    @K3Nv2 Snow Day is pretty fun. My only bitch would be the camera controls, when you move around, say down, you have to move the right stick left or right to get camera to turn and get your view, other than that I like it so far.
  • K3Nv2 @ K3Nv2:
    From what people say pvp isn't even worth it
  • BigOnYa @ BigOnYa:
    I just been playing offline, and they give you a few bots here n there on your team to help battle. I don't think it's as funny as the other games tho, more battle oriented than humor, which kinda sucks, but I'm still early in it
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, doesnt the game have a campaign mode?
  • BigOnYa @ BigOnYa:
    Yea, and co-op, but you can also start a pvp session and battle just with friends. You get special skill cards (powers) the more you play. And higher value cards, but you can only enable so many cards at a time.
  • K3Nv2 @ K3Nv2:
    If you can find enough for it
  • BigOnYa @ BigOnYa:
    Toilet paper is considered the money, you collect and buy stuff with TP, kinda funny. Graphics are def better than the other games tho, I think they used Unity 5 engine.
  • Psionic Roshambo @ Psionic Roshambo:
    Look if I zoom in enough I can see the herpes!!!
    +1
  • BigOnYa @ BigOnYa:
    In fact I'm gonna go make a drink, roll a fatty n play some, good night to all!
    +1
    Xdqwerty @ Xdqwerty: