rockbox/docs
Hairo R. Carela 48392bab94 New port: Anbernic RG Nano
A bit of context, this device is a clone of the FunKey-S with a different form factor, hardware is mostly identical, the relevant difference is it has audio out (via usb-c, adapter to 3.5mm is included), this is the reason why the FunKey-SDK is needed for bulding.

This port is based on the old SDL 1.2 code because the device doesn't have SDL2 support. Alongside what was supported in the SDL 1.2 builds this port supports battery level, charging status and backlight control.

Change-Id: I7fcb85be62748644b667c0efebabf59d6e9c5ade
2025-07-29 21:01:53 -04:00
..
logo lcd_color/cabbiev2: New iconset in multiple sizes 2011-11-26 16:01:11 +00:00
CHARGING_ALGORITHM Removed executable flag 2007-01-09 23:29:07 +00:00
COMMITTERS Add myself to docs/COMMITTERS 2017-08-23 00:32:11 +02:00
CONTRIBUTING docs: Delete some _very_ obsolete documentation 2025-04-20 16:53:57 -04:00
COPYING Removed 'howto' addition 2003-11-20 14:13:30 +00:00
COPYING-MANUAL Manual license is GFDL, add it to the docs folder. 2006-12-17 11:54:10 +00:00
CREDITS New port: Anbernic RG Nano 2025-07-29 21:01:53 -04:00
gpl-2.0.html Remove duplicated license file. 2010-09-04 18:50:12 +00:00
HISTORY Convert to UTF-8 and a few tweaks. 2008-02-07 00:56:07 +00:00
LICENSES Add helpers for converting to/from normalized (perceptual) volume 2023-01-22 15:43:00 -05:00
MAINTAINERS update MAINTAINERS 2024-08-11 17:00:55 -04:00
NODO Remove outdated NODO list from the docs folder. Replace it with a link to the wiki. 2010-05-15 21:54:24 +00:00
PLUGIN_API docs: Do a proper "merge" with the API docs 2025-04-21 15:59:00 -04:00
profontdoc.txt Make sure files which aren't windows-specific use \n line endings only 2010-06-17 16:59:51 +00:00
README docs: we use xz, not bz2, for tarballs 2024-10-13 09:33:00 -04:00
sample.colours Make sure files which aren't windows-specific use \n line endings only 2010-06-17 16:59:51 +00:00
sample.icons Add a sample.icons file, and add a few more files to the docs folder in the zips 2007-06-18 09:32:28 +00:00
UISIMULATOR docs: Delete some _very_ obsolete documentation 2025-04-20 16:53:57 -04:00
usb-api.md usb: introduce new control request API 2021-10-16 15:58:43 -04:00

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

Build Your Own Rockbox

1. Clone 'rockbox' from git (or extract a downloaded archive).

   $ git clone git://git.rockbox.org/rockbox

     or

   $ tar xJf rockbox.tar.xz

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

3. Make sure you have mips/m68k/arm-elf-gcc and siblings in the PATH. Make sure
   that you have 'perl' in your PATH too. Your gcc cross compiler needs to be
   a particular version depending on what player you are compiling for. These
   can be generated using the rockboxdev.sh script in the /tools/ folder of the
   source.

   $ which arm-elf-eabi-gcc
   $ which perl

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. Run 'make' and soon the necessary pieces from the firmware and the apps
   directories have been compiled, linked and scrambled for you.

   $ make
   $ make zip

7. unzip the rockbox.zip on your music player, reboot it and
   *smile*.

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

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

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

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