Yesterday it occurred to me that Final Fight for SNES may have some secrets, such as two player support, I decided to investigate and the results speak for them self:
After some reverse engineering of the code and a few minor hacks I was able to enable two player support.
For those that are interested here is the code, works with CRC32(0x4CAB21DB) Final Fight USA and xkas06. I dumped my own cart, not sure how common this version of the game is, sorry.
org $01a643 ; (original code - ldx #$0d00, jsr $a542, phx, pld)
And here is a link to a very quick disassembly with minimum comments:https://pastebin.com/PNiGy6aQ
Player two can walk around, but he shares vram space with player 1 currently so moving either character corrupts the other. There is no hit detection for player two yet, nor can player two advance the stage. However I believe both of these issues are resolvable with a few more minor hacks.
I would like to propose a restoration project for Final Fight SNES. Add full two player support, fix industrial area, add guy to the roster, and remove slowdown.
As the game already has the tile data for industrial area we just need to demake the area's arcade graphics. Guy support is partially built into the game already, porting him over from Final Fight guy shouldn't be too hard. Slowdown may be solvable by switching to fast rom, it may need additional work optimizing code, not sure yet.
Just wanted to get this out there, if anyone would like to help with the project with either graphics or code please let me know.
Edits: Added disassembly pastebin and CRC32, removed palette test code