22 #ifndef NUVIE_SOUND_ADPLUG_U6M 23 #define NUVIE_SOUND_ADPLUG_U6M 25 #include "ultima/nuvie/sound/adplug/adplug_player.h" 26 #include "common/stack.h" 36 songend(
false), song_pos(0), loop_position(0), read_delay(0), played_ticks(0) {
45 bool update()
override;
46 void rewind(
int subsong)
override;
47 float getrefresh()
override;
63 int subsong_repetitions;
76 unsigned char *song_data;
84 int instrument_offsets[9];
86 unsigned char vb_current_value[9];
87 unsigned char vb_double_amplitude[9];
88 unsigned char vb_multiplier[9];
89 unsigned char vb_direction_flag[9];
91 unsigned char carrier_mf[9];
92 signed char carrier_mf_signed_delta[9];
93 unsigned char carrier_mf_mod_delay_backup[9];
94 unsigned char carrier_mf_mod_delay[9];
97 signed char channel_freq_signed_delta[9];
101 unsigned char read_song_byte();
102 signed char read_signed_song_byte();
103 void dec_clip(
int &);
104 byte_pair expand_freq_byte(
unsigned char);
105 void set_adlib_freq(
int channel,
byte_pair freq_word);
106 void set_adlib_freq_no_update(
int channel,
byte_pair freq_word);
107 void set_carrier_mf(
int channel,
unsigned char mute_factor);
108 void set_modulator_mf(
int channel,
unsigned char mute_factor);
109 void freq_slide(
int channel);
110 void vibrato(
int channel);
111 void mf_slide(
int channel);
113 void command_0(
int channel);
114 void command_1(
int channel);
115 void command_2(
int channel);
116 void command_3(
int channel);
117 void command_4(
int channel);
118 void command_5(
int channel);
119 void command_6(
int channel);
120 void command_7(
int channel);
129 void out_adlib(
unsigned char adlib_register,
unsigned char adlib_data);
130 void out_adlib_opcell(
int channel,
bool carrier,
unsigned char adlib_register,
unsigned char out_byte);
void ARRAYCLEAR(T(&array) [N], const T &value=T())
Definition: util.h:101
Definition: detection.h:27
Definition: adplug_player.h:35