Commit graph

331 commits

Author SHA1 Message Date
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
Thomas Martitz
0d4585b28f Extend lc_open() to also being able to load overlay plugins.
For this it needs to look at the plugin header. Since lc_open() doesn't know
it's a plugin, the header needs to be changed slightly to include the new lc_header (which needs to be the first element in plugin_header so it can be casted savely).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28054 a1c6a512-1295-4272-9138-f99709370657
2010-09-09 16:17:21 +00:00
Thomas Martitz
ded525e466 Revert r27972 to fix FS#11610 (but in a way android builds still work).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28050 a1c6a512-1295-4272-9138-f99709370657
2010-09-08 21:26:36 +00:00
Thomas Martitz
89dcb1c984 fix red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28049 a1c6a512-1295-4272-9138-f99709370657
2010-09-08 20:42:34 +00:00
Thomas Martitz
e22aa75f5c Cleanup io.c a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28048 a1c6a512-1295-4272-9138-f99709370657
2010-09-08 20:39:55 +00:00
Thomas Martitz
be17fff138 Move comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27978 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 00:24:43 +00:00
Thomas Martitz
f8381d9c39 Android: don't compile stubs.c and kill off libuisimulator entirely.
Seperate make rules in a almost empty android.make.
Also add forgotten powermgmt-android.c

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27977 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 00:24:40 +00:00
Thomas Martitz
f05cdc46f2 Android: don't compile powermgmt-sim.c
Instead implement a bit of battery monitoring. Currently it only fetches the battery level (in %) every 30s,
but it could do more like battery status, charger connected, voltage...
Theoretically, we could also exit/quit after some time of inactivity too
(perhaps not a bad idea since Rockbox puts a slight but still non-zero CPU load even if doing nothing).

Ironically, Rockbox is now the only way to get the exact battery level (at least I haven't found anything yet) on my phone :-)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27974 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 23:36:15 +00:00
Thomas Martitz
c00fbc4d06 Android: Don't compile sim_tasks.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27973 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 22:09:43 +00:00
Thomas Martitz
a4264eb89a Redo previous commit to not break android builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27972 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 22:06:03 +00:00
Thomas Martitz
6eaab4d004 Ged rid of uisimulator/common/io.c for android builds.
Use host's functions for file i/o directly (open(), close() ,etc.), not the sim_* variants.
Some dir functions need to be wrapped still because we need to cache the parents dir's path (host's dirent doesn't let us know).
For the same reason (incompatibility) with host's dirent) detach some members from Rockbox' dirent struct and put it into an extra one,
the values can be retrieved via the new dir_get_info().

Get rid of the sim_ prefix for sleep as well and change the signature to unix sleep().

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27968 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 21:29:34 +00:00
Thomas Martitz
2c2e261648 Use system headers a bit more: use host's fcntl.h for O_RDONLY etc.
Removes the need to fix up those in the simulator.

Also work around some posix-mingw incompatibilities (e.g. getcwd()).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27904 a1c6a512-1295-4272-9138-f99709370657
2010-08-27 12:38:25 +00:00
Thomas Martitz
194174a371 2nd try: Introduce a small api for loading code (codecs,plugins) from disk/memory.
It's a used by codec/plugin loading and vastly reduces code duplication. It's also a step forward in getting rid of libuisimulator in the application ports.

Apparently sh needs linker symbols prefixed with _ even if they're referenced without from C code.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27902 a1c6a512-1295-4272-9138-f99709370657
2010-08-27 00:29:50 +00:00
Thomas Martitz
97d2a6ec5c Revert "Introduce a small api for loading code (codecs,plugins) from disk/memory."
I don't understand the build error at all, plugin_bss_start is clearly defined in plugin.lds

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27901 a1c6a512-1295-4272-9138-f99709370657
2010-08-27 00:16:26 +00:00