The current TTS configuration doesn't allow querying the system values so it
currently can't be displayed. A value of 0 will use the system default. The
default pitch is dependent on the voice; most voices should have a default
pitch of 45 - 55.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29673 a1c6a512-1295-4272-9138-f99709370657
The OS X TTS engine (and likely others) allows outputting its speech directly
to the sound system. This avoids the extra step of creating a temporary file to
play for TTS preview. Currently implemented as TTS capability reported.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29672 a1c6a512-1295-4272-9138-f99709370657
Instead of hard coding the query part of the genlang url store the full url as
template and replace parts as done for other urls as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29669 a1c6a512-1295-4272-9138-f99709370657
This change fixes problems with zip files created with newer zip utilities (a
known issue is the iLike theme). QuaZip also allows better feedback during
operations without changing the imported code. Additionally Rockbox Utility and
the Theme Editor are now both using QuaZip; currently Rockbox Utility uses a
copy of the sources, merging them later is planned.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29645 a1c6a512-1295-4272-9138-f99709370657
- Use ISO codes as keys for voice languages instead of enumeration.
- Instead of trying to select a suitable voicefile language from the UI
language use the ISO codes stored as UI language and match against the
mapping.
- Always store the selected UI language. Fixes the voicefile creation
language lookup to fail if the language used is the system language.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29207 a1c6a512-1295-4272-9138-f99709370657
If the proxy dialog doesn't contain any values searching for the values in the
system returns NULL pointers instead of empty values. Check for them to fix
crashes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28212 a1c6a512-1295-4272-9138-f99709370657
Oops: on Windows, ask the system about the values before displaying it instead
of expecting the structure to fill itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28107 a1c6a512-1295-4272-9138-f99709370657
Since Rockbox Utility got support for utilizing more than one CPU / Core
this value might be helpful in case of issues like FS#11496 (QThreadPool
defaults to the number of CPUs found as maximum number of threads).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28106 a1c6a512-1295-4272-9138-f99709370657
Instead of using libusb as wrapper query the USB IDs via IOKit. Since libusb is
only used for that this means that it's no longer necessary on OS X.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28001 a1c6a512-1295-4272-9138-f99709370657
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
- 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
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
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
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
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
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
- 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
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
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
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
With the separation of the SystemInfo values accessing all the values
will create traces, making them rather noisy due to unnecessary multiple
accesses.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24373 a1c6a512-1295-4272-9138-f99709370657
OS X requires to unmount the player during bootloader installation on Sansas / Ipods. The system remounts the player automatically after a short while.
Not waiting for the system to remount the player will result in a changed mount point, making the small / full install write the main build to the wrong
location.
This currently waits up to 60 seconds for the player to get remounted until it errors out. This value seems to be sufficient, if it's not please report
so we can adjust it. Also, the waiting can't be interrupted right now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23716 a1c6a512-1295-4272-9138-f99709370657
- adjust the regex to figure the correct drive from the partition name.
- move the check for an old bootloader into the first installation step -- it's a fatal problem so it should appear as soon as possible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23715 a1c6a512-1295-4272-9138-f99709370657
The OF could have been stored by the user with a different name
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23700 a1c6a512-1295-4272-9138-f99709370657
- Display the name of a detected unsupported player when running autodetection from the configuration window.
- Extend the list of known-unsupported players.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22334 a1c6a512-1295-4272-9138-f99709370657
Remove the ugly "save, change and restore platform" accesses and extend the settings class to allow accessing player specific system values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22254 a1c6a512-1295-4272-9138-f99709370657
Move check() function out of the Detect class and place it into utils.cpp for now. Rename Detect class to System, as it now only retrieves data about the underlying system and doesn't detect anything anymore. Cleans up with the confusion between Detect and Autodetection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22238 a1c6a512-1295-4272-9138-f99709370657
Simplify RockboxInfo file handling. Remove Detect::installedVersion() and Detect::installedTarget(), as those became wrappers around RockboxInfo without functionality.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22237 a1c6a512-1295-4272-9138-f99709370657
Remove the hardcoded special case for the H10 bootloader installation and uninstallation. Allow multiple bootloader filenames to be present and pick the existing one on (un)installation. This is also needed for easily adding support for the Samsung YH players (to make FS#10373 actually work).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22220 a1c6a512-1295-4272-9138-f99709370657
Use "qmake -config libusb1" to use libusb-1.0 instead of libusb-0.1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22205 a1c6a512-1295-4272-9138-f99709370657
- introduce a talkgenerator to better share code between voice and talk generation.
- name intermediate .talkfiles after the md5sum of the text. (prevents naming problems).
- do not directly use the logger, instead emit signals.
- move talkfile and voicefile generation to base/
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21524 a1c6a512-1295-4272-9138-f99709370657
- Use signals for updating the progress logger from ZipInstaller class.
- Move ZipInstaller class to base folder as it doesn't rely on QtGui anymore.
- cleanup debugging output a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20845 a1c6a512-1295-4272-9138-f99709370657
- use better names for member functions
- don't emit aborted() when exiting a successful log
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20844 a1c6a512-1295-4272-9138-f99709370657
- use a single member function for accessing a settings value.
- use an enum to figure the correct value in the settings file instead of functions.
- return the settings value as QVariant instead and leave converting to the caller.
- accept QVariant as value when setting values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20823 a1c6a512-1295-4272-9138-f99709370657
check the downloaded bootloader file against the target reported by sansapatcher as otherwise one could install an e200 bootloader to a c200 (and vice versa).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20630 a1c6a512-1295-4272-9138-f99709370657
1. Make Themesite integration work again
2. Fix FS#10055 (Theme sizes are 0) and FS#10061 (Incorrect Target missmatch detected)
3. Rename platform and voicename in rbutil.ini to reflect better what they are. (modelnames from either configure or the buildserver)
4. Fix a few places where they were used incorrectly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20558 a1c6a512-1295-4272-9138-f99709370657