Commit graph

33575 commits

Author SHA1 Message Date
Amaury Pouly
5af813c5b7 nwztools: add NW-ZX300 KAS, extracted from a device
Now this is very weird, is it yet another format/encryption?

Change-Id: I119dec1e6d636a99508fb1394de27237ca3ab814
2017-10-07 22:01:00 +02:00
Michael Sevakis
ff62528d05 Make playlist CRC the correct path when saving resume info
Playlist was CRC-ing the path from the id3, which may have been
modified to remove "bogus dirs". This would cause a CRC mismatch
in the resume information.

Now, just use the current playlist's current index and call
playlist_get_filename_crc32() to get the original path when
updating resume info.

While technically correct, if this causes any issue(s) it's just
a one-line change and painless to revert.

Change-Id: Ie595ef6c40349c342bd7acac8c542829f9cd5d76
2017-10-07 14:38:46 -04:00
Amaury Pouly
0fbd93b7e6 nwztools/scsitools: fix database
I forgot to add the NW-ZX300 to its series

Change-Id: I78fd9440492e1868b887f6a2e137d4d0c2ff199a
2017-10-07 18:44:30 +02:00
Amaury Pouly
7eb240a288 Add Sony NW-ZX300 model id to database
Change-Id: I8e7a14b86408c52cbd4a059e2db6a9c9d0966fc6
2017-10-07 12:45:48 +02:00
Amaury Pouly
4382f8773e cleanup linux cpuinfo code
sonynwz: quirk for cpufreq broken driver

There was some redundancy between frequency_linux(cpu, true) and
current_scaling_frequency(), also I see no reason to compile the cpuinfo stuff
unconditionally and the scaling info only on DX since it was already printed
some partial scaling info anyway. Thus compile all the code unconditionally
and simplify the logic in the debug menu. Also avoid putting buffers of size
PATH_MAX on stack since it can be quite big and we only requires 64 bytes
for those paths.

On Sony NWZ, the cpu driver reports frequency in MHz instead of kHz thus we need
to make the cpuinfo code aware of that bug.

Change-Id: I61af45ab5f179ecc909b4841b9137a915a60193a
2017-10-06 18:31:35 +02:00
Amaury Pouly
2f3801be34 fix typo
Change-Id: Ic357f82d61cc0004ac6193fa9dbbc90976042574
2017-10-06 18:31:11 +02:00
Amaury Pouly
d9da4833a7 nwztools/scsitool: various improvements
The tool now provides more useful information for developers when the device
is not supported. Is also has a new verb "help_us" that also prints all this
information (notably the device info and model ID).

Change-Id: I04baec8fff23eb83a0408add6296b5d42e9aa8e7
2017-10-06 12:10:40 +02:00
Amaury Pouly
698779e3e8 sonynwz: add nvp nodes for NW-A40/ZX300, various fixes for tools
We still miss the model IDS for those device so scsitool won't be able to
recognize them automatically.

Change-Id: I17ae0f0d95c011cea8e289def63c7673b6c4b667
2017-10-06 12:10:33 +02:00
Franklin Wei
3f1e4a0b1a xworld: only build manual for color targets
Change-Id: Ia6aeddfcae21afaed13debb487bc8b46d515d031
2017-10-02 16:45:53 -04:00
Michael Sevakis
66b49dc0b2 Need limits.h for hosted builds
Change-Id: Iac1433957de80ad5db51396f74acf1f4f8d45bf3
2017-10-01 23:27:41 -04:00
Michael Sevakis
b2a373eb64 Replace fp_sqrt function with one that only uses shift, or and sub.
Simply extends the current isqrt() to be able to do fractional bits
and improves the initial estimate using clz(). iqrt() itself is
no more and is equivalent to fp_sqrt(x, 0). The original also had
a small bug where the guess comparision should have been >=, not >.

Uses no large integer math or division and is very accurate
(simply returns a truncated fraction).

