emuproc.c (6e91a93d1e7417e5f700fb1d10de994d1539de8e) | emuproc.c (ad326d4a1364f9d677204b1e005ee8eb2a0b6558) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (c) by Jaroslav Kysela <perex@perex.cz> 4 * Creative Labs, Inc. 5 * Routines for control of EMU10K1 chips / proc interface routines 6 * 7 * Copyright (c) by James Courtier-Dutton <James@superbug.co.uk> 8 * Added EMU 1010 support. --- 156 unchanged lines hidden (view full) --- 165 /* 59 */ "FXBUS2_27", 166 /* 60 */ "FXBUS2_28", 167 /* 61 */ "FXBUS2_29", 168 /* 62 */ "FXBUS2_30", 169 /* 63 */ "FXBUS2_31" 170 }; 171 172 struct snd_emu10k1 *emu = entry->private_data; | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (c) by Jaroslav Kysela <perex@perex.cz> 4 * Creative Labs, Inc. 5 * Routines for control of EMU10K1 chips / proc interface routines 6 * 7 * Copyright (c) by James Courtier-Dutton <James@superbug.co.uk> 8 * Added EMU 1010 support. --- 156 unchanged lines hidden (view full) --- 165 /* 59 */ "FXBUS2_27", 166 /* 60 */ "FXBUS2_28", 167 /* 61 */ "FXBUS2_29", 168 /* 62 */ "FXBUS2_30", 169 /* 63 */ "FXBUS2_31" 170 }; 171 172 struct snd_emu10k1 *emu = entry->private_data; |
173 unsigned int val, val1; | 173 unsigned int val, val1, ptrx, psst, dsl, snda; |
174 int nefx = emu->audigy ? 64 : 32; 175 const char * const *outputs = emu->audigy ? audigy_outs : creative_outs; 176 int idx; 177 178 snd_iprintf(buffer, "EMU10K1\n\n"); 179 snd_iprintf(buffer, "Card : %s\n", 180 emu->audigy ? "Audigy" : (emu->card_capabilities->ecard ? "EMU APS" : "Creative")); 181 snd_iprintf(buffer, "Internal TRAM (words) : 0x%x\n", emu->fx8010.itram_size); 182 snd_iprintf(buffer, "External TRAM (words) : 0x%x\n", (int)emu->fx8010.etram_pages.bytes / 2); | 174 int nefx = emu->audigy ? 64 : 32; 175 const char * const *outputs = emu->audigy ? audigy_outs : creative_outs; 176 int idx; 177 178 snd_iprintf(buffer, "EMU10K1\n\n"); 179 snd_iprintf(buffer, "Card : %s\n", 180 emu->audigy ? "Audigy" : (emu->card_capabilities->ecard ? "EMU APS" : "Creative")); 181 snd_iprintf(buffer, "Internal TRAM (words) : 0x%x\n", emu->fx8010.itram_size); 182 snd_iprintf(buffer, "External TRAM (words) : 0x%x\n", (int)emu->fx8010.etram_pages.bytes / 2); |
183 snd_iprintf(buffer, "\n"); 184 snd_iprintf(buffer, "Effect Send Routing :\n"); | 183 184 snd_iprintf(buffer, "\nEffect Send Routing & Amounts:\n"); |
185 for (idx = 0; idx < NUM_G; idx++) { | 185 for (idx = 0; idx < NUM_G; idx++) { |
186 val = emu->audigy ? 187 snd_emu10k1_ptr_read(emu, A_FXRT1, idx) : 188 snd_emu10k1_ptr_read(emu, FXRT, idx); 189 val1 = emu->audigy ? 190 snd_emu10k1_ptr_read(emu, A_FXRT2, idx) : 191 0; | 186 ptrx = snd_emu10k1_ptr_read(emu, PTRX, idx); 187 psst = snd_emu10k1_ptr_read(emu, PSST, idx); 188 dsl = snd_emu10k1_ptr_read(emu, DSL, idx); |
192 if (emu->audigy) { | 189 if (emu->audigy) { |
193 snd_iprintf(buffer, "Ch%i: A=%i, B=%i, C=%i, D=%i, ", | 190 val = snd_emu10k1_ptr_read(emu, A_FXRT1, idx); 191 val1 = snd_emu10k1_ptr_read(emu, A_FXRT2, idx); 192 snda = snd_emu10k1_ptr_read(emu, A_SENDAMOUNTS, idx); 193 snd_iprintf(buffer, "Ch%-2i: A=%2i:%02x, B=%2i:%02x, C=%2i:%02x, D=%2i:%02x, ", |
194 idx, | 194 idx, |
195 val & 0x3f, 196 (val >> 8) & 0x3f, 197 (val >> 16) & 0x3f, 198 (val >> 24) & 0x3f); 199 snd_iprintf(buffer, "E=%i, F=%i, G=%i, H=%i\n", 200 val1 & 0x3f, 201 (val1 >> 8) & 0x3f, 202 (val1 >> 16) & 0x3f, 203 (val1 >> 24) & 0x3f); | 195 val & 0x3f, REG_VAL_GET(PTRX_FXSENDAMOUNT_A, ptrx), 196 (val >> 8) & 0x3f, REG_VAL_GET(PTRX_FXSENDAMOUNT_B, ptrx), 197 (val >> 16) & 0x3f, REG_VAL_GET(PSST_FXSENDAMOUNT_C, psst), 198 (val >> 24) & 0x3f, REG_VAL_GET(DSL_FXSENDAMOUNT_D, dsl)); 199 snd_iprintf(buffer, "E=%2i:%02x, F=%2i:%02x, G=%2i:%02x, H=%2i:%02x\n", 200 val1 & 0x3f, (snda >> 24) & 0xff, 201 (val1 >> 8) & 0x3f, (snda >> 16) & 0xff, 202 (val1 >> 16) & 0x3f, (snda >> 8) & 0xff, 203 (val1 >> 24) & 0x3f, snda & 0xff); |
204 } else { | 204 } else { |
205 snd_iprintf(buffer, "Ch%i: A=%i, B=%i, C=%i, D=%i\n", | 205 val = snd_emu10k1_ptr_read(emu, FXRT, idx); 206 snd_iprintf(buffer, "Ch%-2i: A=%2i:%02x, B=%2i:%02x, C=%2i:%02x, D=%2i:%02x\n", |
206 idx, | 207 idx, |
207 (val >> 16) & 0x0f, 208 (val >> 20) & 0x0f, 209 (val >> 24) & 0x0f, 210 (val >> 28) & 0x0f); | 208 (val >> 16) & 0x0f, REG_VAL_GET(PTRX_FXSENDAMOUNT_A, ptrx), 209 (val >> 20) & 0x0f, REG_VAL_GET(PTRX_FXSENDAMOUNT_B, ptrx), 210 (val >> 24) & 0x0f, REG_VAL_GET(PSST_FXSENDAMOUNT_C, psst), 211 (val >> 28) & 0x0f, REG_VAL_GET(DSL_FXSENDAMOUNT_D, dsl)); |
211 } 212 } 213 snd_iprintf(buffer, "\nCaptured FX Outputs :\n"); 214 for (idx = 0; idx < nefx; idx++) { 215 if (emu->efx_voices_mask[idx/32] & (1 << (idx%32))) 216 snd_iprintf(buffer, " Output %02i [%s]\n", idx, outputs[idx]); 217 } 218 snd_iprintf(buffer, "\nAll FX Outputs :\n"); --- 518 unchanged lines hidden --- | 212 } 213 } 214 snd_iprintf(buffer, "\nCaptured FX Outputs :\n"); 215 for (idx = 0; idx < nefx; idx++) { 216 if (emu->efx_voices_mask[idx/32] & (1 << (idx%32))) 217 snd_iprintf(buffer, " Output %02i [%s]\n", idx, outputs[idx]); 218 } 219 snd_iprintf(buffer, "\nAll FX Outputs :\n"); --- 518 unchanged lines hidden --- |