YM (YM2149 Music) is an audio format that logs instructions sent to an AY-3-8910 or YM2149 chip. Playback occurs by emulating the chips and sending the logged data to them. Because the format merely logs the instructions to the chip, it doesn't preserve the original content of the music format.
On the Atari ST Arnaud Carre (Oxygene\Leonard) has been a great supporter of this format. It was available on the early PaCifiST emulator and is supported in the new SainT emulator. YM format can be played in ST Sound, WinAmp (via plugin), AY-Play, BZR Player and ZXTune on Android.
I have collated the documentation and mirrored one document on this site so that it is not lost.
The majority of YM tunes are compressed with LHA using header mode 0. SainT only outputs uncompressed YM tunes. A 2 minute tune might be 88kB uncompressed. Compressed with LHA a tune might be less than 2kB.
On 64-bit Windows 10 16-bit apps are no longer supported so we can't use LHA v2.13 as used by everyone in the early days. NTVDM was supported for a while on Windows 10, but as of March 2018 it is no longer supported.
I personally use the gnuwin32 LHA for Windows.
It does not use the -h0 command to use header mode 0. It simply uses -0. See below.Example usage:
lha a -0 test.lha test_uncompressed.ym ren test.lha test_compressed.ym