Change-Id: I2ae26e6505df1770dc01e56220f7385369f90ae9
2017-10-01 20:29:38 -04:00
Amaury Pouly
679ae2d21c sonynwzlinux: print debug info to log on crash
Print the crash info and dump the memory map from /proc/self/maps

Change-Id: I99de32e5e6cca3bf1aca4fa253834ca4ad599fbe
2017-10-01 17:28:42 +02:00
Amaury Pouly
a82ebac53a sonynwza10/a20: enable pcm frequency selection
Change-Id: I335fcdbb652253e777d0d7406545d0d44d98f4f0
2017-10-01 17:23:43 +02:00
Amaury Pouly
50e93d5687 sonynwzlinux: enable software tone controls
As far as I know, they are not supported by the hardware

Change-Id: I71be60ef5461fc9fea151cc9ae9de385b8e08eda
2017-10-01 16:14:29 +02:00
Franklin Wei
23e7d0ef19 xworld: support diagonal buttons on Zen X-Fi
Change-Id: Ia738ecd2a39c0c0772d6f939d549dd5d0eda055e
2017-09-30 20:50:33 -04:00
Franklin Wei
bb55fceb70 Remove old keymaps from xworld and puzzles
They've been replaced by the one in apps/plugins/lib/

Change-Id: Icb54ec4caae1149dfddad8c754087686792a8bc2
2017-09-30 20:49:18 -04:00
Franklin Wei
752f7b1698 Harmonize plugin keymaps
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
2017-09-30 20:13:49 -04:00
Franklin Wei
b9386109e8 puzzles: resync with upstream
This brings puzzles to upstream commit 84d3fd2.

Change-Id: I808a197f868032d771fc101a15666c5ec4b9f94b
2017-09-30 20:06:50 -04:00
Amaury Pouly
ea679de837 atjboottool: put afi and fw code in its own files
Change-Id: I16347ebee0f82d5fdf32f5aa8f955c07fe148eba
2017-09-29 18:22:30 +02:00
Amaury Pouly
95c32a505a atjboottool: split fwu code into its own file
Slightly cleanup the code by removing the old and dangerous --force option.

Change-Id: I776633a9924797fcd509b8b80623bcd64b391672
2017-09-29 17:56:04 +02:00
Amaury Pouly
13364c5525 Fix make race conditions reharding lang.h
The bug is due to a stupid make misfeature. The article [1] contains much more
information but in a nutshell, the following code:

a b: c
	bla

is equivalent to:

a: c
	bla
b: c
	bla

This is bad because in parallel runs (make -j typically), "bla" can be run
TWICE and even worse, twice in PARALLEL. Obviously the result will be
completely unexpected. This is a real bummer because on the other hand,
the following code:

%.c %.h: %:in
	bla

actually expresses the fact that bla produces two files. For some reasons,
pattern rules work differently from implicit rules.

This commit attempts to fix the problem with lang.h by rewriting (simplified):

lang.c lang.h: lang.in
	genlang

as

lang.h: lang.in
	genlang
lang.c: lang.h

This works (it correctly expresses the dependency chain and ensures genlang runs
once) but as one drawback: if one manually removes lang.c, then genlang will not
re-run since the second rule does nothing. This is minor drawback since no one
ever removes lang.c manually and "clean" removes lang.h which triggers a rebuild.

[1]: https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html

Change-Id: Ic0bf7c7c203dc599b00fde457946d2316c70474e
2017-09-24 23:32:47 +02:00
Pavel Rzehák
533b2da2ab Rockbox Utility: updated Czech translation
translated missing strings and revised existing

Change-Id: I1814b31b18cda700fb34f23f818ccbe031b4251f
2017-09-23 18:46:27 +02:00
Amaury Pouly
acc3ef3b6f Print "GEN lang.h" when generated language header.
Hopefully this will help narrow down the problem with LANG_* error message,
I have the feeling that lang.h is not generated in time but it's very hard to
reproduce.

