Skip to content

A bunch of tools for handling the MDX music format (music for the Sharp x68000)

License

Notifications You must be signed in to change notification settings

vampirefrog/mdxtools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mdxtools

Linux Build MSYS2 MINGW64 Build MacOS Build GitHub Release

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 file
  • mdx2vgm (WIP) - convert to VGM format
  • mdxinfo - extract information from a MDX file, and output in .csv format
  • mdx2mml - an MML decompiler
  • mml2mdx - an MML compiler
  • mdxdump - 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 format
  • adpcm-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.

Download music library

Ways to listen to MDX files

Windows:

Unix:

X68000:

About MML (Music Macro Language)

MML is a text format, containing sound commands similar to MDX and to MIDI as well.

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.

Other tools and resources

File formats

About the Sharp x68000

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.

Emulators

Licensing

Please see the LICENSE file for more information.

Contributing

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.

Stargazers over time