This is the Smallhacker's "Separate Luigi Graphics" patch. Luigi's graphics are changed to be different from Mario, just like in Super Mario All-Stars + World.
Unlike version 2.1, this one relies on hijack $A1DA to change graphics every frame so you can change the player graphics without resetting the game. This patch also allows more than two player graphics, see the README for a tutorial on how to do this.
Now updated for Asar, which will find freespace automatically for the patch AND the Mario & Luigi graphics.
Added SA-1 support and fixed an issue where the separate graphics would not change after a game over or if you are starting the game as Luigi.
Thanks for the update! Per the base this update builds on it's not the most efficient patch under the sun, but it still works well enough, and the update only offers improvements. I went ahead and made a minor change to make the patch amenable to SA-1 1.35+, and commented out a useless duplicate instruction. (I also changed the title in the patch to "v3".)
Note that the readme includes instructions to add a third set of additional player graphics and beyond, which for the most part works as expected. What the patch is not set up for, is installing additional sets of extended tiles to go with these new graphics. You have GFX00, 22, and 24 to use for Mario, and three corresponding replacement files to share between all characters who are not Mario. Also note that this update does not change the readme from v2.2.
Tested with Asar 1.71, Lunar Magic 3.21, SA-1 1.32, SA-1 1.40, Snes9x 1.59.2, BSNES 0.6.9.
If you like this, I submitted an Uberasm that allows you to switch characters on the overworld map. Its waiting for approval. It fixes a lot of the issues some of the other blocks and patches for that purpose have.