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
With r24009 the manual used for Ipod Mini was changed from 2G to 1G, resulting
in Rockbox Utility not finding it anymore. Update manual name for both Minis.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25562 a1c6a512-1295-4272-9138-f99709370657
For hebrew, a special case handles switching to RTL. Make this work if the
language selection is done by the system environment, i.e. no language has been
selected by the user previously.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25518 a1c6a512-1295-4272-9138-f99709370657
Make the Windoes binary try to detect if it's running under Wine. Display a
warning if so, as Rockbox Utility is likely to fail in all kind of strange ways
when running on Wine. We do provide Linux binaries, so it's not even a good
idea to try running under Wine at all.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25471 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
Rockbox Utility doesn't support "proxy auto-config" (aka PAC) for system proxy
settings. This can result in users selecting system proxy and expecting it to
work even if their system uses PAC. While the configuration dialog displays the
proxy setting values retrieved from the system this is not totally obvious. Add
a message telling if the retrieved system proxy values are not useable. For now
this only checks if a proxy host and port are set which should catch the usual
cases when PAC is used.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25435 a1c6a512-1295-4272-9138-f99709370657
Don't listen to requestFinished() signals for background downloads. The
only information needed is the done() signal. Fixes multiple error
messages popping up on unreachable network.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25430 a1c6a512-1295-4272-9138-f99709370657
This adds the Beast as disabled target. Note that bootloader installation isn't
implemented yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25412 a1c6a512-1295-4272-9138-f99709370657
Create a svg version of the clef icon for Rockbox Utility and set it as window
icon on Linux; icon created from the svg logo in the manual. Addresses
FS#11094.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25385 a1c6a512-1295-4272-9138-f99709370657
The System Trace isn't preserved when quitting Rockbox Utility. Change this so
the last trace is saved in the cache folder, and add a button to the trace
window to allow easy saving it. Should help in cases where users have problems
but restart Rockbox Utility before saving the trace.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25313 a1c6a512-1295-4272-9138-f99709370657
Move the source files out of the project file into a project include, and
resort it a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25278 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
Use the buildserver modelname for downloading files. The Platform setting is
the internal Rockbox Utility value, which might contain an additional
identifier needed internally only. Broken download links reported as part of
FS#11109.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25206 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
If the linker uses the --as-needed option linking failed due to the order of
the libraries on the command line. Arch Linux seems to default to this option,
and the Gentoo documentation mentiones it as experimental feature. Changing
the library order fixes the link issue.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25124 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 will also cause the archives created by deploy-release.py to use the new
binary name, so also update the update checking code to accept any base
filename when retrieving version numbers from the download server.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24980 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
This fixes the values set in the voice window getting overwritten with the
initial values when opening the configuration dialog from the window via the
"Change" button.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24963 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
Also only use 0x50000 bytes of memory since the files just fit in.
TODO: make mkamsboot abort if the decompressed OF or bootloader doesn't
fit in RAM / or overlap on compressed data or uclunpack function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24727 a1c6a512-1295-4272-9138-f99709370657
This removes the need for copying these files to ../ and removes the
risk of only copying one of the files (which led to bricking 2 c200v2
already)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24719 a1c6a512-1295-4272-9138-f99709370657
This makes it possible for native dialogs to get used on Windows and OS X. The
mountpoint selection dialog needs special handling and still uses the
BrowseDirtree class for now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24703 a1c6a512-1295-4272-9138-f99709370657
The Install class has been renamed recently to InstallWindow. Rename the
form too so it uses the same class basename again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24698 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
Dualboot works on the sansa clip+ by holding either the left "|<<" or home buttons.
The USB pin is still undiscovered at this point and should replace the home button when found.
By including the home button for dualboot we avoid bricking due to a single button failure.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24561 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
Bootloader installation for the D2 is still not end-user ready for the upcoming release.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24467 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
The About menu name was off since the introduction of the
Troubleshooting submenu. Renaming it should make it more obvious to look
at it in case of problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24418 a1c6a512-1295-4272-9138-f99709370657
This implements the basic functionality for sending inquiries on OS X.
The current implementation has some limitations:
- it will not respect the selected device but pick the first Ipod found.
- it is inefficient due to the way ipodpatcher expects this which doesn't
really match how it works on OS X.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24382 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
Rbutil's (internal) platform names are now identical to the configure
model names except for the cases where further differentiation is
needed. In those cases the platform name is now the configure name with
an additional postfix, separated by a dot. This makes it possible
getting the configure name from the platform name.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24371 a1c6a512-1295-4272-9138-f99709370657
Similar to removing the separate CREDITS file for the manual remove the
rbutil one as discussed on IRC.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24329 a1c6a512-1295-4272-9138-f99709370657
Small script to generate an overview of the current translation status
of Rockbox Utility. The sources are retrieved from svn for this, so it
doesn't mess up with a working copy. Current limitations:
- expects lupdate-qt4 and lrelease-qt4 to be in the PATH. Doesn't try to
find them using other names.
- always works on SVN HEAD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24290 a1c6a512-1295-4272-9138-f99709370657
Flyspray: FS#10737
Author: Daniel Kluz
Also add russian translation to project file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24245 a1c6a512-1295-4272-9138-f99709370657
UNTESTED, could ver well brick your Clip+
If it works, booting should just be delayed by a small delay (perhaps
not noticeable)
Hopefully the Clipv2 checks will work for Clip+ and then we'll be able
to test the other Clipv2 code (LCD/button)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24219 a1c6a512-1295-4272-9138-f99709370657
Don't set the layout direction when setting the starting folder, that might not get set at all.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24190 a1c6a512-1295-4272-9138-f99709370657
- The platforms section holds all players that should be considered as available. Correct mismatches.
- Correct a couple of buildserver and configure modelnames that still used old values.
Fixes several supported players not showing up in the configuration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24101 a1c6a512-1295-4272-9138-f99709370657
libspeex is split into libspeex and libspeexdsp. We need both, so check
for them the same time instead of trying to respect the fact that old
versions didn't have the libspeexdsp part. Should fix issues with
distributions that have libspeex and libspeexdsp split into separate
packages and only the libspeex one is installed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23872 a1c6a512-1295-4272-9138-f99709370657
- make the deploy script work on OS X.
- use macdeployqt for copying Frameworks macdeployqt is part of Qt, at least since 4.5.
- add a workaround for Qt not copying icons and plist file correctly when building out of tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23789 a1c6a512-1295-4272-9138-f99709370657
When building various libraries for Rockbox Utility make sure they use the same compiler as Qt. Pass Qt's CC instead of explicitly setting it. This fixes issues linking on OS X (with recent XCode building universal binaries requires the use of gcc-4-0 while the default one is 4.2).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23779 a1c6a512-1295-4272-9138-f99709370657
Building universal libraries needs to take TARGET_DIR into account as when set the individual libraries are placed into the build output folder and didn't got found anymore.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23778 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
- when scanning for Ipods save the complete ipod_t structure on match. Only saving the disk name can result in the structure holding a disk name not matching the rest of the structure. This lead to wrong detection of macpod on OS X, as Mac drives might get detected later.
- reopen the Ipod in RW mode on scanning on W32 only. On OS X reopening also unmounts the player, which in turn makes resolving the mount point fail.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23707 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
Both patchers use the same function name with one being removed when
building for rbutil. This gets in the way trying to move the patchers to
libraries, and it also results a linking dependency of sansapatcher on
ipodpatcher. Renaming the function makes both more self-contained and
avoids potential issues if the functions happen to not do the same.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23568 a1c6a512-1295-4272-9138-f99709370657
- Adjust the Makefile similar to the changes done in r23520.
- Split out the standalone part into a separate source file.
- Put telechips.o inside the archive instead of building it separately for rbutil. It is part of mktccboot.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23522 a1c6a512-1295-4272-9138-f99709370657
- split out standalone functions to a separate file.
- adjust and clean up Makefile.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23520 a1c6a512-1295-4272-9138-f99709370657
Also remove filename itseld as it is not being considered. The output patched
firmware filename is taken from the original firmware file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23468 a1c6a512-1295-4272-9138-f99709370657
- when building out-of-tree don't build objects in the tools folder.
- take out-of-tree building into account when looking for objects.
- don't lie to the user -- linking is not compiling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23423 a1c6a512-1295-4272-9138-f99709370657