Commit graph

74 commits

Author SHA1 Message Date
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
bf1c491c2b Move check for existing bootloader to ipodpatcher.
Bootloader handling is different on nano2g compared to the other supported Ipod
models. Since ipodpatcher handles this internally make ipodpatcher also provide
a way to check this when using from Rockbox Utility to avoid duplicating the
(already existing) checks in the latter.

Fixes wrong "bootloader already installed" message on nano2g.

Change-Id: Ibc658d775fbac7cf9a7e329d445fe97828a455d8
2012-07-01 12:34:59 +02:00
Dominik Riebeling
8a3824f36a ipodpatcher: replace ipod2c with bin2c.
Change-Id: I3b339e05c9a5f4a8a60bd7581ec402b4784542e2
2012-04-28 12:06:55 +02:00
Rafaël Carré
db3afb03a2 Make sure we use POSIX/C99 printf() when building for windows
Change-Id: I429ed40dc2b9d4fb238762113bd40936df896df0
Reviewed-on: http://gerrit.rockbox.org/85
Reviewed-by: Dominik Riebeling <Dominik.Riebeling@gmail.com>
2012-02-05 20:36:31 +01:00
Dominik Riebeling
ab49b5e77b MSVC compatibility adjustments.
When using a global variable from a DLL with MSVC special handling is necessary
to avoid going through additional redirection.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31640 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 19:51:11 +00:00
Dominik Riebeling
70837fb1ed sansapatcher, ipodpatcher: use MinGW C99 version of stdio functions.
The MinGW versions know additional format identifiers. Use those versions to
avoid warnings. See also http://article.gmane.org/gmane.comp.gnu.mingw.user/27539/

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31331 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 21:10:21 +00:00
Dominik Riebeling
6c6123143f ipodpatcher: move linker only options out of CFLAGS.
OS X requires some linker-only options. Remove them from CFLAGS to avoid a
compiler warning.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31330 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 20:25:56 +00:00
Dominik Riebeling
b056e027fc ipodpatcher: convert to use libtools.make.
This allows building libipodpatcher, which will make it possible to stop
building ipodpatcher files in Rockbox Utility directly. Move some OS X common
values to libtools.make as well (might fix building libmkamsboot on OS X).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31324 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 18:35:01 +00:00
Dominik Riebeling
5ffd2f7598 Various adjustments for MSVC.
- MSVC uses different namings in some places. Adjust the sources via the
  preprocessor if build with MSVC.
- MSVC doesn't know about __func__, use name instead.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31185 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 21:59:13 +00:00
Dominik Riebeling
e23adb5386 ipodpatcher: guard platform specific files.
Use the preprocessor to make platform specific files compile as empty files if
built for a different platform. This removes the need to distinguish in the
Makefile and simplifies creating a libipodpatcher.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31169 a1c6a512-1295-4272-9138-f99709370657
2011-12-07 20:06:48 +00:00
Torne Wuff
569285794b Bulk convert all DOS line endings to UNIX.
For the git migration we want a nice clean repository with UNIX line
endings. git does not use svn:eol-style, we just need the file contents to be
sane.

Sorry everybody. I know this messes up blame.

Scumbag *NIX developer says migrating to git will make line ending issues go
away; commits giant change to svn which changes line endings anyway. :)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30924 a1c6a512-1295-4272-9138-f99709370657
2011-11-06 22:44:25 +00:00
Dominik Riebeling
ccc5f4c4e1 Replace bootloader object rules with suffix rules.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30607 a1c6a512-1295-4272-9138-f99709370657
2011-09-26 20:00:26 +00:00
Thomas Jarosch
e412227abb Fix off-by-one memory corruption in ipodpatcher.
strcpy() will terminate the string with zero,
the boot sector/buffer has only space for eight characters.

