rockbox/firmware/target/hosted
Michael Sevakis fc9695eb47 Improve radio RDS driver and framework
* Remove unused bits like the radio event and simplify basic
radio interface. It can be more self-contained with rds.h only
required by radio and tuner code.

* Add post-processing to text a-la Silicon Labs AN243. The chip's
error correction can only do so much; additional checks are highly
recommended. Simply testing for two identical messages in a row
is extremely effective and I've never seen corrupted text since
doing that, even with mediocre reception.

Groups segments must arrive in order, not randomly; logic change
only accepts them in order, starting at 0.

Time readout was made a bit better but really we'd need to use
verbose mode and ensure that no errors were seen during receiving
of time and more checks would be need to have a stable PI. The
text is the important bit anyway.

* Time out of stale text.

* Text is no longer updated until a complete group has been
received, as is specified in the standard. Perhaps go back to
scrolling text lines in the radio screen?

* Add proper character conversion to UTF-8. Only the default G0
table for the moment. The other two could be added in.

* Add variants "RDS_CFG_PROCESS" and "RDS_CFG_PUSH" to allow
the option for processed RDS data to be pushed to the driver and
still do proper post-processing (only text conversion for now for
the latter).

Change-Id: I4d83f8b2e89a209a5096d15ec266477318c66925
2017-02-11 22:19:32 -05:00
..
android iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
ibasso dx90: fix spurious button events 2016-05-14 23:32:36 +01:00
maemo maemo: Clean up unused variables 2015-01-11 17:45:56 +01:00
samsungypr Improve radio RDS driver and framework 2017-02-11 22:19:32 -05:00
sdl maemo port: Fix startup crash exposed by audio thread refactoring 2014-12-20 02:23:15 +01:00
cpufreq-linux.c CPUFreq scaling governor interface for Linux/Android hosted devices. 2015-01-30 20:15:58 +01:00
cpufreq-linux.h CPUFreq scaling governor interface for Linux/Android hosted devices. 2015-01-30 20:15:58 +01:00
cpuinfo-linux.c iBasso DX50/DX90: CPU info enhancements. 2015-01-30 20:15:21 +01:00
cpuinfo-linux.h iBasso DX50/DX90: CPU info enhancements. 2015-01-30 20:15:21 +01:00
debug-hosted.c Include stdlib.h for atexit(). 2012-01-25 22:49:19 +01:00
filesystem-app.c iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
filesystem-app.h Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
filesystem-hosted.h Hopefully fix most of the errors and warnings from the last push 2014-08-29 23:36:11 -04:00
filesystem-unix.c Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
filesystem-unix.h Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
filesystem-win32.c Fix dangerous casts 2017-02-04 17:24:47 +01:00
filesystem-win32.h Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
kernel-unix.c Do not include kernel.h in system.h. 2014-01-05 19:35:23 +01:00
kernel-unix.h android/ypr0: Merge kernel-*.c to generic kernel-unix.c. 2012-01-21 18:39:19 +01:00
lc-unix.c Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
pcm-alsa.c Tweak some PCM drivers for less typecasting with the data pointer. 2012-03-04 08:52:50 -05:00
rtc.c Return -1 for not implemented RTC functions. 2011-03-08 21:36:47 +00:00
system-hosted.h Add normal alloca() definition and implement a strdupa and friends 2014-08-29 22:06:59 -04:00