summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rbutil/e200rpatcher/Makefile9
-rw-r--r--rbutil/e200rpatcher/README48
2 files changed, 53 insertions, 4 deletions
diff --git a/rbutil/e200rpatcher/Makefile b/rbutil/e200rpatcher/Makefile
index 243b2e6c09..788d78841f 100644
--- a/rbutil/e200rpatcher/Makefile
+++ b/rbutil/e200rpatcher/Makefile
@@ -26,12 +26,13 @@ e200rpatcher.exe: e200rpatcher.c bootimg.c
e200rpatcher-mac: e200rpatcher-i386 e200rpatcher-ppc
lipo -create e200rpatcher-ppc e200rpatcher-i386 -output e200rpatcher-mac
-e200rpatcher-i386: e200rpatcher.c bootimg.c
- gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -o bin/i386/program -arch i386 $(CFLAGS) $(LIBS) -o e200rpatcher-i386 e200rpatcher.c bootimg.c
+
+e200rpatcher-i386: e200rpatcher.c bootimg.c usb.h libusb-i386.a
+ gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -framework iokit -framework coreservices -arch i386 $(CFLAGS) -o e200rpatcher-i386 e200rpatcher.c bootimg.c -I. libusb-i386.a
strip e200rpatcher-i386
-e200rpatcher-ppc: e200rpatcher.c bootimg.c
- gcc -arch ppc $(CFLAGS) $(LIBS) -o e200rpatcher-ppc e200rpatcher.c bootimg.c
+e200rpatcher-ppc: e200rpatcher.c bootimg.c usb.h libusb-ppc.a
+ gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -framework iokit -framework coreservices -arch ppc $(CFLAGS) -o e200rpatcher-ppc e200rpatcher.c bootimg.c -I. libusb-ppc.a
strip e200rpatcher-ppc
bin2c: ../sansapatcher/bin2c.c
diff --git a/rbutil/e200rpatcher/README b/rbutil/e200rpatcher/README
new file mode 100644
index 0000000000..1942b3aa7a
--- /dev/null
+++ b/rbutil/e200rpatcher/README
@@ -0,0 +1,48 @@
+INTRODUCTION
+
+e200rpatcher is a tool for uploading and executing an application to
+an E200R in manufacturing mode. It is intended to be used to upload
+the patching application to allow Rockbox installs.
+
+e200rpatcher requires libusb (v0.1.2 has been tested successfully) for
+cross-platform USB access. No-one has yet successfully installed
+e200rpatcher on Windows, but it works on Linux and Mac OS X (and
+should be fine on other Unix-like systems that libusb supports).
+
+GENERAL BUILD INSTRUCTIONS
+
+A pre-requisite for compiling e200rpatcher is a file called
+"bootloader.bin" - this is the output of running an "I" (installer)
+build for the E200R target.
+
+In the Rockbox source directory, do:
+
+mkdir build-e200rbootbin
+cd build-e200rbootbin
+../tools/configure
+[Select E200R, then I for installer]
+make
+
+This should give you a bootloader/bootloader/bin file which you should
+copy to the e200rpatcher source directory.
+
+BUILDING ON LINUX
+
+The Makefile expects libusb (and the headers) to be installed on your
+system and will link dynamically. Just type "make".
+
+BUILDING ON A MAC
+
+To build the mac version (target e200rpatcher-mac in the Makefile)
+requires three files from libusb to be copied to the current
+directory:
+
+usb.h (copied from your libusb build directory)
+libusb-i386.a (copied and renamed from .libs/libusb.a in an i386 build)
+libusb-ppc.a (copied and renamed from .libs/libusb.a in a PPC build)
+
+To build the required libusb.a files, just run ./configure && make for
+libusb. If anyone knows how to cross-compile a static libusb.a please
+make the information known - this is currently done by compiling
+natively on the appropriate hardware.
+