Some screens (eg Surfans F28) only report absolute positioning
via "EV_ABS" events, and the actual "touch on, touch off" happens
via a separate "EV_KEY" event. So handle this.
This also fixes a nasty bug introduced in 3270daf2c4.
Change-Id: If73d390679ba6ffe37541442f631c03b73774fbb
* Only bootloader builds
* Plugins disabled
* No keymaps to anything else
* No simulator
* Touchscreen not wired up yet
* Audio still untested
Bugs:
* rotary encoder does nothing in bootloader
(might be bootloader bug, might be something else)
Other stuff pulled in:
* Unify all of the (identical!) hibyos makefiles
* Rename the "bootloader" to more generic name
Change-Id: I6d8a3b58de726db8e89cf193c90960a070a575c2
For example, LANG_TIME_SET_BUTTON has these:
*: none
aigoerosq,erosqnative,gogearsa9200,samsungyh*: "PLAY = Set"
gigabeat*,iaudiom5,iaudiox5,ipod*,iriverh10,iriverh10_5gb,mrobe100,sansac200*,sansaclip*,sansaconnect,sansae200*,sansafuze*: "SELECT = Set"
iriverh100,iriverh120,iriverh300: "NAVI = Set"
mpiohd300: "ENTER = Set"
mrobe500: "HEART = Set"
rtc: "ON = Set"
vibe500: "OK = Set"
But all of these players will match their name _and_ the generic 'rtc'
feature that enables use of this phrase. The language tooling
always used the final match in the list, so this resulted in
most devices showing the generic (and incorrect) 'ON = Set" instead
of the device-specific strings.
This patch changes the behavior so that only a match with the device
model itself can override the previously used string.
Change-Id: I93ee11b1e4925c39edaecdcbc13ccc51ed176a45
The tooling will always use the *final* match, which may or may not be
what is desired. Treat this as a bug, and complain appropriately.
However, there is a special case. The RTC set screen uses strings that
include the device button names. There should be an entry for the
specific device, but if not, we wanted to fall back to the string
specified by the 'rtc' feature flag as opposed to falling back to the
default, empty string.
To still support this, add a special "FALLBACK" value; If we end up
using this for a device, the tooling will treat this as a bug, and
complain accordingly.
This should fix FS#13615 and FS13616, and may introduce build failures
on targets that are missing appropriate entries. We'll see.
Change-Id: Ie78bb247f968e19d450a0fbf6e1177b6d01126a1
...strictly speaking, what we use isn't correct (eg we should use es_MX
instead of es-mx) but the latter is clearer on the download page.
Change-Id: Ia1a21c4259826ca2a0f6755df1cb3db94e4a50b3
We expect a fixed FRAMEBUFFER_SIZE that's width*height*bitdepth, and we
mmap()ed that in. However, when doing the initial fb clear, we
were using the hardware-provided 'finfo.smem_len' which could be
larger than FRAMEBUFFER_SIZE. This overran our mmap and triggered
a segfault.
Correct this by mmaping (and clearing) the entire smem_len. As a safety
measure, panic if smem_len is smaller than our expected FRAMEBUFFER_SIZE
Change-Id: I3222139c7aed6e8e8ee232b1730edd5cd70065ff
GPT superblocks are located at sector 1 and max_sector-1. If the system
uses a "virtual" sector that's larger than the drive's logical sector,
we need to map those virtual sector numbers to the drive's logical
sector.
If DEFAULT_VIRT_SECTOR_SIZE is defined, try that multiplier as well
as the standard multiplier of 1.
It's not practical to try every intermediate value so instead, if
DEFAULT_VIRT_SECTOR_SIZE is defined, try that as well as the standard
multiplier of 1.
This still leaves a handful of targets that don't set DEFAULT_VIRT
but do set MAX_VIRT.
Change-Id: I3accffcb97436b043836e072bfc620318a9b1230
Basically the GPT is supposed to live at sector 1, but a backup copy is
stored on the final sector.
This gives us a little bit of extra flexibility on systems that might
require sector 1 for other things, but in any case it's a more robust
arrangement.
Change-Id: I8925ffc743629cf2eba51861042492e35b41664b
A function that returned bool was an alias for a function that returned
an int. While that original function was limited to returning either 0
or 1, this aliasing is technially a no-no. So create a small shim to
make the warning go away.
Change-Id: I4d7807730234928bd59d75f13a4e4adeabbf655e
12b9419006 stripped out leading/trailing whitespace, but the Latvian
translation used a blank string for VOICE_OH which got wiped out.
This string is only used when voicing the time, eg: 12:05 is spoken in
English as "twelve oh five". Doing a little digging into Latvian, it
seems that for 24 hour clocks it would be voiced as "<twelve> nulle <five>"
instead, so I changed VOICE_OH to that.
Now for 12-hour clocks, it seems Latvian would voice "12:05" as "<five
past twelve>" but we don't currently have the ability to voice things
in this manner. Will be addressed in a future patch.
Change-Id: I2c1bcd2e9caff508de3199da29c2e994e9d00c3c
We normally create a table of the partition sizes/types present
on a drive. Howeever, if the drive is set up as a "superfloppy",
where there is no partition table and a single filesystem starting
at sector 0, this "pinfo" table is not populated.
So now, populate the pinfo table with a single entry that matches
the filesystem type, start, and size.
Change-Id: Ifa8760909109d67ff96481b1fc7f26c64280a00a
Languages:
* Get rid of leading space on LANG_ID3_VBR [ " (VBR)" ]
* Fix up sole user to insert the space programmically
updatelang:
* strip leading and trailing spaces on all phrases except VOICE_PAUSE
voice.pl
* Debug logging with UTF-8 output
* Explicitly delete tab character from voiced strings
Change-Id: Ie466793479ce15ce7a9553770583a070530e7afd
All toolchain dependencies are circa the GCC 9.5.0 release:
GCC 9.5.0, binutils 2.38, gmp 6.2.1, mpfr 4.1.1, mpc 1.2.1, isl 0.18
Native:
* arm - mini2g, nano2g seems to work
- ipod6g boot hang on 9.5.0 (possibly leading to disk corruption)
* mips - xduoox3 seems stable so far
* m68k - binaries untested
Hosted:
* arm - binaries untested
* mips - erosq seems stable so far
* Android NDK - unchanged at GCC 4.9.4
Change-Id: I4ca00edd49e1936b32f68f1e7b34df38e1d1d76e
* binutils (mips) uses its own 'static_assert'
* linux (mips) uses constexpr when generating headers
With these patches, all toolchains build successfully under GCC15
(These patches are still needed with the pending GCC9.5 bump)
Change-Id: Id2f8cca414d2907b6aa29612ae4fb0e8b5f79f79
All translations with at least 80% coverage are upated.
Most of these also got a few mechanical corrections as well.
Change-Id: Id4cf5e6c066cb7cd0a73bcd5ad68135c9aeb3294