summaryrefslogtreecommitdiffstats
path: root/firmware/export/rbpaths.h
blob: 458a070f92298cd21e5f5d0936d4e5ad52c51a07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
/***************************************************************************
 *             __________               __   ___.
 *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
 *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
 *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
 *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
 *                     \/            \/     \/    \/            \/
 * $Id$
 *
 * Copyright (C) 2010 Thomas Martitz
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
 * KIND, either express or implied.
 *
 ****************************************************************************/

#ifndef __PATHS_H__
#define __PATHS_H__

#include <stdbool.h>
#include "autoconf.h"
#include "string-extra.h"


/* name of directory where configuration, fonts and other data
 * files are stored */
#ifdef __PCTOOL__
#undef WPS_DIR
#else

/* ROCKBOX_DIR is now defined in autoconf.h for flexible build types */
#ifndef ROCKBOX_DIR
#error ROCKBOX_DIR not defined (should be in autoconf.h)
#endif
#define ROCKBOX_DIR_LEN (sizeof(ROCKBOX_DIR)-1)
#endif /* def __PCTOOL__ */

#if !defined(APPLICATION) || defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || \
    defined(DX50) || defined(DX90) || defined(SONY_NWZ_LINUX) || \
    defined(AGPTEK_ROCKER) || defined(XDUOO_X3II) || defined(XDUOO_X20)

#if defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1)
#define HOME_DIR "/mnt/media0"
#elif defined(SONY_NWZ_LINUX)
#define HOME_DIR "/contents"
#elif defined(DX50) || defined(DX90)
/* Where to put save files like recordings, playlists, screen dumps ...*/
#define HOME_DIR "/mnt/sdcard"
#elif defined(AGPTEK_ROCKER) || defined(XDUOO_X3II) || defined(XDUOO_X20)
#define HOME_DIR "/mnt/sd_0"
#else
#define HOME_DIR "/"
#endif

/* make sure both are the same for native builds */
#undef ROCKBOX_LIBRARY_PATH
#define ROCKBOX_LIBRARY_PATH ROCKBOX_DIR

#define PLUGIN_DIR          ROCKBOX_DIR "/rocks"
#define CODECS_DIR          ROCKBOX_DIR "/codecs"

#define RB_ROOT_VOL_HIDDEN(v)   (IF_MV_VOL(v) == 0)
#define RB_ROOT_CONTENTS_DIR    "/" IF_MV("<0>")

#else /* APPLICATION */

#define HOME_DIR "<HOME>" /* replaced at runtime */

#define PLUGIN_DIR          ROCKBOX_LIBRARY_PATH "/rockbox/rocks"
#if (CONFIG_PLATFORM & PLATFORM_ANDROID)
#define CODECS_DIR          ROCKBOX_BINARY_PATH
#else
#define CODECS_DIR          ROCKBOX_LIBRARY_PATH "/rockbox/codecs"
#endif

#endif /* !APPLICATION || SAMSUNG_YPR0 */

#define HOME_DIR_LEN (sizeof(HOME_DIR)-1)

#define REC_BASE_DIR        HOME_DIR
#define PLAYLIST_CATALOG_DEFAULT_DIR HOME_DIR "/Playlists"

#define LANG_DIR            ROCKBOX_DIR "/langs"

#define PLUGIN_GAMES_DIR    PLUGIN_DIR "/games"
#define PLUGIN_APPS_DIR     PLUGIN_DIR "/apps"
#define PLUGIN_DEMOS_DIR    PLUGIN_DIR "/demos"
#define VIEWERS_DIR         PLUGIN_DIR "/viewers"

#if defined(APPLICATION) && !(defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || \
    defined(DX50) || defined(DX90) || defined(SONY_NWZ_LINUX) || defined(AGPTEK_ROCKER) || defined(XDUOO_X3II) || defined(XDUOO_X20))
#define PLUGIN_DATA_DIR          ROCKBOX_DIR "/rocks.data"
#define PLUGIN_GAMES_DATA_DIR    PLUGIN_DATA_DIR
#define PLUGIN_APPS_DATA_DIR     PLUGIN_DATA_DIR
#define PLUGIN_DEMOS_DATA_DIR    PLUGIN_DATA_DIR
#define VIEWERS_DATA_DIR         PLUGIN_DATA_DIR
#else
#define PLUGIN_DATA_DIR          PLUGIN_DIR
#define PLUGIN_GAMES_DATA_DIR    PLUGIN_DIR "/games"
#define PLUGIN_APPS_DATA_DIR     PLUGIN_DIR "/apps"
#define PLUGIN_DEMOS_DATA_DIR    PLUGIN_DIR "/demos"
#define VIEWERS_DATA_DIR         PLUGIN_DIR "/viewers"
#endif

#define WPS_DIR             ROCKBOX_DIR "/wps"
#define SBS_DIR             WPS_DIR
#define THEME_DIR           ROCKBOX_DIR "/themes"
#define FONT_DIR            ROCKBOX_DIR "/fonts"
#define ICON_DIR            ROCKBOX_DIR "/icons"

#define BACKDROP_DIR        ROCKBOX_DIR "/backdrops"
#define EQS_DIR             ROCKBOX_DIR "/eqs"

/* need to fix this once the application gets record/radio abilities */
#define RECPRESETS_DIR      ROCKBOX_DIR "/recpresets"
#define FMPRESET_PATH       ROCKBOX_DIR "/fmpresets"

#define DIRCACHE_FILE       ROCKBOX_DIR "/dircache.dat"
#define CODEPAGE_DIR        ROCKBOX_DIR "/codepages"

#define VIEWERS_CONFIG      ROCKBOX_DIR "/viewers.config"
#define CONFIGFILE          ROCKBOX_DIR "/config.cfg"
#define FIXEDSETTINGSFILE   ROCKBOX_DIR "/fixed.cfg"

#define PLAYLIST_CONTROL_FILE   ROCKBOX_DIR "/.playlist_control"
#define NVRAM_FILE              ROCKBOX_DIR "/nvram.bin"
#define GLYPH_CACHE_FILE        ROCKBOX_DIR "/.glyphcache"

#endif /* __PATHS_H__ */