Causes the track change to go in the wrong buffer (and even be missed
by playback) if the current descriptor for the write index is descriptor
0 because the offset used is "-1" upon track change.
Got nailed by implicit conversion of the % operator dividend to unsigned.
Change-Id: I32538db801ac9d790c8b1b5bd041b09ad4b64d2e
The code assumes that gustable[] has 128 entries, while it
only had 120. Since the entries follow a simple pattern (they
seem to be note frequencies, so each entry is the previous one
multiplied by the 2^(1/12)), expanding the table is the simple
fix.
Change-Id: If5b5a50378afd3206c9d550227dd9aac8e355c96
Change-Id: I75efbf1077359e4218ad33f4c1d885b24c0b7b01
Reviewed-on: http://gerrit.rockbox.org/421
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Prevents the player from moving an instadropped block (could happen
before the next game tick when using left/right buttons anticipatorily).
Change-Id: Id62168842d8458f864a2e05c5d236f054bf54f65
Reviewed-on: http://gerrit.rockbox.org/473
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
The code was pretty broken with regard to the handle management of radio art
images, e.g. passing the wrong data to bufopen().
Change-Id: I3480f40bce81af05d14dbf045a78485c857fb261
This logic checks whether the skin's albumart dimensions differ from the
previous skin to force rebuffering if necessary. This was broken since
a while as the necessary information was reset.
Change-Id: I3b9f3a819c6af202af8ad66c13742f704ce45ab1
Reviewed-on: http://gerrit.rockbox.org/476
Tested-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Based on all other references, unknown_file.color is a color, not an
index into custom_colors[]. Previously, custom_colors[-1] was returned
for files without an extension, accessing outside array boundaries
and making files without an extension black, which is hard to see.
Change-Id: Ia0883aba929582324b767df7828a36a84c0b36b9
Further decouples voice_thread.c from other playback areas. Also allows
other audio sources, such as FM radio, to be attenuated when voice is
playing by implementing a callback.
Defined as another playback event rather than a new event class:
PLAYBACK_EVENT_VOICE_PLAYING
Change-Id: I2e3e218be6cd6bebbf39e7883a8c0e4ed42b62bb
What was I thinking? Anyway, it's a little nicer and it's reserved so
shouldn't end up as a case value anywhere.
Change-Id: If745c24951518608e3f4fc51f7419ef07d7cf2ac
Playback needs to receive a couple of settings-related messages even
when not playing.
Put the message reply back where it was when loading an encoder for
recording.
Change-Id: I8cc80f46e42a0afd119991d698510e1ebef38ead
Eliminates the pcmrec thread and keeps playback and recording engine
operation mutually-exclusive.
audio_thread.c contains the audio thread which branches to the
correct engine depending upon the request. It also handles the main
audio initialization.
Moves pcm_init into main.c just before dsp_init because I don't want
that one in audio_init in the new file.
(Also makes revision df6e1bc pointless ;)
Change-Id: Ifc1db24404e6d8dd9ac42d9f4dfbc207aa9a26e1
It should not access audio hardware and change settings unless it has
been initialized first and given control of it.
Change-Id: I5004602d7caa604ded751f6838b792d1ff24b3fb
Boost only for tests and unboost immediately afterwards. It was leaving
the CPU boosted after exiting.
Change-Id: I010c4b975bd27e8990dc057ddd244dab233411ca
DSP_SWITCH_FREQUENCY has been deprecated and the same enumerated value
as DSP_SET_FREQUENCY since major DSP revisions were committed. This
task should have been performed much earlier but, oh well, do it now.
Change-Id: I3f30d651b894136a07c7e17f78fc16a7d98631ff
* SOUND_x enum can be generated by audiohw_settings.h along with settings
entries and sound_val2phys.
* VOLUME_MIN and VOLUME_MAX are no longer necessary within sound.c. If
you need them, they are for target-defined purposes.
* Fix up SDL volume implementation in sdl.c. Move sim volume calculation
code to pcm-sdl.c.
* Min trigger tresholds were based upon VOLUME_MIN for some reason.
These setting have nothing to do with playback volume. Since it is no
longer present, set these at -89dB which is the minimum peak meter
sensitivity setting.
* Fix an oversight in wm8758.c. I forgot to add the dB->register
conversion to audiohw_set_volume.
Change-Id: Ie1df33f1793eee75e6793f16bc7bddd16edb7f75
If disposal method is set to BACKGROUND one would expect that
canvas should be restored to global background color. That is
what gif standard suggests. Most (all?) decoders however treat
this as reseting canvas to transparency or fixed, decoder
specific background color. Virtually all gifs are prepared with
this in mind so to not break them we can't follow standard here.
Change-Id: I90ca712bba89d4190771eb5320eabda353d3e2bb
It bloats to much just for one simple use. Just use a simple function
for shifting sound setting decimal places.
Change-Id: I1a7d37cce6ada3c6e6600dc0d301f354ffeff231
This is going right in since it's long overdue. If anything is goofed,
drop me a line or just tweak it yourself if you know what's wrong. :-)
Make HW/SW codec interface more uniform when emulating HW functionality
on SWCODEC for functions such as "audiohw_set_pitch". The firmware-to-
DSP plumbing is in firmware/drivers/audiohw-swcodec.c. "sound_XXX"
APIs are all in sound.c with none in DSP code any longer.
Reduce number of settings definitions needed by each codec by providing
defaults for common ones like balance, channels and SW tone controls.
Remove need for separate SIM code and tables and add virtual codec header
for hosted targets.
Change-Id: I3f23702bca054fc9bda40f49824ce681bb7f777b
Will need it soon enough.
Combine the contents of all the various fixedpoint.h files.
Not moving fixedpoint.c for now since I'm not sure where it
should be and it causes some dependency issues.
Change-Id: Ideacbca2ca78f9158c2b114b113c274f68e908d5
grey_core.c and fixedpoint.c each had their own copies. grey_core.c
can use the ones fixedpoint.c. fixedpoint.c gets the more complete and
optimized version of fp_16exp from grey_core.c.
Change-Id: I43ee3add60796b06ed12012fbbd91815d64675a6
When autoload bookmark is set to "Ask", navigate to a file with
bookmarks in that directory. Select the file and the bookmark list
appears. Even if you chose to cancel, the track started prior to this
patch.
Change-Id: I453999a9bc20faae97f9cf2080ef613c602ad8e1
Reviewed-on: http://gerrit.rockbox.org/416
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
added a missing string and some other fixes
Change-Id: I153f42687cf855835b7a41b5b3adc4bf120f7f61
Reviewed-on: http://gerrit.rockbox.org/413
Reviewed-by: Purling Nayuki <cyq.yzfl@gmail.com>
Tested-by: Purling Nayuki <cyq.yzfl@gmail.com>
Reviewed-by: Alex Parker <rockbox@aeparker.com>
Tested-by: Alex Parker <rockbox@aeparker.com>
- Reduce the minimum step for EQ 'Gain' and EQ 'Q' values to .1dB
- Reduce the minimum step for EQ 'Precut' value to .1dB
Change-Id: I20712b3c769f9da4d6ed53c62d6a2a8352b6b269
Reviewed-on: http://gerrit.rockbox.org/414
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
- s/Ram/RAM/
Change-Id: I65ea87b5b2fce85d8d1a0cfaec06fb2c47aaa79f
Reviewed-on: http://gerrit.rockbox.org/415
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>