Commit graph

344 commits

Author SHA1 Message Date
Amaury Pouly
1165a08823 fix red
Change-Id: Ibca5879553a87e77014f850308d9b54cc339d474
2013-09-05 20:35:51 +02:00
Jean-Louis Biasini
df6eb82f51 touch devices: Disable touch on softlock.
Target that have a touchpad/touchscreen should disable it while
being locked (In order to avoid LCD to drain battery power due to
"key locked" constant reporting messages. If they a have a keylock
button this was already handled at driver level. If not (e.g. fuze+),
they will have to implement a switch at driver level that action.c
can operate on softlock.
This patch does the following for any target having a touchpad
or a touchscreen and no HAS_BUTTON_HOLD (ie any softlock target)
1) it implements the code to call button_enable_touch(bool en) in
action.c.
2) button_enable_touch is implemented in button.c and call
either touchpad_enable or touchscreen_enable
3) those two function are implemented respectively in touchscreen.c
and a new touchpad.c file. They provide a generic way to silents touch's
device and call a function at driver level where target specific code
can be implemented if possible/needed (for power saving for instance).
Those function name are touchpad_enable_device and touchscreen_enable_device
4) we implement an empty function at driver level of targets that need it
to have them still being able to compiled.

Change-Id: I9ead78a25bd33466a8533f5b9f259b395cb5ce49
Reviewed-on: http://gerrit.rockbox.org/569
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2013-09-05 20:02:07 +02:00
Michael Sevakis
a56f1ca1ed Cleanup MV/MD macros a little.
When using variadic macros there's no need for IF_MD2/IF_MV2 to deal
with function parameters. IF_MD/IF_MV are enough.

Throw in IF_MD_DRV/ID_MV_VOL that return the parameter if MD/MV, or 0
if not.

Change-Id: I7605e6039f3be19cb47110c84dcb3c5516f2c3eb
2013-08-17 12:18:22 -04:00
Michael Sevakis
9e71fd16a5 Keep fixing 0c7b787 stuff
Change-Id: I0678d3307fbcad32156f9f4e0f8b90eed5a20d92
2013-04-15 14:00:48 -04:00
Thomas Martitz
efe73e143a Fix database tool.
It was also broken functionally, probably since a while.So restore the
functionality. Run it on the dap, the tcd files will be placed into .rockbox folder.

Change-Id: Id7a6ce4389dfaf99799258902be80d630af0601c
2012-07-31 10:33:27 +02:00
Thomas Martitz
c8ba628bdb Fix warnings and errors in sdl builds.
Change-Id: Ia8fb00739fb2083d57257d0a3b08cbab9e5a18ff
2012-07-18 12:55:37 +02:00
Thomas Martitz
a76de79b06 Call call_storage_idle_notifys() to make storage idle callbacks work in
the sim.

Change-Id: I40cdf0fd8881a6041b116a687602e231097ba732
2012-07-18 10:34:18 +02:00
Szymon Dziok
7038c55893 Fix a bug introduced in 91b52a1, broken icons in the Archos Player simulator.
Change-Id: I2c4ef0828a9e44084f35b82ea71e430d0c14ecfb
2012-06-23 18:12:41 +02:00
Bertrik Sikken
7292254053 Remove #ifdef USB_FULL_INIT from sim_tasks.c to make usb_wait_for_disconnect work
Change-Id: I5976da266c60501820a359be8e3e40a3edb738c7
2012-06-18 00:32:15 +02:00
Thomas Martitz
3f365fc06b load_code: Get rid of win32 specific code in favor SDL_LoadFunction & friends APIs.
Refactor native/hosted implementation seperation while at it
(no wrappers starting with _ anymore).

