path: root/rbutil/ipodpatcher
AgeCommit message (Collapse)AuthorFilesLines
2021-12-24rbutil: Merge rbutil with utils folder.Dominik Riebeling15-4861/+0
rbutil uses several components from the utils folder, and can be considered part of utils too. Having it in a separate folder is an arbitrary split that doesn't help anymore these days, so merge them. This also allows other utils to easily use libtools.make without the need to navigate to a different folder. Change-Id: I3fc2f4de19e3e776553efb5dea5f779dfec0dc21
2021-04-23ipodpatcher: fix warning for apple stop sign constantJames Buren1-16/+16
Convert both instances of the apple stop sign constant to char array instances. This ensures sizeof will work as expected when applied to the constant. Change-Id: I8599f7b0a00031e944e654b12a0bc59309926807
2020-10-18rbutil: Fix ipodpatcher qmake based build on macOS.Dominik Riebeling1-0/+4
On macOS we need to pass the used frameworks, otherwise linking will fail. Change-Id: I6b19eac6a460d91b567c0eb128b776558c0a4a39
2020-10-11rbutil: Add project file for building multiple binaries.Dominik Riebeling1-0/+43
To use ipodpatcher and sansapatcher as external binaries (so we can do proper permission elevation) we need to build them using qmake as part of the main build. Add a subdirs template based project file to do that, and project files for the patchers. Move Linux appimage rules one level up, since it needs to include the patchers as well. Change-Id: I63ee59372668f4319402df65a77a6f04521d133b
2020-09-27ipodpatcher: Rework exit codes.Dominik Riebeling2-38/+57
- #define all exit codes used so they can be checked more easily. - Use exit codes to indicate more error states. Change-Id: I052962e3457a7cd5eca8b70256889d25b1b4b3aa
2020-09-27ipodpatcher: Fix some type warnings.Dominik Riebeling2-3/+3
Change-Id: I66fa99db3f4913bafa17a1e976cbfd08e26349ce
2020-06-07misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links.Solomon Peachy1-1/+1
(This migration happened over a decade ago!) Change-Id: Ib396414a16f2d763e549af49e3f3b03047dab49c
2017-06-19ipodpatcher: remove external ddk/ntddscsi.h dependencyCástor Muñoz1-1/+24
Change-Id: Ib614f4181fe29ef04fcf64f90e37edc3a064270a
2016-12-16Don't add LIBSOURCES to SOURCES.Dominik Riebeling1-1/+1
Split source files for library and stand-alone binary and use library as dependency when building the stand-alone binary. This avoids dependencies getting added multiple times. Remove outdated RBARCH handling, we always create fat binaries on OS X these days. Change-Id: Ia15a731296edcbe90869a1bf66dda2c3d6c7e317
2014-03-20OS X: change include paths to use actual paths.Dominik Riebeling1-2/+2
The old include path is actually a symlink for compatibility. Newer SDK versions remove that symlink to the include breaks. Change-Id: I74317557840f1886cebc1ce099e103dc415eabc0
2013-04-05Fix ipodpatcher on OS X.Dominik Riebeling1-1/+1
Fix a typo and update CC handling for OS X. Change-Id: Icde3cb5956ffe45ee1d610ff34957ed7b17f3f02
2013-04-05Replace the use of uname to get the build output.Dominik Riebeling1-3/+1
Using uname has a couple of problems, especially when cross compiling. Instead check the defines set by the preprocessor to figure the type of binaries it produces. This improves support for cross compiling as it allows to (1) select the correct default target and (2) makes it possible to use separate build folders for different targets. Change-Id: I69a32904dab97755034f2f0d63f8402309d479d2
2013-04-04Put resource object into object folder.Dominik Riebeling1-2/+3
Use correct path for windres output. Fixes windres running even if no changes are present. Change-Id: I2841113bab9b38f2a03ba2f168b3d8bdb5c102df
2013-04-04Remove unnecessary all target.Dominik Riebeling1-1/+0
The target all is set in libtools.make. Setting it here breaks make knowing about the correct default target when cross compiling. Change-Id: Icdd022094d28e4dcd442e48bb6acd1fd8f9a6ad6
2013-01-13Remove 64bit warning by using C99 fixed width format specifier.Dominik Riebeling1-1/+3
Change-Id: I7fecca91acb61461f6696e0bf28bdd6c1bdf6f3c
2013-01-01Provide dealloc function to ipodpatcher.Dominik Riebeling4-0/+25
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-01ipodpatcher: move sectorbuf pointer into ipod_t structure.Dominik Riebeling7-144/+196
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
2012-07-01Move check for existing bootloader to ipodpatcher.Dominik Riebeling2-21/+24
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-04-28ipodpatcher: replace ipod2c with bin2c.Dominik Riebeling2-151/+6
Change-Id: I3b339e05c9a5f4a8a60bd7581ec402b4784542e2
2012-02-05Make sure we use POSIX/C99 printf() when building for windowsRafaël Carré1-1/+1
Change-Id: I429ed40dc2b9d4fb238762113bd40936df896df0 Reviewed-on: Reviewed-by: Dominik Riebeling <>
2012-01-08MSVC compatibility adjustments.Dominik Riebeling1-0/+10
When using a global variable from a DLL with MSVC special handling is necessary to avoid going through additional redirection. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2011-12-16sansapatcher, ipodpatcher: use MinGW C99 version of stdio functions.Dominik Riebeling1-1/+1
The MinGW versions know additional format identifiers. Use those versions to avoid warnings. See also git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2011-12-16ipodpatcher: move linker only options out of CFLAGS.Dominik Riebeling1-1/+1
OS X requires some linker-only options. Remove them from CFLAGS to avoid a compiler warning. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2011-12-16ipodpatcher: convert to use libtools.make.Dominik Riebeling1-60/+23
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:// a1c6a512-1295-4272-9138-f99709370657
2011-12-08Various adjustments for MSVC.Dominik Riebeling1-1/+6
- 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:// a1c6a512-1295-4272-9138-f99709370657
2011-12-07ipodpatcher: guard platform specific files.Dominik Riebeling3-0/+10
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:// a1c6a512-1295-4272-9138-f99709370657
2011-11-06Bulk convert all DOS line endings to UNIX.Torne Wuff1-1/+1
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:// a1c6a512-1295-4272-9138-f99709370657
2011-09-26Replace bootloader object rules with suffix rules.Dominik Riebeling1-26/+10
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2011-08-25Fix off-by-one memory corruption in ipodpatcher.Thomas Jarosch1-1/+1
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:// a1c6a512-1295-4272-9138-f99709370657
2010-12-19Check if creating the dictionary worked before accessing it, not afterwards.Dominik Riebeling1-3/+2
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-09-27Remove obsolete 2nd gen nano checkFrank Gevaerts1-9/+0
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-09-01Remove Ipod Video 64MB handling.Dominik Riebeling1-6/+1
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:// a1c6a512-1295-4272-9138-f99709370657
2010-05-25Bump ipodpatcher version number in preparation for a new ipod bootloader releasebootloader_ipodpatcher_v5Torne Wuff1-1/+1
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-01-30Implement ipod_scsi_inquiry() on OS X.Dominik Riebeling2-12/+156
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:// a1c6a512-1295-4272-9138-f99709370657
2010-01-28Revert most of r24361 - it was committed in error.Dave Chapman4-4/+12
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-01-28Update the comments describing how to build ipodpatcher - no functional changes.Dave Chapman5-13/+8
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-12-09Fix ipodpatcher to work with new target names introduced in r23883Dave Chapman2-6/+6
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-12-07Rename targets to be consistent in all places. (FS #10819). Take 2.Björn Stenberg2-7/+7
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-11-29Suppress unused warnings for functions that haven't been implemented.Dominik Riebeling1-0/+8
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-11-22FS#9833: Fix Ipods being wrongly detected as MacPods on OS XDominik Riebeling1-5/+11
- 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:// a1c6a512-1295-4272-9138-f99709370657
2009-11-08Rename print_error() in ipodpatcher and sansapatcher.Dominik Riebeling4-15/+15
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:// a1c6a512-1295-4272-9138-f99709370657
2009-11-07Fix a compile warning.Dominik Riebeling1-0/+1
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-11-06Set svn:keywords property.Dominik Riebeling4-4/+4
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-10-13ipodpatcher and rbutil support for the Nano2G - FS#10609 with a few further ↵Dave Chapman4-32/+520
changes. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-09-25Query RAM size when scanning for Ipods. Return the target string for Video ↵Dominik Riebeling1-1/+11
64MB when apropriate amount of RAM is detected. Makes Rockbox Utility detect it correctly for first time installs. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-09-20Always format error message using ANSI functions to get rid of type-punning ↵Dominik Riebeling1-3/+3
when building with rbutil. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-08-07Fix SCSI inquiry on W32.Dominik Riebeling1-1/+4
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:// a1c6a512-1295-4272-9138-f99709370657
2009-08-04Add support (on Linux and win32 only - I couldn't figure this out on OS X) ↵Dave Chapman8-7/+319
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:// a1c6a512-1295-4272-9138-f99709370657
2009-08-04Make ipodpatcher compile on *BSD and recent Linux distributions - ↵Dave Chapman1-28/+32
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:// a1c6a512-1295-4272-9138-f99709370657
2009-05-01Make sure the global buffers for ipodpatcher and sansapatcher get allocated ↵Dominik Riebeling1-1/+1
and freed only once. Fixes segfaults when the bootloader install class was instanciated multiple times. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657