Rockbox
Find a file
2006-12-17 00:32:54 +00:00
apps Commit the kinds of changes that queue_send is mean for. 2006-12-16 20:19:58 +00:00
bootloader Changes to ipod bootloader to bring in line with the capabilities of ipodpatcher: Detect if the bootloader has been installed without the Apple firmware; load the Apple firmware from an apple_os.ipod file on the FAT32 partition. Also change to use hold switch to decide when to boot into the Apple firmware (turning hold on whilst booting will start the Apple firmware). Plus a cosmetic change to white text on a black background. 2006-12-17 00:32:54 +00:00
CVSROOT rbutil 2006-12-11 22:37:04 +00:00
docs Sector-size detection on Posix platforms - tested on Linux and Mac OS X. Based on patch #6433 by Bryan Childs. 2006-12-13 20:26:44 +00:00
firmware Commit the kinds of changes that queue_send is mean for. 2006-12-16 20:19:58 +00:00
flash Bootbox now needs target includes. 2006-11-27 02:34:22 +00:00
fonts some minor changes and add support for greek 2006-09-01 13:50:13 +00:00
gdb Adapted more Makefiles to the more efficient info printing. 2006-10-30 01:40:20 +00:00
manual Fix to make the gigabeat manual build properly. 2006-12-16 21:02:04 +00:00
rbutil Fix typo 2006-12-14 15:51:24 +00:00
songdbj javazoom converter, not the tritonus one.. 2005-07-11 15:43:44 +00:00
tools Default to 512-byte sectors on POSIX platforms - this allows testing of ipodpatcher with a file instead of a real device 2006-12-16 13:49:14 +00:00
uisimulator Add queue_send synchronous message sending. Right now only for SWCODEC. Actual usage to be added to playback and recording shortly in upcoming commits. 2006-12-16 18:35:12 +00:00
wps Last part of iCatcher and UniCatcher updates... add Sansa versions 2006-12-08 17:55:56 +00:00
www the showlog script 2006-10-29 09:28:51 +00:00

               __________               __   ___.
     Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
     Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
     Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
     Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
                       \/            \/     \/    \/            \/

Build Your Own Rockbox

1. Check out 'rockbox' from CVS (or extract a downloaded archive). You
   want to check out 'rockbox-devel' instead if you want the simulator
   code too (for trying out things on host before making target tests).

   (For more information about the simulator, read UISIMULATOR.)

   $ cvs -d:pserver:anonymous@www.rockbox.org:/cvsroot/rockbox login 
   $ cvs -z3 -d:pserver:anonymous@www.rockbox.org:/cvsroot/rockbox co rockbox

     or

   $ tar xzf rockbox.tar.gz

2. Create a build directory, preferably in the same directory as the firmware/
   and apps/ directories. This is where all generated files will be written.

   $ cd rockbox
   $ mkdir build
   $ cd build

4. In your build directory, run the 'tools/configure' script and enter what
   target you want to build for and if you want a debug version or not (and a
   few more questions). It'll prompt you. The debug version is for making a
   gdb version out of it. It is only useful if you run gdb towards your target
   Archos.

   $ ../tools/configure

5. *ploink*. Now you have got a Makefile generated for you.

6. Make sure you have sh-elf-gcc and siblings in the PATH. Make sure that you
   have 'perl' in your PATH too.

   $ which sh-elf-gcc
   $ which perl

7. Run 'make' and soon the necessary pieces from the firmware and the apps
   directories have been compiled, linked and scrambled for you.

   $ make

8. Copy the archos.mod or ajbrec.ajz file to your archos, reboot it and
   *smile*.  Recent Rockbox versions need no reboots, just PLAY a new rockbox
   version and that'll be loaded and replace the currently running version.

   $ mount /dev/sda1 /mnt/archos
   $ cp ajbrec.ajz /mnt/archos
   $ umount /mnt/archos

Whenever the tools/configure script gets updated, you can make your makefile
updated too by running 'tools/configure update'.

If you want to build for more than one target, just create several build
directories and create a setup for each target:

   $ mkdir build-fmrecorder
   $ cd build-fmrecorder
   $ ../tools/configure

   $ mkdir build-player
   $ cd build-player
   $ ../tools/configure

Questions anyone? Ask on the mailing list. We'll be happy to help you!