Quick update on progress (because v 0.2 is taking longer that originally planned)...
I've fixed all of the bugs Grimoire LD pointed out, except I haven't looked into Avon's invincibility not ending yet. I'm sure that will be a relatively quick fix, though, as it'sworked just fine in previous tests.
Oh, also, still trying to figure out the best course of action to deal with the occasional Agart minibosses not truly deactivating bug...
Additionally, fixed the level-up spell learning.
JCE3000GT made a title screen for me. Interestingly enough, when I patched that in the mysterious save game HP display bug stopped happening. Not sure if that was an intentional easter egg he threw in there...
Turns out, there WAS a since-corrected issue with FF4kster that caused DKnight and Paladin slots to have the same name. So now Blank fully uses DK Cecil's slot, which means:
-no need for a level-up workaround patch. All levelups work fine now.
-no more problems with Twincasting. Rydia will still get drawn in if she's in the party, but in the actual game she never will be.
What's been taking so long is the rest of my hacked Twin command. I've figured out (pretty sure) a way to allow it to use white or black-type spells, player's choice, without sacrificing the randomness factor.
Essentially, I cut out the Golbez/FuSoYa checks in the spell chooser, then did the following (I'll post an actual disassembly soon):
-set register Y to 0000
-load caster's enemy targeting byte
-if not 00, skip ahead
-if 00, set register Y to 0015 (15 is the difference between spell numbers of flare and w.meteo)
-RNG
-if RN = FF, normal fail routine
-if RN is over 40, skip ahead
-if RN is less than 40, +1 to register Y
-transfer Y to A
-add 40 to A
-rest of routine as normal
Also, changed the targeting options to split enemy/ally (defaults to enemy), replaced Comet with W.Meteo, and replaced W.Meteo and the dummy that follows it with a powerful cure spell ("W.Cure") and a target-all heal spell ("Esuna") respectively.
The result: if the player chooses to target one or all enemies, the game randomly chooses spell 40 or 41 (W.Meteo or Flare). If the player targets one or all allies, the game picks between 5E and 5F (W.Cure or Esuna).
I had planned to finish all of that yesterday, but then I accidentally spent the whole day investigating spell AV code (trying to write a unique image for W.Cure to visually distinguish it from Cure 4 and Cure Z). Not a significant amount of success there, though I discovered a few interesting things that on their own are no help. I may cut my losses for now in the interest of getting an updated patch out there.
So that's where I'm at right now, in case anyone was wondering.