Sign in to follow this  
Vafalls

PAL fix compatible

10 posts in this topic

Hi,

 

First of all, really looking forward to 1.9,  sounds like it's gonna be great. With that said, i wonder if its compatible with the FF6 pal fix

http://www.romhacking.net/hacks/106/  ? Since i plan on playing this on my pal snes i was hoping to avoid the annoying black

equip menu glitch, the ending sequence crashing halfway through etc which this fix apparently takes care of. I've looked through the

changelog to see if this already had been addressed but i couldn't find anything. Maybe it's something you would consider worthy of

adding to the mod?  Keep up the good work.

 

Cheers,

Share this post


Link to post
Share on other sites

That patch is unfortunately incompatible with BNW as-is. It requires free space in the menu code, which is used by BNW for its esper bank system. It can be solved by opening up the .asm file included in the archive in notepad, and changing the offset at line 31 from F091 to F6F0. Then use WLA-DX to assemble the patch. I don't believe it requires any other modifications to be compatible.

Share this post


Link to post
Share on other sites

I see. Well i opened up the .asm file and found that which needed to be changed at line 31. I also found something else:

".ROMBANKS 48           ; 32Mbits -- Tells WLA that you want to use 32 ROM banks." Now i don't really know what this means

but could this patch somehow make the game incompatible with my copier, which only support games up to 24Mbits?

 

Anyways, so far so good. Now i just have to find out wth WLA-DX is, and i'm either missing something obvious, but after some

googling and checking the readme, i'm unfortunately starting to think i might be in over my head.

Share this post


Link to post
Share on other sites

Don't worry, that comment just seems to be wrong. The assembler directive is correct; 48 banks times 64 kB = 3072 kB, or 24 Mbit.

WLA-DX is an assembler. It's a program you use to transform human-readable assembly code like that text file into machine-readable byte code like what's in the ROM. Since you found the program and the documentation, you're well on your way to figuring out what to do. If you found only the source code for WLA-DX, I can understand your confusion. What you want is the compiled program, found here:

http://www.villehelin.com/wla-win32.html

Basically what you need to do, is put the WLA-DX exe, your ROM, and the .asm file all in the same folder, open up a command prompt (in explorer, shift-right click in the folder), and type in the command to tell WLA-DX to patch your ROM with the .asm file. I can't guide you step by step, because I've never used WLA-DX, but the command syntax should be explained in the documentation.

Share this post


Link to post
Share on other sites
5 hours ago, seibaby said:

Don't worry, that comment just seems to be wrong. The assembler directive is correct; 48 banks times 64 kB = 3072 kB, or 24 Mbit.

Glad to hear because that would've been an even bigger issue.

5 hours ago, seibaby said:

WLA-DX is an assembler. It's a program you use to transform human-readable assembly code like that text file into machine-readable byte code like what's in the ROM. Since you found the program and the documentation, you're well on your way to figuring out what to do. If you found only the source code for WLA-DX, I can understand your confusion. What you want is the compiled program, found here:

http://www.villehelin.com/wla-win32.html

Yeah i figured as much, and your assumption that i only found the source code is 100% correct. :)

5 hours ago, seibaby said:

Basically what you need to do, is put the WLA-DX exe, your ROM, and the .asm file all in the same folder, open up a command prompt (in explorer, shift-right click in the folder), and type in the command to tell WLA-DX to patch your ROM with the .asm file. I can't guide you step by step, because I've never used WLA-DX, but the command syntax should be explained in the documentation.

Well that's a pretty good explanation for someone who's never used the program before i'd have to say. I might actually be able to wrap my head around this now

and make it work, thanks.

5 hours ago, seibaby said:

By the way, here's some more info on the PAL patch; it seems it may have some issues? Have you tried it and verified it works with vanilla FF3us?

https://www.ff6hacking.com/forums/thread-3460.html

I recommend modding your SNES to play at 60 Hz; that's what I did to play FFVI as a kid. :)

No, i've never used this patch before, in fact, i didn't even know it existed until recently but i found some info indicating i worked.

That thread though makes is sound like this "fix" isn't really that great of a fix after all. That's disappointing. I've actually never played this game

without having these glitches. I was kinda excited to play this great game once again, even more so, with a mod which seemingly greatly improves

the it, AND, not having those glitches. Guess it was to good to be true. Hello black scrambled equip menu, we meet again... and no, playing it on my pc

using an emulator is a big nono atm as it would lessen the experience to much to be worth it.

 

It's a shame though, since this is really the only glitch that really bothers me. So i was hoping, and almost kinda expecting that someone would've come

up with a fix for it by now. The ending one isn't a big deal at all, it was annoying when i was a kid but now that i've seen it, and could again within seconds

it's really a non issue. There might be other issues but these 2 are really the only ones i've noticed/bothered me. It's strange though, the menu only glitches

if you haven't fought anything in that area or if you're on the world map. So every place you enter, be it a town or cave or whatever, the menu is glitched,

but as soon as you fight something (if possible), the menu becomes normal again and it stays normal until you exit the area, which does make it more

annoying than gamebreaking.

 

Yeah i would be nice to have a 60 hz modded SNES but i really didn't have a need for it when i was a kid, or rather, i didn't know it even was a thing until i was

