| Line | |
|---|
| 1 | /* $Id: genvol.c,v 1.2 2000-08-02 15:48:27 bird Exp $ */
|
|---|
| 2 |
|
|---|
| 3 | /* A quick-n'-dirty DirectSound volume conversion table generator */
|
|---|
| 4 |
|
|---|
| 5 | #include <stdio.h>
|
|---|
| 6 | #include <math.h>
|
|---|
| 7 |
|
|---|
| 8 | void main (void)
|
|---|
| 9 | {
|
|---|
| 10 | FILE *f;
|
|---|
| 11 | int i, j;
|
|---|
| 12 |
|
|---|
| 13 | if ((f = fopen("DSVolume.h", "w")) == NULL) {
|
|---|
| 14 | printf("Can't open output file\n");
|
|---|
| 15 | return;
|
|---|
| 16 | }
|
|---|
| 17 |
|
|---|
| 18 | fprintf(f, "\n// This is a generated file. Do not edit!\n");
|
|---|
| 19 | fprintf(f, "\n// Volume conversion table for Odin DirectSound\n");
|
|---|
| 20 | fprintf(f, "\nBYTE VolTable[1000] = {\n");
|
|---|
| 21 |
|
|---|
| 22 | for (i = 0; i < 100; i++) {
|
|---|
| 23 | fprintf(f, " ");
|
|---|
| 24 | for (j = 0; j < 10; j++) {
|
|---|
| 25 | fprintf(f, "%3d", (unsigned char)(255.0 * pow(4, -(i * 40.0 + j * 4) / 1000.0)));
|
|---|
| 26 | if (i * j != 99 * 9)
|
|---|
| 27 | fprintf(f, ", ");
|
|---|
| 28 | }
|
|---|
| 29 | fprintf(f, "\n");
|
|---|
| 30 | }
|
|---|
| 31 | fprintf(f, "\n};\n");
|
|---|
| 32 |
|
|---|
| 33 | fclose(f);
|
|---|
| 34 | }
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.