Some games actually have more than 1 dol; for example, before the issue of IOS reloading was resolved, the only way to play "House of the Dead 2 & 3 Return" was by selecting the alt dol for the game you wanted to play within the loader before launching the game. So if you wanted to play house of the dead 2, you had to select hod2.dol, and if you wanted to play hod3 you had to select a different dol (presumably hod3.dol, but working from memory). You could not return to the game's main menu and switch between hod2 & hod3 without exiting, returning to the loader and selecting a different alt dol. If I recall correctly, some loaders even had the option to allow you to select which dol to load from within the game image itself, so you didn't need to extract the dols and keep them in a separate folder. All this was rendered moot when d2x solved the IOS reloading issue, now we typically just load up the main dol, and then when the game loads hod2.dol or hod3.dol depending on what the user selects at the title screen, it doesn't actually reload the IOS so it works seamlessly, allowing you switch between hod2 and hod3 without returning to the loader and messing with alt-dols.edit2: it seems there are more games that don't use main.dol:
Mortal Kombat Armageddon: MK7.dol
Red Steel: redsteel.dol
Medal of Honor 2: game.dol
House of the Dead 2: hod2.dol
SSX Blur: ssx.dol
Super Swing Golf: PangyaRev.dol
Wii Sports Resort: player.dol
Madden NFL 07: madden.dol
Madden NFL 08: maddens.dol
Metal Slug Anthology: ms6.dol
Metroid Prime: Trilogy: rs5mp1_p.dol
However the page I got these from seems to indicate 'use alternate DOL' should work. I will test and report back...
mv@mv-pc:/tmp$ find . -type f -name *.dol -print | while read f; do echo "$f: $(~/Datengrab/Wii/Project/Disable_Vilfter/py_disable_GXSetCopyFilter.py -i "$f" --check)"; done
./RT5E8P/DATA/sys/main.dol: GXCopyFilter: set (offset: 2256980)
./RT5E8P/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./SEUPEY/sys/main.dol: GXCopyFilter: set (offset: 1514272)
./RB4E08/DATA/sys/main.dol: GXCopyFilter: set (offset: 1620964)
./RB4E08/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./RWCE4Z/sys/main.dol: GXCopyFilter: set (offset: 847800)
./SNJE69/DATA/sys/main.dol: GXCopyFilter: set (offset: 604016)
./SNJE69/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./SS9JMS/DATA/sys/main.dol: GXCopyFilter: set (offset: 730432)
./SS9JMS/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./SILE78/sys/main.dol: GXCopyFilter: set (offset: 2190736)
./SV4E8P/files/sys/mpls_movie/player.dol: GXCopyFilter: set (offset: 494880)
./SV4E8P/sys/main.dol: GXCopyFilter: set (offset: 3055456)
./RSBE01/P-HBLE/sys/main.dol: GXCopyFilter: set (offset: 698756)
./RSBE01/P-HBKE/sys/main.dol: GXCopyFilter: set (offset: 698756)
./RSBE01/P-HBIE/sys/main.dol: GXCopyFilter: set (offset: 242500)
./RSBE01/P-HBGE/sys/main.dol: GXCopyFilter: set (offset: 242500)
./RSBE01/P-HBFE/sys/main.dol: GXCopyFilter: set (offset: 242500)
./RSBE01/P-HBEE/sys/main.dol: GXCopyFilter: set (offset: 225548)
./RSBE01/P-HBDE/sys/main.dol: GXCopyFilter: set (offset: 218504)
./RSBE01/P-HBCE/sys/main.dol: GXCopyFilter: set (offset: 225520)
./RSBE01/P-HBBE/sys/main.dol: GXCopyFilter: set (offset: 226164)
./RSBE01/P-HBAE/sys/main.dol: GXCopyFilter: set (offset: 224448)
./RSBE01/P-HA9E/sys/main.dol: GXCopyFilter: set (offset: 218504)
./RSBE01/P-HA8E/sys/main.dol: GXCopyFilter: set (offset: 218504)
./RSBE01/DATA/sys/main.dol: GXCopyFilter: set (offset: 1996972)
./RSBE01/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./RJZP7U/sys/main.dol: GXCopyFilter: set (offset: 1331696)
./RVSE69/DATA/sys/main.dol: GXCopyFilter: set (offset: 4933516)
./RVSE69/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./R4QE01/sys/main.dol: GXCopyFilter: set (offset: 3799320)
./RMCP01/CHANNEL/sys/main.dol: GXCopyFilter: set (offset: 389872)
./RMCP01/DATA/sys/main.dol: GXCopyFilter: set (offset: 1486048)
./RMCP01/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./RZZE8P/sys/main.dol: GXCopyFilter: set (offset: 3261756)
./S72E01/files/vc/SF_sdx/SF_sdx.dol: GXCopyFilter: set (offset: 278848)
./S72E01/files/vc/SF_kby3/SF_kby3.dol: GXCopyFilter: set (offset: 278736)
./S72E01/files/vc/GB_kby2/GB_kby2.dol: GXCopyFilter: set (offset: 533168)
./S72E01/files/vc/GB_kby1/GB_kby1.dol: GXCopyFilter: set (offset: 533168)
./S72E01/files/vc/FC_yume/FC_yume.dol: GXCopyFilter: set (offset: 241120)
./S72E01/files/vc/64_k64/64_k64.dol: GXCopyFilter: set (offset: 757824)
./S72E01/sys/main.dol: GXCopyFilter: set (offset: 202656)
./RGSE8P/DATA/sys/main.dol: GXCopyFilter: set (offset: 1891724)
./RGSE8P/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./SF8P01/DATA/sys/main.dol: GXCopyFilter: set (offset: 4836412)
./SF8P01/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./R69E36/DATA/sys/main.dol: GXCopyFilter: set (offset: 1803036)
./R69E36/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./R26E5G/sys/main.dol: GXCopyFilter: set (offset: 803784)
./RS4EXS/sys/main.dol: GXCopyFilter: set (offset: 3477284)
./RBRP5G/sys/main.dol: GXCopyFilter: set (offset: 1790316)
./R6REJH/DATA/sys/main.dol: GXCopyFilter: set (offset: 4429168)
./R6REJH/UPDATE/sys/main.dol: GXCopyFilter: not found (offset: None)
./RHOE8P/sys/main.dol: GXCopyFilter: set (offset: 3418784)
./RSXE69/files/ssx.dol: GXCopyFilter: set (offset: 3462552)
./RSXE69/sys/main.dol: GXCopyFilter: set (offset: 108784)
./RHDE8P/files/ZExec/hod3.dol: GXCopyFilter: set (offset: 1450312)
./RHDE8P/files/ZExec/hod2.dol: GXCopyFilter: set (offset: 1114604)
./RHDE8P/sys/main.dol: GXCopyFilter: set (offset: 1450312)
See post #119.
edit: apologies if I didn't explain enough -- I saw you were already patching WADs so I assumed you had the prerequisite knowledge. Basically you want to extract /sys/main.dol from the iso/wbfs using a tool such as WiiBackupFusion (GUI) or WIT (command line) using the command:
Code:wit extract "C:\Games\Game.wbfs" "C:\Extracted" --files +/sys/main.dol --overwrite --flat
Then open it in a hex editor such as HxD and do a 'find and replace' on the string in post #119.
Then either:
a) copy the modified main.dol into /sys/ where WiiBackupFusion extracted the image to, then rebuild the image with WiiBackupFusion, or
b) rename main.dol to GameID.dol where GameID can be found from many places, such as gametdb.com/titles.txt, then copy to a folder on SD/USB drive and point the USB game loader to that folder and enable 'use alternate dol' for that game.
I'm working on a GUI to automate all this, but it's turning out to be way more complicated than I initially planned due to all these little caveats here and there (the goalposts keep moving). Aiming to have it finished in 2-3 weeks.
On the other hand in the Muramasa game I applied the parameters 08080A0C0A0808 and 04080C100C0804, although it looks sharper, I suspect that the menus and 2d layers could be seen better. Could it be that I have another filter activated?
Animal Life - Doubutsu Fureai Seikatsu (1.1)
Bit.Trip Beat (v256)
Cave Story (v258)
Dr.Mario (v256)
Excitebike: World Rally (v512 USA, other regions have 1 version)
Family & Friends Party (v257 USA, v258 Europe)
Final Fantasy M.L.A.A.K.(v256 Japan)
Gradius Rebirth (v257 USA & Europe, v256 Japan)
Jett Rocket (V512 Europe)
Kotoban No Puzzle (v2 Japan)
La Mulana (v257 Japan, other regions have 1 version)
Lost Wind Winter of Mel.(v257 Europe, other regions have 1 version)
Max & The Magic Marker (v256 Europe, other regions have 1 version)
My Pokémon Ranch (v256 USA)
Okiraku Daifugou Wii (v257 Japan)
Okiraku Sugoroku Wii (V5 Japan)
Rakugaki Hero (v256 Japan)
Sonic The Hedgehog 4 (v256 Japan)
Texas Hold'em Tournmnt. (v256 Europe)
TV Show King (v256 USA)
Emeraldia VC Arcade (v256, only released in Japan)
Fighting Street TGCD (v256 Japan, others only have 1 version)
Fire Emblem Seisen no Keifu (V256, only released in Japan)
Star Blade (v257 Japan)
I have played a couple of hours of RE4 now, and am really enjoying the sharper picture (and great motion controls!). But the game uses lots of dithering, which doesn't look that good. I am guessing the (de)flicker filter hides it normally, but without it, the dithering is too much.
Would it be possible to do a similar hex edit to remove the dithering? With Swiss it is possible to remove alpha dithering, so I was thinking this might also be possible?
btw I created a separate thread on the dithering https://gbatemp.net/threads/disable-dithering-via-hex-editing.558951/
I wanted to add, that while Resident Evil 4 has noticeable dithering when removing the filters, it still looks better to me, and specially on 16:9, as what the game does on that setting is to zoom in into the original 4:3 viewable area, which made it look HORRIBLE, with huge pixels and extreme blurriness. With filters removed it looks much more acceptable to me.
Edit: With the aforementioned filter is... kinda like a middle road. I can still see the dithering if I stop and look, but it's more subdued than with an unfiltered dol. It's less sharp, but it's far from how blurry it looked originally.
I guess it'd be the choice for most.
I'd like to patch the first argument to GX_PF_RGB8_Z24 but it requires adding an extra line to the top of the function, which then corrupts the dol's section offsets and it crashes.
Another option might be to sacrifice one line of code somewhere in the function, to open up a space to put the new line in.
It is possible to disable the blurred image of some VC games ?