This repository contains a simple standalone version of mmus2mid.c by Jim Flynn / Sebastien Bacquet.
It will only work on little-endian machines. If you need to make it work on big endian machines, change the Makefile to adapt the macro doom_wtohs so that it swaps bytes. See https://github.com/klange/prboom/blob/ed7899c82670c58317c76ca3a5d08cb3e61abae0/src/m_swap.h#L88 for a swap macro (copy the definition of doom_swap_s to doom_wtohs).