added -n and -m flags, better macro listing