Not gonna happen. I have worked tirelessly to upgrade the Qt UI from bsnes v073 up through v074, v075, v076, v077, v078, v079, v080, v081, v082, v083, v084, v085, v086, v087, v088, v089, v090, v091, v092, v093, v094, v095, v096, v097, v098, v099, v100, v101, v102, v103, v104, v105, v106, up to the current v106 WIPs leading up to v107, each time adjusting the code to account for breaking changes in Emulator::Interface, all for the sake of allowing the Qt UI to be used with higan v107's emulation bugfixes and gamepak format. I am not going to throw all that hard work out just because my efforts hurt your feelings. v073's XML format was just a prototype, and it cannot properly handle the S-DD1 and SPC7110. It was a miracle that the Tengai Makyou Zero translation team found a loophole in the v073 manifest that would support the 1 MB expansion ROM, and I very much doubt another miracle like that will come again the next time someone creates an unusual memory map. So I'm making bsnes-mcfly so that fans of the Qt GUI won't have to deal with this deprecated format ever again.
I'm pretty sure bsnes-plus enjoys a fair bit more popularity than bsnes v073 and bsnes-classic, and I do intend to start adding debugger functionality to bsnes-mcfly once higan v107 is released. It's really tempting to start earlier, but I'm forcing myself to wait in case bsnes-mcfly somehow gets locked into a v106 WIP just like bsnes-plus has been locked into v073. Which is unlikely (I maintained a laevateinn fork for years), but I'm not taking chances.
If you're worried about backwards compatibility with MSU1 games and hacks that
only came in v073 format and no later version, just point me to those games and hacks, and I will personally hand-convert them to v107 and provide download links. Also, I do have
Olympian Magic, which can do the conversion automatically (though I'll have to bring it up to the current WIP; I left it dormant for a bit).
Why did you add debugging functionality to the performance profile, anyway? By its very nature, the performance profile was not intended for development of hacks and homebrew, because it takes a lot of shortcuts that break some timing-sensitive games, and it could very easily lift some restriction that the accuracy and compatibility profiles have, something along the lines of writing VRAM during active display (this specific example comes from ZSNES and is not actually a bug in the performance profile). You don't want hacks and/or homebrew to work exclusively with the performance profile, do you?
Revenant wrote:on the off chance that byuu ever decides to support some sort of BML-based manifests for the standalone ROM support in "new bsnes", I'd happily add support for that as soon as possible.
byuu added gamepak support to bsnes v106r40 and BML manifest support to bsnes v106r42. If you want to make good on your promise to add support for BML manifests “as soon as possible”, then you better get cracking!
================================
On that note, I just added 7z archive support after I figured out that the LZMA SDK is in the public domain. It uses a later version of the LZMA SDK than the one included in snesreader and includes support for the LZMA2 and PPMd algorithms. With this change, bsnes v073 will have one less advantage over bsnes-mcfly.
While I was at it, I tried adding JMA support as well, but the biggest obstacle is the fact that Nach licensed libjma exclusively under the General Public License version 2. There is no “or any later version” clause in the source files. This is a problem because bsnes-mcfly is licensed under the General Public License version 3, which is not compatible with the previous version without that “or any later version” clause.
To be more specific, most of libjma's source files actually use the LGPLv2.1, which is compatible with the GPLv3, but exactly 5 files use GPLv2 instead: jma.cpp, jma.h, portable.h, jcrc32.cpp, and crc32.h. Rewriting the last 3 is easy (I can shim the CRC32 algorithm with nall's implementation), but the first 2 contain the bulk of the libjma API, and that is a little daunting to rewrite.