My thoughts exactly LordGarmonde, that said when in battle you can switch commands on the fly (I'm not 100% sure on displayed name yet though). So you could potentially make a mod with a Command called "(Sword-symbol)Skil" with the Sword only meaning "Battle" and have that routine look at the weapon you have equipped and give you a skill regarding that...
For instance, you have Claw equipped, you get Kick. Rod-Boast, Staff-Pray, Sword/Hammer-Focus (couldn't think of any default choice better), Maybe the normal swords would impart Dark Wave, while the Light Swords would give Focus, Spears-Jump, Katana/Boomerangs-Throw, Knife-Steal, Whip-Recall, Axe-Gird, Harp-Sing, Bow-Aim...
Granted these would all be going to a special character and hopefully not one of the normal characters who would already have one of these skills.
Maybe I'll think about that down the line.
Well I am pleased to announce that Magic Weapons is complete! A full routine that only ended up being 38 bytes when all was said and done.
I know I say this a lot but This is my Finest work yet. With the most applications in any normal sense.
Now there are a few... oddities... to this whole process.
First, the damage you deal is not 100% accurate to what you're Actually dealing. It's ordinarily a little more. and I'm not sure how it is calculated. I know that it's not ignoring the Weapon Damage or the Spell.(though for curing or buffing spells things get a little strange.)
Second, when a Spell Misses its target the normal weapon damage swing may show elsewhere, most likely on another enemy. However the damage will show on the enemy you are properly aiming towards.
Thirdly, this is only Single Target enemies. Anything more would have been a bit too powerful in my opinion.
Fourthly - Curing Spells will Not Work Period. They are turned into Damage, even spell formulas that don't ordinarily do damage deal a small amount of damage, interestingly enough. This does have interesting applications... say you combine my Sing-Harp Dependent Hack with this patch, you would see that yes, Edward is casting beneficial spells on the foe, but what you might find interesting, especially with the Dream Harp in particular. Instead of recovering 1/10 of their Max HP, you're actually Dealing 1/10 of their Max HP. This also applies to Party Members. Granted you Can attack say... Kain with the Madhura Harp and cast Protect on him (if you're lucky), you would hurt him a bit and Protect would deal an extra damage or 2, but it would effect him as if he were hit by the spell.
Fifthly - The damage dealt is dependent on your own Wisdom and Will. The Weapon's Spell Power itself is not taken into account. This means that attacking with the Ice Rod for instance may be more beneficial in the hopes of activating the Magic Weapon instead of a mediocre spell multiplier from the Weapon itself, as shown here...


With this all in mind, let's get to the code!
Magic Weapons Routine
$03/FF33 AD 80 26 LDA $2680 [$7E:2680] A:0000 X:0680 Y:001A P:envMxdiZC - Load Handedness into A.
$03/FF36 C9 60 CMP #$60 A:0085 X:0680 Y:001A P:eNvMxdizC - Is it Left Handed?
$03/FF38 90 26 BCC $26 [$FF60] A:0085 X:0680 Y:001A P:envMxdizC - If so branch to Left Hand portion.
$03/FF3A AD B3 26 LDA $26B3 [$7E:26B3] A:0085 X:0680 Y:001A P:envMxdizC - Load Weapon in Right Hand into A.
$03/FF3D F0 1B BEQ $1B [$FF5A] A:0044 X:0680 Y:001A P:envMxdizC - If 00 branch to End.
$03/FF3F C2 20 REP #$20 A:0044 X:0680 Y:001A P:envMxdizC - Reset Processor Statues (Very Important! It allows A to hold 2-byte values which was Crucial to this)
---------------------------------------------(Looping Point)---------------------------------------------------
$03/FF41 0A ASL A A:0044 X:0680 Y:001A P:envmxdizC - x2 A
$03/FF42 0A ASL A A:0088 X:0680 Y:001A P:envmxdizc - x2 A
$03/FF43 0A ASL A A:0110 X:0680 Y:001A P:envmxdizc - 2x A
$03/FF44 69 03 00 ADC #$0003 A:0220 X:0680 Y:001A P:envmxdizc + 0003 (This all allows it to reach the Weapon, than the Weapon Spell.)
$03/FF47 AA TAX A:0223 X:0680 Y:001A P:envmxdizc - Transfer A to X.
$03/FF48 7B TDC A:0223 X:0223 Y:001A P:envmxdizc - Clear A
$03/FF49 E2 20 SEP #$20 A:0000 X:0223 Y:001A P:envmxdiZc - Set Processor Status to 20 (Changes A back to one byte.)
$03/FF4B BF 00 91 0F LDA $0F9100,x[$0F:9323] A:0000 X:0223 Y:001A P:envMxdiZc - Load the Location of the Weapons +.
$03/FF4F F0 14 BEQ $14 [$FF65] A:0005 X:0223 Y:001A P:envMxdizc - If the end result is 00 branch to End.
$03/FF51 48 PHA A:0005 X:0223 Y:001A P:envMxdizc - Push A onto Stack (To keep the value for after the RNG Calculations
$03/FF52 20 79 83 JSR $8379 [$03:8379] A:0005 X:0223 Y:001A P:envMxdizc - RNG Routine
$03/FF55 C9 3F CMP #$3F A:00D6 X:0000 Y:001A P:eNvMxdizc - is it 3F (of FF, 25%) or more
$03/FF57 68 PLA A:00D6 X:0000 Y:001A P:eNvMxdizC - Pull A from Stack.
$03/FF58 D0 0D BCS $0D [$FF66] A:0005 X:0000 Y:001A P:envMxdizC -If so Branch to End.
$03/FF5A 8D D2 26 STA $26D2 [$7E:26D2] A:0005 X:0000 Y:001A P:envMxdizC - Store A in Next Action.
(Add a Weapon Swing Loading Routine)
$03/FF5D 4C 10 FF JMP $FF10 [$03:FF10] A:0005 X:0000 Y:001A P:envMxdizC - Jump to New Part of Routine.
--------------------------------------------------------------------------------------
(Left Hand Portion)
$03/FF60 AD B5 26 LDA $26B5 [$7E:26B5] A:0042 X:0680 Y:001A P:eNvMxdizc - Load Left Handed Weapon into A.
$03/FF63 D0 03 BNE $03 [$FF68] A:0023 X:0680 Y:001A P:envMxdizc - Branch if not 00 to next portion
----------------------------------------------------------------------------------
$03/FF65 E2 20 SEP #$20 A:0000 X:011B Y:001A P:envMxdiZc - Set Processor Status to 20 (Makes A one byte again)
$03/FF67 60 RTS A:0000 X:011B Y:001A P:envMxdiZc - Return
-------------------------------------------------------------------------------
$03/FF68 80 D5 BRA $D5 [$FF3F] A:0023 X:0680 Y:001A P:envMxdizc - Loop back to Weapon Finding Routine above.
And that's the code. Short, sweet, and to the point. To improve my Sing-Harp Dependent hack I'll want to take this routine, get rid of the RNG dealings and plug it in right there. A very simple process. (Watch me still not have enough room to make it look at other characters...)
This hack is very easy to utilize. Nothing other than targeting in it is hardcoded, so you can have it use any spell you like.
Here's a few more pictures of it in action.



And here's the patch!
As always, any complaints, comments, or questions regarding my patches, post them here.

Update! I decided to revisit this since I planned on expanding its use in my hack and I noticed that it didn't work properly with Summons.
Instead of a jump to the magic routine at the end there I have it jump to a new section where it will load the full magic routine then add the weapon swing afterwards. So while it won't look as clean as it did prior. It will work effectively with every kind of spell. Instead now the character will go into their spellcasting pose, then after the effect is done, use their weapon to attack.
If I could just think of someway to have the initial spell start one byte over I could add a C0 and be perfectly fine, but alas...
And I did just that! I've finally got everything looking the way it should and it looks great!
Here is the new code that is now mentioned above...
New Code for Magic Weapons
$03/FF10 C9 31 CMP #$31 A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Is it Imp or Lower?
$03/FF12 90 04 BCC $04 [$FF18] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - If so branch to part-way through Magic Routine
---------------------------------------------------------------------------
$03/FF14 C9 40 CMP #$40 A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Is it lower than Bahamut?
$03/FF16 90 03 BCC $03 [$FF1B] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - If so branch to Full Magic Routine
----------------------------------------------------------------------
$03/FF18 4C 3E CD JMP $CD3E [$02:CD3E] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Jump and stay with part way through Magic Routine.
-------------------------------------------------------------------
$03/FF1B 20 46 CC JSR $CC46 [$02:CC46] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Jump to Full Magic Routine
$03/FF1E A9 C0 LDA #$C0 A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Load Weapon Swing into A.
$03/FF20 8D C2 33 STA $33C2 [$7E:33C2] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Store A in First Visual cue.
$03/FF23 A9 00 LDA #$00 A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Load 00 into A.
$03/FF25 8D C3 33 STA $33C3 [$7E:33C3] A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Store A in Second visual cue.
$03/FF28 60 RTS A:00F0 X:01CF Y:0006 P:eNvMxdIzc - Return