Age | Commit message (Collapse) | Author |
|
Change-Id: I7bbac6de6319bf86189f079b7330d650ea95de3c
|
|
scales the fractional portion of the parsed number
by ARGPARSE_FRAC_DEC_MULTIPLIER
Example ARGPARSE_FRAC_DEC_MULTIPLIER = 10 000
meaning .0009 returns 9 , 9 / 10000 = .0009
.009 returns 90
.099 returns 990
.09 returns 900
.9 returns 9000
.9999 returns 9999
Change-Id: I38573dbc1877760b0d52df8686a6647894d76196
|
|
add a helper function to allow plugins to parse the parameter string
passed into plugins
support included for bool, char, string and numbers+decimals
Change-Id: I39f35c8bd3c21b83097a538c19f46d362c468fa4
|
|
share all the core icons with plugins
these are all small mono icons like usb plug icon or
play, fast forward, rewind icons
--include the icon_helper function
Change-Id: I385028815a4dd368515f491a9e19dee3d500252d
|
|
talk_value_decimal() replaced talk_value()
Change-Id: Ibb7c738d6f3b399fab2e771d8ab85967e3af96d1
|
|
- Make the argument const since it's not actually mutated
- Actually return the size of the buffer used since this is what it
was supposed to do (although no existing callers cared anyway)
Change-Id: I0802071cf63d4af419f427ff54adca50b14918ad
|
|
- Audio playback works
- Touchscreen and buttons work
- Bootloader works and is capable of dual boot
- Plugins are working
- Cabbiev2 theme has been ported
- Stable for general usage
Thanks to Marc Aarts for porting Cabbiev2 and plugin bitmaps.
There's a few minor known issues:
- Bootloader must be installed manually using 'usbboot' as there is
no support in jztool yet.
- Keymaps may be lacking, need further testing and feedback.
- Some plugins may not be fully adapted to the screen size and could
benefit from further tweaking.
- LCD shows abnormal effects under some circumstances: for example,
after viewing a mostly black screen an afterimage appears briefly
when going back to a brightly-lit screen. Sudden power-off without
proper shutdown of the backlight causes a "dissolving" effect.
- CW2015 battery reporting driver is buggy, and disabled for now.
Battery reporting is currently voltage-based using the AXP192.
Change-Id: I635e83f02a880192c5a82cb0861ad3a61c137c3a
|
|
It never worked, and hasn't compiled in something like a decade, Given
the HW capabilities (limited onboard flash, no expandability) there's
really no point in trying to fix/complete it.
Change-Id: I7d175089840396f8891645bd10010d730dd5bfdc
|
|
They were never finished, never saw any release ever, and haven't
compiled for the better part of a decade. Given their HW capabilities [1],
they are not worth trying to fix.
[1] 1-2MB RAM, ~256MB onboard flash, no expandability
Change-Id: I7b2a5806d687114c22156bb0458d4a10a9734190
|
|
Change-Id: I7517e7d5459e129dcfc9465c6fbd708619888fbe
|
|
Mainly a straight replacement of FIIO_M3K -> FIIO_M3K_LINUX.
Change-Id: Id07c84f8150991d1b6851540c2c3f8f67e3f12c2
|
|
Change-Id: I24aac41c8abecf7b78a44d7f59e842b791be4563
|
|
I'm currently running up against the limitations of the lcd_draw functions
I want these functions to be able to be used on any size buffer not
just buffers with a stride matching the underlying device
[DONE] allow the framebuffer to be decoupled from the device framebuffer
[DONE need examples] allow for some simple blit like transformations
[DONE] remove the device framebuffer from the plugin api
[DONE}ditto remote framebuffer
[DONE] remove _viewport_get_framebuffer you can call struct *vp = lcd_set_viewport(NULL) and vp->buffer->fb_ptr
while remote lcds may compile (and work in the sim) its not been tested on targets
[FIXED] backdrops need work to be screen agnostic
[FIXED] screen statusbar is not being combined into the main viewport correctly yet
[FIXED] screen elements are displayed incorrectly after switch to void*
[FIXED] core didn't restore proper viewport on splash etc.
[NEEDS TESTING] remote lcd garbled data
[FIXED] osd lib garbled screen on bmp_part
[FIXED] grey_set_vp needs to return old viewport like lcd_set_viewport
[FIXED] Viewport update now handles viewports with differing buffers/strides by copying to the main buffer
[FIXED] splash on top of WPS leaves old framebuffer data (doesn't redraw)
[UPDATE] refined this a bit more to have clear_viewport set the clean bit and have skin_render do its own screen clear
scrolling viewports no longer trigger wps refresh
also fixed a bug where guisyncyesno was displaying and then disappearing
[ADDED!] New LCD macros that allow you to create properly size frame buffers in you desired size without wasting bytes
(LCD_ and LCD_REMOTE_)
LCD_STRIDE(w, h) same as STRIDE_MAIN
LCD_FBSTRIDE(w, h) returns target specific stride for a buffer W x H
LCD_NBELEMS(w, h) returns the number of fb_data sized elemenst needed for a buffer W x H
LCD_NATIVE_STRIDE(s) conversion between rockbox native vertical and lcd native stride (2bitH)
test_viewports.c has an example of usage
[FIXED!!] 2bit targets don't respect non-native strides
[FIXED] Few define snags
Change-Id: I0d04c3834e464eca84a5a715743a297a0cefd0af
|
|
Change-Id: I5abdc231093054c517ff53b9a456997e440e3f6e
|
|
Change-Id: Ia433122d6c0af68a47d2f4a531a0787a9d3d9f72
|
|
The Q and K have a slightly different case, but the hardware under the
shell is completely identical.
These models are rebadged versions:
* Hifiwalker H2 (== Q)
* AGPTek H3 (== K)
* Surfans F20 (== K)
Other notes:
* Significant improvements in the shared Hiby-platform launcher/loader
* SD card can theoretically be hot-swapped now
* Support external USB mass storage!
* Some consolidation of Hiby-platform targets
* Some consolidation of plugin keymaps
Todo/known issues:
* Keymaps need to be gone over properly
* Convert to HAVE_SCROLLWHEEL?
Change-Id: I5a8a4f22c38a5b69392ca7c0a8ad8c4e07d9523c
|
|
Most credit goes to: Roman Skylarov
Additional integration and refactoring by myself.
*** COMPLETELY UNTESTED ***
Change-Id: Ia64c36d92e0214c6b15f7a868df286f8113ea27b
|
|
Change-Id: I8dfbdf903c1fb82541382709a50e411f1bcdaa5d
|
|
Change-Id: I4ee6b9793260ac7dec9d72f27bfe242cd4adbf38
|
|
So plugins can use const structures, possibly saving a little bit of RAM.
Change-Id: I15b0ef20e7554caf5f6d1c12f6ab109ddf3c0dbd
|
|
Change-Id: Ib54b36760678e88d3857ba70b0f4d1e1661bb0ad
|
|
Change-Id: Ia91a662262497c1a93ce8f26902aab5921ee7185
|
|
Change-Id: Ifdb1501834b7ea63ca6f731bbd6414305d7e0001
|
|
Note: I left behind lcd_bitmap in features.txt, because removing it
would require considerable work in the manual and the translations.
Change-Id: Ia8ca7761f610d9332a0d22a7d189775fb15ec88a
|
|
HAVE_LCD_BITMAP is now redundant.
lcd_bitmap is always-on in features.txt so manual and lang strings
don't have to change
Change-Id: I08eeb20de48099ffc2dc23782711af368c2ec794
|
|
This removes all code specific to SH targets
Change-Id: I7980523785d2596e65c06430f4638eec74a06061
|
|
rb core allows you to load custom keyboard layouts
this patch adds the ability to load a keyboard layout in a buffer
the custom layout is temporary and does not overwrite the current layout
use like so:
unsigned short kbd[64];
unsigned short *kbd_p = kbd;
if (!kbd_create_layout("ABCD1234\n", kbd, sizeof(kbd)))
kbd_p = NULL;
rb->kbd_input(buf,sizeof(buf), kbd_p);
Change-Id: I7be2bd4a1b4797a147fa70228a9749dc56ac052a
|
|
On some devices, the button driver allows a "software poweroff" by long-
pressing a certain key. This behavior is inconvnient when that button needs
to be held down for other purposes, such as moving the cursor in rockpaint
or sgt-untangle.
This patch allows selectively disabling the software poweroff (enabled by
default) from both core and plugin code.
Change-Id: I7580752888ae5c7c7c5eb1be5966e3d67f17d4b4
|
|
(A lot of work was done on this thing, for a target that hasn't been compileable
at least since we moved to git..)
Change-Id: Ibface9392f3251b5be4bf1e0c4d12639c4f1662d
|
|
Provided by Roman Stolyarov
Integration, Refactoring, and Upstreaming by Solomon Peachy
X3II confirmed working by forum tester, X20 is nearly identical.
This includes bootloader, main firmware, and the flash image patcher.
Eventual Todo:
* Further refactor AGPTek Rocker & xduoo hiby bootloaders
* Further refactor AGPTek Rocker & xduoo hosted platform code
Change-Id: I34a674051d368efcc75d1d18c725971fe46c3eee
|
|
Original patch by Mario Lang
Heavily updated by Igor Poretsky
Further updated by myself
This patch breaks binary API compatibility by placing the new
functions where they make the most logical sense. IMO this is
the better approach to take given the scope of the changes needed
for talk support.
Since binary API is changing, the patch also moves some other
functions around to more logical locations.
As well as voice support in plugins, this patch voice-enables several
simple plugins. There will be follow-up patches for many plugins that
build on this one.
Change-Id: I18070c06e77e8a3c016c2eb6b6c5dbe6633b9b54
|
|
Change-Id: I5aecaf6fcf42fbaf2deb933e590dcda6d01ac212
|
|
This ports id Software's Quake to run on the SDL plugin runtime. The
source code originated from id under the GPLv2 license. I used
https://github.com/ahefner/sdlquake as the base of my port.
Performance is, unsurprisingly, not on par with what you're probably
used to on PC. I average about 10FPS on ipod6g, but it's still
playable.
Sound works well enough, but in-game music is not supported. I've
written ARM assembly routines for the inner sound loop. Make sure you
turn the "brightness" all the way down, or colors will look funky.
To run, extract Quake's data files to /.rockbox/quake. Have fun!
Change-Id: I4285036e967d7f0722802d43cf2096c808ca5799
|
|
Taken from the xvortex fork (Roman Stolyarov)
Ported, rebased, and cleaned up by myself.
Change-Id: I7b2bca2d29502f2e4544e42f3d122786dd4b7978
|
|
Cleaned up, rebased, and forward-ported from the xvortex fork.
(original credit to vsoftster@gmail.com)
Change-Id: Ibcc023a0271ea81e901450a88317708c2683236d
Signed-off-by: Solomon Peachy <pizza@shaftnet.org>
|
|
Patch provided by Aapo Tahkola.
Change-Id: I37a42a950d78d6b8aa3927ec7aeb30030f7be7a5
|
|
Keymaps aren't tested, there may be room for improvement.
Change-Id: I6b8fe697899b241ea6e96f4fe446d88671ad7818
|
|
Change-Id: I6290cc6cca468c197656236d3dd31c3f72c53842
|
|
Change-Id: If4af3e3cc16a947127e6253d0b81b684b5abb0c9
|
|
Change-Id: Ib28cfd9037901c7b8bc9b2960ad2c1c9a1e25a69
|
|
This ports Fabien Sanglard's Chocolate Duke to run on a version of SDL
for Rockbox.
Change-Id: I8f2c4c78af19de10c1633ed7bb7a997b43256dd9
|
|
This is attempt to simplify porting programs to rockbox (as plugins).
Currently this compat layer implements:
fopen(), fclose(), fflush(), fread(), fwrite(), fseek(), fseeko(),
ftell(), ftello(), fgetc(), ungetc(), fputc(), fgets(), clearerr(),
ferror(), feof(), fprintf()
In order to use it you need to include in ported sources
"lib/stdio_compat.h"
Change-Id: I5add615dd19c5af9c767ccbfb1bd5a4e466741cb
|
|
Change-Id: Ie3b3fad702e8c03d33b4a264139b6de74736e058
|
|
Some of the previous mappings didn't make much sense.
Change-Id: If373e7d5f28b572523856763c999eb7c5180aced
|
|
Change-Id: Ia738ecd2a39c0c0772d6f939d549dd5d0eda055e
|
|
Aims to provide a lib/keymaps.h for plugins needing simple button
functionality beyond that provided by PLA. Currently used by puzzles
and xworld.
Change-Id: Icb3493aaf176d401762de834dd48fc76a3824c5a
|
|
On Windows 64-bit, the size of long is 32-bit, thus any pointer to long cast is
not valid. In any case, one should use intptr_t and ptrdiff_t when casting
to integers. This commit attempts to fix all instances reported by GCC.
When relevant, I replaced code by the macros PTR_ADD, ALIGN_UP from system.h
Change-Id: I2273b0e8465d3c4689824717ed5afa5ed238a2dc
|
|
defined in mingw environments.
Renamed defines of UNALIGNED to ROCKBOX_UNALIGNED so that they don't
conflict with definitions in mingw32 cross-compiling environments
(defined in _mingw.h).
Change-Id: I369848c0f507e6bf5ff9ab4a60663bbbda6edc52
|
|
Change-Id: I5d28ade42145d9d82babcf62c0db7948927cafec
|
|
Change-Id: I408d88d984f9026539c2d1bc2a9608243802c152
|