You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Rewrote CUE parser to be more robust and efficient
- Fixed loop sector validation: properly handles REM LOOP (sector 0) vs REM LOOP [sector] vs REM NOLOOP
- Removed unnecessary CD file size restrictions (MD+ uses WAV/OGG, not CD images)
- Removed CD sector limits for better compatibility with longer audio files
- Improved whitespace handling in CUE parsing
- Streamlined decoder wrapper implementation
- Enhanced error handling for malformed CUE files
4. Ensure the plugin is activated by checking _"File -> Preferences -> Components"_. It will be displayed as _"MD+ Audio Player"_. You can also check _"View -> Console"_
25
+
26
+
5. Console will display:
27
+
```
28
+
==========================================
29
+
MD+ Audio Player v1.x initialized
30
+
Usage: Rename .cue files to .mdpcue
31
+
Example: game_name.cue -> game_name.mdpcue
32
+
==========================================
33
+
```
34
+
25
35
## Usage
26
36
27
-
1. Rename your MD+ CUE files from `.cue` to `.mdpcue`
37
+
1. Rename your MD+ CUE files from `.cue` to `.mdpcue`. You can simply make a copy of your existing CUE file and then rename the extension. The data inside the file will remain the same
28
38
- Example: `game_name.cue` -> `game_name.mdpcue`
29
39
30
40
2. Add the `.mdpcue` file to foobar2000
31
41
32
42
3. Tracks with `REM LOOP` will loop seamlessly and indefinitely at the specified value in the CUE file
33
-
- Tracks with `REM NOLOOP` play once and continue to next track
43
+
- Tracks with `REM NOLOOP` play once and then move on to the next track
34
44
35
45
## Example MD+ CUE File Format
36
46
37
47
```cue
38
-
FILE "01-Track.wav" WAVE
48
+
FILE "01-Track1.wav" WAVE
39
49
TRACK 01 AUDIO
50
+
INDEX 01 00:00:00
51
+
REM LOOP
52
+
53
+
FILE "02-Track2.wav" WAVE
54
+
TRACK 02 AUDIO
40
55
INDEX 01 00:00:00
41
56
REM LOOP 12345
42
57
43
-
FILE "02-Track.wav" WAVE
44
-
TRACK 02 AUDIO
58
+
FILE "03-Track3.wav" WAVE
59
+
TRACK 03 AUDIO
45
60
INDEX 01 00:00:00
46
61
REM NOLOOP
47
62
```
48
63
64
+
Track 1 will loop from the beginning when it reaches end of file
65
+
66
+
Track 2 will loop from the specified sector when it reaches end of file _(12345)_
67
+
68
+
Track 3 will not loop when it reaches end of file, and will move on to the next track on the list
69
+
70
+
## What is MD+?
71
+
72
+
MD+ is an open standard developed by neodev/ElSemi of Terraonion for the release of their Sega Mega Drive/Genesis flash cartridge and world's first Sega Mega CD/Sega CD optical drive emulator, the MegaSD, released in June of 2019. It is supported by the aforementioned Terraonion MegaSD, Krikzz's Mega EverDrive PRO _(as of firmware v4.15 from the 24th of June 2022)_ and Mega EverDrive CORE flash cartridges, and can be emulated using Genesis Plus GX and PicoDrive in RetroArch.
73
+
74
+
It is the 1:1 equivalent of MSU1 on the Super Nintendo, as it allows data streaming, and the original Yamaha YM2612 audio of Sega Mega Drive/Genesis games to be replaced by external PCM wave _(.wav)_ or compressed Ogg Vorbis _(.ogg)_ files to produce something similar to a what a CD version of the game would have been like, but unlike a physical CD unit and CD hardware emulation hacks _(Mode 1/MSU-MD)_, the audio files can be seamlessly looped, resulting in a more professional sounding audio experience and vastly reducing audio file sizes _(even when compared to MSU-MD games that have been converted to CHD)_. There are no inherent seek time delays or other imitations that come with emulating CD drives. Overall, it is a much better, more modern standard for FPGA and emulation platforms than the outdated Mode 1/MSU-MD format.
75
+
49
76
## Building from Source
50
77
51
78
### Requirements
@@ -54,18 +81,14 @@ FILE "02-Track.wav" WAVE
54
81
55
82
### Steps
56
83
1. Clone this repository
57
-
2. Download the foobar2000 SDK and extract to `foobar2000_SDK/` folder
84
+
2. Download the latest foobar2000 SDK and extract to `foobar2000_SDK/` folder
58
85
3. Open `foo_mdplus.sln` in Visual Studio
59
86
4. Select platform: **x86** or **x64**
60
87
5. Build -> Build Solution
61
-
6. DLL will be in `Debug/`or `Release/` folder
88
+
6. DLL will be in `Debug/`, `Release/`or `x64/Release` folder depending on solution configurations and platforms
62
89
63
90
## Credits
64
91
65
-
- Author: Relikk (John Sheppard)
66
-
- Version: 1.0
67
-
- License: MIT License
68
-
69
-
## Support
70
-
71
-
For issues or feature requests, please open an issue on GitHub.
0 commit comments