Commit graph

159 commits

Author SHA1 Message Date
Dominik Riebeling
0110e558de Remove Ipod Video 64MB handling.
Since the builds for the Ipod Video 32MB and 64MB are now unified there
is no need to handle them separately in Rockbox Utility anymore.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27966 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 17:47:33 +00:00
Dominik Riebeling
803a0edb58 Fix USB ID retrieval on Windows 7.
The device string containing the USB IDs differs in casing on Windows 7
so always convert to upper case before scanning the string.  Use
DEVICEDESC instead of LOCATION_INFORMATION for the user visible device
string as the latter doesn't show anything useful to the user on W7, at
least for the devices I've tried. Unfortunately DEVICEDESC is less
descriptive than the previously used.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27561 a1c6a512-1295-4272-9138-f99709370657
2010-07-25 19:25:38 +00:00
Dominik Riebeling
10b8e327d8 FS#11439: Fix version comparison regression.
Improve string suffix handling by distinguishing between version number
separators (i.e. dots) and extended separators and additional version
characters. Corrects false update information displayed for 64bit binaries of
Rockbox Utility.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27201 a1c6a512-1295-4272-9138-f99709370657
2010-06-30 21:59:47 +00:00
Dominik Riebeling
e7a536bc1d Don't close libusb device handle if opening failed.
This issue has been pointed out as FS#11420. Redone by myself because the
change is trivial and the submitter didn't state his real name.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27061 a1c6a512-1295-4272-9138-f99709370657
2010-06-22 20:13:39 +00:00
Dominik Riebeling
90bc818696 Log filesystem free value to system trace.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26935 a1c6a512-1295-4272-9138-f99709370657
2010-06-18 19:46:45 +00:00
Dominik Riebeling
2c6895207d Make System and Utils class based on QObject.
Those classes use Qt objects anyway, and making them based on QObject moved the
strings into the appropriate class when translating.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26931 a1c6a512-1295-4272-9138-f99709370657
2010-06-18 19:04:06 +00:00
Dominik Riebeling
6e5330f663 Fix source string spelling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26925 a1c6a512-1295-4272-9138-f99709370657
2010-06-18 14:59:23 +00:00
Dominik Riebeling
13d8649a34 Rework Rockbox Utility update version number check.
The version check failed on subrelease versions (as the 1.2.5-1 rebuild done
for Mac) and detected an updated version that is in fact an outdated one.
Rework the comparison completely, move it to the Utils class and display some
more information in the status bar upon update check. Especially keep a notice
in the status bar if an updated version was found.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26788 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 19:18:13 +00:00
Dominik Riebeling
a1209350d4 Convert uninstallation to use signals / slots for logging.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26782 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 17:14:00 +00:00
Dominik Riebeling
18b350c972 Distinguish between release and current build when installing fonts.
As with the voice file installation changed in r26637 the same issue exists for
fonts.  While the fonts package rarely changes and therefore this shouldn't
have had a negative impact in the past use the correct font package anyway.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26667 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 17:04:02 +00:00
Dominik Riebeling
3f5e61e094 Fix typo.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26666 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 17:03:56 +00:00
Dominik Riebeling
2a90375c12 Sort rbutil.ini general section and rename voice_url for clarity.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26638 a1c6a512-1295-4272-9138-f99709370657
2010-06-06 18:41:02 +00:00
Dominik Riebeling
56fea4f74d Distinguish between release and current build when installing voice files.
Check the installed Rockbox and install release voice file if a release is
found. Fixes wrong voice file getting installed for releases, which especially
showed up with the recent lang file cleanup. This is likely to be the cause for
FS#11362.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26637 a1c6a512-1295-4272-9138-f99709370657
2010-06-06 18:02:08 +00:00
Dominik Riebeling
b2998ef6c7 Move retrieval of revision and release numbers to RockboxInfo class.
This allows reusing retrieval for upcoming distinguishing between release and
current voice files.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26636 a1c6a512-1295-4272-9138-f99709370657
2010-06-06 18:02:01 +00:00
Dominik Wenger
fab86a6a4c rbutil: add mpio hd200 as disabled target (all untested)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26561 a1c6a512-1295-4272-9138-f99709370657
2010-06-04 21:43:15 +00:00
Dominik Wenger
a8c1934c9d rbutil: Make TTS and encoders run on all cores \n FS#11160 by Delyan Kratunov
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26558 a1c6a512-1295-4272-9138-f99709370657
2010-06-04 21:22:25 +00:00
Dominik Riebeling
0a4b576248 Move constructing the themes info download link to rbutil.ini.
Instead of constructing the download link with fixed script name put a template
into the system info file. That way changing the download link doesn't require
changing the code anymore.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26495 a1c6a512-1295-4272-9138-f99709370657
2010-06-02 21:55:22 +00:00
Dominik Riebeling
07ba746151 Fix a warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26339 a1c6a512-1295-4272-9138-f99709370657
2010-05-27 22:06:16 +00:00
Rafaël Carré
ff6b0425e4 mkamsboot/rbutil/amsinfo : do not try to detect the model of a given Sansa AMS OF
The field we thought was representative of the model is not, it has
changed in the past for fuzev1 and fuzev2.
For example the value 0x23 is found in 2 old fuzev1 OF versions, and in
the c200v2 OF