Change-Id: I02b6c98ed9c7e7168fad10dcf1142e307fbc6093
2017-09-22 21:06:30 +02:00
Amaury Pouly
9c83e07d8b Fix bug in pcm-alsa.c
I introduced the bug by mistake when adding support for 32-bit sample rate.

Change-Id: I5ac53917c95327672284707b69c59bb98d1aecd7
2017-09-22 11:22:13 +02:00
Johannes Rauh
638eaeb884 Fix keymap for YP-R0 regarding broken keylock, add more key maps
Keylock is now toggled by the key combo User&Power for WPS and FMS.
Pitchscreen has been added as long press of User.

While in bookmark screen, short press of Power deletes bookmark.
While in (most) menus or tree, first press of MENU takes you back to the
main menu, second press to WPS (aka button_context_tree).

Removed ACTION_WPSAB_SINGLE as long press of USER is now Pitchscreen.

Change-Id: I6aee7f8655b1073ed8d74dabe73895a7c0e54bfe
2017-09-20 21:22:24 +02:00
Johannes Rauh
c1097cc847 Rename "Selective Backlight" to "Backlight Exemptions" and add German translation
Change-Id: I1ddb78bd267372617370cc36910fce9980b907cd

Calling the menu entry "Backlight Exemptions" as this better describes the functionality.
Adding the German translation.
2017-09-20 21:17:39 +02:00
Frank Gevaerts
cee7f5c793 Fix some warnings due to the previous commit
Change-Id: I2858a1f0f730be732c9fff64eabaf3866486a686
2017-09-20 21:17:07 +02:00
Frank Gevaerts
c2698c67f3 Update Greek, Swedish, Italian and Serbian.
Thanks to Constantine Mountantonakis, Jonatan Nyberg, Alessandro Stoppani and Ivan Pesic
(FS#13130, FS#13124, FS#13126, FS#13112)

Change-Id: I0581c38b0dab75b1192278ec84b973250b5c3e69
2017-09-20 20:27:00 +02:00
Michael Sevakis
af8d719bfe Remove STORAGE_NEEDS_ALIGN from config headers
It's no longer required or used in the file code.

Change-Id: I11c1bc166c91b99addca8c8d151c5eaace7a61c3
2017-09-20 09:44:04 -04:00
Amaury Pouly
5f4de5bf48 nwztools/scsitools: make do_fw_upgrade output less confusing
Change-Id: If616e646aeddf20aa3cee79a821a420d9102c708
2017-09-19 21:53:52 +02:00
Amaury Pouly
99cc8f8802 upgtools: fix bug in brute force search
DES ignores the parity bit of each byte (making the 64-bit key really 56-bit),
but the current code skipped the parity bit of each half-byte, thus missing
some keys.

Change-Id: Ia523ebb944e458905b7de1742df151df22166150
2017-09-19 15:30:37 +02:00
Amaury Pouly
048aecd82a remove inaccurate comment
Change-Id: I039288ce12c127f60793625356181d5542114105
2017-09-18 09:30:33 +02:00
Amaury Pouly
6a62cc1f78 Add NWZ-E350 as unstable
Change-Id: I13cb173b2e0eee8799469c6b9a7029cb965dc2dd
2017-09-17 23:49:07 +02:00
Amaury Pouly
127e6bbfdd Add support for the NWZ-E350
Strangely it has the SAME encryption key as the E450. Either they didn't bother
changing it or more likely they have exactly the same internals and a slightly
different case.

Change-Id: I39ab88845b3e40db34160c2e61dde421f391df44
2017-09-17 23:47:49 +02:00
Amaury Pouly
aedf4d2a57 nwzlinux: print version and model in bootloader
Change-Id: Id31fdd3253edebf72188c2b8d52e6cc56dd6714c
2017-09-17 23:23:58 +02:00
Amaury Pouly
7de1d8b70f mknwzboot: add support for uninstallation
There is not need for a bootloader file to create an uninstall firmware so one
needs to provide a model.
Also cleanup the install script a bit by factoring message into a function, also
print them to the log so that the user can report what was printed on the screen
easily. The uninstall script is quite trivial, it remounts the rootfs and restores
the backed up OF to its right place.

Change-Id: I1f5c0efeb965fdc7fe17f45c2753c0f52c34f7f1
2017-09-17 22:16:50 +02:00
Amaury Pouly
ac59669d46 fix warning in lcd-as-memframe.c
The fix is to actually remove unused variables. Those were unused from day 1,
which I find slightly suspicious so either there is some problem or the code was
copy-pasted and modified, making some variables useless.

Change-Id: I41caf52d469b48c969ece969540de67d87e77357
2017-09-17 15:13:52 +02:00
Amaury Pouly
3b7263be2d fix warning in vorbis
Change-Id: I01dd320ac7f4641caaef62363556ca7527dbee19
2017-09-17 15:09:39 +02:00
Amaury Pouly
91d3c8e459 Add support for the Sony NWZ-S750
Change-Id: I9050129949809b3dbe9f4f9e816f8980c4f3a904
2017-09-17 14:35:58 +02:00
Amaury Pouly
3d815406f4 Don't call touchscreen functions when we don't have a touchscreen
Change-Id: Ia8c05f45c289729031d6333445d932bb5ac242ca
2017-09-17 00:27:10 +02:00
Amaury Pouly
a486ee4fb8 fix red on ypr0/ypr1
Always compile in pcm_alsa_set_digital_volume, the linker will optimize it
away on targets that don't use it.

Change-Id: Ia21c3eaa8a64b75761ab5d056361e7ed1fcf949a
2017-09-17 00:23:15 +02:00
Amaury Pouly
53ebdbc7f3 Add NWZ-A860 as unstable
Change-Id: Iba944551d7bf4e1f24ffbd4f2a0be82eee395651
2017-09-17 00:09:07 +02:00
Amaury Pouly
546d229ae4 imx233: make debug usable with a touchscreen
Change-Id: I08a3302024646c0d915aa34855970678730eb44c
2017-09-17 00:04:32 +02:00
Amaury Pouly
064fa902c5 zenxfi2: fix touchscreen bug
Due to some undocumented behavior, the touchscreen was almost unusable in point
mode. Now it's much better but still not very nice to use, probably it needs some
filtering.

Change-Id: Idc8a0214b09f268e6be907ee6ec3126cc0d88773
2017-09-17 00:04:14 +02:00
Amaury Pouly
a0fca0c7bf Add simulator support for the A860
This requires a few changes unrelated to the A860 because configure unsets
APPLICATION but the NWZ is an application!

Change-Id: Id91aa23193383ac95886b281653da5286edd9caf
2017-09-17 00:03:45 +02:00
Amaury Pouly
ac57f96838 Add support for the NWZ-A860
Change-Id: Ibf0c5168ac31d4ba2aeaa86cbeca37a1011b75fa
2017-09-17 00:03:02 +02:00
Amaury Pouly
f22ccabac3 sonynwz: fix various drivers, notably touchscreen related
Change-Id: If43087ec9ad405ee6eeae8bedba8d221f8fb142f
2017-09-17 00:02:00 +02:00
Johannes Rauh
0291db372e For Sony players that have explicit volume keys, make better use of the up and down button
Longpress Up:  pitch screen
Down:          playlist view

Change-Id: Ibb1032cefd32ce7a3fc309d6ee8d1ba0914583f6
2017-09-16 23:57:50 +02:00
Marcin Bukat
8b744571c0 ATJ hwstub: Add cache coherency
All the hard work was done by pamaury. I simply added proper
defines.

Change-Id: Ib374eea7cd20f35518ad8a68d771c57c54ae01ca
2017-09-15 21:44:59 +02:00
Michael Sevakis
c6d5cd74a8 ARM support: provide compiler a better popcount function
Just the 32-bit one for now. The default uses lookup tables and is
ungainly and bloated.

Change-Id: I4a2eb31defb1f4d6f6853b65fe6dacc380d6ffc0
2017-09-07 15:45:55 -04:00