However, when "CD add-on" option is set to AUTO, if a CUE file with same basename as loaded ROM file is found in same directory AND that CUE file contains MegaSD specific keywords ("REM LOOP xxx", "REM NOLOOP".), MegaSD CD overlay emulation will be automatically enabled (instead of full Sega/Mega CD hardware emulation). attached file) are supported except the ones that deal with opening/reading files from SD card (starting from command 1Ch) but afaik no MD+ hacks use these commands so far.Īs discussed previously, since there is no way to auto-detect a MD+ patched ROM, MegaSD add-on emulation needs to be enabled in core options (through the newly added "CD add-on" option).
CUE loop commands) described in MegaSD dev manual (cf. There are only 7 MD+ games so far, so it wouldn't be a problem editing the existing patches to include the edit, and anything in development now or in the future will have that edit from the start, or if/when you have a build of the emulator to take advantage of it.įor the record, all CD overlay commands (incl. So maybe from this point onward, for the sake of distinguishing between the formats in your emulator, that MD+ games can utilise the "MEGASD" header edit. With the next MegaSD firmware release the header edit to detect Mode 1 games will no longer be needed, and MD+ games still work as intended when their headers are edited to "MEGASD". It would have been much more logical to specify the opposite (as MD+ games are the ones requiring specific Mega SD flashcart hardware implementation, not normal Mode 1 games) and would have solved my own issue with being forced to have an user setting to manually enable/disable Mega SD custom registers emulation because it is impossible to safely detect a MD+ game has been loaded and distinguish it from a normal mode 1 game (which needs complete mega cd hardware emulation).
If you are able to build you own version of the emulator, seek time emulation can easily be forced off by commenting the following block (you can also modify the minimal latency initialization above that block from 11 to 1 to reduce it even more but it will break some cd games relying on it):Īs far as I know all romhacks with MD+ or MSU-MD use the string "MEGA SD" instead of "SEGA GENESIS" in the header at 0x100, so this could be a potentional trigger for ste-disablingĪctually, MD+ patches do not use that "MEGA SD" string, which is only required by Mega SD flashcart to recognize normal Mode 1 games (MSU-MD patched ones or any other existing games that have Mode 1 support) and distinguish them from MD+ patched games (which also means current MSU-MD patches need to be completed with that string to work on Mega SD). Krikzz made a comment that seek time emulation may be optionally turned of on MegaEDpro with a future fw update.
Therefore I am not sure what kind of support you are thinking about: the addition of loop command suport in Krikzz's driver what just a quick exercise I did to show it was possible with Mode 1 and I have no plan to work more on it as I consider it to be done.Īll I could possibly do is to add a configurable setting for seek time emulation in Genesis Plus GX (like it exists in Mega SD implementation) but it's kinda painful to do (this is also the main reason I still haven't commited my changes with Mega SD extra hardware support for MD+ games as it requires to be enabled manually in emulator settings to be able to distinguish MD+ games that need emulation of Mega SD extra hardware from normal games using Mode 1 that only need emulation of Mega CD hardware).
The same would occur with real CD hardware or Mega SD / Mega ED pro flashcarts with seek time emulation enabled (not sure if it can be disabled on the latter) and there is nothing I can do in MSU-MD driver code to fix it. The reason it's not 100% seemless in emulator is likely because seek time emulation is always enabled by default so you will get some delay with silence before audio playback starts again from loop offset.