The only reliable way to detect the model of a given OF is by using the
built-in list of md5sums.

Modify mkamsboot and rbutilqt to load the rockbox bootloader first, and
then check if the model in the bootloader corresponds to the model of
the known md5sum of the given OF.

That way we can continue to present the user with a list of known OF
versions in case the OF is unknown to mkamsboot

Also explicit the dependency of main.c on mkamsboot.h in case the
prototypes change
Correct the header's description not updated in r21648

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26248 a1c6a512-1295-4272-9138-f99709370657
2010-05-24 10:06:52 +00:00
Dominik Wenger
26826b5ae5 rbutil: move bootloaderInstall object creation switches to bootloaderInstallBase .
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25882 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 18:18:43 +00:00
Dominik Wenger
8e2ebc1068 rbutil: fix compiling on windows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25833 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 19:35:37 +00:00
Dominik Riebeling
34e60dde60 Handle device name resolving failures.
Improve tracing of device name resolving. Explicitly fail if resolving the
device name from the mountpoint failed during ipod / sansa bootloader
installation. Fixes bootloader installation trying to use an empty device name
in some cases which can happen if the mountpoint to get resolved uses an
incompatible file system.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25743 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 21:43:14 +00:00
Dominik Wenger
b6e1f1c0ad Fix talkfile generation for files starting with . and having no extension.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25742 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 21:09:14 +00:00
Dominik Riebeling
5185d9e30a Log failures in mountpoint resolving, log filesystem formats in mountpoints().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25718 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 21:22:36 +00:00
Dominik Riebeling
1cc1f4ee77 System Info: display OS X version number and architecture too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25442 a1c6a512-1295-4272-9138-f99709370657
2010-04-02 21:32:51 +00:00
Dominik Riebeling
9fedc8187f Move utils.cpp functions into separate class and split it up.
Move class-less functions in utils.cpp into a new Utils class and make the old
functions static. This prevents clashes with system C functions. Rename some
functions to avoid macro problems (check() is a macro on OS X). Split out the
RockboxInfo class into a separate file.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25441 a1c6a512-1295-4272-9138-f99709370657
2010-04-02 21:24:19 +00:00
Dominik Riebeling
b470303311 Implement system proxy values retrieval on OS X.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25439 a1c6a512-1295-4272-9138-f99709370657
2010-04-02 19:22:32 +00:00
Dominik Riebeling
d6543b71af Fix leaking file descriptors on error.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25431 a1c6a512-1295-4272-9138-f99709370657
2010-04-01 22:06:52 +00:00
Tomer Shalev
f598a7baef rbutil: Make strings translatable
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25409 a1c6a512-1295-4272-9138-f99709370657
2010-03-31 20:11:12 +00:00
Dominik Wenger
11c9be9c83 Fix Festival tts engine.
Author: Delyan Kratunov
Flyspray: FS#11155 part2

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25402 a1c6a512-1295-4272-9138-f99709370657
2010-03-30 17:45:23 +00:00
Dominik Riebeling
630281a088 Remove unnecessary class declaration, this should come from the includes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25319 a1c6a512-1295-4272-9138-f99709370657
2010-03-24 18:45:08 +00:00
Dominik Riebeling
9db98bb864 Fix bootloader files vanishing after installation (FS#11086).
QTemporaryFile creates temporary files, so they might get removed even if they
are renamed. Copy the downloaded temporary file instead.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25208 a1c6a512-1295-4272-9138-f99709370657
2010-03-15 21:21:04 +00:00
Dominik Riebeling
a4caff91f9 Respect the exit code of external encoder called.
Return an error if the exit code differs from 0. Fixes voice file creation
getting displayed as successful even if encoding didn't work (f.e. due to wrong
command line parameters set in the configuration dialog).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25138 a1c6a512-1295-4272-9138-f99709370657
2010-03-12 21:52:25 +00:00
Dominik Riebeling
b4401e589e Implement speed adjustment for OS X TTS.
Note that some voices don't support speed adjustment. These voices will ignore
the selected value. The current implementation doesn't mark those voices in any
way.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25125 a1c6a512-1295-4272-9138-f99709370657
2010-03-11 20:09:22 +00:00
Dominik Riebeling
897e041900 Code police.
- remove tabs.
- remove trailing spaces.
- break overly long lines.
- fix indentation errors.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25008 a1c6a512-1295-4272-9138-f99709370657
2010-03-03 22:26:00 +00:00
Dominik Riebeling
8c8703038b Refactor device tree setup a bit.
- reorder value retrieval (display names etc) to cut down the number of
  necessary accesses. While this is not critical it cuts down the noise
  generated in the trace noticably.
