src/music/libtimidity.cpp
author glx
Fri, 07 Dec 2007 17:42:15 +0000
changeset 8026 a188ea8201ce
parent 7170 923946ec324f
child 8214 971f861d5543
permissions -rw-r--r--
(svn r11586) -Fix: make another widget 'accessor' function const when it should be const.
6072
2eb3e6ecba20 (svn r8805) -Codechange (r8757): DO set eol-style and keywords on new files...
Darkvater
parents: 6034
diff changeset
     1
/* $Id$ */
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     2
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     3
#include "../stdafx.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     4
#include "../openttd.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     5
#include "../sound.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     6
#include "../string.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     7
#include "../variables.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     8
#include "../debug.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     9
#include "libtimidity.h"
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    10
#include <fcntl.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    11
#include <sys/types.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    12
#include <sys/wait.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    13
#include <unistd.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    14
#include <signal.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    15
#include <sys/stat.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    16
#include <errno.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    17
#include <timidity.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    18
#if defined(PSP)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    19
#include <pspaudiolib.h>
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    20
#endif /* PSP */
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    21
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    22
enum MidiState {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    23
	MIDI_STOPPED = 0,
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    24
	MIDI_PLAYING = 1,
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    25
};
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    26
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    27
static struct {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    28
	MidIStream *stream;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    29
	MidSongOptions options;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    30
	MidSong *song;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    31
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    32
	MidiState status;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    33
	uint32 song_length;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    34
	uint32 song_position;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    35
} _midi;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    36
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    37
#if defined(PSP)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    38
static void AudioOutCallback(void *buf, unsigned int _reqn, void *userdata)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    39
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    40
	memset(buf, 0, _reqn * PSP_NUM_AUDIO_CHANNELS);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    41
	if (_midi.status == MIDI_PLAYING) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    42
		mid_song_read_wave(_midi.song, buf, _reqn * PSP_NUM_AUDIO_CHANNELS);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    43
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    44
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    45
#endif /* PSP */
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    46
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    47
static FMusicDriver_LibTimidity iFMusicDriver_LibTimidity;
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    48
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    49
const char *MusicDriver_LibTimidity::Start(const char *const *param)
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    50
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    51
	_midi.status = MIDI_STOPPED;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    52
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    53
	if (mid_init(param == NULL ? NULL : (char *)param[0]) < 0) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    54
		/* If init fails, it can be because no configuration was found.
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    55
		 *  If it was not forced via param, try to load it without a
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    56
		 *  configuration. Who knows that works. */
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    57
		if (param != NULL || mid_init_no_config() < 0) {
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    58
			return "error initializing timidity";
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    59
		}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    60
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    61
	DEBUG(driver, 1, "successfully initialised timidity");
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    62
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    63
	_midi.options.rate = 44100;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    64
	_midi.options.format = MID_AUDIO_S16LSB;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    65
	_midi.options.channels = 2;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    66
#if defined(PSP)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    67
	_midi.options.buffer_size = PSP_NUM_AUDIO_SAMPLES;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    68
#else
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    69
	_midi.options.buffer_size = _midi.options.rate;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    70
#endif
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    71
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    72
#if defined(PSP)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    73
	pspAudioInit();
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    74
	pspAudioSetChannelCallback(_midi.options.channels, &AudioOutCallback, NULL);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    75
	pspAudioSetVolume(_midi.options.channels, PSP_VOLUME_MAX, PSP_VOLUME_MAX);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    76
#endif /* PSP */
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    77
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    78
	return NULL;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    79
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    80
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    81
void MusicDriver_LibTimidity::Stop()
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    82
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    83
	if (_midi.status == MIDI_PLAYING) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    84
		_midi.status = MIDI_STOPPED;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    85
		mid_song_free(_midi.song);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    86
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    87
	mid_exit();
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    88
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    89
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
    90
void MusicDriver_LibTimidity::PlaySong(const char *filename)
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    91
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    92
	_midi.stream = mid_istream_open_file(filename);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    93
	if (_midi.stream == NULL) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    94
		DEBUG(driver, 0, "Could not open music file");
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    95
		return;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    96
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    97
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    98
	_midi.song = mid_song_load(_midi.stream, &_midi.options);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    99
	mid_istream_close(_midi.stream);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   100
	_midi.song_length = mid_song_get_total_time(_midi.song);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   101
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   102
	if (_midi.song == NULL) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   103
		DEBUG(driver, 1, "Invalid MIDI file");
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   104
		return;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   105
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   106
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   107
	mid_song_start(_midi.song);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   108
	_midi.status = MIDI_PLAYING;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   109
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   110
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
   111
void MusicDriver_LibTimidity::StopSong()
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   112
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   113
	_midi.status = MIDI_STOPPED;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   114
	mid_song_free(_midi.song);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   115
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   116
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
   117
bool MusicDriver_LibTimidity::IsSongPlaying()
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   118
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   119
	if (_midi.status == MIDI_PLAYING) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   120
		_midi.song_position = mid_song_get_time(_midi.song);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   121
		if (_midi.song_position >= _midi.song_length) {
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   122
			_midi.status = MIDI_STOPPED;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   123
			_midi.song_position = 0;
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   124
		}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   125
	}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   126
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   127
	return (_midi.status == MIDI_PLAYING);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   128
}
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   129
7170
923946ec324f (svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
peter1138
parents: 6247
diff changeset
   130
void MusicDriver_LibTimidity::SetVolume(byte vol)
6034
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   131
{
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   132
	if (_midi.song != NULL)
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   133
		mid_song_set_volume(_midi.song, vol);
7a125490f55c (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
   134
}