Go down


Post by Relikk on Mon 21 Sep 2020 - 6:32

Download links are at the bottom of the post.

This has never been publicly released, but I think it's about time that it was to encourage development of games using the, in my opinion, superior and more modern MD+ format (you will still need an understanding of 68k assembly and Mega Drive/Genesis hardware to accomplish this, this is not a tutorial for simple injection of code that anyone can do). It's not perfect, but it serves as a competent platform for playing and developing MD+ games until a better solution comes along (i.e. if or when eke finishes implementing it more accurately in to Genesis Plus GX, as per his enquiry last December).

The core functions are all there, track looping and fading. There is only one issue with track looping as MAME runs at 75Hz internally when reading sector data, which will display an issue where the timing will be slightly off due to playing games that run at 60Hz and 50Hz, therefore the specified loop will trigger earlier than intended and will appear to sound incorrect, depending on the length of the audio track. The longer the track the more "out" it will sound. As long as your audio tracks loop correctly in an audio editor and the values are correct in the CUE file, they will have no issues when played back on a MegaSD with real hardware.

There are two methods of loading games using MAME, either by command line (development) or using the GUI itself (playing).

Loading games with command line and debugger:
mametiny genesisplus -cart -cdrom game.cue -debug

(Use "genesisplus" for US NTSC 60Hz games, "megadrijplus" for JP NTSC games, and "megadrivplus" for PAL 50Hz games)

Using Streets Of Rage 2 as an example below, navigate to your MAME directory and input the relevant commands as described in the code box above:


The game name and CUE file can be named anything, but they should have no spaces and should be placed in the root of your MAME folder. It is also preferable that your audio files contain no spaces.

MAME's debugger is not to everyone's tastes, but there are alternatives. Regen is one of them (link below), but obviously it is not MD+ capable. In that it will not recognise the MD+ code used to patch address lines to play back audio files, but the entire Streets of Rage 2 patch was successfully coded by infinest using the Regen emulator and its debugger while referencing the MegaSD dev manual.

Loading games using the GUI:
Load MAME by double clicking on the executable. Choose "Genesis + (USA, NTSC)". Some errors will pop up (7 of them) before you reach the main GUI, they can be safely ignored by clicking "OK" on each. With the GUI method the game name and the CUE file can be named whatever you like, can have spaces and can be placed in folders other than the root.


As is standard with MAME I created a "roms" folder in the root, then created a folder for the game ROM, CUE and audio files. Using the MAME GUI it's easy to navigate to where these are stored, making sure that the CUE file is selected for the "cdrom (cdrm)" option, and the ROM is selected for the "cartridge (cart)" option.

MD+ MAME CsT2b7o

Click on "Reset" when that's done. MAME will reset with those files mounted (equivalent to the command line option) and the same 7 errors from before will pop up. Again, these can be safely ignored and cycled through until the game starts.

IMPORTANT: One last thing to do is to normalise the volume of the CDDA so that it outputs the equivalent volume to real hardware as MAME is a little louder by default. This is done in the MAME options by pressing tab on your keyboard to bring up the options menu.


Navigate to "Slider Controls" and change the two highlighted options in the image below to around the 0.65 region. (CD/DA Ch.0 & Ch.1)


Download Links:

MD+ (MegaSD) Dev Manual

Regen (with debugger)
Regen Backup Link From Original Source (with debugger)

Credit to neodev for the developmental version of MD+ MAME.

MD+ MAME Image211

Since : 2017-02-17

Back to top Go down

Back to top

Permissions in this forum:
You cannot reply to topics in this forum