- match the old target by its internal name instead of the display name.
- remove two access functions in SystemInfo that are not really needed anymore.
  Accessing the values via platformValue() is much more logical and in line with
  the rest of the value accesses.
- try to scroll to the selected item in the device list after setup and
  detection.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24988 a1c6a512-1295-4272-9138-f99709370657
2010-03-01 22:45:17 +00:00
Dominik Riebeling
495edfb7b9 Add support for OS X' Speech Synthesis Manager TTS system.
This adds basic support for using the OS X' TTS system. The current
implementation does only support selecting the voice itself, no further
settings (like speed pitch / speed) adjustments are implemented. As OS X' TTS
system wants the strings to get spoken in 8 bit encoding problems with locale
combinations are possible. For this better error handling in the rbutil TTS is
needed. The voice test button in the configuration dialog reacts pretty slow
due to the way its speaking is done. This can get changed but also requires
adjustments in the rbutil TTS system.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24979 a1c6a512-1295-4272-9138-f99709370657
2010-02-28 20:19:54 +00:00
Dominik Riebeling
dd0a571c49 Use the data partition device node when trying to resolve the mountpoint.
The stricter matching for device nodes introduced with r24802 broke resolving
the mountpoint during autodetection as sansapatcher and ipodpatcher return the
device node of the player instead of its data partition.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24936 a1c6a512-1295-4272-9138-f99709370657
2010-02-27 11:27:13 +00:00
Dominik Riebeling
b1cc087a67 Be more strict when when resolving devices and allow hfs too.
On OS X HFS is a valid filesystem on an Ipod. When resolving device node to
mountpoints and vice versa also check mounts of hfs partitions. This results in
trying to install the bootloader on a MacPod to show the (intended) MacPod
warning instead of failing with a "could not open ipod" error because no valid
device node could be retrieved. Also, be more strict on matching to prevent
problems with one name being a subset of another.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24802 a1c6a512-1295-4272-9138-f99709370657
2010-02-20 22:46:58 +00:00
Dominik Riebeling
7709113b6a Add missing class prefix to logging call.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24801 a1c6a512-1295-4272-9138-f99709370657
2010-02-20 22:46:55 +00:00
Dominik Riebeling
7f33b7d9fa Recognize and handle MacPods during autodetection.
Previously MacPods were detected but the mountpoint can't get resolved due to
the different partition layout, thus having a MacPod would only detect the Ipod
itself but not the mountpoint. Rockbox does not support MacPods, so inform the
user as soon as possible.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24799 a1c6a512-1295-4272-9138-f99709370657
2010-02-20 22:11:11 +00:00
Dominik Riebeling
5998a5507d Update an outdated comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24798 a1c6a512-1295-4272-9138-f99709370657
2010-02-20 22:11:08 +00:00
Dominik Riebeling
773de4a150 If the Ipod has been recognized as MacPod always consider no bootloader installed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24797 a1c6a512-1295-4272-9138-f99709370657
2010-02-20 22:11:04 +00:00
Rafaël Carré
8b1bbdb013 rbutil: link to the Sansa forums when the user is requested to download a Sansa AMS firmware
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24778 a1c6a512-1295-4272-9138-f99709370657
2010-02-19 23:45:29 +00:00
Rafaël Carré
b6c20c17e4 mkamsboot: prevents 2 potential problems
We checked if the new firmware block (bootloader+ucl function+packed
bootloader & OF) fit in the OF file, but not if it would run properly.

