A bunch of tools for handling the MDX music format (music for the Sharp X68000 using the MXDRV sound driver).
These tools are aimed at the large collections of MDX files available online (see below for download links). They are meant to convert to other formats, such as vgm, midi and for the curious, MML and dumping the raw MDX data.
mdxplay
(WIP) - play a mdx file, currently linux only (libao)mdx2pcm
(WIP) - render a mdx file to a wav filemdx2vgm
(WIP) - convert to VGM formatmdxinfo
- extract information from a MDX file, and output in.csv
formatmdx2mml
- an MML decompilermml2mdx
- an MML compilermdxdump
- dump all the information in a MDX file.mdxstat
- analyze and print out some statistics and totals about given MDX files.mdx2midi
(WIP) - a MML to MIDI file converter. Use in conjunction with pdx2sf2 to hear the samples too.mididump
- Dump all the info and events in a .mid file. Useful for development. You can also use MidiPiano for a GUI version.mdx2opm
(WIP) - Extract OPM voices from MDX file (usable in VOPM).pdx2wav
- extract the samples from a PDX file, into 16-bit WAV files.pdx2sf2
- generate a SoundFont file with the samples from the PDX file. Useful for importing a song into a DAW.pdxinfo
- extract information from a PDX file, and output in.csv
formatadpcm-decode
- decodes ADPCM data from stdin and outputs 16-bit PCM to stdout (sample rate does not change)adpcm-encode
- encodes PCM data from stdrin and outputs APDCM data to stdout (sample rate does not change)
The rest of this document is work in progress.
- Neko's collection with >28k songs http://nfggames.com/X68000/Music/MXDRV_Neko68k.rar
- Another collection (to open, use DiskExplorer) http://nfggames.com/forum2/index.php?topic=4813.0
Windows:
- Winamp plugin (source available): http://www.vesta.dti.ne.jp/~tsato/soft_sound.html
- Foobar2000 plugin: http://www.vesta.dti.ne.jp/~tsato/soft_fb2k.html
- MXV, MXDRVg.dll, X68Sound.dll (sources available): http://gorry.haun.org/mx/index_e.html
- MDXWin: http://www.pat.hi-ho.ne.jp/sata68/mdxwin.html#mdxwin
- KbMedia Player: http://hwm5.gyao.ne.jp/kobarin/
Unix:
X68000:
- MMDSP (runs on the X68000 or an emulator): http://www.gamesx.com/wiki/doku.php?id=x68000:sxsi_disk_image_with_games_and_lots_of_mdx_files
MML is a text format, containing sound commands similar to MDX and to MIDI as well.
- MML resources & compilers: http://woolyss.com/chipmusic-mml.php
- MML description for MXDRV (japanese): http://www16.atwiki.jp/mxdrv/pages/19.html
- Another MML description: http://www.geocities.co.jp/Playtown-Denei/9628/mck/mckc-e.txt
- NRTDRV MML description: http://nrtdrv.sakura.ne.jp/index.cgi?page=MML%A5%B3%A5%DE%A5%F3%A5%C9%B0%EC%CD%F7
Compiling MML files to MDX files: Get run68 from http://sourceforge.jp/projects/sfnet_run68/ , then get MDX_TOOL.lzh from http://nfggames.com/x68000/Mirrors/x68pub/x68tools/SOUND/MXDRV/ . Unpack the lzh file in the same folder as run68, then open a command prompt, navigate to the run68 folder, and run run68.exe mxc.x <file.mml>
.
You can find other ways of compiling on this page: http://gimic.jp/index.php?MDX%E3%83%87%E3%83%BC%E3%82%BF%E4%BD%9C%E6%88%90
Decompiling: Similar procedure, but get DMDX from DMDX.lzh.
- mdxpg (convert to MIDI): http://www.geocities.jp/sam_kb/VOPM/MDXPG/index.html
- nfggames x68000 file archive: http://nfggames.com/x68000/
- especially the tools here (see MDX_TOOL.lzh) http://nfggames.com/x68000/Mirrors/x68pub/x68tools/SOUND/MXDRV/
It is a desktop computer released by Sharp in 1987 (see wikipedia page). It contains two sound chips, the YM2151 (8 FM channels) and OKI MSM6258 (1 4-bit PCM). There is an expansion card called Mercury unit that can increase the PCM channels to 8.
- XM6 2.06 (source available for 2.05)
- XM6 Pro-68k
- XM6 TypeG
- XM6i
- WinX68k (source available on the XM6 Pro-68k page)
- Virtual X68000 (linux)
- More emulators at Zophar's
Please see the LICENSE file for more information.
If you would like to improve or contribute to this project, I highly encourage you to submit pull requests instead of maintaining your own fork. This way, it is less confusing for users. I will do my best to include your patches.