Aslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=1975.195e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index09a5.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&board=17.60e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index09a5.html.zx9h^6OKtext/htmlISO-8859-1gzip0|6Wed, 11 Mar 2020 01:22:48 GMT0 0P9h^,6 FFV patches (and compatibility with each other)

Author Topic: FFV patches (and compatibility with each other)  (Read 31722 times)

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #195 on: January 06, 2015, 04:53:44 PM »
Alright. Perhaps you could add the patch information to the wiki as well?

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #196 on: January 07, 2015, 05:59:47 AM »
Great... I edited the readme file but shared the old one  :sad:
Here you have the new readme.

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #197 on: January 08, 2015, 08:16:01 AM »
Updated the zip. Wiki update at another time.

Feel better, Spooniest!

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #198 on: January 08, 2015, 09:56:48 AM »
The wiki is updated.

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #199 on: January 08, 2015, 02:38:43 PM »
You added new info, but how about:
Quote
------------------------------------------
Edits done by the patch:
------------------------------------------
Knives fix (Jorgur):
C2/80EE: AD E5
C2/80F0: 7B 85 25 20 F1 00 C2 20 A5 26 18 69 00 01 85 52
C2/8100: 80 1D EA EA EA EA EA EA EA EA EA EA EA EA EA EA
C2/8110: EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA 7B

Rune weapons fix (assassin):
C2/849D: 80 01 EA

Goblin Punch fix (assassin + noisecross):
C2/85C3: 22 68 2E D0 EA EA

Minimum M (assassin + noisecross):
C2/8A11: EA EA
C2/940E: EA EA EA



------------------------------------------
Knives fix (Jorgur)
------------------------------------------
[...]
C2/80EE: AD E5 7B     LDA $7BE5   (Level)
C2/80F1: 85 25        STA $25
C2/80F3: 20 F1 00     JSR $00F1   (Level * Strength)
C2/80F6: C2 20        REP #$20
C2/80F8: A5 26        LDA $26
C2/80FA: 18           CLC   
C2/80FB: 69 00 01     ADC #$0100  (A = A + 256)
C2/80FE: 85 52        STA $52     (M = (Level * Strength) + 256)
C2/8100: 80 1D        BRA $811F   (Skip agility check and jump to defense check)
C2/8100: EA           NOP
[...]


------------------------------------------
Goblin Punch fix (assassin + noisecross)
------------------------------------------
Before:
[...]
C2/85C3: BD 62 20     LDA $2062,X (A = Monster Attack Multiplier)
C2/85C6: AA           TAX
C2/85C7: 86 52        STX $52     (M = Monster Attack Multiplier)
[...]

After the fix:
[...]
C2/85C3: 22 68 2E D0  JSL $D02E68 (M = Monster Attack Multiplier * 128)
C2/85C7: EA           NOP
C2/85C8: EA           NOP
[...]


------------------------------------------
Rune weapons fix (assassin)
------------------------------------------
Before:
[...]
C2/849D: 20 BB 01     JSR $01BB   (Level * Magic Power)/128
[...]

After the fix:
[...]
C2/849D : 80 01       BRA $84A0   (The "/128" operation is not performed)
C2/849F : EA          NOP
[...]


------------------------------------------
C2/8A05 to fix Minimum M
------------------------------------------

[...]                             (Accumulator is set to 8 bits, X is 16 bits)
C2/8A0D: A6 52        LDX $52
C2/8A0F: D0 15        BNE $8A26
  C2/8A11: E6 52        INC $52     (Minimum M = 1)
C2/8A13: A5 39        LDA $39
C2/8A15: AA           TAX

to

[...]                             (Accumulator is set to 8 bits, X is 16 bits)
C2/8A0D: A6 52        LDX $52
C2/8A0F: D0 15        BNE $8A26
  C2/8A11: EA           NOP         (Minimum M prevails)
  C2/8A12: EA           NOP         (Minimum M prevails)
C2/8A13: A5 39        LDA $39
C2/8A15: AA           TAX

------------------------------------------

[...]                             (Accumulator is set to 16 bits, X is 16 bits)
  C2/940C: A5 52      LDA $52
  C2/940E: D0 01      BNE $9411
  C2/9410: 1A         INC         (Minimum M = 1)
C2/9411: 85 2C        STA $2C     (Unmodifiable)  <- 8 bits M inside register A
C2/9413: 7B           TDC         (A = 0)

to

[...]                             (Accumulator is set to 16 bits, X is 16 bits)
C2/940C: A5 52        LDA $52
  C2/940E: EA           NOP         (Minimum M prevails)
  C2/940F: EA           NOP         (Minimum M prevails)
  C2/9410: EA           NOP         (Minimum M prevails)
C2/9411: 85 2C        STA $2C     (Unmodifiable)  <- 8 bits M inside register A
C2/9413: 7B           TDC         (A = 0)

It would be really neat if we could incorporate this stuff into the wiki somehow. We should work out a simple format on how it should be done so we can do the same to the other patches as well.

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #200 on: January 09, 2015, 07:26:36 AM »
I just edit the text to keep the same terms which were in the page.
How much deep do you want to go in technical details there?

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #201 on: January 09, 2015, 09:25:36 AM »
I don't know, honestly. What do you guys think?

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #202 on: January 09, 2015, 10:26:22 AM »
The point of tracking stuff like that is more to make sure that patches don't clash with each other, so I'd probably, I think, make a page of the entire ROM map _and_ then make notations at each address that's been modified what the patches (so and so) did.

Like:

THIS IS THE ROM MAP page.

At certain points, make a link at certain addresses to the patch that modifies this or that.

Make note that this patch will clash with -that- patch if you use it. (I.E. the Legend of the Spooniest overwrites this... the ICON patch overwrites -that-...)

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #203 on: January 10, 2015, 01:19:25 PM »
The point of tracking stuff like that is more to make sure that patches don't clash with each other, so I'd probably, I think, make a page of the entire ROM map _and_ then make notations at each address that's been modified what the patches (so and so) did.
Another reason to do this is so people can re-create patches from the documentation. How about we do something like this?
http://slickproductions.org/slickwiki/index.php/FF5_Patch:Un-Berserker

I figured it would be nice to know the original value of the bytes so it's easy to undo the patch if that is desired.

Like:

THIS IS THE ROM MAP page.

At certain points, make a link at certain addresses to the patch that modifies this or that.

Make note that this patch will clash with -that- patch if you use it. (I.E. the Legend of the Spooniest overwrites this... the ICON patch overwrites -that-...)
That's a good idea! You can take care of that if you feel like it. To create a new page, type the name of the page into the search field and click search. Then click the option to create a new page.

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #204 on: February 12, 2015, 11:28:46 PM »
Ok. Once I finish up with the Legends of the Crystals update, gonna jump back and poke at IPS modifications.

https://www.codeisle.com/products/international-patching-system-ips-patch-viewer/

That seems like a decent way to get a quick list of bytes changed, yes?

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #205 on: February 16, 2015, 04:48:52 AM »
Ok. Once I finish up with the Legends of the Crystals update, gonna jump back and poke at IPS modifications.

https://www.codeisle.com/products/international-patching-system-ips-patch-viewer/

That seems like a decent way to get a quick list of bytes changed, yes?

I made a new topic for this:
http://slickproductions.org/forum/index.php?topic=2013.0