32#ifndef H_ADPLUG_MUSPLAYER
33#define H_ADPLUG_MUSPLAYER
38#define SYSTEM_XOR_BYTE 0xF0
40#define OVERFLOW_BYTE 0xF8
43#define NOTE_OFF_BYTE 0x80
44#define NOTE_ON_BYTE 0x90
45#define AFTER_TOUCH_BYTE 0xA0
46#define CONTROL_CHANGE_BYTE 0xB0
47#define PROG_CHANGE_BYTE 0xC0
48#define CHANNEL_PRESSURE_BYTE 0xD0
49#define PITCH_BEND_BYTE 0xE0
51#define ADLIB_CTRL_BYTE 0x7F
52#define TEMPO_CTRL_BYTE 0
54#define TUNE_NAME_SIZE 30
56#define TIMBRE_NAME_SIZE 9
57#define TIMBRE_DEF_LEN ADLIB_INST_LEN
58#define TIMBRE_DEF_SIZE (TIMBRE_DEF_LEN * sizeof(int16_t))
59#define OVERFLOW_TICKS 240
60#define MAX_SEC_DELAY 10.0f
62#define SND_HEADER_LEN 6
63#define IMS_SIGNATURE 0x7777
65#define BNK_HEADER_SIZE 28
66#define BNK_SIGNATURE_LEN 6
67#define BNK_NAME_SIZE 12
68#define BNK_INST_SIZE 30
82 if (
drv)
drv->~CadlibDriver();
#define MAX_VOICES
Definition adlib.h:72
CPlayer(Copl *newopl)
Definition player.cpp:34
std::string gettype()
Definition mus.cpp:48
uint8_t pitchBRange
Definition mus.h:138
uint32_t counter
Definition mus.h:126
bool songend
Definition mus.h:123
uint8_t majorVersion
Definition mus.h:132
uint16_t nrTimbre
Definition mus.h:151
uint8_t volume[MAX_VOICES]
Definition mus.h:129
~CmusPlayer()
Definition mus.h:78
CadlibDriver * drv
Definition mus.h:118
uint8_t tickBeat
Definition mus.h:135
void executeCommand()
Definition mus.cpp:437
static CPlayer * factory(Copl *newopl)
Definition mus.cpp:43
bool LoadTimbreBank(const std::string fname, const CFileProvider &fp)
Definition mus.cpp:235
void SetTempo(uint16_t tempo, uint8_t tickBeat)
Definition mus.cpp:411
uint32_t ticks
Definition mus.h:127
std::string gettitle()
Definition mus.h:94
uint8_t status
Definition mus.h:128
unsigned int getinstruments()
Definition mus.h:101
bool update()
Definition mus.cpp:575
mus_inst * insts
Definition mus.h:152
void rewind(int subsong)
Definition mus.cpp:392
unsigned long pos
Definition mus.h:122
bool load(const std::string &filename, const CFileProvider &fp)
Definition mus.cpp:59
bool isIMS
Definition mus.h:142
std::string getinstrument(unsigned int n)
Definition mus.h:106
char tuneName[TUNE_NAME_SIZE]
Definition mus.h:134
uint32_t GetTicks()
Definition mus.cpp:417
float timer
Definition mus.h:124
uint32_t dataSize
Definition mus.h:136
float getrefresh()
Definition mus.h:89
uint8_t * data
Definition mus.h:141
bool FetchTimbreData(const std::string fname, const CFileProvider &fp)
Definition mus.cpp:287
uint8_t minorVersion
Definition mus.h:133
uint16_t basicTempo
Definition mus.h:139
uint8_t soundMode
Definition mus.h:137
bool InstsLoaded()
Definition mus.cpp:226
CmusPlayer(Copl *newopl)
Definition mus.h:75
static char filename[]
Definition features.c:5
static const char * name
Definition pugl.h:1582
unsigned short uint16_t
Definition mid.cpp:99
unsigned int uint32_t
Definition mid.cpp:100
short int16_t
Definition mid.cpp:96
unsigned char uint8_t
Definition mid.cpp:98
#define TUNE_NAME_SIZE
Definition mus.h:54
#define TIMBRE_DEF_LEN
Definition mus.h:57
#define TIMBRE_NAME_SIZE
Definition mus.h:56
bool loaded
Definition mus.h:147
int16_t data[TIMBRE_DEF_LEN]
Definition mus.h:148
char name[TIMBRE_NAME_SIZE]
Definition mus.h:146
int n
Definition crypt.c:458