rockbox/utils/MTP/beastpatcher
Dominik Riebeling 9d242ab167 Add error messages to a few more failure cases to beastpatcher.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26978 a1c6a512-1295-4272-9138-f99709370657
2010-06-19 21:27:43 +00:00
..
vs2005 Adjust mknkboot sources path to recently changed location. 2009-11-01 10:47:58 +00:00
Makefile Revert an accidental commit that I didn't want to go in. 2009-12-04 02:54:27 +00:00
README Correct the bootloader download path. 2009-10-31 00:25:29 +00:00
README.pstdint Implement sendfirm functionality in beastpatcher. Set svn:eol-style properties. 2009-06-12 16:35:34 +00:00
TODO Initial version of a BSD-licensed beastpatcher utility for Gigabeat S installation. Currently only compiles on Linux, but Windows and OS X support are planned. 2009-02-22 13:54:46 +00:00
beastpatcher.c Add error messages to a few more failure cases to beastpatcher. 2010-06-19 21:27:43 +00:00
beastpatcher.h Add non-interactive mode to beastpatcher. 2009-09-24 17:07:08 +00:00
main.c Add non-interactive mode to beastpatcher. 2009-09-24 17:07:08 +00:00
mknkboot.c Move mknkboot.[ch] to beastpatcher folder. 2009-10-27 21:15:21 +00:00
mknkboot.h Move mknkboot.[ch] to beastpatcher folder. 2009-10-27 21:15:21 +00:00
mtp_common.h Implement sendfirm functionality in beastpatcher. Set svn:eol-style properties. 2009-06-12 16:35:34 +00:00
mtp_libmtp.c Refactor sendfirm functionality in beastpatcher and do some code police. 2009-06-13 14:03:31 +00:00
mtp_win32.c Make sure files which aren't windows-specific use \n line endings only 2010-06-17 16:59:51 +00:00
pstdint.h Implement sendfirm functionality in beastpatcher. Set svn:eol-style properties. 2009-06-12 16:35:34 +00:00

README

beastpatcher - a tool for installing the Rockbox bootloader on the Gigabeat S

Unlike most other parts of the Rockbox project, this tool is
distributed under the BSD license.  This is due to the fact that the
Windows version links with the Microsoft MTP library.



Building instructions - All OSes
--------------------------------

For all versions, you need to copy a "bootloader.bin" file (containing
the Rockbox bootloader) into this directory.

This can be built from the Rockbox source by selecting "41" and then
"B" when running tools/configure.

You need the Rockbox toolchain to build any Rockbox target binaries -
this can be downloaded and built with the tools/rockboxdev.sh script.

The latest officially released bootloader can always be downloaded from:

http://download.rockbox.org/bootloader/toshiba/gigabeat-s/



Linux
-----

The Unix versions requires libmtp, which in turn requires libusb.

beastpatcher is built to statically link to these libraries and
expects them to exist as /usr/lib/libmtp.a and /usr/lib/libusb.a
respectively.  Change the definition of LIBS in the Makefile if this
is not the case for your system.

After this, just type "make" to get a 



OS X
----

The OS X build is a universal binary statically linked with libusb and libmtp. 
It has been tested with libusb version 0.1.12 and libmtp version 1.0.1.

The following files are expected the beaspatcher source directory:

Intel:
    libusb: usb.h libusb-i386.a
    libmtp: libmtp.h libmtp-i386.a
    
PowerPC:
    libusb: usb.h libusb-ppc.a
    libmtp: libmtp.h libmtp-ppc.a

These are easily compiled from source using the standard 
'./configure && make'. Look in .libs for libusb.a and src/.libs for libmtp.a, 
and make sure to rename them to their -i386/-ppc filenames when copying into 
the beastpatcher directory.

After this, just type "make beastpatcher-mac" to get a universal binary. If you
only want a binary for a particular architecture, you can use
"make beastpatcher-i386" or "make beastpatcher-ppc" instead. In this case, you
only need the libusb and libmtp library for your desired architecture.


Windows
-------

The MTP_DLL.dll requires VC2005 to compile - see instructions in
MTP_DLL/README

To compile beastpatcher itself, you can either cross-compile from
Linux using the mingw32 package, or compile in Cygwin.  Just type
"make beastpatcher.exe" (in Linux) or "make" (in Cygwin).

To run beastpatcher.exe, you need MTP_DLL.dll in the same directory
(or the Windows DLL path).

Alternatively, beastpatcher can be built as binary that includes the
MTP functionality and thus doesn't require the MTP_DLL. Building has
the additional requirements as building the MTP_DLL. A VS2005 project
file is available.