Looks like there's a new official firmware version out, and it's got a critical bug with SNES save states - avoid this one!
Updated the tools I host to support the new firmware, complete with warnings about it. Also updated the main Github document with the first details about the firmware, more will come later when my own download of it has completed.
There's a new BIOS revision floating around (MD5 hash first posted in Discord on August 3rd); no official announcement from Data Frog about it yet, but I've gone ahead and added support for it to the Boot Logo Changer and the Button Mapping Changer tools
There was a lot of repeated JS across all my tools (e.g., image conversion, BIOS hash checking, etc.), and so I decided to move all shared code out to its own separate library. This will improve scalability and maintainability at the cost of portability - a fair trade in my opinion.
This work also involved large-scale refactoring of all of the tools. There's no actual functional difference (all the tools should behave exactly the same), bar some UI improvements for the oldest tools as a result of moving to the same codebase used by the more recent tools.
Substantially re-written in light of the May 22nd firmware, which had a `bisrv.asd` of the same length as the May 15th firmware, but different in operation - the byte order in `KeyMapInfo.kmp` has been flipped for SNES and Genesis. As there's no way to tell from just looking at a `KeyMapInfo.kmp` what the byte order should be, users must now provide both `bisrv.asd` AND `KeyMapInfo.kmp` files - the `bisrv.asd` is now hash-checked against known versions, and that's used to inform which byte order to use for the `KeyMapInfo.kmp`
Updated to support the new May 15th firmware. Also took the opportunity to make a few tweaks, including presenting the button tables in a more standard "ABXYLR" order, regardless of the byte-order in the actual SF2000 data files
Seems like there may be some more significant changes to the data format for the button mappings; I haven't had time to dive into the details yet, so just updating the tool to indicate it knows about the new firmware, but doesn't support it yet