summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Everton <dan@iocaine.org>2007-11-29 09:19:08 +0000
committerDan Everton <dan@iocaine.org>2007-11-29 09:19:08 +0000
commit0c2ff76766374dcd928b5b64fd41b20ad780b008 (patch)
tree2d17057640050348f5e6055623971d460ef05cca
parent9fe563378907fd0cf6c78476e03d8bc650b034dd (diff)
downloadrockbox-0c2ff76766374dcd928b5b64fd41b20ad780b008.tar.gz
rockbox-0c2ff76766374dcd928b5b64fd41b20ad780b008.zip
Make more sound related settings that might damage your ears not wrap.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15846 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/settings_list.c68
1 files changed, 37 insertions, 31 deletions
diff --git a/apps/settings_list.c b/apps/settings_list.c
index 251ff66e4e..dbf5311c50 100644
--- a/apps/settings_list.c
+++ b/apps/settings_list.c
@@ -141,6 +141,12 @@
141 lang_id, INT(default), name, NULL, \ 141 lang_id, INT(default), name, NULL, \
142 {.int_setting = (struct int_setting[]){ \ 142 {.int_setting = (struct int_setting[]){ \
143 {cb, unit, min, max, step, formatter, get_talk_id}}}} 143 {cb, unit, min, max, step, formatter, get_talk_id}}}}
144#define INT_SETTING_NOWRAP(flags, var, lang_id, default, name, \
145 unit, min, max, step, formatter, get_talk_id, cb) \
146 {flags|F_INT_SETTING|F_T_INT|F_NO_WRAP, &global_settings.var, \
147 lang_id, INT(default), name, NULL, \
148 {.int_setting = (struct int_setting[]){ \
149 {cb, unit, min, max, step, formatter, get_talk_id}}}}
144 150
145#define TABLE_SETTING(flags, var, lang_id, default, name, cfg_vals, \ 151#define TABLE_SETTING(flags, var, lang_id, default, name, cfg_vals, \
146 unit, formatter, get_talk_id, cb, count, ...) \ 152 unit, formatter, get_talk_id, cb, count, ...) \
@@ -860,7 +866,7 @@ const struct settings_list settings[] = {
860 ID2P(LANG_TRACK_GAIN), ID2P(LANG_ALBUM_GAIN), ID2P(LANG_SHUFFLE_GAIN)), 866 ID2P(LANG_TRACK_GAIN), ID2P(LANG_ALBUM_GAIN), ID2P(LANG_SHUFFLE_GAIN)),
861 OFFON_SETTING(0, replaygain_noclip, LANG_REPLAYGAIN_NOCLIP, 867 OFFON_SETTING(0, replaygain_noclip, LANG_REPLAYGAIN_NOCLIP,
862 false, "replaygain noclip", NULL), 868 false, "replaygain noclip", NULL),
863 INT_SETTING(0, replaygain_preamp, LANG_REPLAYGAIN_PREAMP, 0, "replaygain preamp", 869 INT_SETTING_NOWRAP(0, replaygain_preamp, LANG_REPLAYGAIN_PREAMP, 0, "replaygain preamp",
864 UNIT_DB, -120, 120, 5, replaygain_preamp_format, NULL, NULL), 870 UNIT_DB, -120, 120, 5, replaygain_preamp_format, NULL, NULL),
865 871
866 CHOICE_SETTING(0, beep, LANG_BEEP, 0, 872 CHOICE_SETTING(0, beep, LANG_BEEP, 0,
@@ -887,68 +893,68 @@ const struct settings_list settings[] = {
887 /* crossfeed */ 893 /* crossfeed */
888 OFFON_SETTING(0,crossfeed, LANG_CROSSFEED, false, 894 OFFON_SETTING(0,crossfeed, LANG_CROSSFEED, false,
889 "crossfeed", dsp_set_crossfeed), 895 "crossfeed", dsp_set_crossfeed),
890 INT_SETTING(0, crossfeed_direct_gain, LANG_CROSSFEED_DIRECT_GAIN, 15, 896 INT_SETTING_NOWRAP(0, crossfeed_direct_gain, LANG_CROSSFEED_DIRECT_GAIN, 15,
891 "crossfeed direct gain", UNIT_DB, 0, 60, 5, 897 "crossfeed direct gain", UNIT_DB, 0, 60, 5,
892 crossfeed_format, NULL, dsp_set_crossfeed_direct_gain), 898 crossfeed_format, NULL, dsp_set_crossfeed_direct_gain),
893 INT_SETTING(0, crossfeed_cross_gain, LANG_CROSSFEED_CROSS_GAIN, 60, 899 INT_SETTING_NOWRAP(0, crossfeed_cross_gain, LANG_CROSSFEED_CROSS_GAIN, 60,
894 "crossfeed cross gain", UNIT_DB, 30, 120, 5, 900 "crossfeed cross gain", UNIT_DB, 30, 120, 5,
895 crossfeed_format, NULL, crossfeed_cross_set), 901 crossfeed_format, NULL, crossfeed_cross_set),
896 INT_SETTING(0, crossfeed_hf_attenuation, LANG_CROSSFEED_HF_ATTENUATION, 160, 902 INT_SETTING_NOWRAP(0, crossfeed_hf_attenuation, LANG_CROSSFEED_HF_ATTENUATION, 160,
897 "crossfeed hf attenuation", UNIT_DB, 60, 240, 5, 903 "crossfeed hf attenuation", UNIT_DB, 60, 240, 5,
898 crossfeed_format, NULL, crossfeed_cross_set), 904 crossfeed_format, NULL, crossfeed_cross_set),
899 INT_SETTING(0, crossfeed_hf_cutoff, LANG_CROSSFEED_HF_CUTOFF, 700, 905 INT_SETTING_NOWRAP(0, crossfeed_hf_cutoff, LANG_CROSSFEED_HF_CUTOFF, 700,
900 "crossfeed hf cutoff", UNIT_HERTZ, 500, 2000, 100, 906 "crossfeed hf cutoff", UNIT_HERTZ, 500, 2000, 100,
901 NULL, NULL, crossfeed_cross_set), 907 NULL, NULL, crossfeed_cross_set),
902 /* equalizer */ 908 /* equalizer */
903 OFFON_SETTING(0,eq_enabled,LANG_EQUALIZER_ENABLED,false,"eq enabled",NULL), 909 OFFON_SETTING(0,eq_enabled,LANG_EQUALIZER_ENABLED,false,"eq enabled",NULL),
904 INT_SETTING(0, eq_precut, LANG_EQUALIZER_PRECUT, 0, "eq precut", 910 INT_SETTING_NOWRAP(0, eq_precut, LANG_EQUALIZER_PRECUT, 0, "eq precut",
905 UNIT_DB, 0, 240, 5, eq_precut_format, NULL, dsp_set_eq_precut), 911 UNIT_DB, 0, 240, 5, eq_precut_format, NULL, dsp_set_eq_precut),
906 /* 0..32768 Hz */ 912 /* 0..32768 Hz */
907 INT_SETTING(0, eq_band0_cutoff, LANG_EQUALIZER_BAND_CUTOFF, 60, "eq band 0 cutoff", 913 INT_SETTING_NOWRAP(0, eq_band0_cutoff, LANG_EQUALIZER_BAND_CUTOFF, 60,
908 UNIT_HERTZ, EQ_CUTOFF_MIN, EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, 914 "eq band 0 cutoff", UNIT_HERTZ, EQ_CUTOFF_MIN,
909 NULL, NULL, NULL), 915 EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, NULL, NULL, NULL),
910 INT_SETTING(0, eq_band1_cutoff, LANG_EQUALIZER_BAND_CENTER, 200, "eq band 1 cutoff", 916 INT_SETTING_NOWRAP(0, eq_band1_cutoff, LANG_EQUALIZER_BAND_CENTER, 200,
911 UNIT_HERTZ, EQ_CUTOFF_MIN, EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, 917 "eq band 1 cutoff", UNIT_HERTZ, EQ_CUTOFF_MIN,
912 NULL, NULL, NULL), 918 EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, NULL, NULL, NULL),
913 INT_SETTING(0, eq_band2_cutoff, LANG_EQUALIZER_BAND_CENTER, 800, "eq band 2 cutoff", 919 INT_SETTING_NOWRAP(0, eq_band2_cutoff, LANG_EQUALIZER_BAND_CENTER, 800,
914 UNIT_HERTZ, EQ_CUTOFF_MIN, EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, 920 "eq band 2 cutoff", UNIT_HERTZ, EQ_CUTOFF_MIN,
915 NULL, NULL, NULL), 921 EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, NULL, NULL, NULL),
916 INT_SETTING(0, eq_band3_cutoff, LANG_EQUALIZER_BAND_CENTER, 4000, "eq band 3 cutoff", 922 INT_SETTING_NOWRAP(0, eq_band3_cutoff, LANG_EQUALIZER_BAND_CENTER, 4000,
917 UNIT_HERTZ, EQ_CUTOFF_MIN, EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, 923 "eq band 3 cutoff", UNIT_HERTZ, EQ_CUTOFF_MIN,
918 NULL, NULL, NULL), 924 EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, NULL, NULL, NULL),
919 INT_SETTING(0, eq_band4_cutoff, LANG_EQUALIZER_BAND_CUTOFF, 12000, "eq band 4 cutoff", 925 INT_SETTING_NOWRAP(0, eq_band4_cutoff, LANG_EQUALIZER_BAND_CUTOFF, 12000,
920 UNIT_HERTZ, EQ_CUTOFF_MIN, EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, 926 "eq band 4 cutoff", UNIT_HERTZ, EQ_CUTOFF_MIN,
921 NULL, NULL, NULL), 927 EQ_CUTOFF_MAX, EQ_CUTOFF_STEP, NULL, NULL, NULL),
922 /* 0..64 (or 0.0 to 6.4) */ 928 /* 0..64 (or 0.0 to 6.4) */
923 INT_SETTING(0, eq_band0_q, LANG_EQUALIZER_BAND_Q, 7, "eq band 0 q", 929 INT_SETTING_NOWRAP(0, eq_band0_q, LANG_EQUALIZER_BAND_Q, 7, "eq band 0 q",
924 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP, 930 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP,
925 eq_q_format, NULL, NULL), 931 eq_q_format, NULL, NULL),
926 INT_SETTING(0, eq_band1_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 1 q", 932 INT_SETTING_NOWRAP(0, eq_band1_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 1 q",
927 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP, 933 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP,
928 eq_q_format, NULL, NULL), 934 eq_q_format, NULL, NULL),
929 INT_SETTING(0, eq_band2_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 2 q", 935 INT_SETTING_NOWRAP(0, eq_band2_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 2 q",
930 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP, 936 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP,
931 eq_q_format, NULL, NULL), 937 eq_q_format, NULL, NULL),
932 INT_SETTING(0, eq_band3_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 3 q", 938 INT_SETTING_NOWRAP(0, eq_band3_q, LANG_EQUALIZER_BAND_Q, 10, "eq band 3 q",
933 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP, 939 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP,
934 eq_q_format, NULL, NULL), 940 eq_q_format, NULL, NULL),
935 INT_SETTING(0, eq_band4_q, LANG_EQUALIZER_BAND_Q, 7, "eq band 4 q", 941 INT_SETTING_NOWRAP(0, eq_band4_q, LANG_EQUALIZER_BAND_Q, 7, "eq band 4 q",
936 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP, 942 UNIT_INT, EQ_Q_MIN, EQ_Q_MAX, EQ_Q_STEP,
937 eq_q_format, NULL, NULL), 943 eq_q_format, NULL, NULL),
938 /* -240..240 (or -24db to +24db) */ 944 /* -240..240 (or -24db to +24db) */
939 INT_SETTING(0, eq_band0_gain, LANG_GAIN, 0, "eq band 0 gain", 945 INT_SETTING_NOWRAP(0, eq_band0_gain, LANG_GAIN, 0, "eq band 0 gain",
940 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP, 946 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP,
941 eq_gain_format, NULL, NULL), 947 eq_gain_format, NULL, NULL),
942 INT_SETTING(0, eq_band1_gain, LANG_GAIN, 0, "eq band 1 gain", 948 INT_SETTING_NOWRAP(0, eq_band1_gain, LANG_GAIN, 0, "eq band 1 gain",
943 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP, 949 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP,
944 eq_gain_format, NULL, NULL), 950 eq_gain_format, NULL, NULL),
945 INT_SETTING(0, eq_band2_gain, LANG_GAIN, 0, "eq band 2 gain", 951 INT_SETTING_NOWRAP(0, eq_band2_gain, LANG_GAIN, 0, "eq band 2 gain",
946 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP, 952 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP,
947 eq_gain_format, NULL, NULL), 953 eq_gain_format, NULL, NULL),
948 INT_SETTING(0, eq_band3_gain, LANG_GAIN, 0, "eq band 3 gain", 954 INT_SETTING_NOWRAP(0, eq_band3_gain, LANG_GAIN, 0, "eq band 3 gain",
949 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP, 955 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP,
950 eq_gain_format, NULL, NULL), 956 eq_gain_format, NULL, NULL),
951 INT_SETTING(0, eq_band4_gain, LANG_GAIN, 0, "eq band 4 gain", 957 INT_SETTING_NOWRAP(0, eq_band4_gain, LANG_GAIN, 0, "eq band 4 gain",
952 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP, 958 UNIT_DB, EQ_GAIN_MIN, EQ_GAIN_MAX, EQ_GAIN_STEP,
953 eq_gain_format, NULL, NULL), 959 eq_gain_format, NULL, NULL),
954 960