Change-Id: If68ae89700443bb3be483c1cace3d6739409560a
2012-05-26 22:46:56 +02:00
Michael Sevakis
d18a5cad7f Tweak paramters of mp3_play_data and callback.
Use generic void * and size_t and make mp3_play_data and its callback
agree on types. Use mp3_play_callback_t instead of prototyping
right in the function call (so it's not so messy to look at). Change
doesn't appear to require plugin API version increment.

Change-Id: Idcab2740ee316a2beb6e0a87b8f4934d9d6b3dd8
2012-03-04 14:50:47 -05:00
Frank Gevaerts
c6d20104eb Fix __PCTOOL__ dependencies on SIMULATOR
* filesize() is not POSIX, so it doesn't need stubbing or redirecting
* make the various directory functions use the sim_ versions for PCTOOL
* PCTOOL needs generic byteswap functions
* fix the database makefile to not use -DSIMULATOR anymore

Change-Id: Ic6abc4f662830b85626c751a472fa4a03e844871
2012-03-03 18:54:47 +01:00
Dominik Riebeling
37dff886f4 Fix warn_unused_result warning.
A warning triggered by attribute warn_unused_result cannot be suppressed by
casting the result to void. Properly check the return value and pass it to the
caller.

Fix the check for the number of bytes written. The return value of fread is the
number of items written, not the number of bytes.

Change-Id: I8c60e23ac549e22fd3f7dd5c51c5a8e6fc517cb1
2012-02-19 14:42:11 +01:00
Michael Sevakis
7ccd2c9d16 Fix power_input_status in sim where target has a battery switch.
Change-Id: Ic00410a5b143d71928dc67c47d94d317b8ecadcd
2012-01-25 12:02:54 -05:00
Thomas Martitz
91b52a1ade Fix another uninitialized var warning.
Change-Id: I27d06003d5e9218a940057af1b5c5c1557e7653c
2012-01-22 21:29:43 +01:00
Thomas Martitz
7dd65f7d9b Another attempt at fixing storage_*_warnings. Correct return values also.
Change-Id: Ie04da59739f2ce31d5b777157b1214c921aa5615
2012-01-22 21:22:53 +01:00
Thomas Martitz
31a3f7619d Attempt to fix remaining warnings.
Change-Id: I6c5b5b24db9f52272fc8765942ddcfff0eb3a8ab
2012-01-22 20:50:04 +01:00
Thomas Martitz
e720ad0fad Fix one more warning.
Change-Id: I194f686173acabffed2c41467a4b280b0b7a8e6f
2012-01-22 20:41:15 +01:00
Thomas Martitz
5b4a6c4267 Hosted: Merge debugf() implementations. Cleanup debug.h.
Fixes debug build for ypr0.

Change-Id: I9c0eff651dcf268a3fafed1a71fcc47f3e323d36
2012-01-21 18:39:19 +01:00
Nick Peskett
8fdef407a4 Simulator: Emulate a period of external power after charging.
Also a bit of optimisation of battery_status_update().

FS#12506


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31635 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 12:07:17 +00:00
Rafaël Carré
351c8b2573 move _remote_backlight_* to common header
remove unused REMOTE_INIT_LCD / REMOTE_DEINIT_LCD

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31607 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 19:32:50 +00:00
Nick Peskett
7b37686533 Fix charger emulation in the simulator.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31586 a1c6a512-1295-4272-9138-f99709370657
2012-01-05 22:25:13 +00:00
Thomas Martitz
5d9759a76e Fix reds by implementing a few more stubs, and undefining HAVE_STORAGE_FLUSH in the sim.
Also slight change on how to measure seconds.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31550 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 00:07:27 +00:00
Thomas Martitz
c1bd9b0361 Rework powermgmt to enable code re-use on appliation and sims.
* Introduce CONFIG_BATTERY_MEASURE define, to allow targets (application)
to break powermgmt.c's assumption about the ability to read battery voltage.
There's now additionally percentage (android) and remaining time measure
(maemo). No measure at all also works (sdl app). If voltage can't be measured,
then battery_level() is king and it'll be used for power_history and runtime
estimation.

* Implement target's API in the simulator, i.e. _battery_voltage(), so it
doesn't need to implement it's own powermgmt.c and other stubs. Now
the sim behaves much more like a native target, although it still
changes the simulated battery voltage quickly,

* Other changes include include renaming battery_adc_voltage() to
_battery_voltage(), for consistency with the new target functions and
making some of the apps code aware that voltage and runtime estimation
is not always available.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31548 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 23:44:38 +00:00
Thomas Martitz
9cb91c0062 stubs.c is only needed on SIMULATOR builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31025 a1c6a512-1295-4272-9138-f99709370657
2011-11-17 22:19:03 +00:00
Thomas Martitz
71d73fd470 Remove sim_tasks from the sdl application build.
This unfortunately removes the screendump feature, but usually there are better desktop apps for that.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31011 a1c6a512-1295-4272-9138-f99709370657
2011-11-17 19:52:59 +00:00
Thomas Martitz
1645c148e3 Simulate usb plugging on the sim better using sim_tasks.
Now all threads need to ack the connection like on real target, dircache is unloaded and playback stops accordingly.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31009 a1c6a512-1295-4272-9138-f99709370657
2011-11-17 18:40:00 +00:00
Bertrik Sikken
539fb71b9d Fix simulator brightness calculation in case MIN_BRIGHTNESS_SETTING != 1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30870 a1c6a512-1295-4272-9138-f99709370657
2011-10-30 20:06:30 +00:00
Michael Chicoine
19c7494ebe r30706 was not the right fix - thanks to amiconn for catching the error
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30707 a1c6a512-1295-4272-9138-f99709370657
2011-10-04 00:42:00 +00:00
Michael Chicoine
1f5c5f2a88 Fix w32 cross-compiled sim showing 0KB for disk size and disk free
in System -> Rockbox Info


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30706 a1c6a512-1295-4272-9138-f99709370657
2011-10-03 23:55:26 +00:00
Andree Buschmann
03b08eb6b3 Fix warning, 'read_next:' is only used when EOVERFLOW is defined.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30414 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 10:25:40 +00:00
Thomas Martitz
af7aaae478 Dircache: Don't expose struct dircache_entry and pointers into the cache, use IDs instead.
Only integer IDs are exposed from dircache with this. This way the cache is isolated from other modules.
This is needed for my buflib gsoc project.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30038 a1c6a512-1295-4272-9138-f99709370657
2011-06-20 20:12:42 +00:00
Thomas Jarosch
4e8bed2933 Work around missing EOVERFLOW define on cygwin/mingw.
According to the mighty google, stat() will just return
an incorrect file size for files > 2 GB on cygwin.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29995 a1c6a512-1295-4272-9138-f99709370657
2011-06-12 12:12:18 +00:00
Thomas Jarosch
a87e395edf RaaA / sim: Don't abort directory read if we encounter files larger than 2 GB in a directory
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29992 a1c6a512-1295-4272-9138-f99709370657
2011-06-10 16:29:55 +00:00
Michael Hohmuth
e7f5013988 Fix regression in r29715: files listed multiple times in uisimulator
Fixes FS#12066.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29717 a1c6a512-1295-4272-9138-f99709370657
2011-04-16 13:06:18 +00:00
Michael Hohmuth
d49d2e1675 Better dircache handling in simulator
Actually add files to the dircache (as well as removing them) and
remove them only when they were found on disk.  This matches the
native behavior and prevents the dircache from becoming uninitialized
when a previously created or nonexisting file is being removed.  This
typically would happen during a database update.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29715 a1c6a512-1295-4272-9138-f99709370657
2011-04-15 21:45:36 +00:00
Thomas Jarosch
4e42cd712c RaaA: Add RTC support
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29544 a1c6a512-1295-4272-9138-f99709370657
2011-03-08 20:54:42 +00:00
Thomas Jarosch
5c73e34d2d Bring idle poweroff to RaaA and the sim
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29543 a1c6a512-1295-4272-9138-f99709370657
2011-03-08 19:33:30 +00:00
Thomas Jarosch
acd8bffb95 Expose sys_poweroff() and cancel_shutdown() to RaaA. Hopefully fixes android build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29485 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 20:31:20 +00:00
Thomas Jarosch
2647d11354 Move sleep timer code outside of PLATFORM_NATIVE ifdef so RaaA can access it
Also remove redundant RaaA stubs for it.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29467 a1c6a512-1295-4272-9138-f99709370657
2011-02-28 23:05:00 +00:00
Thomas Martitz
d8f6c75ab9 Hopefully get shutdown/exit handling on SDL/maemo right.
Make shutdown_hw() not return as it's supposed to, ensure sim_do_exit() is called from main thread and move sim_kernel_shutdown() into it to simplify things.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29455 a1c6a512-1295-4272-9138-f99709370657
2011-02-28 03:24:48 +00:00
Thomas Martitz
6d85de3419 Implement cooperative threads on hosted platforms using C code.
This replaces SDL threads with real cooperative threads, which are less cpu intensive and allow priority scheduling.
The backend for context switching is dependant on the host (sigaltstack/longjmp on Unix, Fibers on Windows).
configure has options to force or disallow SDL threads.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29327 a1c6a512-1295-4272-9138-f99709370657
2011-02-18 22:46:01 +00:00
Thomas Jarosch
258626f455 Fix the shutdown sequence for maemo, SDL and simulator builds
Do proper shutdown in RaaA builds like writeout of
last.FM scrobbler file and other neat things.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29309 a1c6a512-1295-4272-9138-f99709370657
2011-02-15 19:43:04 +00:00
Thomas Jarosch
5f037ac015 Initial maemo platform support
Adds Nokia N900, N810 and N800 support.

Features:
- Introduce maemo specific platform defines
- Play audio in silent mode
- Stop playback on incoming calls
- Battery level readout
- Bluetooth headset support
- Save CPU by disabling screen updates if the display
  is off or the app doesn't have input focus
- N900: GStreamer audio backend

Kudos to kugel for the code review.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29248 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:05:25 +00:00
Andree Buschmann
992f897440 Make sim build compilable under Cygwin. Fixes FS#11832.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28899 a1c6a512-1295-4272-9138-f99709370657
2010-12-25 22:17:02 +00:00
Thomas Martitz
87c8be4a08 RaaA: Improve tagcache search to make the database built.
First, it add the ability to tagcache to walk through multiple search roots.
Second, it adds symlinks targets to the search roots if they're are not inside any of the current search roots, otherwise the symlink is ignored (unless it's a file).

The default search root is still /, so no search root will be actually added.
But the tagcache now isn't trapped by recursive symlinks anymore and successfully builds, and it's prepared for a future music directory setting.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28884 a1c6a512-1295-4272-9138-f99709370657
2010-12-23 19:02:18 +00:00
Thomas Martitz
2c2416094f Get rid of get_user_file_path and do the path handling in wrappers for open() and friends.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28752 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 22:26:31 +00:00
Thomas Martitz
0f274ac852 Fix player sim yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28725 a1c6a512-1295-4272-9138-f99709370657
2010-12-02 21:31:38 +00:00
Jonathan Gordon
1ce7ba4931 Make the %tr (radio RSSI) tag work as a bar tag or as a conditional.
As a conditional it scales its value to the number of options you give it (like volume)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28613 a1c6a512-1295-4272-9138-f99709370657
2010-11-18 11:47:42 +00:00
Marcin Bukat
56c4e9fa60 Separate mas35xx lowlevel stuff. Move SH specific bits to target tree. FS#11189 by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28425 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 21:09:34 +00:00