an adult. The only place i've found around here up in the cold north of Europe offering modding services,  refuses to mod the 1 chippers (ofc..) so my only option

is either do it myself, or send it far away but pay a hefty buck for it. I also think there may be a SNES clone not to far off with proper hardware emulation and lag

free 1080 upscaling through HDMI, which would probably mean my old SNES + SWC combo will likely be retired for good. So i'm a bit hesitant to spend any

more $ on it than i already have.

 

Thanks again for all the help, i really appreciate it.

 

 

Share this post


Link to post
Share on other sites

You can remove the ending fix from the patch by commenting out the relevant code, namely lines 45-67.

Also, seeing how it's easier for me to just rewrite the patch for compatibility with my favored assembler instead of learning how to use WLA-DX, I went ahead and did just that. :P
You can copy the following into a new textfile and save it as xkas-palfix.asm (for example), then download xkas 0.06 from here and follow the above procedure, except you don't have to search documentation for commandline syntax. Just type "xkas xkas-palfix.asm ff3.smc" (assuming your ROM file is named ff3.smc).

	;***********************************************************************************
; final fantasy 3 pal fix by d4s in 2005! YAY!
;***********************************************************************************
	hirom                     ; Don't change this
;header                    ; Uncomment if your ROM has a header
!freespaceC0 = $C0FEE8    ; Requires X bytes of free space in bank C0
!freespaceC3 = $C3F6F0    ; Requires x bytes of free space in bank C3
	; Fix menu bg layer 2
org $C31454
  JSR Bg2MainScreenEnable
	org !freespaceC3
Bg2MainScreenEnable:
  LDA #$17
  STA $212C
  JMP $D263
	;Uncomment the following to enable the ending fix (breaks Opera?)
;org $C09A4C
;  dw CheckMusic
	;org $C0B8BF
;  db $80                        ; $C0/B8BA A5 EB       LDA $EB    [$00:00EB]   A:0000 X:0188 Y:0000 P:envMxdiZc
                          ; Overwritten by the above (?)
;org !freespaceC0
;CheckMusic:
;  LDA $213F
;  AND #$10
;  BNE AdvanceOneEvent        ; Dont check music if in PAL mode (will crash otherwise)
;  LDA $EB
;  CMP $2141
;  BEQ AdvanceOneEvent
;  RTS
;AdvanceOneEvent:
;  JMP $B8C2
	

Share this post


Link to post
Share on other sites

That's awesome, thanks alot, there might be hope after all. :)

 

So i downloaded xkas and followed your instructions, at first i wasn't sure anything happened since there was no confirmation. I checked the rom (FF3 U V 1.1 btw)

and sure enough, it had been modified. Next i just needed to dig out some old save to test it out, which to my surprise, took like 1 min considering there's quite a

few old floppys to sift through to not only find a FF3 save, but one that isn't corrupted. So i fired the game up and lo and behold, a working equip menu. Now this isn't

a thorough testing by any means but after checking both on world map, in towns and dungeons before and after a fight, i have to say it looks like it did the trick.

 

I was wondering, if enabling the ending fix causes the opera glitch, what if i were to patch a another rom with the ending fix enabled and use that one AFTER the

opera scene is completed, you think that would be possible without breaking the save or something else? Lastly, what would be the proper patching order between

this fix and BNW, or maybe it doesn't make a difference?

Share this post


Link to post
Share on other sites

That should work. Tthere might be other issues that crop up with the ending fix, since it clearly wasn't tested properly, but if that happens you can just switch ROM again. I don't think it should make any difference which patch you apply first, but I would apply BNW first and the PAL patch after. Note that the IPS changes a whole lot more than what is described in the code, so you're probably best off sticking with the code patch I posted.

I'm not entirely sure what the issue is that the ending fix is supposed to fix. It disables the "wait for music" event command. My hypthesis is that, due to running the game in 50 Hz, the event queue and music becomes desynchronized, meaning that the "wait for music" event command hangs the game, or something. I've never seen the ending glitch in action. I'm not sure why disabling the command causes the Opera to hang, but who knows with FFVI.

EDIT: re-reading that thread, I don't think the issue is that the Opera HANGS, so much as that the events don't follow the music because the "wait for music" event command is disabled. Desynchronization between music and cutscenes is to be expected from running the game in 50 Hz anyway, there's really not much that can be done about that except rewriting all the cutscenes to be shorter. :P

Edited by seibaby

Share this post


Link to post
Share on other sites

Yeah i might just stick with the menu fix since having the ending working isn't that big of a deal. If switching roms are safe, maybe i'll try it right before the end since i am a bit curious to see if the fix even works. Your hypothesis is probably more or less exactly what's happening, at least the only time you really notice any real negative effects from this issue is after the game's over, which if memory serves me right, doesn't hang the game but the screen turns black somewhere halfway through the ending sequence while the music and game keeps on going like normal.

 

Well, i guess all is well in the end after all, since having the menu working is really the one thing that mattered. Hopefully the fix works throughout the game without breaking anything else. I have to say, you really came through on this one, taking the time and effort to help a poor guy get his equip menu back is highly appreciated. :)

Now all that's needed is for you lazy hacks to complete 1.9. :P

Edited by Vafalls

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this