Files @ r4603:3b159d0db197
Branch filter:

Location: cpp/openttd-patchpack/source/music/bemidi.cpp

peter1138
(svn r6455) - Feature: Add 2cc (two company colours) livery schemes. This replaces the original colour selection window and bumps the saveload version. Liveries are supported for all vehicles, not just those with 2cc support. Thanks to lakie for GUI inspiration.
/* $Id$ */

#include "../stdafx.h"
#include "../openttd.h"
#include "bemidi.h"

// BeOS System Includes
#include <MidiSynthFile.h>

static BMidiSynthFile midiSynthFile;

static const char *bemidi_start(const char * const *parm)
{
	return NULL;
}

static void bemidi_stop(void)
{
	midiSynthFile.UnloadFile();
}

static void bemidi_play_song(const char *filename)
{
	bemidi_stop();
	entry_ref midiRef;
	get_ref_for_path(filename, &midiRef);
	midiSynthFile.LoadFile(&midiRef);
	midiSynthFile.Start();
}

static void bemidi_stop_song(void)
{
	midiSynthFile.UnloadFile();
}

static bool bemidi_is_playing(void)
{
	return !midiSynthFile.IsFinished();
}

static void bemidi_set_volume(byte vol)
{
	fprintf(stderr, "BeMidi: Set volume not implemented\n");
}

const HalMusicDriver _bemidi_music_driver = {
	bemidi_start,
	bemidi_stop,
	bemidi_play_song,
	bemidi_stop_song,
	bemidi_is_playing,
	bemidi_set_volume,
};