diff options
Diffstat (limited to 'apps/settings.c')
-rw-r--r-- | apps/settings.c | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/apps/settings.c b/apps/settings.c index fa9ba38106..1a020c305d 100644 --- a/apps/settings.c +++ b/apps/settings.c | |||
@@ -394,6 +394,75 @@ void settings_load(void) | |||
394 | #endif | 394 | #endif |
395 | } | 395 | } |
396 | 396 | ||
397 | #ifdef CUSTOM_EQ | ||
398 | / * | ||
399 | * Loads a .eq file | ||
400 | * / | ||
401 | bool settings_load_eq(char* file) | ||
402 | { | ||
403 | char buffer[128]; | ||
404 | char buf_set[16]; | ||
405 | char buf_val[8]; | ||
406 | int fd; | ||
407 | int i; | ||
408 | unsigned int j; | ||
409 | int d = 0; | ||
410 | int vtype = 0; | ||
411 | |||
412 | fd = open(file, O_RDONLY); | ||
413 | |||
414 | if (-1 != fd) | ||
415 | { | ||
416 | int numread = read(fd, buffer, sizeof(buffer) - 1); | ||
417 | |||
418 | if (numread > 0) { | ||
419 | buffer[numread] = 0; | ||
420 | for(i=0;i<numread;i++) { | ||
421 | switch(buffer[i]) { | ||
422 | case '[': | ||
423 | vtype = 1; | ||
424 | buf_set[0] = 0; | ||
425 | d = 0; | ||
426 | break; | ||
427 | case ']': | ||
428 | vtype = 2; | ||
429 | buf_set[d] = 0; | ||
430 | buf_val[0] = 0; | ||
431 | d = 0; | ||
432 | break; | ||
433 | case '#': | ||
434 | buf_val[d] = 0; | ||
435 | vtype = 3; | ||
436 | break; | ||
437 | default: | ||
438 | switch(vtype) { | ||
439 | case 1: | ||
440 | buf_set[d++] = buffer[i]; | ||
441 | break; | ||
442 | case 2: | ||
443 | buf_val[d++] = buffer[i]; | ||
444 | break; | ||
445 | case 3: | ||
446 | if(strcasecmp(buf_set,"volume")) | ||
447 | { | ||
448 | global_settings.volume = 0; | ||
449 | for(j=0;j<strlen(buf_val);j++) | ||
450 | global_settings.volume = global_settings.volume * | ||
451 | 10 + (buf_val[j] - '0'); | ||
452 | } | ||
453 | vtype = 0; | ||
454 | break; | ||
455 | } | ||
456 | break; | ||
457 | } | ||
458 | } | ||
459 | } | ||
460 | close(fd); | ||
461 | } | ||
462 | return(false); | ||
463 | } | ||
464 | #endif | ||
465 | |||
397 | /* | 466 | /* |
398 | * reset all settings to their default value | 467 | * reset all settings to their default value |
399 | */ | 468 | */ |