#include <musplayer.h>
Public Member Functions | |
bool | loadSND (Common::SeekableReadStream &snd) |
bool | loadMUS (Common::SeekableReadStream &mus) |
void | unload () |
uint32 | getSongID () const |
const Common::String & | getSongName () const |
Public Member Functions inherited from Gob::AdLib | |
AdLib (int callbackFrequency) | |
bool | isPlaying () const |
Are we currently playing? | |
int32 | getRepeating () const |
Return number of times left to loop. | |
void | setRepeating (int32 repCount) |
void | startPlay () |
void | stopPlay () |
void | syncVolume () |
Protected Member Functions | |
uint32 | pollMusic (bool first) override |
void | rewind () override |
Protected Member Functions inherited from Gob::AdLib | |
void | writeOPL (byte reg, byte val) |
void | end (bool killRepeat=false) |
bool | isPercussionMode () const |
void | setPercussionMode (bool percussion) |
void | enableWaveSelect (bool enable) |
void | setPitchRange (uint8 range) |
void | setTremoloDepth (bool tremoloDepth) |
void | setVibratoDepth (bool vibratoDepth) |
void | setKeySplit (bool keySplit) |
void | setVoiceTimbre (uint8 voice, const uint16 *params) |
void | setVoiceVolume (uint8 voice, uint8 volume) |
void | bendVoicePitch (uint8 voice, uint16 pitchBend) |
void | noteOn (uint8 voice, uint8 note) |
void | noteOff (uint8 voice) |
void | setTimerFrequency (int timerFrequency) |
Additional Inherited Members | |
Protected Types inherited from Gob::AdLib | |
enum | kVoice { kVoiceMelody0 = 0, kVoiceMelody1 = 1, kVoiceMelody2 = 2, kVoiceMelody3 = 3, kVoiceMelody4 = 4, kVoiceMelody5 = 5, kVoiceMelody6 = 6, kVoiceMelody7 = 7, kVoiceMelody8 = 8, kVoiceBaseDrum = 6, kVoiceSnareDrum = 7, kVoiceTom = 8, kVoiceCymbal = 9, kVoiceHihat = 10 } |
enum | kParam { kParamKeyScaleLevel = 0, kParamFreqMulti = 1, kParamFeedback = 2, kParamAttack = 3, kParamSustain = 4, kParamSustaining = 5, kParamDecay = 6, kParamRelease = 7, kParamLevel = 8, kParamAM = 9, kParamVib = 10, kParamKeyScaleRate = 11, kParamFM = 12, kParamWaveSelect = 13 } |
Static Protected Attributes inherited from Gob::AdLib | |
static const int | kOperatorCount = 18 |
Number of operators. | |
static const int | kParamCount = 14 |
Number of operator parameters. | |
static const int | kPitchStepCount = 25 |
Number of pitch bend steps in a half tone. | |
static const int | kOctaveCount = 8 |
Number of octaves we can play. | |
static const int | kHalfToneCount = 12 |
Number of half tones in an octave. | |
static const int | kOperatorsPerVoice = 2 |
Number of operators per voice. | |
static const int | kMelodyVoiceCount = 9 |
Number of melody voices. | |
static const int | kPercussionVoiceCount = 5 |
Number of percussion voices. | |
static const int | kMaxVoiceCount = 11 |
Max number of voices. | |
static const int | kNoteCount = kHalfToneCount * kOctaveCount |
static const int | kMaxVolume = 0x007F |
static const int | kMaxPitch = 0x3FFF |
static const int | kMidPitch = 0x2000 |
static const int | kStandardMidC = 60 |
A mid C in standard MIDI. | |
static const int | kOPLMidC = 48 |
A mid C for the OPL. | |
A player for the AdLib MUS format, with the instrument information in SND files.
In the Gob engine, those files are usually named .MDY and .TBR instead.
bool Gob::MUSPlayer::loadSND | ( | Common::SeekableReadStream & | snd | ) |
Load the instruments (.SND or .TBR)
bool Gob::MUSPlayer::loadMUS | ( | Common::SeekableReadStream & | mus | ) |
Load the melody (.MUS or .MDY)
|
overrideprotectedvirtual |
The callback function that's called for polling more AdLib commands.
first | Is this the first poll since the start of the song? |
Implements Gob::AdLib.
|
overrideprotectedvirtual |
Rewind the song.
Implements Gob::AdLib.