Files
@ r10585:02717b4646db
Branch filter:
Location: cpp/openttd-patchpack/source/src/music/allegro_m.cpp - annotation
r10585:02717b4646db
1.3 KiB
text/x-c
(svn r14848) -Update: WebTranslator2 update to 2009-01-05 18:44:14
afrikaans - 11 fixed by Alrich (11)
arabic_egypt - 19 fixed, 21 changed by khaloofah (40)
danish - 40 fixed, 1 changed by ThomasA (41)
dutch - 2 fixed, 25 changed by Excel20 (27)
hebrew - 8 fixed by EScake (8)
hungarian - 18 fixed by alyr (18)
italian - 18 fixed by lorenzodv (18)
norwegian_bokmal - 3 fixed, 11 changed by khh (14)
norwegian_nynorsk - 8 fixed by Grilldyret (8)
polish - 3 fixed by xaxa (3)
portuguese - 7 fixed by SnowFlake (7)
urdu - 9 fixed by yasirniazkhan (9)
afrikaans - 11 fixed by Alrich (11)
arabic_egypt - 19 fixed, 21 changed by khaloofah (40)
danish - 40 fixed, 1 changed by ThomasA (41)
dutch - 2 fixed, 25 changed by Excel20 (27)
hebrew - 8 fixed by EScake (8)
hungarian - 18 fixed by alyr (18)
italian - 18 fixed by lorenzodv (18)
norwegian_bokmal - 3 fixed, 11 changed by khh (14)
norwegian_nynorsk - 8 fixed by Grilldyret (8)
polish - 3 fixed by xaxa (3)
portuguese - 7 fixed by SnowFlake (7)
urdu - 9 fixed by yasirniazkhan (9)
r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf r10381:0855c63c9abf | /* $Id$ */
/** @file allegro_m.cpp Playing music via allegro. */
#ifdef WITH_ALLEGRO
#include "../stdafx.h"
#include "../debug.h"
#include "allegro_m.h"
#include <allegro.h>
static FMusicDriver_Allegro iFMusicDriver_Allegro;
static MIDI *_midi = NULL;
/** There are multiple modules that might be using Allegro and
* Allegro can only be initiated once. */
extern int _allegro_instance_count;
const char *MusicDriver_Allegro::Start(const char * const *param)
{
if (_allegro_instance_count == 0 && install_allegro(SYSTEM_AUTODETECT, &errno, NULL)) return NULL;
_allegro_instance_count++;
/* Initialise the sound */
if (install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL) != 0) return NULL;
/* Okay, there's no soundcard */
if (midi_card == MIDI_NONE) {
DEBUG(driver, 0, "allegro: no midi card found");
}
return NULL;
}
void MusicDriver_Allegro::Stop()
{
if (_midi != NULL) destroy_midi(_midi);
_midi = NULL;
if (--_allegro_instance_count == 0) allegro_exit();
}
void MusicDriver_Allegro::PlaySong(const char *filename)
{
if (_midi != NULL) destroy_midi(_midi);
_midi = load_midi(filename);
play_midi(_midi, false);
}
void MusicDriver_Allegro::StopSong()
{
stop_midi();
}
bool MusicDriver_Allegro::IsSongPlaying()
{
return midi_pos >= 0;
}
void MusicDriver_Allegro::SetVolume(byte vol)
{
set_volume(-1, vol);
}
#endif /* WITH_ALLEGRO */
|