Normally the bootloader won't enable the LCD, but we
still want to call lcd_init() at startup to keep the
code simple.
Change-Id: I866ecd7c81b6c5e6acdd57f5d7680400df3f54f4
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
The clock helpers are only used for leaf clocks of single
peripherals, which don't benefit from reference counting.
Change-Id: Ica5685e7bc0fce621ae46f758f0ad0b1dcfb2789
Make systick setup less hardcoded, and create a public API
for use by targets, in preparation for moving system_init()
into target-specific code.
Improve the implementation of udelay to make it more robust
against timer wraparound.
Change-Id: I21bb8821cfd1d7e4049fac6e6a4548d80a4276f7
* When SHOW_LOGO is not defined, print the version at the
same time as the logo would have been displayed
* Don't re-init the display after every message in USB mode
Change-Id: Ida0f5643b1d57004877ec5c42fc14028f53b1c89
For some reason it was locally defined everywhere. Move a single
definition into common.h instead.
Change-Id: Ie2fad74acccd89e40fcbb0f47258d2e14e0f8285
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
This is mainly useful for bootloaders that want to safely
disable the SD/MMC controller before booting. Disabling a
controller will reset and power down the bus; all attempts
to read or write to a disabled controller will fail.
Change-Id: I4a7ec4287f2b8510a35d964cc806c74be8c86406
FIFO errors shouldn't be possible with hardware flow
control enabled. DMA errors shouldn't occur unless a
bad memory address was passed.
Don't bother checking for ITCM/DTCM in the transfer
setup and instead just wait for the IDMATE error; if
the RM0433 reference manual is to be believed then
SDMMC1 _only_ has access to AXI bus memories, and
checking for all invalid destinations would be very
verbose.
Change-Id: I2b22b56009933e16c5adde4d36b7a906cee57791
Hardware flow control prevents FIFO underruns/overruns
by stopping the bus clock if one would occur. This can
slow down transfers, but that's better than having data
transfer fail due to AXI/AHB bus contention.
Change-Id: I8696d3aff78c17dbbe85907160fa37fd4ee11e85
The following inline assembly in set_irq_level() turned out
to have incorrect constraints:
int newvalue = /* input parameter */;
int oldvalue;
asm volatile ("mrs %0, primask\n"
"msr primask, %1\n"
: "=r"(oldvalue) : "r"(newvalue));
leading to incorrect code generation for common cases like
disable_irq_save(), which compiles to:
mov r5, #1
mrs r5, primask
msr primask, r5
...which doesn't disable IRQs at all, since both of the
operands got assigned to the same register; the write of
'oldvalue' clobbers the 'newvalue' input before it's used.
Apparently GCC assumes that input operands are read before
output operands are written. One way to fix this is adding
the '&' constraint: "=&r"(oldvalue), but it's better to
break things down into separate, simpler asm statements
which GCC can figure out itself.
Also add compiler memory barriers where primask is modified
to ensure loads/stores aren't incorrectly moved outside of
critical sections.
While here, optimize disable_irq_save() a bit by using the
cpsid instruction, which avoids the extra "mov" and register
allocation needed by "msr primask".
Change-Id: Iac94a76db5bac399a1cf028da4241a0473259a46
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
Rename bootloader.r1 to bootloader.rb for use across multiple devices (Hiby R1, HiBy R3 Pro II and others).
Change-Id: Ib509d37d605391012a792a69b11a557b0319d2ce
- Sort image parts for deterministic results.
- Ensure bootloader.r1 is correctly named and has +x permissions.
Change-Id: I391c935d75e5079010fc91d3614d9221d34e4c6b
This enables deeper sleep. On touchscreen devices (HiBy R1) it shuts down both screen and touch (touchscreen needs few seconds before it's actually disabled)
Change-Id: I5e8a7dae840227ddf4433daa461cc7124db7676a
While the binary firmware build succeeded, the 'make zip' process failed
because the script that put the default wps image together runs the
device config header through CPP while only looking into the
configuration header directory.
So move the imx233-config.h header out of the target/arm/imx233 and into
export/config where everything is copacetic.
Change-Id: I9914558a892f8ff7ad839818f0a5ef687cc7b997
3a4da9381e change an underdocumented definition that turns
out to be important, yet not documented in the linux uapi definitions.
Revert that change, and document the magic values so this doesn't happen again.
Change-Id: I0fac4a9d68170920bb5db1018d765e8a2994a95f
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