Removing STUBOFFSET in commit 78542df466 caused DRAMSIZE
to be computed incorrectly, not taking into account the
16k offset used for 'IRAM'. As a result plugins & codecs
got shifted 16k upwards from their intended load address,
making them unable to load.
Change-Id: I6c338e04506e12fa2b8a69286a1ed785a2f8042d
The mess here can be reduced by paying careful attention to
how the linker allocates LMAs/VMAs within MEMORY regions.
Changing the way .ncdata and .ncbss are defined so that they
reserve the LMA/VMA ranges they use in PLUGIN_RAM removes the
need to explicitly set the VMAs of other sections, cutting
down on the number of ifdefs needed and making the script a
bit simpler.
Change-Id: I316fc6e8dedd621537261d52c1ec7c20ec09438a
The handful of uses are only doing zero initialization
so don't need to go in the data section, they can go in
bss instead.
Change-Id: I7108ac60867aa20b4429ac0747d00109563bb3bf
Looks like I forgot to test the hosted builds and for some
reason thought that make would expand objcopy recursively...
Change-Id: I61264eadcb1235660566f6a9f19f8718ebe14583
Both targets were part of the (presumably dead) Lyre project
and no longer build. The Mini2440 was much more complete than
the Lyre and doesn't seem terribly difficult to fix up to the
point where it at least builds, if someone still cares -- but
given it is a dev board in a box, it's unlikely it ever saw
much use.
Change-Id: I09745379d28db69ea9aaf77f0a62b049884260e1
This reverts commit 91ec6f1e1e.
Reason for revert: Massive sea of red, looks like hosted + sim builds.
Change-Id: I98a3954d68ad2cc521e13c3683bf4a6f45f88b36
Some purely mechanical fixes to get the normal build
working. Besides missing symbols all the plugins and
codecs build just fine.
Change-Id: I946ba39096a46be8308450bafd51a0995db8e323
From what I can see the Creative Zen Vision ports, which
were the only ones to set USE_ELF prior to the Echo R1 port,
do not work except for a bootloader and never even got to
the point of booting Rockbox. This explains why they build
codecs and plugins as ELF binaries, yet there is no code to
load ELF format codecs or plugins.
Anyhow, add a new setting, PLUGIN_USE_ELF, which controls
whether plugins & codecs are left as ELF or converted to
flat binaries. This makes it possible for the Echo R1 to
use the flat binary .rock format, and makes it possible to
have ELF plugins/codecs on targets with non-ELF main binaries.
Seeing as nothing needs ELF plugins/codecs right now, the
new default is to generate them as flat binaries unless
the target requests otherwise.
Change-Id: I9ffae669978de5cc7ad214cd50d97ad6e8938394
These targets haven't seen any changes since 2008-09
have bitrotted to the point they don't compile anymore.
With only internal NAND flash for storage which doesn't
seem to have ever been accessible from Rockbox, they've
never been usable and there's probably not much point
keeping them around any more.
Change-Id: I2fc63da20682b439126672065ae013044cb2d1c4
It looks like the GDB stub only ever worked for the Archos
Recorder and iRiver IFP-7xx, neither of which are in-tree
any more.
Change-Id: If1910675b88b4707d26df9bc095818902af2d25b
PLUGIN_USE_IRAM is almost equivalent to USE_IRAM except
that USE_IRAM might be defined in core, but not plugins.
All remaining uses of PLUGIN_USE_IRAM are inside plugins,
however, so there is no point keeping both defines around.
Change-Id: I6902c85651f3d82b7d19ea32eaa60fc5c19eded7
The constant NVOL_FACTOR used in the calculations needs
to be scaled if the target doesn't represent volumes in
1/10th dB units (ie. most targets). Using a wrong factor
caused the results to be slightly "off", with wide steps
between points on the upper end of the volume curve.
Drop use_linear_dB_scale() because the magic constant
involved has a similar problem (and we don't use this
function anyway).
Also, make sure to account for the guaranteed min/max
points when generating the normalized volume table to
avoid sometimes generating one or two extra volume steps
very close to the min/max volumes.
Change-Id: I5c15809a7306f14bb1befe6d29a5e2b5b0974eaa
On targets where plugins can use IRAM, mpegplayer copies
its own IRAM region to main memory before enabling voiced
menus and then copies it back when exiting the menu.
I'm reasonably certain this is unnecessary because the
core IRAM area is completely separate from plugin IRAM
(which is the same memory as codec IRAM). If they _did_
conflict, then we'd expect to see massive problems with
voiced menus during normal playback since most codecs
make fairly heavy use of IRAM.
There are two other reasons to get rid of this hack:
(1) it's ugly, and (2) it will not work on targets with
"split" IRAM like on the STM32H743 where the fastest
code/data memories are separate.
Change-Id: Id8656539c7cafb724691494c54a07448fbcf8129
gui_usb_screen_run() is a do{} while(0) macro, resulting in an unused
variable warning in the "caller"
Change-Id: I4b4b00ef38decfb5cc9db0da3d81ad0c9a4207d1
add second argument to usb_acknowledge.
it can be used for more appropriate connection tracking that does not
rely on timeout in the future.
Change-Id: I8a44366b7c7a1f944524c4ba8ecd6d9673746a65
FS#13753 - Rocklua error splash don't display part or full filename when
it is non-ASCII
FS#13754 - Rocklua error splash don't reset gui settings (bg, fg and font)
when using signed char unicode codepoints can show up as < '0'
code was looking to remove control chars < ' ' which also removed
unicode code points in the process
Change-Id: I48074a7854f2bee195ca554e1f86505fe5567db6
FS#13745 - Add transpose (like in python pillow module) and smooth resizing in rocklua
most of this is supplied 'require image'
flipping an image is built-in to the image generator function
add image flip example to rliimg
pushed the wrong script
Change-Id: I2c512a70ed26b0457e46f2f2a187d3365783af67
FS#13745 - Add transpose (like in python pillow module) and smooth resizing in rocklua
most of this is supplied 'require image'
flipping an image is built-in to the image generator function
add image flip example to rliimg
Change-Id: Ia53933c9ad09d2a5b92af45eb7a1140b64b6ae01
I had commented out 'talk_force_enqueue_next()' in the voice prompts
pretty sure it was because really long prompts just keep droning on
problem being as soon as the plugin returns in some cases the prompt
gets cut off by the parent calling shutup on us
so it is now a setting (on by default)
Now allows command line arguments
so you can announce whatever prompt you want whenever / wherever you want
(checkout open plugins for a way to create a plugin with command line arguments)
you can then add this .opx shortcut to your shortcuts or quick screen
and as before you can use a hotkey which also will allow command line args..
Change-Id: Id8883c0a4e85e1cb813959ab72e89817f388a397
Couldn't reproduce this on most of my devices or the sims
turns out the bug depends on uninitialized memory being FF
and the file empty
Uninitialized memory fixed what I saw at least..
Change-Id: Ie267af0a20685003ee28ff42d008dd7942a7c6fc
saves openplugin entries to the config file for later import to the database
lang_english_to_id() allows entries to be transfered between builds
Change-Id: I47e01c5f75f8b0e69c203828e21759ef24bf125d
just playing around with using lots of ram (and processing power)
in lua threw this together vector draws Rb logo and flips rotates and zoom
Change-Id: Ie1fe16a9a50271657f2ab7b9a39bf71e6db90d2c
the image save script apparently does not like odd numbers for width
local bytesleft = linebytes - (bytesperpixel * w )
this should actually be pxleft since the image loop below returns pixels not bytes
tested on 1 bit 2 bit, 16 bit and 32 bit images in sim
Change-Id: Ic186c095c29d318dcfb7d76b83e07c75f1460584
fixes:
- traverse_dir was called recursively using two
MAX_PATH local buffers => possible stack overflow
- The import function inserted additional, incorrect,
entries when the whole line buffer was filled
- "Dirs not found" message overlapped number
of folders when generating folder list
- Final number of scanned folders wasn't displayed
- Wouldn't stop inserting when maximum number
of files in playlist was already reached
- Prevent buffer overflow when importing
- Don't write to fd after opening failed
- Use whole buffer with read_line, instead
of subtracting 1. Remove hard coded sizes
- CRs don't need to be removed in import function
(already handled by read_line)
features:
- Use insert context for *much* faster insertion
of large # of folders, and nicer progress display
- Use UI viewport
- Add progress indicator when saving or loading
- Display number of folders in edit list title
- Go back to plugin's main menu from edit list
- Only ask to save changes if list is dirty
- Warn before erasing modified playlist
- Flag successfully created playlist as modified
- Make folder scan wait for dircache
- Shorten menu item names
- Put "Play Shuffled" menu item first
- Remember selection when returning from submenus
- Go to WPS after ACTION_TREE_WPS
- Exit menu when pressing Back
- Perform an initial scan, if no data file exists
yet, when "Play Shuffled" or "Edit" is selected
Change-Id: I7df76f8fb8387888ce491d8b74b01b481e9997d3
The WPS, or certain screens accessed directly from it,
may have displayed a title when they shouldn't have.
Change-Id: I655f58aa7c4ff3ff996d9798fdbe06c14f09c27b
Each time viewportmanager_theme_enable (or _undo) is called,
the SBS title is reset, even if the theme remains enabled.
Thus switching from one menu to another, if do_menu is called
again, briefly results in an empty title before the correct
one is displayed. Even unchanged titles will unnecessarily
flash for a moment. Other theme elements that are drawn using
conditions based on the title, may also appear glitchy.
This patch adds a way to make the status bar title persist by
copying it to a static buffer. Persistent titles are not reset
by toggle_theme (although scrolling will be stopped in
viewportmanager_theme_undo), so that the theme can immediately
display the appropriate title in do_menu, simplelist_show_list,
the yesno screen, or plugins that want to keep the theme enabled.
Change-Id: I1ec8f233b730321793eb7d3cad51496ee1b35440
When deleting files or directories, you will now see
the path's basename in the previously empty title of
an SBS, making it a bit easier to immediately know
whether you've selected the correct item.
Matching titles were also added everywhere else that
confirm_delete_yesno is used.
The full path of the item is still displayed below,
and continues to scroll, so that themes without a
title, such as the default cabbiev2, will look the
same.
Change-Id: I32422cfbbf6e680f58456237380176617789cac3
HAVE_USB_CHARGING_ENABLE isn't enough, as the ihp3xx targets have an odd
combination of USB charging but rely on an external ATA bridge.
Change-Id: I2cba5f218971ac23cde8dca34faa06bbb44a2448
Later GCC versions are apparently more permissive than older versions
when it comes to variable declarations not part of a block (ie {} that
immediately follows a case statement.
This resulted in every non-simulator device target failing to build,
along with sim build on older compilers. I should have caught this in
the review; mea culpa.
Change-Id: Id32e085e34601cca7be273ed45711a4b8ee182a0