Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[ALSA] Remove xxx_t typedefs: OPL4

Modules: OPL4

Remove xxx_t typedefs from the OPL4 driver

Signed-off-by: Takashi Iwai <tiwai@suse.de>

authored by

Takashi Iwai and committed by
Jaroslav Kysela
a42dd420 5b1646a8

+269 -265
+3 -3
include/sound/opl4.h
··· 22 22 23 23 #include <sound/opl3.h> 24 24 25 - typedef struct opl4 opl4_t; 25 + struct snd_opl4; 26 26 27 - extern int snd_opl4_create(snd_card_t *card, 27 + extern int snd_opl4_create(struct snd_card *card, 28 28 unsigned long fm_port, unsigned long pcm_port, 29 29 int seq_device, 30 - opl3_t **opl3, opl4_t **opl4); 30 + struct snd_opl3 **opl3, struct snd_opl4 **opl4); 31 31 32 32 #endif /* __SOUND_OPL4_H */
+20 -20
sound/drivers/opl4/opl4_lib.c
··· 27 27 MODULE_DESCRIPTION("OPL4 driver"); 28 28 MODULE_LICENSE("GPL"); 29 29 30 - static void inline snd_opl4_wait(opl4_t *opl4) 30 + static void inline snd_opl4_wait(struct snd_opl4 *opl4) 31 31 { 32 32 int timeout = 10; 33 33 while ((inb(opl4->fm_port) & OPL4_STATUS_BUSY) && --timeout > 0) 34 34 ; 35 35 } 36 36 37 - void snd_opl4_write(opl4_t *opl4, u8 reg, u8 value) 37 + void snd_opl4_write(struct snd_opl4 *opl4, u8 reg, u8 value) 38 38 { 39 39 snd_opl4_wait(opl4); 40 40 outb(reg, opl4->pcm_port); ··· 43 43 outb(value, opl4->pcm_port + 1); 44 44 } 45 45 46 - u8 snd_opl4_read(opl4_t *opl4, u8 reg) 46 + u8 snd_opl4_read(struct snd_opl4 *opl4, u8 reg) 47 47 { 48 48 snd_opl4_wait(opl4); 49 49 outb(reg, opl4->pcm_port); ··· 52 52 return inb(opl4->pcm_port + 1); 53 53 } 54 54 55 - void snd_opl4_read_memory(opl4_t *opl4, char *buf, int offset, int size) 55 + void snd_opl4_read_memory(struct snd_opl4 *opl4, char *buf, int offset, int size) 56 56 { 57 57 unsigned long flags; 58 58 u8 memcfg; ··· 76 76 spin_unlock_irqrestore(&opl4->reg_lock, flags); 77 77 } 78 78 79 - void snd_opl4_write_memory(opl4_t *opl4, const char *buf, int offset, int size) 79 + void snd_opl4_write_memory(struct snd_opl4 *opl4, const char *buf, int offset, int size) 80 80 { 81 81 unsigned long flags; 82 82 u8 memcfg; ··· 100 100 spin_unlock_irqrestore(&opl4->reg_lock, flags); 101 101 } 102 102 103 - static void snd_opl4_enable_opl4(opl4_t *opl4) 103 + static void snd_opl4_enable_opl4(struct snd_opl4 *opl4) 104 104 { 105 105 outb(OPL3_REG_MODE, opl4->fm_port + 2); 106 106 inb(opl4->fm_port); ··· 110 110 inb(opl4->fm_port); 111 111 } 112 112 113 - static int snd_opl4_detect(opl4_t *opl4) 113 + static int snd_opl4_detect(struct snd_opl4 *opl4) 114 114 { 115 115 u8 id1, id2; 116 116 ··· 144 144 } 145 145 146 146 #if defined(CONFIG_SND_SEQUENCER) || (defined(MODULE) && defined(CONFIG_SND_SEQUENCER_MODULE)) 147 - static void snd_opl4_seq_dev_free(snd_seq_device_t *seq_dev) 147 + static void snd_opl4_seq_dev_free(struct snd_seq_device *seq_dev) 148 148 { 149 - opl4_t *opl4 = seq_dev->private_data; 149 + struct snd_opl4 *opl4 = seq_dev->private_data; 150 150 opl4->seq_dev = NULL; 151 151 } 152 152 153 - static int snd_opl4_create_seq_dev(opl4_t *opl4, int seq_device) 153 + static int snd_opl4_create_seq_dev(struct snd_opl4 *opl4, int seq_device) 154 154 { 155 155 opl4->seq_dev_num = seq_device; 156 156 if (snd_seq_device_new(opl4->card, seq_device, SNDRV_SEQ_DEV_ID_OPL4, 157 - sizeof(opl4_t *), &opl4->seq_dev) >= 0) { 157 + sizeof(struct snd_opl4 *), &opl4->seq_dev) >= 0) { 158 158 strcpy(opl4->seq_dev->name, "OPL4 Wavetable"); 159 - *(opl4_t **)SNDRV_SEQ_DEVICE_ARGPTR(opl4->seq_dev) = opl4; 159 + *(struct snd_opl4 **)SNDRV_SEQ_DEVICE_ARGPTR(opl4->seq_dev) = opl4; 160 160 opl4->seq_dev->private_data = opl4; 161 161 opl4->seq_dev->private_free = snd_opl4_seq_dev_free; 162 162 } ··· 164 164 } 165 165 #endif 166 166 167 - static void snd_opl4_free(opl4_t *opl4) 167 + static void snd_opl4_free(struct snd_opl4 *opl4) 168 168 { 169 169 #ifdef CONFIG_PROC_FS 170 170 snd_opl4_free_proc(opl4); ··· 174 174 kfree(opl4); 175 175 } 176 176 177 - static int snd_opl4_dev_free(snd_device_t *device) 177 + static int snd_opl4_dev_free(struct snd_device *device) 178 178 { 179 - opl4_t *opl4 = device->device_data; 179 + struct snd_opl4 *opl4 = device->device_data; 180 180 snd_opl4_free(opl4); 181 181 return 0; 182 182 } 183 183 184 - int snd_opl4_create(snd_card_t *card, 184 + int snd_opl4_create(struct snd_card *card, 185 185 unsigned long fm_port, unsigned long pcm_port, 186 186 int seq_device, 187 - opl3_t **ropl3, opl4_t **ropl4) 187 + struct snd_opl3 **ropl3, struct snd_opl4 **ropl4) 188 188 { 189 - opl4_t *opl4; 190 - opl3_t *opl3; 189 + struct snd_opl4 *opl4; 190 + struct snd_opl3 *opl3; 191 191 int err; 192 - static snd_device_ops_t ops = { 192 + static struct snd_device_ops ops = { 193 193 .dev_free = snd_opl4_dev_free 194 194 }; 195 195
+34 -34
sound/drivers/opl4/opl4_local.h
··· 131 131 #define SNDRV_SEQ_DEV_ID_OPL4 "opl4-synth" 132 132 133 133 134 - typedef struct opl4_sound { 134 + struct opl4_sound { 135 135 u16 tone; 136 136 s16 pitch_offset; 137 137 u8 key_scaling; ··· 144 144 u8 reg_level_decay2; 145 145 u8 reg_release_correction; 146 146 u8 reg_tremolo; 147 - } opl4_sound_t; 147 + }; 148 148 149 - typedef struct opl4_region { 149 + struct opl4_region { 150 150 u8 key_min, key_max; 151 - opl4_sound_t sound; 152 - } opl4_region_t; 151 + struct opl4_sound sound; 152 + }; 153 153 154 - typedef struct opl4_region_ptr { 154 + struct opl4_region_ptr { 155 155 int count; 156 - const opl4_region_t *regions; 157 - } opl4_region_ptr_t; 156 + const struct opl4_region *regions; 157 + }; 158 158 159 - typedef struct opl4_voice { 159 + struct opl4_voice { 160 160 struct list_head list; 161 161 int number; 162 - snd_midi_channel_t *chan; 162 + struct snd_midi_channel *chan; 163 163 int note; 164 164 int velocity; 165 - const opl4_sound_t *sound; 165 + const struct opl4_sound *sound; 166 166 u8 level_direct; 167 167 u8 reg_f_number; 168 168 u8 reg_misc; 169 169 u8 reg_lfo_vibrato; 170 - } opl4_voice_t; 170 + }; 171 171 172 - struct opl4 { 172 + struct snd_opl4 { 173 173 unsigned long fm_port; 174 174 unsigned long pcm_port; 175 175 struct resource *res_fm_port; 176 176 struct resource *res_pcm_port; 177 177 unsigned short hardware; 178 178 spinlock_t reg_lock; 179 - snd_card_t *card; 179 + struct snd_card *card; 180 180 181 181 #ifdef CONFIG_PROC_FS 182 - snd_info_entry_t *proc_entry; 182 + struct snd_info_entry *proc_entry; 183 183 int memory_access; 184 184 #endif 185 185 struct semaphore access_mutex; ··· 189 189 190 190 int seq_dev_num; 191 191 int seq_client; 192 - snd_seq_device_t *seq_dev; 192 + struct snd_seq_device *seq_dev; 193 193 194 - snd_midi_channel_set_t *chset; 195 - opl4_voice_t voices[OPL4_MAX_VOICES]; 194 + struct snd_midi_channel_set *chset; 195 + struct opl4_voice voices[OPL4_MAX_VOICES]; 196 196 struct list_head off_voices; 197 197 struct list_head on_voices; 198 198 #endif 199 199 }; 200 200 201 201 /* opl4_lib.c */ 202 - void snd_opl4_write(opl4_t *opl4, u8 reg, u8 value); 203 - u8 snd_opl4_read(opl4_t *opl4, u8 reg); 204 - void snd_opl4_read_memory(opl4_t *opl4, char *buf, int offset, int size); 205 - void snd_opl4_write_memory(opl4_t *opl4, const char *buf, int offset, int size); 202 + void snd_opl4_write(struct snd_opl4 *opl4, u8 reg, u8 value); 203 + u8 snd_opl4_read(struct snd_opl4 *opl4, u8 reg); 204 + void snd_opl4_read_memory(struct snd_opl4 *opl4, char *buf, int offset, int size); 205 + void snd_opl4_write_memory(struct snd_opl4 *opl4, const char *buf, int offset, int size); 206 206 207 207 /* opl4_mixer.c */ 208 - int snd_opl4_create_mixer(opl4_t *opl4); 208 + int snd_opl4_create_mixer(struct snd_opl4 *opl4); 209 209 210 210 #ifdef CONFIG_PROC_FS 211 211 /* opl4_proc.c */ 212 - int snd_opl4_create_proc(opl4_t *opl4); 213 - void snd_opl4_free_proc(opl4_t *opl4); 212 + int snd_opl4_create_proc(struct snd_opl4 *opl4); 213 + void snd_opl4_free_proc(struct snd_opl4 *opl4); 214 214 #endif 215 215 216 216 /* opl4_seq.c */ 217 217 extern int volume_boost; 218 218 219 219 /* opl4_synth.c */ 220 - void snd_opl4_synth_reset(opl4_t *opl4); 221 - void snd_opl4_synth_shutdown(opl4_t *opl4); 222 - void snd_opl4_note_on(void *p, int note, int vel, snd_midi_channel_t *chan); 223 - void snd_opl4_note_off(void *p, int note, int vel, snd_midi_channel_t *chan); 224 - void snd_opl4_terminate_note(void *p, int note, snd_midi_channel_t *chan); 225 - void snd_opl4_control(void *p, int type, snd_midi_channel_t *chan); 226 - void snd_opl4_sysex(void *p, unsigned char *buf, int len, int parsed, snd_midi_channel_set_t *chset); 220 + void snd_opl4_synth_reset(struct snd_opl4 *opl4); 221 + void snd_opl4_synth_shutdown(struct snd_opl4 *opl4); 222 + void snd_opl4_note_on(void *p, int note, int vel, struct snd_midi_channel *chan); 223 + void snd_opl4_note_off(void *p, int note, int vel, struct snd_midi_channel *chan); 224 + void snd_opl4_terminate_note(void *p, int note, struct snd_midi_channel *chan); 225 + void snd_opl4_control(void *p, int type, struct snd_midi_channel *chan); 226 + void snd_opl4_sysex(void *p, unsigned char *buf, int len, int parsed, struct snd_midi_channel_set *chset); 227 227 228 228 /* yrw801.c */ 229 - int snd_yrw801_detect(opl4_t *opl4); 230 - extern const opl4_region_ptr_t snd_yrw801_regions[]; 229 + int snd_yrw801_detect(struct snd_opl4 *opl4); 230 + extern const struct opl4_region_ptr snd_yrw801_regions[]; 231 231 232 232 #endif /* __OPL4_LOCAL_H */
+8 -8
sound/drivers/opl4/opl4_mixer.c
··· 20 20 #include "opl4_local.h" 21 21 #include <sound/control.h> 22 22 23 - static int snd_opl4_ctl_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) 23 + static int snd_opl4_ctl_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo) 24 24 { 25 25 uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER; 26 26 uinfo->count = 2; ··· 29 29 return 0; 30 30 } 31 31 32 - static int snd_opl4_ctl_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) 32 + static int snd_opl4_ctl_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) 33 33 { 34 - opl4_t *opl4 = snd_kcontrol_chip(kcontrol); 34 + struct snd_opl4 *opl4 = snd_kcontrol_chip(kcontrol); 35 35 unsigned long flags; 36 36 u8 reg = kcontrol->private_value; 37 37 u8 value; ··· 44 44 return 0; 45 45 } 46 46 47 - static int snd_opl4_ctl_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) 47 + static int snd_opl4_ctl_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) 48 48 { 49 - opl4_t *opl4 = snd_kcontrol_chip(kcontrol); 49 + struct snd_opl4 *opl4 = snd_kcontrol_chip(kcontrol); 50 50 unsigned long flags; 51 51 u8 reg = kcontrol->private_value; 52 52 u8 value, old_value; ··· 60 60 return value != old_value; 61 61 } 62 62 63 - static snd_kcontrol_new_t snd_opl4_controls[] = { 63 + static struct snd_kcontrol_new snd_opl4_controls[] = { 64 64 { 65 65 .iface = SNDRV_CTL_ELEM_IFACE_MIXER, 66 66 .name = "FM Playback Volume", ··· 79 79 } 80 80 }; 81 81 82 - int snd_opl4_create_mixer(opl4_t *opl4) 82 + int snd_opl4_create_mixer(struct snd_opl4 *opl4) 83 83 { 84 - snd_card_t *card = opl4->card; 84 + struct snd_card *card = opl4->card; 85 85 int i, err; 86 86 87 87 strcat(card->mixername, ",OPL4");
+12 -12
sound/drivers/opl4/opl4_proc.c
··· 23 23 24 24 #ifdef CONFIG_PROC_FS 25 25 26 - static int snd_opl4_mem_proc_open(snd_info_entry_t *entry, 26 + static int snd_opl4_mem_proc_open(struct snd_info_entry *entry, 27 27 unsigned short mode, void **file_private_data) 28 28 { 29 - opl4_t *opl4 = entry->private_data; 29 + struct snd_opl4 *opl4 = entry->private_data; 30 30 31 31 down(&opl4->access_mutex); 32 32 if (opl4->memory_access) { ··· 38 38 return 0; 39 39 } 40 40 41 - static int snd_opl4_mem_proc_release(snd_info_entry_t *entry, 41 + static int snd_opl4_mem_proc_release(struct snd_info_entry *entry, 42 42 unsigned short mode, void *file_private_data) 43 43 { 44 - opl4_t *opl4 = entry->private_data; 44 + struct snd_opl4 *opl4 = entry->private_data; 45 45 46 46 down(&opl4->access_mutex); 47 47 opl4->memory_access--; ··· 49 49 return 0; 50 50 } 51 51 52 - static long snd_opl4_mem_proc_read(snd_info_entry_t *entry, void *file_private_data, 52 + static long snd_opl4_mem_proc_read(struct snd_info_entry *entry, void *file_private_data, 53 53 struct file *file, char __user *_buf, 54 54 unsigned long count, unsigned long pos) 55 55 { 56 - opl4_t *opl4 = entry->private_data; 56 + struct snd_opl4 *opl4 = entry->private_data; 57 57 long size; 58 58 char* buf; 59 59 ··· 75 75 return 0; 76 76 } 77 77 78 - static long snd_opl4_mem_proc_write(snd_info_entry_t *entry, void *file_private_data, 78 + static long snd_opl4_mem_proc_write(struct snd_info_entry *entry, void *file_private_data, 79 79 struct file *file, const char __user *_buf, 80 80 unsigned long count, unsigned long pos) 81 81 { 82 - opl4_t *opl4 = entry->private_data; 82 + struct snd_opl4 *opl4 = entry->private_data; 83 83 long size; 84 84 char *buf; 85 85 ··· 101 101 return 0; 102 102 } 103 103 104 - static long long snd_opl4_mem_proc_llseek(snd_info_entry_t *entry, void *file_private_data, 104 + static long long snd_opl4_mem_proc_llseek(struct snd_info_entry *entry, void *file_private_data, 105 105 struct file *file, long long offset, int orig) 106 106 { 107 107 switch (orig) { ··· 130 130 .llseek = snd_opl4_mem_proc_llseek, 131 131 }; 132 132 133 - int snd_opl4_create_proc(opl4_t *opl4) 133 + int snd_opl4_create_proc(struct snd_opl4 *opl4) 134 134 { 135 - snd_info_entry_t *entry; 135 + struct snd_info_entry *entry; 136 136 137 137 entry = snd_info_create_card_entry(opl4->card, "opl4-mem", opl4->card->proc_root); 138 138 if (entry) { ··· 157 157 return 0; 158 158 } 159 159 160 - void snd_opl4_free_proc(opl4_t *opl4) 160 + void snd_opl4_free_proc(struct snd_opl4 *opl4) 161 161 { 162 162 if (opl4->proc_entry) 163 163 snd_info_unregister(opl4->proc_entry);
+21 -21
sound/drivers/opl4/opl4_seq.c
··· 45 45 module_param(volume_boost, int, 0644); 46 46 MODULE_PARM_DESC(volume_boost, "Additional volume for OPL4 wavetable sounds."); 47 47 48 - static int snd_opl4_seq_use_inc(opl4_t *opl4) 48 + static int snd_opl4_seq_use_inc(struct snd_opl4 *opl4) 49 49 { 50 50 if (!try_module_get(opl4->card->module)) 51 51 return -EFAULT; 52 52 return 0; 53 53 } 54 54 55 - static void snd_opl4_seq_use_dec(opl4_t *opl4) 55 + static void snd_opl4_seq_use_dec(struct snd_opl4 *opl4) 56 56 { 57 57 module_put(opl4->card->module); 58 58 } 59 59 60 - static int snd_opl4_seq_use(void *private_data, snd_seq_port_subscribe_t *info) 60 + static int snd_opl4_seq_use(void *private_data, struct snd_seq_port_subscribe *info) 61 61 { 62 - opl4_t *opl4 = private_data; 62 + struct snd_opl4 *opl4 = private_data; 63 63 int err; 64 64 65 65 down(&opl4->access_mutex); ··· 84 84 return 0; 85 85 } 86 86 87 - static int snd_opl4_seq_unuse(void *private_data, snd_seq_port_subscribe_t *info) 87 + static int snd_opl4_seq_unuse(void *private_data, struct snd_seq_port_subscribe *info) 88 88 { 89 - opl4_t *opl4 = private_data; 89 + struct snd_opl4 *opl4 = private_data; 90 90 91 91 snd_opl4_synth_shutdown(opl4); 92 92 ··· 99 99 return 0; 100 100 } 101 101 102 - static snd_midi_op_t opl4_ops = { 102 + static struct snd_midi_op opl4_ops = { 103 103 .note_on = snd_opl4_note_on, 104 104 .note_off = snd_opl4_note_off, 105 105 .note_terminate = snd_opl4_terminate_note, ··· 107 107 .sysex = snd_opl4_sysex, 108 108 }; 109 109 110 - static int snd_opl4_seq_event_input(snd_seq_event_t *ev, int direct, 110 + static int snd_opl4_seq_event_input(struct snd_seq_event *ev, int direct, 111 111 void *private_data, int atomic, int hop) 112 112 { 113 - opl4_t *opl4 = private_data; 113 + struct snd_opl4 *opl4 = private_data; 114 114 115 115 snd_midi_process_event(&opl4_ops, ev, opl4->chset); 116 116 return 0; ··· 118 118 119 119 static void snd_opl4_seq_free_port(void *private_data) 120 120 { 121 - opl4_t *opl4 = private_data; 121 + struct snd_opl4 *opl4 = private_data; 122 122 123 123 snd_midi_channel_free_set(opl4->chset); 124 124 } 125 125 126 - static int snd_opl4_seq_new_device(snd_seq_device_t *dev) 126 + static int snd_opl4_seq_new_device(struct snd_seq_device *dev) 127 127 { 128 - opl4_t *opl4; 128 + struct snd_opl4 *opl4; 129 129 int client; 130 - snd_seq_client_callback_t callbacks; 131 - snd_seq_client_info_t cinfo; 132 - snd_seq_port_callback_t pcallbacks; 130 + struct snd_seq_client_callback callbacks; 131 + struct snd_seq_client_info cinfo; 132 + struct snd_seq_port_callback pcallbacks; 133 133 134 - opl4 = *(opl4_t **)SNDRV_SEQ_DEVICE_ARGPTR(dev); 134 + opl4 = *(struct snd_opl4 **)SNDRV_SEQ_DEVICE_ARGPTR(dev); 135 135 if (!opl4) 136 136 return -EINVAL; 137 137 ··· 188 188 return 0; 189 189 } 190 190 191 - static int snd_opl4_seq_delete_device(snd_seq_device_t *dev) 191 + static int snd_opl4_seq_delete_device(struct snd_seq_device *dev) 192 192 { 193 - opl4_t *opl4; 193 + struct snd_opl4 *opl4; 194 194 195 - opl4 = *(opl4_t **)SNDRV_SEQ_DEVICE_ARGPTR(dev); 195 + opl4 = *(struct snd_opl4 **)SNDRV_SEQ_DEVICE_ARGPTR(dev); 196 196 if (!opl4) 197 197 return -EINVAL; 198 198 ··· 205 205 206 206 static int __init alsa_opl4_synth_init(void) 207 207 { 208 - static snd_seq_dev_ops_t ops = { 208 + static struct snd_seq_dev_ops ops = { 209 209 snd_opl4_seq_new_device, 210 210 snd_opl4_seq_delete_device 211 211 }; 212 212 213 213 return snd_seq_device_register_driver(SNDRV_SEQ_DEV_ID_OPL4, &ops, 214 - sizeof(opl4_t*)); 214 + sizeof(struct snd_opl4 *)); 215 215 } 216 216 217 217 static void __exit alsa_opl4_synth_exit(void)
+40 -36
sound/drivers/opl4/opl4_synth.c
··· 270 270 /* 271 271 * Initializes all voices. 272 272 */ 273 - void snd_opl4_synth_reset(opl4_t *opl4) 273 + void snd_opl4_synth_reset(struct snd_opl4 *opl4) 274 274 { 275 275 unsigned long flags; 276 276 int i; ··· 294 294 /* 295 295 * Shuts down all voices. 296 296 */ 297 - void snd_opl4_synth_shutdown(opl4_t *opl4) 297 + void snd_opl4_synth_shutdown(struct snd_opl4 *opl4) 298 298 { 299 299 unsigned long flags; 300 300 int i; ··· 309 309 /* 310 310 * Executes the callback for all voices playing the specified note. 311 311 */ 312 - static void snd_opl4_do_for_note(opl4_t *opl4, int note, snd_midi_channel_t *chan, 313 - void (*func)(opl4_t *opl4, opl4_voice_t *voice)) 312 + static void snd_opl4_do_for_note(struct snd_opl4 *opl4, int note, struct snd_midi_channel *chan, 313 + void (*func)(struct snd_opl4 *opl4, struct opl4_voice *voice)) 314 314 { 315 315 int i; 316 316 unsigned long flags; 317 - opl4_voice_t *voice; 317 + struct opl4_voice *voice; 318 318 319 319 spin_lock_irqsave(&opl4->reg_lock, flags); 320 320 for (i = 0; i < OPL4_MAX_VOICES; i++) { ··· 329 329 /* 330 330 * Executes the callback for all voices of to the specified channel. 331 331 */ 332 - static void snd_opl4_do_for_channel(opl4_t *opl4, snd_midi_channel_t *chan, 333 - void (*func)(opl4_t *opl4, opl4_voice_t *voice)) 332 + static void snd_opl4_do_for_channel(struct snd_opl4 *opl4, 333 + struct snd_midi_channel *chan, 334 + void (*func)(struct snd_opl4 *opl4, struct opl4_voice *voice)) 334 335 { 335 336 int i; 336 337 unsigned long flags; 337 - opl4_voice_t *voice; 338 + struct opl4_voice *voice; 338 339 339 340 spin_lock_irqsave(&opl4->reg_lock, flags); 340 341 for (i = 0; i < OPL4_MAX_VOICES; i++) { ··· 350 349 /* 351 350 * Executes the callback for all active voices. 352 351 */ 353 - static void snd_opl4_do_for_all(opl4_t *opl4, 354 - void (*func)(opl4_t *opl4, opl4_voice_t *voice)) 352 + static void snd_opl4_do_for_all(struct snd_opl4 *opl4, 353 + void (*func)(struct snd_opl4 *opl4, struct opl4_voice *voice)) 355 354 { 356 355 int i; 357 356 unsigned long flags; 358 - opl4_voice_t *voice; 357 + struct opl4_voice *voice; 359 358 360 359 spin_lock_irqsave(&opl4->reg_lock, flags); 361 360 for (i = 0; i < OPL4_MAX_VOICES; i++) { ··· 366 365 spin_unlock_irqrestore(&opl4->reg_lock, flags); 367 366 } 368 367 369 - static void snd_opl4_update_volume(opl4_t *opl4, opl4_voice_t *voice) 368 + static void snd_opl4_update_volume(struct snd_opl4 *opl4, struct opl4_voice *voice) 370 369 { 371 370 int att; 372 371 ··· 385 384 voice->level_direct = 0; 386 385 } 387 386 388 - static void snd_opl4_update_pan(opl4_t *opl4, opl4_voice_t *voice) 387 + static void snd_opl4_update_pan(struct snd_opl4 *opl4, struct opl4_voice *voice) 389 388 { 390 389 int pan = voice->sound->panpot; 391 390 ··· 400 399 snd_opl4_write(opl4, OPL4_REG_MISC + voice->number, voice->reg_misc); 401 400 } 402 401 403 - static void snd_opl4_update_vibrato_depth(opl4_t *opl4, opl4_voice_t *voice) 402 + static void snd_opl4_update_vibrato_depth(struct snd_opl4 *opl4, 403 + struct opl4_voice *voice) 404 404 { 405 405 int depth; 406 406 ··· 416 414 voice->reg_lfo_vibrato); 417 415 } 418 416 419 - static void snd_opl4_update_pitch(opl4_t *opl4, opl4_voice_t *voice) 417 + static void snd_opl4_update_pitch(struct snd_opl4 *opl4, 418 + struct opl4_voice *voice) 420 419 { 421 - snd_midi_channel_t *chan = voice->chan; 420 + struct snd_midi_channel *chan = voice->chan; 422 421 int note, pitch, octave; 423 422 424 423 note = chan->drum_channel ? 60 : voice->note; ··· 447 444 snd_opl4_write(opl4, OPL4_REG_F_NUMBER + voice->number, voice->reg_f_number); 448 445 } 449 446 450 - static void snd_opl4_update_tone_parameters(opl4_t *opl4, opl4_voice_t *voice) 447 + static void snd_opl4_update_tone_parameters(struct snd_opl4 *opl4, 448 + struct opl4_voice *voice) 451 449 { 452 450 snd_opl4_write(opl4, OPL4_REG_ATTACK_DECAY1 + voice->number, 453 451 voice->sound->reg_attack_decay1); ··· 461 457 } 462 458 463 459 /* allocate one voice */ 464 - static opl4_voice_t *snd_opl4_get_voice(opl4_t *opl4) 460 + static struct opl4_voice *snd_opl4_get_voice(struct snd_opl4 *opl4) 465 461 { 466 462 /* first, try to get the oldest key-off voice */ 467 463 if (!list_empty(&opl4->off_voices)) 468 - return list_entry(opl4->off_voices.next, opl4_voice_t, list); 464 + return list_entry(opl4->off_voices.next, struct opl4_voice, list); 469 465 /* then get the oldest key-on voice */ 470 466 snd_assert(!list_empty(&opl4->on_voices), ); 471 - return list_entry(opl4->on_voices.next, opl4_voice_t, list); 467 + return list_entry(opl4->on_voices.next, struct opl4_voice, list); 472 468 } 473 469 474 - static void snd_opl4_wait_for_wave_headers(opl4_t *opl4) 470 + static void snd_opl4_wait_for_wave_headers(struct snd_opl4 *opl4) 475 471 { 476 472 int timeout = 200; 477 473 ··· 479 475 udelay(10); 480 476 } 481 477 482 - void snd_opl4_note_on(void *private_data, int note, int vel, snd_midi_channel_t *chan) 478 + void snd_opl4_note_on(void *private_data, int note, int vel, struct snd_midi_channel *chan) 483 479 { 484 - opl4_t *opl4 = private_data; 485 - const opl4_region_ptr_t *regions; 486 - opl4_voice_t *voice[2]; 487 - const opl4_sound_t *sound[2]; 480 + struct snd_opl4 *opl4 = private_data; 481 + const struct opl4_region_ptr *regions; 482 + struct opl4_voice *voice[2]; 483 + const struct opl4_sound *sound[2]; 488 484 int voices = 0, i; 489 485 unsigned long flags; 490 486 ··· 553 549 spin_unlock_irqrestore(&opl4->reg_lock, flags); 554 550 } 555 551 556 - static void snd_opl4_voice_off(opl4_t *opl4, opl4_voice_t *voice) 552 + static void snd_opl4_voice_off(struct snd_opl4 *opl4, struct opl4_voice *voice) 557 553 { 558 554 list_del(&voice->list); 559 555 list_add_tail(&voice->list, &opl4->off_voices); ··· 562 558 snd_opl4_write(opl4, OPL4_REG_MISC + voice->number, voice->reg_misc); 563 559 } 564 560 565 - void snd_opl4_note_off(void *private_data, int note, int vel, snd_midi_channel_t *chan) 561 + void snd_opl4_note_off(void *private_data, int note, int vel, struct snd_midi_channel *chan) 566 562 { 567 - opl4_t *opl4 = private_data; 563 + struct snd_opl4 *opl4 = private_data; 568 564 569 565 snd_opl4_do_for_note(opl4, note, chan, snd_opl4_voice_off); 570 566 } 571 567 572 - static void snd_opl4_terminate_voice(opl4_t *opl4, opl4_voice_t *voice) 568 + static void snd_opl4_terminate_voice(struct snd_opl4 *opl4, struct opl4_voice *voice) 573 569 { 574 570 list_del(&voice->list); 575 571 list_add_tail(&voice->list, &opl4->off_voices); ··· 578 574 snd_opl4_write(opl4, OPL4_REG_MISC + voice->number, voice->reg_misc); 579 575 } 580 576 581 - void snd_opl4_terminate_note(void *private_data, int note, snd_midi_channel_t *chan) 577 + void snd_opl4_terminate_note(void *private_data, int note, struct snd_midi_channel *chan) 582 578 { 583 - opl4_t *opl4 = private_data; 579 + struct snd_opl4 *opl4 = private_data; 584 580 585 581 snd_opl4_do_for_note(opl4, note, chan, snd_opl4_terminate_voice); 586 582 } 587 583 588 - void snd_opl4_control(void *private_data, int type, snd_midi_channel_t *chan) 584 + void snd_opl4_control(void *private_data, int type, struct snd_midi_channel *chan) 589 585 { 590 - opl4_t *opl4 = private_data; 586 + struct snd_opl4 *opl4 = private_data; 591 587 592 588 switch (type) { 593 589 case MIDI_CTL_MSB_MODWHEEL: ··· 625 621 } 626 622 627 623 void snd_opl4_sysex(void *private_data, unsigned char *buf, int len, 628 - int parsed, snd_midi_channel_set_t *chset) 624 + int parsed, struct snd_midi_channel_set *chset) 629 625 { 630 - opl4_t *opl4 = private_data; 626 + struct snd_opl4 *opl4 = private_data; 631 627 632 628 if (parsed == SNDRV_MIDI_SYSEX_GS_MASTER_VOLUME) 633 629 snd_opl4_do_for_all(opl4, snd_opl4_update_volume);
+131 -131
sound/drivers/opl4/yrw801.c
··· 33 33 34 34 #include "opl4_local.h" 35 35 36 - int snd_yrw801_detect(opl4_t *opl4) 36 + int snd_yrw801_detect(struct snd_opl4 *opl4) 37 37 { 38 38 char buf[15]; 39 39 ··· 54 54 * by this driver. 55 55 */ 56 56 57 - static const opl4_region_t regions_00[] = { /* Acoustic Grand Piano */ 57 + static const struct opl4_region regions_00[] = { /* Acoustic Grand Piano */ 58 58 {0x14, 0x27, {0x12c,7474,100, 0,0,0x00,0xc8,0x20,0xf2,0x13,0x08,0x0}}, 59 59 {0x28, 0x2d, {0x12d,6816,100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0}}, 60 60 {0x2e, 0x33, {0x12e,5899,100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0}}, ··· 66 66 {0x53, 0x58, {0x134,1444,100, 0,0,0x07,0xc8,0x20,0xf3,0x14,0x18,0x0}}, 67 67 {0x59, 0x6d, {0x135,1915,100, 0,0,0x00,0xc8,0x20,0xf4,0x15,0x08,0x0}} 68 68 }; 69 - static const opl4_region_t regions_01[] = { /* Bright Acoustic Piano */ 69 + static const struct opl4_region regions_01[] = { /* Bright Acoustic Piano */ 70 70 {0x14, 0x2d, {0x12c,7474,100, 0,0,0x00,0xc8,0x20,0xf2,0x13,0x08,0x0}}, 71 71 {0x2e, 0x33, {0x12d,6816,100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0}}, 72 72 {0x34, 0x39, {0x12e,5899,100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0}}, ··· 78 78 {0x59, 0x5e, {0x134,1444,100, 0,0,0x0a,0xc8,0x20,0xf3,0x14,0x18,0x0}}, 79 79 {0x5f, 0x6d, {0x135,1915,100, 0,0,0x00,0xc8,0x20,0xf4,0x15,0x08,0x0}} 80 80 }; 81 - static const opl4_region_t regions_02[] = { /* Electric Grand Piano */ 81 + static const struct opl4_region regions_02[] = { /* Electric Grand Piano */ 82 82 {0x14, 0x2d, {0x12c,7476,100, 1,0,0x00,0xae,0x20,0xf2,0x13,0x07,0x0}}, 83 83 {0x2e, 0x33, {0x12d,6818,100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0}}, 84 84 {0x34, 0x39, {0x12e,5901,100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0}}, ··· 91 91 {0x5f, 0x6d, {0x135,1917,100, 1,0,0x00,0xae,0x20,0xf4,0x15,0x07,0x0}}, 92 92 {0x00, 0x7f, {0x06c,6375,100,-1,0,0x00,0xc2,0x28,0xf4,0x23,0x18,0x0}} 93 93 }; 94 - static const opl4_region_t regions_03[] = { /* Honky-Tonk Piano */ 94 + static const struct opl4_region regions_03[] = { /* Honky-Tonk Piano */ 95 95 {0x14, 0x27, {0x12c,7474,100, 0,0,0x00,0xb4,0x20,0xf2,0x13,0x08,0x0}}, 96 96 {0x28, 0x2d, {0x12d,6816,100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0}}, 97 97 {0x2e, 0x33, {0x12e,5899,100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0}}, ··· 113 113 {0x53, 0x58, {0x134,1457,100, 0,0,0x01,0xb4,0x20,0xf3,0x14,0x18,0x0}}, 114 114 {0x59, 0x6d, {0x135,1903,100, 0,0,0x00,0xb4,0x20,0xf4,0x15,0x08,0x0}} 115 115 }; 116 - static const opl4_region_t regions_04[] = { /* Electric Piano 1 */ 116 + static const struct opl4_region regions_04[] = { /* Electric Piano 1 */ 117 117 {0x15, 0x6c, {0x00b,6570,100, 0,0,0x00,0x28,0x38,0xf0,0x00,0x0c,0x0}}, 118 118 {0x00, 0x7f, {0x06c,6375,100, 0,2,0x00,0xb0,0x22,0xf4,0x23,0x19,0x0}} 119 119 }; 120 - static const opl4_region_t regions_05[] = { /* Electric Piano 2 */ 120 + static const struct opl4_region regions_05[] = { /* Electric Piano 2 */ 121 121 {0x14, 0x27, {0x12c,7476,100, 0,3,0x00,0xa2,0x1b,0xf2,0x13,0x08,0x0}}, 122 122 {0x28, 0x2d, {0x12d,6818,100, 0,3,0x00,0xa2,0x1b,0xf2,0x14,0x08,0x0}}, 123 123 {0x2e, 0x33, {0x12e,5901,100, 0,3,0x00,0xa2,0x1b,0xf2,0x14,0x08,0x0}}, ··· 139 139 {0x59, 0x5e, {0x134,1442,100, 0,0,0x0a,0xa2,0x18,0xf3,0x14,0x18,0x0}}, 140 140 {0x5f, 0x6d, {0x135,1913,100, 0,0,0x00,0xa2,0x18,0xf4,0x15,0x08,0x0}} 141 141 }; 142 - static const opl4_region_t regions_06[] = { /* Harpsichord */ 142 + static const struct opl4_region regions_06[] = { /* Harpsichord */ 143 143 {0x15, 0x39, {0x080,5158,100, 0,0,0x00,0xb2,0x20,0xf5,0x24,0x19,0x0}}, 144 144 {0x3a, 0x3f, {0x081,4408,100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x09,0x0}}, 145 145 {0x40, 0x45, {0x082,3622,100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x09,0x0}}, 146 146 {0x46, 0x4d, {0x083,2843,100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x19,0x0}}, 147 147 {0x4e, 0x6c, {0x084,1307,100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x29,0x0}} 148 148 }; 149 - static const opl4_region_t regions_07[] = { /* Clavinet */ 149 + static const struct opl4_region regions_07[] = { /* Clavinet */ 150 150 {0x15, 0x51, {0x027,5009,100, 0,0,0x00,0xd2,0x28,0xf5,0x13,0x2b,0x0}}, 151 151 {0x52, 0x6c, {0x028,3495,100, 0,0,0x00,0xd2,0x28,0xf5,0x13,0x3b,0x0}} 152 152 }; 153 - static const opl4_region_t regions_08[] = { /* Celesta */ 153 + static const struct opl4_region regions_08[] = { /* Celesta */ 154 154 {0x15, 0x6c, {0x02b,3267,100, 0,0,0x00,0xdc,0x20,0xf4,0x15,0x07,0x3}} 155 155 }; 156 - static const opl4_region_t regions_09[] = { /* Glockenspiel */ 156 + static const struct opl4_region regions_09[] = { /* Glockenspiel */ 157 157 {0x15, 0x78, {0x0f3, 285,100, 0,0,0x00,0xc2,0x28,0xf6,0x25,0x25,0x0}} 158 158 }; 159 - static const opl4_region_t regions_0a[] = { /* Music Box */ 159 + static const struct opl4_region regions_0a[] = { /* Music Box */ 160 160 {0x15, 0x6c, {0x0f3,3362,100, 0,0,0x00,0xb6,0x20,0xa6,0x25,0x25,0x0}}, 161 161 {0x15, 0x6c, {0x101,4773,100, 0,0,0x00,0xaa,0x20,0xd4,0x14,0x16,0x0}} 162 162 }; 163 - static const opl4_region_t regions_0b[] = { /* Vibraphone */ 163 + static const struct opl4_region regions_0b[] = { /* Vibraphone */ 164 164 {0x15, 0x6c, {0x101,4778,100, 0,0,0x00,0xc0,0x28,0xf4,0x14,0x16,0x4}} 165 165 }; 166 - static const opl4_region_t regions_0c[] = { /* Marimba */ 166 + static const struct opl4_region regions_0c[] = { /* Marimba */ 167 167 {0x15, 0x3f, {0x0f4,4778,100, 0,0,0x00,0xc4,0x38,0xf7,0x47,0x08,0x0}}, 168 168 {0x40, 0x4c, {0x0f5,3217,100, 0,0,0x00,0xc4,0x38,0xf7,0x47,0x08,0x0}}, 169 169 {0x4d, 0x5a, {0x0f5,3217,100, 0,0,0x00,0xc4,0x38,0xf7,0x48,0x08,0x0}}, 170 170 {0x5b, 0x7f, {0x0f5,3218,100, 0,0,0x00,0xc4,0x38,0xf7,0x48,0x18,0x0}} 171 171 }; 172 - static const opl4_region_t regions_0d[] = { /* Xylophone */ 172 + static const struct opl4_region regions_0d[] = { /* Xylophone */ 173 173 {0x00, 0x7f, {0x136,1729,100, 0,0,0x00,0xd2,0x38,0xf0,0x06,0x36,0x0}} 174 174 }; 175 - static const opl4_region_t regions_0e[] = { /* Tubular Bell */ 175 + static const struct opl4_region regions_0e[] = { /* Tubular Bell */ 176 176 {0x01, 0x7f, {0x0ff,3999,100, 0,1,0x00,0x90,0x21,0xf4,0xa3,0x25,0x1}} 177 177 }; 178 - static const opl4_region_t regions_0f[] = { /* Dulcimer */ 178 + static const struct opl4_region regions_0f[] = { /* Dulcimer */ 179 179 {0x00, 0x7f, {0x03f,4236,100, 0,1,0x00,0xbc,0x29,0xf5,0x16,0x07,0x0}}, 180 180 {0x00, 0x7f, {0x040,4236,100, 0,2,0x0e,0x94,0x2a,0xf5,0x16,0x07,0x0}} 181 181 }; 182 - static const opl4_region_t regions_10[] = { /* Drawbar Organ */ 182 + static const struct opl4_region regions_10[] = { /* Drawbar Organ */ 183 183 {0x01, 0x7f, {0x08e,4394,100, 0,2,0x14,0xc2,0x3a,0xf0,0x00,0x0a,0x0}} 184 184 }; 185 - static const opl4_region_t regions_11[] = { /* Percussive Organ */ 185 + static const struct opl4_region regions_11[] = { /* Percussive Organ */ 186 186 {0x15, 0x3b, {0x08c,6062,100, 0,3,0x00,0xbe,0x3b,0xf0,0x00,0x09,0x0}}, 187 187 {0x3c, 0x6c, {0x08d,2984,100, 0,3,0x00,0xbe,0x3b,0xf0,0x00,0x09,0x0}} 188 188 }; 189 - static const opl4_region_t regions_12[] = { /* Rock Organ */ 189 + static const struct opl4_region regions_12[] = { /* Rock Organ */ 190 190 {0x15, 0x30, {0x128,6574,100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0}}, 191 191 {0x31, 0x3c, {0x129,5040,100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0}}, 192 192 {0x3d, 0x48, {0x12a,3498,100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0}}, 193 193 {0x49, 0x54, {0x12b,1957,100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0}}, 194 194 {0x55, 0x6c, {0x127, 423,100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0}} 195 195 }; 196 - static const opl4_region_t regions_13[] = { /* Church Organ */ 196 + static const struct opl4_region regions_13[] = { /* Church Organ */ 197 197 {0x15, 0x29, {0x087,7466,100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0}}, 198 198 {0x2a, 0x30, {0x088,6456,100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0}}, 199 199 {0x31, 0x38, {0x089,5428,100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0}}, 200 200 {0x39, 0x41, {0x08a,4408,100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0}}, 201 201 {0x42, 0x6c, {0x08b,3406,100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0}} 202 202 }; 203 - static const opl4_region_t regions_14[] = { /* Reed Organ */ 203 + static const struct opl4_region regions_14[] = { /* Reed Organ */ 204 204 {0x00, 0x53, {0x0ac,5570,100, 0,0,0x06,0xc0,0x38,0xf0,0x00,0x09,0x1}}, 205 205 {0x54, 0x7f, {0x0ad,2497,100, 0,0,0x00,0xc0,0x38,0xf0,0x00,0x09,0x1}} 206 206 }; 207 - static const opl4_region_t regions_15[] = { /* Accordion */ 207 + static const struct opl4_region regions_15[] = { /* Accordion */ 208 208 {0x15, 0x4c, {0x006,4261,100, 0,2,0x00,0xa4,0x22,0x90,0x00,0x09,0x0}}, 209 209 {0x4d, 0x6c, {0x007,1530,100, 0,2,0x00,0xa4,0x22,0x90,0x00,0x09,0x0}}, 210 210 {0x15, 0x6c, {0x070,4391,100, 0,3,0x00,0x8a,0x23,0xa0,0x00,0x09,0x0}} 211 211 }; 212 - static const opl4_region_t regions_16[] = { /* Harmonica */ 212 + static const struct opl4_region regions_16[] = { /* Harmonica */ 213 213 {0x15, 0x6c, {0x070,4408,100, 0,0,0x00,0xae,0x30,0xa0,0x00,0x09,0x2}} 214 214 }; 215 - static const opl4_region_t regions_17[] = { /* Tango Accordion */ 215 + static const struct opl4_region regions_17[] = { /* Tango Accordion */ 216 216 {0x00, 0x53, {0x0ac,5573,100, 0,0,0x00,0xae,0x38,0xf0,0x00,0x09,0x0}}, 217 217 {0x54, 0x7f, {0x0ad,2500,100, 0,0,0x00,0xae,0x38,0xf0,0x00,0x09,0x0}}, 218 218 {0x15, 0x6c, {0x041,8479,100, 0,2,0x00,0x6a,0x3a,0x75,0x20,0x0a,0x0}} 219 219 }; 220 - static const opl4_region_t regions_18[] = { /* Nylon Guitar */ 220 + static const struct opl4_region regions_18[] = { /* Nylon Guitar */ 221 221 {0x15, 0x2f, {0x0b3,6964,100, 0,0,0x05,0xca,0x28,0xf5,0x34,0x09,0x0}}, 222 222 {0x30, 0x36, {0x0b7,5567,100, 0,0,0x0c,0xca,0x28,0xf5,0x34,0x09,0x0}}, 223 223 {0x37, 0x3c, {0x0b5,4653,100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0}}, 224 224 {0x3d, 0x43, {0x0b4,3892,100, 0,0,0x00,0xca,0x28,0xf6,0x35,0x09,0x0}}, 225 225 {0x44, 0x60, {0x0b6,2723,100, 0,0,0x00,0xca,0x28,0xf6,0x35,0x19,0x0}} 226 226 }; 227 - static const opl4_region_t regions_19[] = { /* Steel Guitar */ 227 + static const struct opl4_region regions_19[] = { /* Steel Guitar */ 228 228 {0x15, 0x31, {0x00c,6937,100, 0,0,0x00,0xbc,0x28,0xf0,0x04,0x19,0x0}}, 229 229 {0x32, 0x38, {0x00d,5410,100, 0,0,0x00,0xbc,0x28,0xf0,0x05,0x09,0x0}}, 230 230 {0x39, 0x47, {0x00e,4379,100, 0,0,0x00,0xbc,0x28,0xf5,0x94,0x09,0x0}}, 231 231 {0x48, 0x6c, {0x00f,2843,100, 0,0,0x00,0xbc,0x28,0xf6,0x95,0x09,0x0}} 232 232 }; 233 - static const opl4_region_t regions_1a[] = { /* Jazz Guitar */ 233 + static const struct opl4_region regions_1a[] = { /* Jazz Guitar */ 234 234 {0x15, 0x31, {0x05a,6832,100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0}}, 235 235 {0x32, 0x3f, {0x05b,4897,100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0}}, 236 236 {0x40, 0x6c, {0x05c,3218,100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0}} 237 237 }; 238 - static const opl4_region_t regions_1b[] = { /* Clean Guitar */ 238 + static const struct opl4_region regions_1b[] = { /* Clean Guitar */ 239 239 {0x15, 0x2c, {0x061,7053,100, 0,1,0x00,0xb4,0x29,0xf5,0x54,0x0a,0x0}}, 240 240 {0x2d, 0x31, {0x060,6434,100, 0,1,0x00,0xb4,0x29,0xf5,0x54,0x0a,0x0}}, 241 241 {0x32, 0x38, {0x063,5764,100, 0,1,0x00,0xbe,0x29,0xf5,0x55,0x0a,0x0}}, ··· 245 245 {0x4c, 0x54, {0x066,2462,100, 0,1,0x00,0xb4,0x29,0xf5,0x55,0x2a,0x0}}, 246 246 {0x55, 0x6c, {0x067,1307,100, 0,1,0x00,0xb4,0x29,0xf6,0x56,0x0a,0x0}} 247 247 }; 248 - static const opl4_region_t regions_1c[] = { /* Muted Guitar */ 248 + static const struct opl4_region regions_1c[] = { /* Muted Guitar */ 249 249 {0x01, 0x7f, {0x068,4408,100, 0,0,0x00,0xcc,0x28,0xf6,0x15,0x09,0x0}} 250 250 }; 251 - static const opl4_region_t regions_1d[] = { /* Overdriven Guitar */ 251 + static const struct opl4_region regions_1d[] = { /* Overdriven Guitar */ 252 252 {0x00, 0x40, {0x0a5,6589,100, 0,1,0x00,0xc0,0x29,0xf2,0x11,0x09,0x0}}, 253 253 {0x41, 0x7f, {0x0a6,5428,100, 0,1,0x00,0xc0,0x29,0xf2,0x11,0x09,0x0}} 254 254 }; 255 - static const opl4_region_t regions_1e[] = { /* Distortion Guitar */ 255 + static const struct opl4_region regions_1e[] = { /* Distortion Guitar */ 256 256 {0x15, 0x2a, {0x051,6928,100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0}}, 257 257 {0x2b, 0x2e, {0x052,6433,100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0}}, 258 258 {0x2f, 0x32, {0x053,5944,100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0}}, ··· 263 263 {0x43, 0x46, {0x058,3361,100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0}}, 264 264 {0x47, 0x6c, {0x059,2784,100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0}} 265 265 }; 266 - static const opl4_region_t regions_1f[] = { /* Guitar Harmonics */ 266 + static const struct opl4_region regions_1f[] = { /* Guitar Harmonics */ 267 267 {0x15, 0x44, {0x05e,5499,100, 0,0,0x00,0xce,0x28,0xf4,0x24,0x09,0x0}}, 268 268 {0x45, 0x49, {0x05d,4850,100, 0,0,0x00,0xe2,0x28,0xf4,0x24,0x09,0x0}}, 269 269 {0x4a, 0x6c, {0x05f,4259,100, 0,0,0x00,0xce,0x28,0xf4,0x24,0x09,0x0}} 270 270 }; 271 - static const opl4_region_t regions_20[] = { /* Acoustic Bass */ 271 + static const struct opl4_region regions_20[] = { /* Acoustic Bass */ 272 272 {0x15, 0x30, {0x004,8053,100, 0,0,0x00,0xe2,0x18,0xf5,0x15,0x09,0x0}}, 273 273 {0x31, 0x6c, {0x005,4754,100, 0,0,0x00,0xe2,0x18,0xf5,0x15,0x09,0x0}} 274 274 }; 275 - static const opl4_region_t regions_21[] = { /* Fingered Bass */ 275 + static const struct opl4_region regions_21[] = { /* Fingered Bass */ 276 276 {0x01, 0x20, {0x04a,8762,100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0}}, 277 277 {0x21, 0x25, {0x04b,8114,100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0}}, 278 278 {0x26, 0x2a, {0x04c,7475,100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0}}, 279 279 {0x2b, 0x7f, {0x04d,6841,100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0}} 280 280 }; 281 - static const opl4_region_t regions_22[] = { /* Picked Bass */ 281 + static const struct opl4_region regions_22[] = { /* Picked Bass */ 282 282 {0x15, 0x23, {0x04f,7954,100, 0,0,0x00,0xcc,0x18,0xf3,0x90,0x0a,0x0}}, 283 283 {0x24, 0x2a, {0x050,7318,100, 0,0,0x05,0xcc,0x18,0xf3,0x90,0x1a,0x0}}, 284 284 {0x2b, 0x2f, {0x06b,6654,100, 0,0,0x00,0xcc,0x18,0xf3,0x90,0x2a,0x0}}, 285 285 {0x30, 0x47, {0x069,6031,100, 0,0,0x00,0xcc,0x18,0xf5,0xb0,0x0a,0x0}}, 286 286 {0x48, 0x6c, {0x06a,5393,100, 0,0,0x00,0xcc,0x18,0xf5,0xb0,0x0a,0x0}} 287 287 }; 288 - static const opl4_region_t regions_23[] = { /* Fretless Bass */ 288 + static const struct opl4_region regions_23[] = { /* Fretless Bass */ 289 289 {0x01, 0x7f, {0x04e,5297,100, 0,0,0x00,0xd2,0x10,0xf3,0x63,0x19,0x0}} 290 290 }; 291 - static const opl4_region_t regions_24[] = { /* Slap Bass 1 */ 291 + static const struct opl4_region regions_24[] = { /* Slap Bass 1 */ 292 292 {0x15, 0x6c, {0x0a3,7606,100, 0,1,0x00,0xde,0x19,0xf5,0x32,0x1a,0x0}} 293 293 }; 294 - static const opl4_region_t regions_25[] = { /* Slap Bass 2 */ 294 + static const struct opl4_region regions_25[] = { /* Slap Bass 2 */ 295 295 {0x01, 0x7f, {0x0a2,6694,100, 0,0,0x00,0xda,0x20,0xb0,0x02,0x09,0x0}} 296 296 }; 297 - static const opl4_region_t regions_26[] = { /* Synth Bass 1 */ 297 + static const struct opl4_region regions_26[] = { /* Synth Bass 1 */ 298 298 {0x15, 0x6c, {0x0be,7466,100, 0,1,0x00,0xb8,0x39,0xf4,0x14,0x09,0x0}} 299 299 }; 300 - static const opl4_region_t regions_27[] = { /* Synth Bass 2 */ 300 + static const struct opl4_region regions_27[] = { /* Synth Bass 2 */ 301 301 {0x00, 0x7f, {0x117,8103,100, 0,1,0x00,0xca,0x39,0xf3,0x50,0x08,0x0}} 302 302 }; 303 - static const opl4_region_t regions_28[] = { /* Violin */ 303 + static const struct opl4_region regions_28[] = { /* Violin */ 304 304 {0x15, 0x3a, {0x105,5158,100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0}}, 305 305 {0x3b, 0x3f, {0x102,4754,100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0}}, 306 306 {0x40, 0x41, {0x106,4132,100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0}}, ··· 312 312 {0x4f, 0x51, {0x10d,2166,100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0}}, 313 313 {0x52, 0x6c, {0x109,1825,100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0}} 314 314 }; 315 - static const opl4_region_t regions_29[] = { /* Viola */ 315 + static const struct opl4_region regions_29[] = { /* Viola */ 316 316 {0x15, 0x32, {0x103,5780,100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0}}, 317 317 {0x33, 0x35, {0x104,5534,100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0}}, 318 318 {0x36, 0x38, {0x105,5158,100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0}}, ··· 326 326 {0x4d, 0x4f, {0x10d,2166,100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0}}, 327 327 {0x50, 0x6c, {0x109,1825,100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0}} 328 328 }; 329 - static const opl4_region_t regions_2a[] = { /* Cello */ 329 + static const struct opl4_region regions_2a[] = { /* Cello */ 330 330 {0x15, 0x2d, {0x112,6545,100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x08,0x0}}, 331 331 {0x2e, 0x37, {0x113,5764,100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x08,0x0}}, 332 332 {0x38, 0x3e, {0x115,4378,100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0}}, 333 333 {0x3f, 0x44, {0x116,3998,100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0}}, 334 334 {0x45, 0x6c, {0x114,3218,100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0}} 335 335 }; 336 - static const opl4_region_t regions_2b[] = { /* Contrabass */ 336 + static const struct opl4_region regions_2b[] = { /* Contrabass */ 337 337 {0x15, 0x29, {0x110,7713,100, 0,1,0x00,0xc2,0x19,0x90,0x00,0x09,0x0}}, 338 338 {0x2a, 0x6c, {0x111,6162,100, 0,1,0x00,0xc2,0x19,0x90,0x00,0x09,0x0}} 339 339 }; 340 - static const opl4_region_t regions_2c[] = { /* Tremolo Strings */ 340 + static const struct opl4_region regions_2c[] = { /* Tremolo Strings */ 341 341 {0x15, 0x3b, {0x0b0,4810,100, 0,0,0x0a,0xde,0x38,0xf0,0x00,0x07,0x6}}, 342 342 {0x3c, 0x41, {0x035,4035,100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6}}, 343 343 {0x42, 0x47, {0x033,3129,100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6}}, 344 344 {0x48, 0x52, {0x034,2625,100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6}}, 345 345 {0x53, 0x6c, {0x0af, 936,100, 0,0,0x00,0xde,0x38,0xf0,0x00,0x07,0x6}} 346 346 }; 347 - static const opl4_region_t regions_2d[] = { /* Pizzicato Strings */ 347 + static const struct opl4_region regions_2d[] = { /* Pizzicato Strings */ 348 348 {0x15, 0x32, {0x0b8,6186,100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0}}, 349 349 {0x33, 0x3b, {0x0b9,5031,100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0}}, 350 350 {0x3c, 0x42, {0x0bb,4146,100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0}}, 351 351 {0x43, 0x48, {0x0ba,3245,100, 0,0,0x00,0xc2,0x28,0xf0,0x00,0x05,0x0}}, 352 352 {0x49, 0x6c, {0x0bc,2352,100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0}} 353 353 }; 354 - static const opl4_region_t regions_2e[] = { /* Harp */ 354 + static const struct opl4_region regions_2e[] = { /* Harp */ 355 355 {0x15, 0x46, {0x07e,3740,100, 0,1,0x00,0xd2,0x29,0xf5,0x25,0x07,0x0}}, 356 356 {0x47, 0x6c, {0x07f,2319,100, 0,1,0x00,0xd2,0x29,0xf5,0x25,0x07,0x0}} 357 357 }; 358 - static const opl4_region_t regions_2f[] = { /* Timpani */ 358 + static const struct opl4_region regions_2f[] = { /* Timpani */ 359 359 {0x15, 0x6c, {0x100,6570,100, 0,0,0x00,0xf8,0x28,0xf0,0x05,0x16,0x0}} 360 360 }; 361 - static const opl4_region_t regions_30[] = { /* Strings */ 361 + static const struct opl4_region regions_30[] = { /* Strings */ 362 362 {0x15, 0x3b, {0x13c,4806,100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0}}, 363 363 {0x3c, 0x41, {0x13e,4035,100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0}}, 364 364 {0x42, 0x47, {0x13d,3122,100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0}}, 365 365 {0x48, 0x52, {0x13f,2629,100, 0,0,0x00,0xbe,0x20,0x80,0x00,0x07,0x0}}, 366 366 {0x53, 0x6c, {0x140, 950,100, 0,0,0x00,0xbe,0x20,0x80,0x00,0x07,0x0}} 367 367 }; 368 - static const opl4_region_t regions_31[] = { /* Slow Strings */ 368 + static const struct opl4_region regions_31[] = { /* Slow Strings */ 369 369 {0x15, 0x3b, {0x0b0,4810,100, 0,1,0x0a,0xbe,0x19,0xf0,0x00,0x07,0x0}}, 370 370 {0x3c, 0x41, {0x035,4035,100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0}}, 371 371 {0x42, 0x47, {0x033,3129,100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0}}, 372 372 {0x48, 0x52, {0x034,2625,100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0}}, 373 373 {0x53, 0x6c, {0x0af, 936,100, 0,1,0x00,0xbe,0x19,0xf0,0x00,0x07,0x0}} 374 374 }; 375 - static const opl4_region_t regions_32[] = { /* Synth Strings 1 */ 375 + static const struct opl4_region regions_32[] = { /* Synth Strings 1 */ 376 376 {0x05, 0x71, {0x002,6045,100,-2,0,0x00,0xa6,0x20,0x93,0x22,0x06,0x0}}, 377 377 {0x15, 0x6c, {0x0ae,3261,100, 2,0,0x00,0xc6,0x20,0x70,0x01,0x06,0x0}} 378 378 }; 379 - static const opl4_region_t regions_33[] = { /* Synth Strings 2 */ 379 + static const struct opl4_region regions_33[] = { /* Synth Strings 2 */ 380 380 {0x15, 0x6c, {0x002,4513,100, 5,1,0x00,0xb4,0x19,0x70,0x00,0x06,0x0}}, 381 381 {0x15, 0x6c, {0x002,4501,100,-5,1,0x00,0xb4,0x19,0x70,0x00,0x06,0x0}} 382 382 }; 383 - static const opl4_region_t regions_34[] = { /* Choir Aahs */ 383 + static const struct opl4_region regions_34[] = { /* Choir Aahs */ 384 384 {0x15, 0x3a, {0x018,5010,100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0}}, 385 385 {0x3b, 0x40, {0x019,4370,100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0}}, 386 386 {0x41, 0x47, {0x01a,3478,100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0}}, 387 387 {0x48, 0x6c, {0x01b,2197,100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0}} 388 388 }; 389 - static const opl4_region_t regions_35[] = { /* Voice Oohs */ 389 + static const struct opl4_region regions_35[] = { /* Voice Oohs */ 390 390 {0x15, 0x6c, {0x029,3596,100, 0,0,0x00,0xe6,0x20,0xf7,0x20,0x08,0x0}} 391 391 }; 392 - static const opl4_region_t regions_36[] = { /* Synth Voice */ 392 + static const struct opl4_region regions_36[] = { /* Synth Voice */ 393 393 {0x15, 0x6c, {0x02a,3482,100, 0,1,0x00,0xc2,0x19,0x85,0x21,0x07,0x0}} 394 394 }; 395 - static const opl4_region_t regions_37[] = { /* Orchestra Hit */ 395 + static const struct opl4_region regions_37[] = { /* Orchestra Hit */ 396 396 {0x15, 0x6c, {0x049,4394,100, 0,0,0x00,0xfe,0x30,0x80,0x05,0x05,0x0}} 397 397 }; 398 - static const opl4_region_t regions_38[] = { /* Trumpet */ 398 + static const struct opl4_region regions_38[] = { /* Trumpet */ 399 399 {0x15, 0x3c, {0x0f6,4706,100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0}}, 400 400 {0x3d, 0x43, {0x0f8,3894,100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0}}, 401 401 {0x44, 0x48, {0x0f7,3118,100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0}}, ··· 403 403 {0x4f, 0x55, {0x0f9,1634,100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0}}, 404 404 {0x56, 0x6c, {0x0fb, 786,100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0}} 405 405 }; 406 - static const opl4_region_t regions_39[] = { /* Trombone */ 406 + static const struct opl4_region regions_39[] = { /* Trombone */ 407 407 {0x15, 0x3a, {0x0f0,5053,100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0}}, 408 408 {0x3b, 0x3f, {0x0f1,4290,100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0}}, 409 409 {0x40, 0x6c, {0x0f2,3580,100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0}} 410 410 }; 411 - static const opl4_region_t regions_3a[] = { /* Tuba */ 411 + static const struct opl4_region regions_3a[] = { /* Tuba */ 412 412 {0x15, 0x2d, {0x085,7096,100, 0,1,0x00,0xde,0x21,0xf5,0x10,0x09,0x0}}, 413 413 {0x2e, 0x6c, {0x086,6014,100, 0,1,0x00,0xde,0x21,0xf5,0x10,0x09,0x0}} 414 414 }; 415 - static const opl4_region_t regions_3b[] = { /* Muted Trumpet */ 415 + static const struct opl4_region regions_3b[] = { /* Muted Trumpet */ 416 416 {0x15, 0x45, {0x0b1,4135,100, 0,0,0x00,0xcc,0x28,0xf3,0x10,0x0a,0x1}}, 417 417 {0x46, 0x6c, {0x0b2,2599,100, 0,0,0x00,0xcc,0x28,0x83,0x10,0x0a,0x1}} 418 418 }; 419 - static const opl4_region_t regions_3c[] = { /* French Horns */ 419 + static const struct opl4_region regions_3c[] = { /* French Horns */ 420 420 {0x15, 0x49, {0x07c,3624,100, 0,2,0x00,0xd0,0x1a,0xf0,0x00,0x09,0x0}}, 421 421 {0x4a, 0x6c, {0x07d,2664,100, 0,2,0x00,0xd0,0x1a,0xf0,0x00,0x09,0x0}} 422 422 }; 423 - static const opl4_region_t regions_3d[] = { /* Brass Section */ 423 + static const struct opl4_region regions_3d[] = { /* Brass Section */ 424 424 {0x15, 0x42, {0x0fc,4375,100, 0,0,0x00,0xd6,0x28,0xf0,0x00,0x0a,0x0}}, 425 425 {0x43, 0x6c, {0x0fd,2854,100, 0,0,0x00,0xd6,0x28,0xf0,0x00,0x0a,0x0}} 426 426 }; 427 - static const opl4_region_t regions_3e[] = { /* Synth Brass 1 */ 427 + static const struct opl4_region regions_3e[] = { /* Synth Brass 1 */ 428 428 {0x01, 0x27, {0x0d3,9094,100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0}}, 429 429 {0x28, 0x2d, {0x0da,8335,100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0}}, 430 430 {0x2e, 0x33, {0x0d4,7558,100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0}}, ··· 450 450 {0x5e, 0x64, {0x122,1421,100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0}}, 451 451 {0x65, 0x7f, {0x123,-115,100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0}} 452 452 }; 453 - static const opl4_region_t regions_3f[] = { /* Synth Brass 2 */ 453 + static const struct opl4_region regions_3f[] = { /* Synth Brass 2 */ 454 454 {0x01, 0x27, {0x118,9113,100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0}}, 455 455 {0x28, 0x2d, {0x119,8350,100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0}}, 456 456 {0x2e, 0x33, {0x11a,7575,100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0}}, ··· 465 465 {0x65, 0x7f, {0x123,-105,100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0}}, 466 466 {0x00, 0x7f, {0x124,4034,100,-3,2,0x00,0xea,0x22,0x85,0x23,0x08,0x0}} 467 467 }; 468 - static const opl4_region_t regions_40[] = { /* Soprano Sax */ 468 + static const struct opl4_region regions_40[] = { /* Soprano Sax */ 469 469 {0x15, 0x3f, {0x0e3,4228,100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0}}, 470 470 {0x40, 0x45, {0x0e4,3495,100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0}}, 471 471 {0x46, 0x4b, {0x0e5,2660,100, 0,1,0x00,0xd6,0x21,0xf5,0x20,0x0a,0x0}}, ··· 473 473 {0x52, 0x59, {0x0e7,1186,100, 0,1,0x00,0xd6,0x21,0xf5,0x20,0x0a,0x0}}, 474 474 {0x59, 0x6c, {0x0e8,1730,100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0}} 475 475 }; 476 - static const opl4_region_t regions_41[] = { /* Alto Sax */ 476 + static const struct opl4_region regions_41[] = { /* Alto Sax */ 477 477 {0x15, 0x32, {0x092,6204,100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0}}, 478 478 {0x33, 0x35, {0x096,5812,100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0}}, 479 479 {0x36, 0x3a, {0x099,5318,100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0}}, ··· 488 488 {0x51, 0x53, {0x091,2088,100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0}}, 489 489 {0x54, 0x6c, {0x095,1732,100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0}} 490 490 }; 491 - static const opl4_region_t regions_42[] = { /* Tenor Sax */ 491 + static const struct opl4_region regions_42[] = { /* Tenor Sax */ 492 492 {0x24, 0x30, {0x0e9,6301,100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0}}, 493 493 {0x31, 0x34, {0x0ea,5781,100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0}}, 494 494 {0x35, 0x3a, {0x0eb,5053,100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0}}, ··· 497 497 {0x48, 0x51, {0x0ee,2462,100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0}}, 498 498 {0x52, 0x6c, {0x0ef,1421,100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0}} 499 499 }; 500 - static const opl4_region_t regions_43[] = { /* Baritone Sax */ 500 + static const struct opl4_region regions_43[] = { /* Baritone Sax */ 501 501 {0x15, 0x2d, {0x0df,6714,100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0}}, 502 502 {0x2e, 0x34, {0x0e1,5552,100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0}}, 503 503 {0x35, 0x39, {0x0e2,5178,100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0}}, 504 504 {0x3a, 0x6c, {0x0e0,4437,100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0}} 505 505 }; 506 - static const opl4_region_t regions_44[] = { /* Oboe */ 506 + static const struct opl4_region regions_44[] = { /* Oboe */ 507 507 {0x15, 0x3c, {0x042,4493,100, 0,1,0x00,0xe6,0x39,0xf4,0x10,0x0a,0x0}}, 508 508 {0x3d, 0x43, {0x044,3702,100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0}}, 509 509 {0x44, 0x49, {0x043,2956,100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0}}, ··· 511 511 {0x50, 0x55, {0x045,1420,100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0}}, 512 512 {0x56, 0x6c, {0x047, 630,100, 0,1,0x00,0xe6,0x39,0xf4,0x10,0x0a,0x0}} 513 513 }; 514 - static const opl4_region_t regions_45[] = { /* English Horn */ 514 + static const struct opl4_region regions_45[] = { /* English Horn */ 515 515 {0x15, 0x38, {0x03c,5098,100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0}}, 516 516 {0x39, 0x3e, {0x03b,4291,100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0}}, 517 517 {0x3f, 0x6c, {0x03d,3540,100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0}} 518 518 }; 519 - static const opl4_region_t regions_46[] = { /* Bassoon */ 519 + static const struct opl4_region regions_46[] = { /* Bassoon */ 520 520 {0x15, 0x22, {0x038,7833,100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0}}, 521 521 {0x23, 0x2e, {0x03a,7070,100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0}}, 522 522 {0x2f, 0x6c, {0x039,6302,100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0}} 523 523 }; 524 - static const opl4_region_t regions_47[] = { /* Clarinet */ 524 + static const struct opl4_region regions_47[] = { /* Clarinet */ 525 525 {0x15, 0x3b, {0x09e,5900,100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0}}, 526 526 {0x3c, 0x41, {0x0a0,5158,100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0}}, 527 527 {0x42, 0x4a, {0x09f,4260,100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0}}, 528 528 {0x4b, 0x6c, {0x0a1,2957,100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0}} 529 529 }; 530 - static const opl4_region_t regions_48[] = { /* Piccolo */ 530 + static const struct opl4_region regions_48[] = { /* Piccolo */ 531 531 {0x15, 0x40, {0x071,4803,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}}, 532 532 {0x41, 0x4d, {0x072,3314,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}}, 533 533 {0x4e, 0x53, {0x073,1731,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}}, 534 534 {0x54, 0x5f, {0x074,2085,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}}, 535 535 {0x60, 0x6c, {0x075,1421,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}} 536 536 }; 537 - static const opl4_region_t regions_49[] = { /* Flute */ 537 + static const struct opl4_region regions_49[] = { /* Flute */ 538 538 {0x15, 0x40, {0x071,4803,100, 0,0,0x00,0xdc,0x38,0xf0,0x00,0x0a,0x2}}, 539 539 {0x41, 0x4d, {0x072,3314,100, 0,0,0x00,0xdc,0x38,0xf0,0x00,0x0a,0x2}}, 540 540 {0x4e, 0x6c, {0x073,1731,100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2}} 541 541 }; 542 - static const opl4_region_t regions_4a[] = { /* Recorder */ 542 + static const struct opl4_region regions_4a[] = { /* Recorder */ 543 543 {0x15, 0x6f, {0x0bd,4897,100, 0,0,0x00,0xec,0x30,0x70,0x00,0x09,0x1}} 544 544 }; 545 - static const opl4_region_t regions_4b[] = { /* Pan Flute */ 545 + static const struct opl4_region regions_4b[] = { /* Pan Flute */ 546 546 {0x15, 0x6c, {0x077,2359,100, 0,0,0x00,0xde,0x38,0xf0,0x00,0x09,0x3}} 547 547 }; 548 - static const opl4_region_t regions_4c[] = { /* Bottle Blow */ 548 + static const struct opl4_region regions_4c[] = { /* Bottle Blow */ 549 549 {0x15, 0x6c, {0x077,2359,100, 0,0,0x00,0xc8,0x38,0xf0,0x00,0x09,0x1}}, 550 550 {0x01, 0x7f, {0x125,7372,100, 0,0,0x1e,0x80,0x00,0xf0,0x00,0x09,0x0}} 551 551 }; 552 - static const opl4_region_t regions_4d[] = { /* Shakuhachi */ 552 + static const struct opl4_region regions_4d[] = { /* Shakuhachi */ 553 553 {0x00, 0x7f, {0x0ab,4548,100, 0,0,0x00,0xd6,0x30,0xf0,0x00,0x0a,0x3}}, 554 554 {0x15, 0x6c, {0x076,3716,100, 0,0,0x00,0xa2,0x28,0x70,0x00,0x09,0x2}} 555 555 }; 556 - static const opl4_region_t regions_4e[] = { /* Whistle */ 556 + static const struct opl4_region regions_4e[] = { /* Whistle */ 557 557 {0x00, 0x7f, {0x0aa,1731,100, 0,4,0x00,0xd2,0x2c,0x70,0x00,0x0a,0x0}} 558 558 }; 559 - static const opl4_region_t regions_4f[] = { /* Ocarina */ 559 + static const struct opl4_region regions_4f[] = { /* Ocarina */ 560 560 {0x00, 0x7f, {0x0aa,1731,100, 0,1,0x00,0xce,0x29,0x90,0x00,0x0a,0x1}} 561 561 }; 562 - static const opl4_region_t regions_50[] = { /* Square Lead */ 562 + static const struct opl4_region regions_50[] = { /* Square Lead */ 563 563 {0x01, 0x2a, {0x0cc,9853,100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0}}, 564 564 {0x2b, 0x36, {0x0cd,6785,100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0}}, 565 565 {0x37, 0x42, {0x0ca,5248,100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0}}, ··· 573 573 {0x4f, 0x5a, {0x0ce,2167,100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0}}, 574 574 {0x5b, 0x7f, {0x0cb, 631,100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0}} 575 575 }; 576 - static const opl4_region_t regions_51[] = { /* Sawtooth Lead */ 576 + static const struct opl4_region regions_51[] = { /* Sawtooth Lead */ 577 577 {0x01, 0x27, {0x118,9108,100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0}}, 578 578 {0x28, 0x2d, {0x119,8345,100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0}}, 579 579 {0x2e, 0x33, {0x11a,7570,100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0}}, ··· 599 599 {0x5e, 0x66, {0x122,1416,100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0}}, 600 600 {0x67, 0x7f, {0x123,-120,100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0}} 601 601 }; 602 - static const opl4_region_t regions_52[] = { /* Calliope Lead */ 602 + static const struct opl4_region regions_52[] = { /* Calliope Lead */ 603 603 {0x00, 0x7f, {0x0aa,1731,100, 0,0,0x00,0xc2,0x28,0x90,0x00,0x0a,0x2}}, 604 604 {0x15, 0x6c, {0x076,3716,100, 0,0,0x00,0xb6,0x28,0xb0,0x00,0x09,0x2}} 605 605 }; 606 - static const opl4_region_t regions_53[] = { /* Chiffer Lead */ 606 + static const struct opl4_region regions_53[] = { /* Chiffer Lead */ 607 607 {0x00, 0x7f, {0x13a,3665,100, 0,2,0x00,0xcc,0x2a,0xf0,0x10,0x09,0x1}}, 608 608 {0x01, 0x7f, {0x0fe,3660,100, 0,0,0x00,0xbe,0x28,0xf3,0x10,0x17,0x0}} 609 609 }; 610 - static const opl4_region_t regions_54[] = { /* Charang Lead */ 610 + static const struct opl4_region regions_54[] = { /* Charang Lead */ 611 611 {0x00, 0x40, {0x0a5,6594,100, 0,3,0x00,0xba,0x33,0xf2,0x11,0x09,0x0}}, 612 612 {0x41, 0x7f, {0x0a6,5433,100, 0,3,0x00,0xba,0x33,0xf2,0x11,0x09,0x0}}, 613 613 {0x01, 0x27, {0x118,9098,100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0}}, ··· 623 623 {0x5e, 0x66, {0x122,1416,100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0}}, 624 624 {0x67, 0x7f, {0x123,-120,100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0}} 625 625 }; 626 - static const opl4_region_t regions_55[] = { /* Voice Lead */ 626 + static const struct opl4_region regions_55[] = { /* Voice Lead */ 627 627 {0x00, 0x7f, {0x0aa,1739,100, 0,6,0x00,0x8c,0x2e,0x90,0x00,0x0a,0x0}}, 628 628 {0x15, 0x6c, {0x02a,3474,100, 0,1,0x00,0xd8,0x29,0xf0,0x05,0x0a,0x0}} 629 629 }; 630 - static const opl4_region_t regions_56[] = { /* 5ths Lead */ 630 + static const struct opl4_region regions_56[] = { /* 5ths Lead */ 631 631 {0x01, 0x27, {0x118,8468,100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0}}, 632 632 {0x28, 0x2d, {0x119,7705,100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0}}, 633 633 {0x2e, 0x33, {0x11a,6930,100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0}}, ··· 642 642 {0x65, 0x7f, {0x123,-750,100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0}}, 643 643 {0x05, 0x71, {0x002,4503,100, 0,1,0x00,0xb8,0x31,0xb3,0x20,0x0b,0x0}} 644 644 }; 645 - static const opl4_region_t regions_57[] = { /* Bass & Lead */ 645 + static const struct opl4_region regions_57[] = { /* Bass & Lead */ 646 646 {0x00, 0x7f, {0x117,8109,100, 0,1,0x00,0xbc,0x29,0xf3,0x50,0x08,0x0}}, 647 647 {0x01, 0x27, {0x118,9097,100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0}}, 648 648 {0x28, 0x2d, {0x119,8334,100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0}}, ··· 657 657 {0x5e, 0x66, {0x122,1415,100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0}}, 658 658 {0x67, 0x7f, {0x123,-121,100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0}} 659 659 }; 660 - static const opl4_region_t regions_58[] = { /* New Age Pad */ 660 + static const struct opl4_region regions_58[] = { /* New Age Pad */ 661 661 {0x15, 0x6c, {0x002,4501,100, 0,4,0x00,0xa4,0x24,0x80,0x01,0x05,0x0}}, 662 662 {0x15, 0x6c, {0x0f3,4253,100, 0,3,0x00,0x8c,0x23,0xa2,0x14,0x06,0x1}} 663 663 }; 664 - static const opl4_region_t regions_59[] = { /* Warm Pad */ 664 + static const struct opl4_region regions_59[] = { /* Warm Pad */ 665 665 {0x15, 0x6c, {0x04e,5306,100, 2,2,0x00,0x92,0x2a,0x34,0x23,0x05,0x2}}, 666 666 {0x15, 0x6c, {0x029,3575,100,-2,2,0x00,0xbe,0x22,0x31,0x23,0x06,0x0}} 667 667 }; 668 - static const opl4_region_t regions_5a[] = { /* Polysynth Pad */ 668 + static const struct opl4_region regions_5a[] = { /* Polysynth Pad */ 669 669 {0x01, 0x27, {0x118,9111,100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1}}, 670 670 {0x28, 0x2d, {0x119,8348,100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1}}, 671 671 {0x2e, 0x33, {0x11a,7573,100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1}}, ··· 680 680 {0x67, 0x7f, {0x123,-107,100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1}}, 681 681 {0x00, 0x7f, {0x124,4024,100, 0,2,0x00,0xae,0x22,0xe5,0x20,0x08,0x0}} 682 682 }; 683 - static const opl4_region_t regions_5b[] = { /* Choir Pad */ 683 + static const struct opl4_region regions_5b[] = { /* Choir Pad */ 684 684 {0x15, 0x3a, {0x018,5010,100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0}}, 685 685 {0x3b, 0x40, {0x019,4370,100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0}}, 686 686 {0x41, 0x47, {0x01a,3478,100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0}}, 687 687 {0x48, 0x6c, {0x01b,2197,100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0}}, 688 688 {0x15, 0x6c, {0x02a,3482,100, 0,4,0x00,0x98,0x24,0x65,0x21,0x06,0x0}} 689 689 }; 690 - static const opl4_region_t regions_5c[] = { /* Bowed Pad */ 690 + static const struct opl4_region regions_5c[] = { /* Bowed Pad */ 691 691 {0x15, 0x6c, {0x101,4790,100,-1,1,0x00,0xbe,0x19,0x44,0x14,0x16,0x0}}, 692 692 {0x00, 0x7f, {0x0aa,1720,100, 1,1,0x00,0x94,0x19,0x40,0x00,0x06,0x0}} 693 693 }; 694 - static const opl4_region_t regions_5d[] = { /* Metallic Pad */ 694 + static const struct opl4_region regions_5d[] = { /* Metallic Pad */ 695 695 {0x15, 0x31, {0x00c,6943,100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0}}, 696 696 {0x32, 0x38, {0x00d,5416,100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0}}, 697 697 {0x39, 0x47, {0x00e,4385,100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0}}, 698 698 {0x48, 0x6c, {0x00f,2849,100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0}}, 699 699 {0x00, 0x7f, {0x03f,4224,100, 0,1,0x00,0x9c,0x31,0x65,0x16,0x07,0x0}} 700 700 }; 701 - static const opl4_region_t regions_5e[] = { /* Halo Pad */ 701 + static const struct opl4_region regions_5e[] = { /* Halo Pad */ 702 702 {0x00, 0x7f, {0x124,4038,100, 0,2,0x00,0xa6,0x1a,0x85,0x23,0x08,0x0}}, 703 703 {0x15, 0x6c, {0x02a,3471,100, 0,3,0x00,0xc0,0x1b,0xc0,0x05,0x06,0x0}} 704 704 }; 705 - static const opl4_region_t regions_5f[] = { /* Sweep Pad */ 705 + static const struct opl4_region regions_5f[] = { /* Sweep Pad */ 706 706 {0x01, 0x27, {0x0d3,9100,100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0}}, 707 707 {0x28, 0x2d, {0x0da,8341,100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0}}, 708 708 {0x2e, 0x33, {0x0d4,7564,100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0}}, ··· 728 728 {0x5e, 0x63, {0x0d8,1415,100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0}}, 729 729 {0x64, 0x7f, {0x0d9,-121,100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0}} 730 730 }; 731 - static const opl4_region_t regions_60[] = { /* Ice Rain */ 731 + static const struct opl4_region regions_60[] = { /* Ice Rain */ 732 732 {0x01, 0x7f, {0x04e,9345,100, 0,2,0x00,0xcc,0x22,0xa3,0x63,0x17,0x0}}, 733 733 {0x00, 0x7f, {0x143,5586, 20, 0,2,0x00,0x6e,0x2a,0xf0,0x05,0x05,0x0}} 734 734 }; 735 - static const opl4_region_t regions_61[] = { /* Soundtrack */ 735 + static const struct opl4_region regions_61[] = { /* Soundtrack */ 736 736 {0x15, 0x6c, {0x002,4501,100, 0,2,0x00,0xb6,0x2a,0x60,0x01,0x05,0x0}}, 737 737 {0x15, 0x6c, {0x0f3,1160,100, 0,5,0x00,0xa8,0x2d,0x52,0x14,0x06,0x2}} 738 738 }; 739 - static const opl4_region_t regions_62[] = { /* Crystal */ 739 + static const struct opl4_region regions_62[] = { /* Crystal */ 740 740 {0x15, 0x6c, {0x0f3,1826,100, 0,3,0x00,0xb8,0x33,0xf6,0x25,0x25,0x0}}, 741 741 {0x15, 0x2c, {0x06d,7454,100, 0,3,0x00,0xac,0x3b,0x85,0x24,0x06,0x0}}, 742 742 {0x2d, 0x36, {0x06e,5925,100, 0,3,0x00,0xac,0x3b,0x85,0x24,0x06,0x0}}, 743 743 {0x37, 0x6c, {0x06f,4403,100, 0,3,0x09,0xac,0x3b,0x85,0x24,0x06,0x0}} 744 744 }; 745 - static const opl4_region_t regions_63[] = { /* Atmosphere */ 745 + static const struct opl4_region regions_63[] = { /* Atmosphere */ 746 746 {0x05, 0x71, {0x002,4509,100, 0,2,0x00,0xc8,0x32,0x73,0x22,0x06,0x1}}, 747 747 {0x15, 0x2f, {0x0b3,6964,100, 0,2,0x05,0xc2,0x32,0xf5,0x34,0x07,0x2}}, 748 748 {0x30, 0x36, {0x0b7,5567,100, 0,2,0x0c,0xc2,0x32,0xf5,0x34,0x07,0x2}}, ··· 750 750 {0x3d, 0x43, {0x0b4,3892,100, 0,2,0x00,0xc2,0x32,0xf6,0x35,0x07,0x2}}, 751 751 {0x44, 0x60, {0x0b6,2723,100, 0,2,0x00,0xc2,0x32,0xf6,0x35,0x17,0x2}} 752 752 }; 753 - static const opl4_region_t regions_64[] = { /* Brightness */ 753 + static const struct opl4_region regions_64[] = { /* Brightness */ 754 754 {0x00, 0x7f, {0x137,5285,100, 0,2,0x00,0xbe,0x2a,0xa5,0x18,0x08,0x0}}, 755 755 {0x15, 0x6c, {0x02a,3481,100, 0,1,0x00,0xc8,0x29,0x80,0x05,0x05,0x0}} 756 756 }; 757 - static const opl4_region_t regions_65[] = { /* Goblins */ 757 + static const struct opl4_region regions_65[] = { /* Goblins */ 758 758 {0x15, 0x6c, {0x002,4501,100,-1,2,0x00,0xca,0x2a,0x40,0x01,0x05,0x0}}, 759 759 {0x15, 0x6c, {0x009,9679, 20, 1,4,0x00,0x3c,0x0c,0x22,0x11,0x06,0x0}} 760 760 }; 761 - static const opl4_region_t regions_66[] = { /* Echoes */ 761 + static const struct opl4_region regions_66[] = { /* Echoes */ 762 762 {0x15, 0x6c, {0x02a,3487,100, 0,3,0x00,0xae,0x2b,0xf5,0x21,0x06,0x0}}, 763 763 {0x00, 0x7f, {0x124,4027,100, 0,3,0x00,0xae,0x2b,0x85,0x23,0x07,0x0}} 764 764 }; 765 - static const opl4_region_t regions_67[] = { /* Sci-Fi */ 765 + static const struct opl4_region regions_67[] = { /* Sci-Fi */ 766 766 {0x15, 0x31, {0x00c,6940,100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3}}, 767 767 {0x32, 0x38, {0x00d,5413,100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3}}, 768 768 {0x39, 0x47, {0x00e,4382,100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3}}, 769 769 {0x48, 0x6c, {0x00f,2846,100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3}}, 770 770 {0x15, 0x6c, {0x002,4498,100, 0,2,0x00,0xd4,0x22,0x80,0x01,0x05,0x0}} 771 771 }; 772 - static const opl4_region_t regions_68[] = { /* Sitar */ 772 + static const struct opl4_region regions_68[] = { /* Sitar */ 773 773 {0x00, 0x7f, {0x10f,4408,100, 0,2,0x00,0xc4,0x32,0xf4,0x15,0x16,0x1}} 774 774 }; 775 - static const opl4_region_t regions_69[] = { /* Banjo */ 775 + static const struct opl4_region regions_69[] = { /* Banjo */ 776 776 {0x15, 0x34, {0x013,5685,100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0}}, 777 777 {0x35, 0x38, {0x014,5009,100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0}}, 778 778 {0x39, 0x3c, {0x012,4520,100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0}}, ··· 780 780 {0x45, 0x4c, {0x017,2661,100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0}}, 781 781 {0x4d, 0x6d, {0x016,1632,100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0}} 782 782 }; 783 - static const opl4_region_t regions_6a[] = { /* Shamisen */ 783 + static const struct opl4_region regions_6a[] = { /* Shamisen */ 784 784 {0x15, 0x6c, {0x10e,3273,100, 0,0,0x00,0xc0,0x28,0xf7,0x76,0x08,0x0}} 785 785 }; 786 - static const opl4_region_t regions_6b[] = { /* Koto */ 786 + static const struct opl4_region regions_6b[] = { /* Koto */ 787 787 {0x00, 0x7f, {0x0a9,4033,100, 0,0,0x00,0xc6,0x20,0xf0,0x06,0x07,0x0}} 788 788 }; 789 - static const opl4_region_t regions_6c[] = { /* Kalimba */ 789 + static const struct opl4_region regions_6c[] = { /* Kalimba */ 790 790 {0x00, 0x7f, {0x137,3749,100, 0,0,0x00,0xce,0x38,0xf5,0x18,0x08,0x0}} 791 791 }; 792 - static const opl4_region_t regions_6d[] = { /* Bagpipe */ 792 + static const struct opl4_region regions_6d[] = { /* Bagpipe */ 793 793 {0x15, 0x39, {0x0a4,7683,100, 0,4,0x00,0xc0,0x1c,0xf0,0x00,0x09,0x0}}, 794 794 {0x15, 0x39, {0x0a7,7680,100, 0,1,0x00,0xaa,0x19,0xf0,0x00,0x09,0x0}}, 795 795 {0x3a, 0x6c, {0x0a8,3697,100, 0,1,0x00,0xaa,0x19,0xf0,0x00,0x09,0x0}} 796 796 }; 797 - static const opl4_region_t regions_6e[] = { /* Fiddle */ 797 + static const struct opl4_region regions_6e[] = { /* Fiddle */ 798 798 {0x15, 0x3a, {0x105,5158,100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0}}, 799 799 {0x3b, 0x3f, {0x102,4754,100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0}}, 800 800 {0x40, 0x41, {0x106,4132,100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0}}, ··· 806 806 {0x4f, 0x51, {0x10d,2166,100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0}}, 807 807 {0x52, 0x6c, {0x109,1825,100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0}} 808 808 }; 809 - static const opl4_region_t regions_6f[] = { /* Shanai */ 809 + static const struct opl4_region regions_6f[] = { /* Shanai */ 810 810 {0x15, 0x6c, {0x041,6946,100, 0,1,0x00,0xc4,0x31,0x95,0x20,0x09,0x0}} 811 811 }; 812 - static const opl4_region_t regions_70[] = { /* Tinkle Bell */ 812 + static const struct opl4_region regions_70[] = { /* Tinkle Bell */ 813 813 {0x15, 0x73, {0x0f3,1821,100, 0,3,0x00,0xc8,0x3b,0xd6,0x25,0x25,0x0}}, 814 814 {0x00, 0x7f, {0x137,5669,100, 0,3,0x00,0x66,0x3b,0xf5,0x18,0x08,0x0}} 815 815 }; 816 - static const opl4_region_t regions_71[] = { /* Agogo */ 816 + static const struct opl4_region regions_71[] = { /* Agogo */ 817 817 {0x15, 0x74, {0x00b,2474,100, 0,0,0x00,0xd2,0x38,0xf0,0x00,0x09,0x0}} 818 818 }; 819 - static const opl4_region_t regions_72[] = { /* Steel Drums */ 819 + static const struct opl4_region regions_72[] = { /* Steel Drums */ 820 820 {0x01, 0x7f, {0x0fe,3670,100, 0,0,0x00,0xca,0x38,0xf3,0x06,0x17,0x1}}, 821 821 {0x15, 0x6c, {0x100,9602,100, 0,0,0x00,0x54,0x38,0xb0,0x05,0x16,0x1}} 822 822 }; 823 - static const opl4_region_t regions_73[] = { /* Woodblock */ 823 + static const struct opl4_region regions_73[] = { /* Woodblock */ 824 824 {0x15, 0x6c, {0x02c,2963, 50, 0,0,0x07,0xd4,0x00,0xf0,0x00,0x09,0x0}} 825 825 }; 826 - static const opl4_region_t regions_74[] = { /* Taiko Drum */ 826 + static const struct opl4_region regions_74[] = { /* Taiko Drum */ 827 827 {0x13, 0x6c, {0x03e,1194, 50, 0,0,0x00,0xaa,0x38,0xf0,0x04,0x04,0x0}} 828 828 }; 829 - static const opl4_region_t regions_75[] = { /* Melodic Tom */ 829 + static const struct opl4_region regions_75[] = { /* Melodic Tom */ 830 830 {0x15, 0x6c, {0x0c7,6418, 50, 0,0,0x00,0xe4,0x38,0xf0,0x05,0x01,0x0}} 831 831 }; 832 - static const opl4_region_t regions_76[] = { /* Synth Drum */ 832 + static const struct opl4_region regions_76[] = { /* Synth Drum */ 833 833 {0x15, 0x6c, {0x026,3898, 50, 0,0,0x00,0xd0,0x38,0xf0,0x04,0x04,0x0}} 834 834 }; 835 - static const opl4_region_t regions_77[] = { /* Reverse Cymbal */ 835 + static const struct opl4_region regions_77[] = { /* Reverse Cymbal */ 836 836 {0x15, 0x6c, {0x031,4138, 50, 0,0,0x00,0xfe,0x38,0x3a,0xf0,0x09,0x0}} 837 837 }; 838 - static const opl4_region_t regions_78[] = { /* Guitar Fret Noise */ 838 + static const struct opl4_region regions_78[] = { /* Guitar Fret Noise */ 839 839 {0x15, 0x6c, {0x138,5266,100, 0,0,0x00,0xa0,0x38,0xf0,0x00,0x09,0x0}} 840 840 }; 841 - static const opl4_region_t regions_79[] = { /* Breath Noise */ 841 + static const struct opl4_region regions_79[] = { /* Breath Noise */ 842 842 {0x01, 0x7f, {0x125,4269,100, 0,0,0x1e,0xd0,0x38,0xf0,0x00,0x09,0x0}} 843 843 }; 844 - static const opl4_region_t regions_7a[] = { /* Seashore */ 844 + static const struct opl4_region regions_7a[] = { /* Seashore */ 845 845 {0x15, 0x6c, {0x008,2965, 20,-2,0,0x00,0xfe,0x00,0x20,0x03,0x04,0x0}}, 846 846 {0x01, 0x7f, {0x037,4394, 20, 2,0,0x14,0xfe,0x00,0x20,0x04,0x05,0x0}} 847 847 }; 848 - static const opl4_region_t regions_7b[] = { /* Bird Tweet */ 848 + static const struct opl4_region regions_7b[] = { /* Bird Tweet */ 849 849 {0x15, 0x6c, {0x009,8078, 5,-4,7,0x00,0xc2,0x0f,0x22,0x12,0x07,0x0}}, 850 850 {0x15, 0x6c, {0x009,3583, 5, 4,5,0x00,0xae,0x15,0x72,0x12,0x07,0x0}} 851 851 }; 852 - static const opl4_region_t regions_7c[] = { /* Telephone Ring */ 852 + static const struct opl4_region regions_7c[] = { /* Telephone Ring */ 853 853 {0x15, 0x6c, {0x003,3602, 10, 0,0,0x00,0xce,0x00,0xf0,0x00,0x0f,0x0}} 854 854 }; 855 - static const opl4_region_t regions_7d[] = { /* Helicopter */ 855 + static const struct opl4_region regions_7d[] = { /* Helicopter */ 856 856 {0x0c, 0x7f, {0x001,2965, 10,-2,0,0x00,0xe0,0x08,0x30,0x01,0x07,0x0}}, 857 857 {0x01, 0x7f, {0x037,4394, 10, 2,0,0x44,0x76,0x00,0x30,0x01,0x07,0x0}} 858 858 }; 859 - static const opl4_region_t regions_7e[] = { /* Applause */ 859 + static const struct opl4_region regions_7e[] = { /* Applause */ 860 860 {0x15, 0x6c, {0x036,8273, 20,-6,7,0x00,0xc4,0x0f,0x70,0x01,0x05,0x0}}, 861 861 {0x15, 0x6c, {0x036,8115, 5, 6,7,0x00,0xc6,0x07,0x70,0x01,0x05,0x0}} 862 862 }; 863 - static const opl4_region_t regions_7f[] = { /* Gun Shot */ 863 + static const struct opl4_region regions_7f[] = { /* Gun Shot */ 864 864 {0x15, 0x6c, {0x139,2858, 20, 0,0,0x00,0xbe,0x38,0xf0,0x03,0x00,0x0}} 865 865 }; 866 - static const opl4_region_t regions_drums[] = { 866 + static const struct opl4_region regions_drums[] = { 867 867 {0x18, 0x18, {0x0cb,6397,100, 3,0,0x00,0xf4,0x38,0xc9,0x1c,0x0c,0x0}}, 868 868 {0x19, 0x19, {0x0c4,3714,100, 0,0,0x00,0xe0,0x00,0x97,0x19,0x09,0x0}}, 869 869 {0x1a, 0x1a, {0x0c4,3519,100, 0,0,0x00,0xea,0x00,0x61,0x01,0x07,0x0}}, ··· 924 924 }; 925 925 926 926 #define REGION(num) { ARRAY_SIZE(regions ## num), regions ## num } 927 - const opl4_region_ptr_t snd_yrw801_regions[0x81] = { 927 + const struct opl4_region_ptr snd_yrw801_regions[0x81] = { 928 928 REGION(_00), REGION(_01), REGION(_02), REGION(_03), 929 929 REGION(_04), REGION(_05), REGION(_06), REGION(_07), 930 930 REGION(_08), REGION(_09), REGION(_0a), REGION(_0b),