|
Description |
UPDATE FROM AUTHOR: This patch is outdated and has been replaced by the newer and more stable Overkill 32,000 patch. It is recommended you download that patch instead.
Includes a patch for both v1.0 and v1.1 of the Final
Fantasy III (US) [!] ROM. Apply to a headerless ROM.
Here is a link to a demonstration video:
http://www.youtube.com/watch?v=gW_ympIie-E
Basically, this patch makes FF6 capable of displaying 5 digits when 10,000+ damage/healing is dealt. Only up to 32766 (#$7FFE/#$8002) damage/healing is allowed because of negative numbers using the values 8000-FFFF. This can display anything with 5 digits, though, so if someone can make a hack moving the healing bits to a different memory address, allowing for this hack to do up to 65535 damage, it would be welcomed!
What it does is squeeze 5 digits into 4 tiles. This is why the digits are of a custom font because the original font would cause an unappealing overlap of digits, making it harder to read.
To do this in ASM with 4bpp graphics was not trivial but quite difficult to figure out. I had to revise it twice because the code wasn't efficient enough to prevent an NMI from interrupting it before it was done. Spells that hit multiple monsters display 5 digits too, which use different routines since it involves showing several damages simultaneously. This was causing interrupt problems, but I put a WAI (wait for interrupt) at the beginning of the new code and it seemed to have fixed it. If you get weird effects when there's multiple damages/healings on screen it was probably because of an NMI. As far as I can tell, that has been fixed but nothing is certain.
Special thanks to Imzogelmo for the feedback and beta testing, as well assassin17 and Terii Senshi for the offsets of the damage truncation and compressed battle numerals. |
|