Credit goes to "cppcheck".

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30351 a1c6a512-1295-4272-9138-f99709370657
2011-08-25 19:58:47 +00:00
Dominik Riebeling
084d57cef4 Check if creating the dictionary worked before accessing it, not afterwards.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28860 a1c6a512-1295-4272-9138-f99709370657
2010-12-19 21:21:28 +00:00
Frank Gevaerts
037c0ef23a Remove obsolete 2nd gen nano check
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28178 a1c6a512-1295-4272-9138-f99709370657
2010-09-27 19:02:34 +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
Torne Wuff
02068ed6cd Bump ipodpatcher version number in preparation for a new ipod bootloader release
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26284 a1c6a512-1295-4272-9138-f99709370657
2010-05-25 15:43:16 +00:00
Dominik Riebeling
c8d13b6a7d Implement ipod_scsi_inquiry() on OS X.
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
2010-01-30 17:02:37 +00:00
Dave Chapman
428064016b Revert most of r24361 - it was committed in error.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24362 a1c6a512-1295-4272-9138-f99709370657
2010-01-28 09:37:05 +00:00
Dave Chapman
4cb879d08d Update the comments describing how to build ipodpatcher - no functional changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24361 a1c6a512-1295-4272-9138-f99709370657
2010-01-28 09:20:32 +00:00
Dave Chapman
5742f89394 Fix ipodpatcher to work with new target names introduced in r23883
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23906 a1c6a512-1295-4272-9138-f99709370657
2009-12-09 13:13:58 +00:00
Björn Stenberg
c0740440ac Rename targets to be consistent in all places. (FS #10819). Take 2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23883 a1c6a512-1295-4272-9138-f99709370657
2009-12-07 12:19:08 +00:00
Dominik Riebeling
93eefbabe3 Suppress unused warnings for functions that haven't been implemented.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23785 a1c6a512-1295-4272-9138-f99709370657
2009-11-29 19:20:38 +00:00
Dominik Riebeling
bbfe57377c FS#9833: Fix Ipods being wrongly detected as MacPods on OS X
- 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
2009-11-22 16:35:35 +00:00
Dominik Riebeling
3e489c14c1 Rename print_error() in ipodpatcher and sansapatcher.
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
2009-11-08 13:38:10 +00:00
Dominik Riebeling
8e47406b76 Fix a compile warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23558 a1c6a512-1295-4272-9138-f99709370657
2009-11-07 20:03:36 +00:00
Dominik Riebeling
7e0fe361d7 Set svn:keywords property.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23545 a1c6a512-1295-4272-9138-f99709370657
2009-11-06 23:20:51 +00:00
Dave Chapman
8e95cc4329 ipodpatcher and rbutil support for the Nano2G - FS#10609 with a few further changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23142 a1c6a512-1295-4272-9138-f99709370657
2009-10-13 08:02:59 +00:00
Dominik Riebeling
4e4510ee91 Query RAM size when scanning for Ipods. Return the target string for Video 64MB when apropriate amount of RAM is detected. Makes Rockbox Utility detect it correctly for first time installs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22829 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 08:39:08 +00:00
Dominik Riebeling
8b32a2d473 Always format error message using ANSI functions to get rid of type-punning when building with rbutil.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22759 a1c6a512-1295-4272-9138-f99709370657
2009-09-20 17:03:58 +00:00
Dominik Riebeling
059255705b Fix SCSI inquiry on W32.
W32 returns additional bytes containing garbage on pages returning the maximum amount (i.e. 255) of bytes. Ignoring those bytes makes the output being correct. Someone needs to find out why those additional bytes are indicated at all.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22199 a1c6a512-1295-4272-9138-f99709370657
2009-08-07 22:58:20 +00:00
Dave Chapman
1eca02d863 Add support (on Linux and win32 only - I couldn't figure this out on OS X) for reading the XML device information from ipods. This information includes the RAM size, which is potentially useful for rbutil to distinguish between the two ipod video builds. This is implemented as both a new --dump-xml option (to dump the entire XML to a file) and a new 'ramsize' field in struct ipod_t.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22165 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 20:32:30 +00:00
Dave Chapman
71f0814e52 Make ipodpatcher compile on *BSD and recent Linux distributions - htole16/htole32 are standard BSD functions, and they now also appear in glibc 2.9 or later on Linux. As the functions are so simple, we just rename to avoid a clash instead of attempting to use the library versions on some platforms. Same as fix provided in FS#10428 by Alyssa Milburn.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22164 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 20:03:17 +00:00
Dominik Riebeling
b22516f995 Make sure the global buffers for ipodpatcher and sansapatcher get allocated and freed only once. Fixes segfaults when the bootloader install class was instanciated multiple times.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20835 a1c6a512-1295-4272-9138-f99709370657
2009-05-01 21:35:06 +00:00
Nils Wallménius
bea3abb5c3 Bump ipodpatcher version string
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18763 a1c6a512-1295-4272-9138-f99709370657
2008-10-10 16:55:45 +00:00
Bertrik Sikken
0d760c156f Apply FS#9337 - Header file in SRC in rbutil/ipodpatcher. The parttypes.h header file apparently breaks compilation on some systems and is already #included in ipodpatcher.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18364 a1c6a512-1295-4272-9138-f99709370657
2008-08-30 09:49:00 +00:00
Dominik Riebeling
08574c43d3 When scanning for Ipod / Sansa close the disc handle of every tried disc, not only for successful checks. Fixes "no Sansa found" issues with rbutil on w32 after autodetection was used.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17893 a1c6a512-1295-4272-9138-f99709370657
2008-06-30 19:01:51 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Dominik Riebeling
d131a31266 Rename variables sectorbuf and verbose to avoid clashes in rbutil. Cleanup exports a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17730 a1c6a512-1295-4272-9138-f99709370657
2008-06-17 17:52:13 +00:00
Dominik Riebeling
3f65a7051f Move C linkage binding for c++ to exporting header files instead of includes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17609 a1c6a512-1295-4272-9138-f99709370657
2008-05-22 17:51:35 +00:00
Nicolas Pennequin
367aec35d7 Fix a couple quirks from the previous commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17370 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:49:31 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Dominik Riebeling
194b2ca887 Check for permission denied error when trying to access the player and inform the user that raw disc access permissions are required.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17351 a1c6a512-1295-4272-9138-f99709370657
2008-05-04 11:59:04 +00:00
Barry Wardell
386f77b052 Make sansapatcher and ipodpatcher compile on OS X 10.5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16804 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 19:50:41 +00:00
Dominik Riebeling
919caf0208 allow building ipodpatcher / sansapatcher with MinGW.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16003 a1c6a512-1295-4272-9138-f99709370657
2008-01-06 11:55:55 +00:00
Magnus Holmgren
8a7c0eee8a Hopefully fix Ipod bootloader installation on Windows with RbUtilQt, without breaking ipodpatcher. I don't have any Ipod to test with, but the change is easy to revert.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15498 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 19:28:14 +00:00
Jens Arnold
2a6125946d Forgot to adapate 'make clean'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14797 a1c6a512-1295-4272-9138-f99709370657
2007-09-21 06:52:45 +00:00
Jens Arnold
4ce9368058 Add a manifest to ipodpatcher.exe in order to make it request administrative rights on windows vista. This will cause a separate cmd window to pop up. The proper solution will be to implement a check for administrative rights in the executable, and tell the user to start from an elevated command prompt if not. This solution will still need a (changed) manifest.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14796 a1c6a512-1295-4272-9138-f99709370657
2007-09-21 06:24:17 +00:00
Dave Chapman
36427dde3f Bump version to 2.0 ready for release
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14744 a1c6a512-1295-4272-9138-f99709370657
2007-09-18 19:24:08 +00:00
Dave Chapman
6e7971553e Add functions to read and write the AUPD (flash update) image. "--read-aupd aupd.bin" will read (and decrypt) the AUPD image, and "--write-aupd aupd.bin" will write (and encrypt) an image. Also fix a bug in the "diskmove" function which corrupted the AUPD image when a bootloader was installed. So in order to manipulate the aupd image, you need to restore a clean firmware partition, and install the bootloader with this version of ipodpatcher. Decryption functions based on the description and sample code at http://ipodlinux.org/Flash_Decryption
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14644 a1c6a512-1295-4272-9138-f99709370657
2007-09-08 23:27:49 +00:00