This patch removes some of the jankiness with releasing items during spin jumps. Normally the direction you face during a spin jump (and thus the direction an item is thrown) depends on the level timer and switches every 4 frames. To mitigate this, my patch does two things:
1. If you drop or up-throw a shell during a spinjump, it will be released from mario's center. This is similar to how it works in Super Mario Maker and removes the pseudo-randomness coming from where you are in your spinjump.
2. Direction held on the d-pad (i.e left or right) takes priority over the direction that mario faces. This lets you kick items while you spin and be able to know which direction they are going.
The only issue I found was that the "splat" graphics that are shown when you throw something are incorrectly positioned when throwing things upwards (the splat is where the item normally would have been thrown from, not where it was actually thrown from i.e. the middle of mario). However, that's only a minor graphical issue and I don't think it's worth a rejection.
Also made this SA-1 compatible. Also, you forgot to mark this as requiring free space, I fixed that too.