From a738e5f3a0e6534545a57064699dfea1d348cb39 Mon Sep 17 00:00:00 2001 From: Bertrik Sikken Date: Thu, 24 Sep 2009 22:05:07 +0000 Subject: [PATCH] FS#9824: Fix FM channel spacing for Europe git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22822 a1c6a512-1295-4272-9138-f99709370657 --- apps/lang/english.lang | 34 ++++++++++++++++++++++++++++++++++ apps/settings_list.c | 5 +++-- firmware/export/tuner.h | 2 ++ firmware/tuner.c | 18 ++++++++++++++---- 4 files changed, 53 insertions(+), 6 deletions(-) diff --git a/apps/lang/english.lang b/apps/lang/english.lang index c7dad66b1a..08412d376d 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang @@ -12735,3 +12735,37 @@ quickscreen: "Set as Top Quickscreen Item" + + id: LANG_FM_ITALY + desc: fm region Italy + user: core + + *: none + radio: "Italy" + + + *: none + radio: "Italy" + + + *: none + radio: "Italy" + + + + id: LANG_FM_OTHER + desc: Catch-all FM region. Select if none of the others work + user: core + + *: none + radio: "Other" + + + *: none + radio: "Other" + + + *: none + radio: "Other" + + diff --git a/apps/settings_list.c b/apps/settings_list.c index 5da15a11a9..2a7bf9658f 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c @@ -1376,9 +1376,10 @@ const struct settings_list settings[] = { #endif #if CONFIG_TUNER CHOICE_SETTING(0, fm_region, LANG_FM_REGION, 0, - "fm_region", "eu,us,jp,kr", set_radio_region, 4, + "fm_region", "eu,us,jp,kr,it,wo", set_radio_region, 6, ID2P(LANG_FM_EUROPE), ID2P(LANG_FM_US), - ID2P(LANG_FM_JAPAN), ID2P(LANG_FM_KOREA)), + ID2P(LANG_FM_JAPAN), ID2P(LANG_FM_KOREA), + ID2P(LANG_FM_ITALY), ID2P(LANG_FM_OTHER)), #endif OFFON_SETTING(F_BANFROMQS, audioscrobbler, LANG_AUDIOSCROBBLER, false, diff --git a/firmware/export/tuner.h b/firmware/export/tuner.h index f92e94269c..b27e660667 100644 --- a/firmware/export/tuner.h +++ b/firmware/export/tuner.h @@ -58,6 +58,8 @@ enum REGION_US_CANADA, REGION_JAPAN, REGION_KOREA, + REGION_ITALY, + REGION_OTHER, /* Add new regions above this line */ TUNER_NUM_REGIONS diff --git a/firmware/tuner.c b/firmware/tuner.c index a471c4e970..5fd7fa1f38 100644 --- a/firmware/tuner.c +++ b/firmware/tuner.c @@ -28,10 +28,12 @@ /* General region information */ const struct fm_region_data fm_region_data[TUNER_NUM_REGIONS] = { - [REGION_EUROPE] = { 87500000, 108000000, 50000 }, + [REGION_EUROPE] = { 87500000, 108000000, 100000 }, [REGION_US_CANADA] = { 87900000, 107900000, 200000 }, [REGION_JAPAN] = { 76000000, 90000000, 100000 }, - [REGION_KOREA] = { 87500000, 108000000, 100000 } + [REGION_KOREA] = { 87500000, 108000000, 200000 }, + [REGION_ITALY] = { 87500000, 108000000, 50000 }, + [REGION_OTHER] = { 87500000, 108000000, 50000 } }; #ifndef SIMULATOR @@ -46,6 +48,8 @@ const unsigned char lv24020lp_region_data[TUNER_NUM_REGIONS] = [REGION_US_CANADA] = 1, /* 75uS */ [REGION_JAPAN] = 0, /* 50uS */ [REGION_KOREA] = 0, /* 50uS */ + [REGION_ITALY] = 0, /* 50uS */ + [REGION_OTHER] = 0, /* 50uS */ }; #endif /* (CONFIG_TUNER & LV24020LP) */ @@ -56,6 +60,8 @@ const struct tea5760_region_data tea5760_region_data[TUNER_NUM_REGIONS] = [REGION_US_CANADA] = { 0, 0 }, /* 75uS, US/Europe band */ [REGION_JAPAN] = { 1, 1 }, /* 50uS, Japanese band */ [REGION_KOREA] = { 1, 0 }, /* 50uS, US/Europe band */ + [REGION_ITALY] = { 1, 0 }, /* 50uS, US/Europe band */ + [REGION_OTHER] = { 1, 0 }, /* 50uS, US/Europe band */ }; #endif /* (CONFIG_TUNER & TEA5760) */ @@ -66,16 +72,20 @@ const struct tea5767_region_data tea5767_region_data[TUNER_NUM_REGIONS] = [REGION_US_CANADA] = { 1, 0 }, /* 75uS, US/Europe band */ [REGION_JAPAN] = { 0, 1 }, /* 50uS, Japanese band */ [REGION_KOREA] = { 0, 0 }, /* 50uS, US/Europe band */ + [REGION_ITALY] = { 0, 0 }, /* 50uS, US/Europe band */ + [REGION_OTHER] = { 0, 0 }, /* 50uS, US/Europe band */ }; #endif /* (CONFIG_TUNER & TEA5767) */ #if (CONFIG_TUNER & SI4700) const struct si4700_region_data si4700_region_data[TUNER_NUM_REGIONS] = { - [REGION_EUROPE] = { 1, 0, 2 }, /* 50uS, US/Europe band, 50kHz spacing */ + [REGION_EUROPE] = { 1, 0, 1 }, /* 50uS, US/Europe band, 100kHz spacing */ [REGION_US_CANADA] = { 0, 0, 0 }, /* 75uS, US/Europe band, 200kHz spacing */ [REGION_JAPAN] = { 1, 2, 1 }, /* 50uS, Japanese band, 100kHz spacing */ - [REGION_KOREA] = { 1, 0, 1 }, /* 50uS, US/Europe band, 100kHz spacing */ + [REGION_KOREA] = { 1, 0, 0 }, /* 50uS, US/Europe band, 200kHz spacing */ + [REGION_ITALY] = { 1, 0, 2 }, /* 50uS, US/Europe band, 50kHz spacing */ + [REGION_OTHER] = { 1, 0, 2 }, /* 50uS, US/Europe band, 50kHz spacing */ }; #endif /* (CONFIG_TUNER & SI4700) */