Hello. This is my first post on Gamehacking.org.
Lately I have been playing Tales of Symphonia, and found out that the Japanese version has almost complete voiceover for skits. It makes the game much more lively. Unfortunately the PC version is a crappy port, and I decided to play the Japanese Gamecube version on Dolphin, even if I barely understand Japanese.
Anyway, the Gamecube version has some drawback, like lack of widescreen, and the blurry "focus" effect. And it seems people mainly post graphical code for US/PAL version. To improve my experience, I decided to port some of those code to the Japanese version of the game.
$No Blur
04023828 4E800020
0403EBE4 4E800020
*Found on https://wiki.dolphin-emu.org/index.p...s_of_Symphonia
*Probably originally made by gamemasterplc, but I am not sure
*Ported to JP by me
$16:9 Aspect Ratio (Widescreen) code [Ralf]
040FD988 C3A2882C
0434CEAC 3FE38E39
*Originally for PAL/German by Ralf, ported to JP by me
*HUD is stretched. I am not sure if it is also true on PAL release
Some personal experience when porting the codes:
The first code was converted to the corresponding Japanese version address by comparing the Gamecube RAM dumps of NTSC-J and NTSC-U versions, using Dolphin. I basically followed the steps found on a forum thread https://mkwii.com/showthread.php?tid=113 . In the US version, the 0x23C10 offset corresponded to hex 94 21 FF 70 .
Funnily enough, there were seven instances of 94 21 FF 70 in the 0x2xxxx range on the J version. I used trial and error to find out the address, which was 0x23828. What puzzled me the most was that the memory offset at 0x23550 had memory content around it way more similar to the one at 0x23C10 from US dump. No blur code didn't work with 04023550 though.
The second code conversion is based on explanation found in https://gamehacking.org/vb/forum/vid...nia-french-pal . Ralf did a very good explanation on his 16:9 code, such that I could just recalculate the corresponding address on the second line, which was R2 (80354680h) - 30676d = 8034ceac. The register r2 is a constant, though it apparently varies between different regions of the game. The first line address was probably found a little bit by luck. In the original code for PAL/German, he anotated "8010071C: FFA01090 fmr f29,f2 ; f29: aspect ratio" . I assumed that FFA01090 should present in every RAM dumps of different regions, since all Gamecube versions should be rendering at 4:3 aspect ratio. I searched for FFA01090 in the JP ram dump, and only found one instance at offset 0xFD988. I changed the address of the original code to this new one and the widescreen code worked!!
I actually ported Ralph's No Blur code as well, but it had some minor bug. It is easy to port though, just recalculate the address to r13 - NoBlurFlag_offset = 0x80353860 - 31739 = 0x8034bc65 . I assumed that the NoBlurFlag_offset in the JP is same to the the PAL/German version, that is 31739 decimal.
$No Blur PAL port [Ralph]
0034bc65 00000001
*Ported to JP by me
*Has momentarily camera position bug when cancelling shopping inside building
PS: The PowerPC assembly is quite hard to understand, even though I am studying electronic. I guess I can only make/port codes as much as my ability allows
Lately I have been playing Tales of Symphonia, and found out that the Japanese version has almost complete voiceover for skits. It makes the game much more lively. Unfortunately the PC version is a crappy port, and I decided to play the Japanese Gamecube version on Dolphin, even if I barely understand Japanese.
Anyway, the Gamecube version has some drawback, like lack of widescreen, and the blurry "focus" effect. And it seems people mainly post graphical code for US/PAL version. To improve my experience, I decided to port some of those code to the Japanese version of the game.
$No Blur
04023828 4E800020
0403EBE4 4E800020
*Found on https://wiki.dolphin-emu.org/index.p...s_of_Symphonia
*Probably originally made by gamemasterplc, but I am not sure
*Ported to JP by me
$16:9 Aspect Ratio (Widescreen) code [Ralf]
040FD988 C3A2882C
0434CEAC 3FE38E39
*Originally for PAL/German by Ralf, ported to JP by me
*HUD is stretched. I am not sure if it is also true on PAL release
Some personal experience when porting the codes:
The first code was converted to the corresponding Japanese version address by comparing the Gamecube RAM dumps of NTSC-J and NTSC-U versions, using Dolphin. I basically followed the steps found on a forum thread https://mkwii.com/showthread.php?tid=113 . In the US version, the 0x23C10 offset corresponded to hex 94 21 FF 70 .
Funnily enough, there were seven instances of 94 21 FF 70 in the 0x2xxxx range on the J version. I used trial and error to find out the address, which was 0x23828. What puzzled me the most was that the memory offset at 0x23550 had memory content around it way more similar to the one at 0x23C10 from US dump. No blur code didn't work with 04023550 though.
The second code conversion is based on explanation found in https://gamehacking.org/vb/forum/vid...nia-french-pal . Ralf did a very good explanation on his 16:9 code, such that I could just recalculate the corresponding address on the second line, which was R2 (80354680h) - 30676d = 8034ceac. The register r2 is a constant, though it apparently varies between different regions of the game. The first line address was probably found a little bit by luck. In the original code for PAL/German, he anotated "8010071C: FFA01090 fmr f29,f2 ; f29: aspect ratio" . I assumed that FFA01090 should present in every RAM dumps of different regions, since all Gamecube versions should be rendering at 4:3 aspect ratio. I searched for FFA01090 in the JP ram dump, and only found one instance at offset 0xFD988. I changed the address of the original code to this new one and the widescreen code worked!!
I actually ported Ralph's No Blur code as well, but it had some minor bug. It is easy to port though, just recalculate the address to r13 - NoBlurFlag_offset = 0x80353860 - 31739 = 0x8034bc65 . I assumed that the NoBlurFlag_offset in the JP is same to the the PAL/German version, that is 31739 decimal.
$No Blur PAL port [Ralph]
0034bc65 00000001
*Ported to JP by me
*Has momentarily camera position bug when cancelling shopping inside building
PS: The PowerPC assembly is quite hard to understand, even though I am studying electronic. I guess I can only make/port codes as much as my ability allows