For example the Clipv2 OF is bigger than 0x50000 bytes uncompressed, but
it fitted in this space when packed and concatenated to a packed
bootloader + ucl function and dualboot code (but we use 1MB of RAM and
not 0x50000 anyway).

Now we check that both bootloader and OF are small enough to be unpacked
at runtime: the unpacked data must be smaller than available memory and
not overlap with ucl function and packed data (although the unpacked and
packed data could probably overlap a bit, I don't know how to calculate
this and this could be quite complex).

total_size() is replaced by check_sizes() which will perform all the
checks and set an error string if the firmware can't be patched.
(both mkamsboot and rbutilqt modified accordingly)

The second problem is that dualboot.S assumed r3 and r5 were left
untouched in the device specific checks. This was undocumented and very
error prone when modifying these checks.

r3 is the last byte of packed copy (bootloader or OF)
r5 is the entry point of uclunpack function derived from r3, so move r5
calculation after the device specific code.

Even if r3 is currently unused in the device specific code, we store it
in memory after copying the ucl function, when it points to the last byte
of packed data (not yet copied at this point since we didn't chose if we
boot the OF or the bootloader), and restore it just before using it so no
restriction is placed on registers usage in device specific code.

Add a new variable ucl_dest in dualboot.S set by mkamsboot.c, which
represents the last bound of buffer where we copy the ucl function, and
then the packed data (bootloader or OF).

RAM_SIZE definition is moved from dualboot.S to mkamsboot.c new
model_memory_size(), where it is a bit better documented.

Tested on e200v2 and Clip+

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24772 a1c6a512-1295-4272-9138-f99709370657
2010-02-19 14:10:26 +00:00
Dominik Riebeling
4c9fc9cb7e Fix problems with platform retrieval.
- handle disabled platforms also for for variant and base groups.
- make variant detection more strict to prevent variants that are a substring
  of other variants to match. Happened e.g. for iriverh10 and iriverh100.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24625 a1c6a512-1295-4272-9138-f99709370657
2010-02-12 20:38:17 +00:00
Dominik Riebeling
22056a9c37 Don't close the disk handle to the ipod too early.
ipodInitialize() is not supposed to close but only to open the disk handle. Fixes a segfault when trying to install the ipod bootloader on windows.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24608 a1c6a512-1295-4272-9138-f99709370657
2010-02-11 22:19:34 +00:00
Dominik Riebeling
a9ab407f84 Add option to show disabled targets in the configuration dialog.
Note that disabled targets support is not intended for use by end users.
This is to make development (and testing of svn) easier and should get
disabled for releases.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24513 a1c6a512-1295-4272-9138-f99709370657
2010-02-04 21:10:20 +00:00
Dominik Riebeling
b659936ca5 Give the user a hint on where find the required bootloader file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24441 a1c6a512-1295-4272-9138-f99709370657
2010-02-01 20:30:22 +00:00
Dominik Riebeling
ea4130fd2d Extend SystemInfo to allow distinguishing between platforms and variants.
Doing so removes the need to loop over all targets to fill in values for
target variants in ServerInfo.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24427 a1c6a512-1295-4272-9138-f99709370657
2010-01-31 21:57:45 +00:00