Commit graph

32 commits

Author SHA1 Message Date
Dominik Riebeling
163ab46170 Provide dealloc function to sansapatcher.
Similar as done with ipodpatcher provide a function to free the allocated
sector buffer.

Change-Id: Ie51e82f7191496bb48973148af1cc35cd37993d3
2013-01-01 15:06:41 +01:00
Dominik Riebeling
b63d429c8f Provide dealloc function to ipodpatcher.
On Windows the sector buffer is allocated using VirtualAlloc, thus releasing
this buffer should be done using VirtualFree. Provide an additional function
for deallocating the buffer so users of ipodpatcher do not need to know about
this.

Change-Id: Ibb0fc575a185148a389e63935e86a392bf8d180d
2013-01-01 15:06:41 +01:00
Dominik Riebeling
9c1ed84d28 sansapatcher: move sectorbuf pointer into sansa_t structure.
Similar as the ipod_t structure for ipodpatcher the sansa_t structure holds all
relevant information for sansapatcher. Put the global sansa_sectorbuf pointer
into it as well.

Change-Id: Iad08ef6aafc49609c3d0d556914246f230ee0179
2013-01-01 15:06:34 +01:00
Dominik Riebeling
24e37ddf57 ipodpatcher: move sectorbuf pointer into ipod_t structure.
The ipod_t structure holds all relevant information for ipodpatcher. Put the
global ipod_sectorbuf pointer into it as well. Allows the Rockbox Utility Ipod
class to be instanciated multiple times since each instance can now have its
own buffer.

Change-Id: Ie319cbadbc20c367ceadba9a46b4dc34b57a79a7
2013-01-01 15:05:52 +01:00
Dominik Riebeling
c659f9979a Allow USB IDs to be non-unique.
When retrieving USB IDs create a list of players matching to a USB ID instead
of assuming only one player.  This prevents non-unique IDs overwriting each
other and will be used for improved autodetection later.

Currently only the first ID is used during detection, and no additional IDs
have been added yet.

Change-Id: Ieac5594108bae708e364bd2c8df88f61fcdcbdcd
2012-10-06 13:53:09 +02:00
Dominik Riebeling
7263ccb105 Remove svn keyword lines from sources.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30806 a1c6a512-1295-4272-9138-f99709370657
2011-10-19 20:51:16 +00:00
Dominik Riebeling
9c9bc1216c Move some helper functions out of Autodetection.
Those functions are rather general, so put them into the Utils class instead.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30146 a1c6a512-1295-4272-9138-f99709370657
2011-07-17 08:08:58 +00:00
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
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 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
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
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
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 Wenger
6128bd14e9 rbutil: split RbSettings. use Stable/unstable status from server.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24331 a1c6a512-1295-4272-9138-f99709370657
2010-01-24 21:12:11 +00:00
Dominik Riebeling
bd62c853d4 Fix Ipod Video 64MB workaround for rockbox-info.txt detection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24013 a1c6a512-1295-4272-9138-f99709370657
2009-12-15 21:10:32 +00:00
Dominik Riebeling
38dde55c27 FS#10100: Wait for the system to remount the player after bootloader installation.
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
2009-11-22 22:13:25 +00:00
Dominik Riebeling
48df607faa Fix stupid combination of CnP error and typo.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23703 a1c6a512-1295-4272-9138-f99709370657
2009-11-22 14:41:00 +00:00
Dominik Riebeling
de37ce51ed OS X uses msdos as filesystem for vfat which is the same OpenBSD does. Fixes mountpoint resolving.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23701 a1c6a512-1295-4272-9138-f99709370657
2009-11-22 14:29:22 +00:00
Dominik Riebeling
b9a17dd0ce Add special handling for ipodvideo64mb when detecting the player via rockbox-info.txt.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22831 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 15:26:59 +00:00
Dominik Riebeling
76100783af Improve notification about unsupported players.
- 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
2009-08-15 21:29:31 +00:00
Dominik Riebeling
e2f5086916 Clean up and rename Detect class.
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
2009-08-10 19:46:51 +00:00
Dominik Riebeling
84ced00bbd Simplify and cleanup rockbox-info.txt handling.
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
2009-08-10 19:20:53 +00:00
Dominik Riebeling
bd5b744a6d Clean up some debug output, kill some trailing spaces and break some overly long lines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22204 a1c6a512-1295-4272-9138-f99709370657
2009-08-08 12:12:49 +00:00
Dominik Wenger
33d9cf091a rbutil: make RbSettings a static class. (FS#10183 with improvements)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20890 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 16:59:14 +00:00
Dominik Riebeling
f679cf91cf Bootloader installation for ipod and sansa: override the scanning with the device pointed to by the mountpoint. This allows selecting the correct player if two of the same brand are connected (FS#10096).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20832 a1c6a512-1295-4272-9138-f99709370657
2009-04-30 19:14:24 +00:00
Dominik Riebeling
bfce7eea5c Refactor USB ID map retrieval from device settings file and minimize duplicated code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20716 a1c6a512-1295-4272-9138-f99709370657
2009-04-16 20:49:43 +00:00
Dominik Wenger
6c73482d00 rbutil: create a RockboxInfo class so all rockbox-info.txt handling is in one place.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20429 a1c6a512-1295-4272-9138-f99709370657
2009-03-21 16:30:40 +00:00
Dominik Riebeling
fc7ba8806b Rename getMountpoints() to mountpoints() to be in line with general (and Qt) naming -- get functions don't get a get prefix. Make the function static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19426 a1c6a512-1295-4272-9138-f99709370657
2008-12-13 19:45:11 +00:00
Dominik Riebeling
e2b69ddffb rbutil fixes for OpenBSD (FS#9340 by Brian Waichunas).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19417 a1c6a512-1295-4272-9138-f99709370657
2008-12-13 10:09:13 +00:00
Dominik Riebeling
5491273f86 Don't export includes unless needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18815 a1c6a512-1295-4272-9138-f99709370657
2008-10-15 18:37:26 +00:00
Dominik Riebeling
f958717d43 Separate basic functionality from GUI parts by moving it into a separate folder. Some files still need to get cleaned up prior moving them too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18788 a1c6a512-1295-4272-9138-f99709370657
2008-10-12 19:21:58 +00:00
Renamed from rbutil/rbutilqt/autodetection.cpp (Browse further)