mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-08 01:10:28 +00:00
56 lines
943 B
C++
56 lines
943 B
C++
|
#ifdef __BEOS__
|
||
|
|
||
|
#include "stdafx.h"
|
||
|
#include "ttd.h"
|
||
|
#include "hal.h"
|
||
|
|
||
|
// BeOS System Includes
|
||
|
#include <MidiSynthFile.h>
|
||
|
|
||
|
BMidiSynthFile midiSynthFile;
|
||
|
|
||
|
static char *bemidi_start(char **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) {
|
||
|
if(midiSynthFile.IsFinished() == true)
|
||
|
{
|
||
|
return 0;
|
||
|
} else {
|
||
|
return 1;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
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,
|
||
|
};
|
||
|
|
||
|
#endif // __BEOS__
|