annotate src/xs_config.h @ 871:d183ac29b879

Add ROM image path configuration.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 09 Nov 2012 04:24:48 +0200
parents 29f3c3f29c0d
children cd9f482f063f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents: 487
diff changeset
1 #ifndef XS_CONFIG_H
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents: 487
diff changeset
2 #define XS_CONFIG_H
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
3
214
575686094eb1 Portability fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 202
diff changeset
4 #include "xmms-sid.h"
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
5 #include "xs_curve.h"
214
575686094eb1 Portability fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 202
diff changeset
6
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7 #ifdef __cplusplus
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
8 extern "C" {
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
9 #endif
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
10
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
11
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
12 /* Configuration structure
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
13 */
75
653c9b0d1320 SIDPlay2 support "works" now. Borked problems with threads.
Matti Hamalainen <ccr@tnsp.org>
parents: 73
diff changeset
14 enum XS_EMUENGINE {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
15 XS_ENG_SIDPLAY1 = 1,
835
d508c7c4bc69 Add libSIDPlay2-FP backend interface module.
Matti Hamalainen <ccr@tnsp.org>
parents: 773
diff changeset
16 XS_ENG_SIDPLAY2,
839
29f3c3f29c0d Finalize libSIDPlay2 vs FP configuration stuff.
Matti Hamalainen <ccr@tnsp.org>
parents: 835
diff changeset
17 XS_ENG_SIDPLAYFP
72
e3b205a6bc7e Lots re-arranging and new code for upcoming modularization.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
18 };
e3b205a6bc7e Lots re-arranging and new code for upcoming modularization.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
19
e3b205a6bc7e Lots re-arranging and new code for upcoming modularization.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
20
78
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
21 enum XS_BUILDER {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
22 XS_BLD_RESID = 1,
773
45108b3d88db Add resid-fp and resid backend to sidplay2fp support.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
23 XS_BLD_HARDSID,
45108b3d88db Add resid-fp and resid backend to sidplay2fp support.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
24 XS_BLD_RESID_FP
78
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
25 };
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
26
75
653c9b0d1320 SIDPlay2 support "works" now. Borked problems with threads.
Matti Hamalainen <ccr@tnsp.org>
parents: 73
diff changeset
27 enum XS_RESOLUTION {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
28 XS_RES_8BIT = 8,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
29 XS_RES_16BIT = 16
40
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
30 };
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
31
75
653c9b0d1320 SIDPlay2 support "works" now. Borked problems with threads.
Matti Hamalainen <ccr@tnsp.org>
parents: 73
diff changeset
32 enum XS_CHANNELS {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
33 XS_CHN_MONO = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
34 XS_CHN_STEREO = 2,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
35 XS_CHN_AUTOPAN = 3
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
36 };
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
37
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
38
40
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
39 enum XS_CLOCK {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
40 XS_CLOCK_PAL = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
41 XS_CLOCK_NTSC,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
42 XS_CLOCK_VBI,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
43 XS_CLOCK_CIA,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
44 XS_CLOCK_ANY
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
45 };
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
46
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
47
40
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
48 enum XS_MPU {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
49 XS_MPU_BANK_SWITCHING = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
50 XS_MPU_TRANSPARENT_ROM,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
51 XS_MPU_PLAYSID_ENVIRONMENT,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
52 XS_MPU_REAL
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
53 };
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
54
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
55
78
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
56 enum XS_SSC {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
57 XS_SSC_NONE = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
58 XS_SSC_POPUP,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
59 XS_SSC_PATCH,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
60 XS_SSC_SEEK
78
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
61 };
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
62
ab522ab65c85 Various fixes and improvements
Matti Hamalainen <ccr@tnsp.org>
parents: 75
diff changeset
63
202
fe684a2ccdc7 Reworking code.
Matti Hamalainen <ccr@tnsp.org>
parents: 200
diff changeset
64 enum XS_SIDMODEL {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
65 XS_SIDMODEL_UNKNOWN = 0,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
66 XS_SIDMODEL_6581,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
67 XS_SIDMODEL_8580,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
68 XS_SIDMODEL_ANY
202
fe684a2ccdc7 Reworking code.
Matti Hamalainen <ccr@tnsp.org>
parents: 200
diff changeset
69 };
fe684a2ccdc7 Reworking code.
Matti Hamalainen <ccr@tnsp.org>
parents: 200
diff changeset
70
fe684a2ccdc7 Reworking code.
Matti Hamalainen <ccr@tnsp.org>
parents: 200
diff changeset
71
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
72 typedef struct {
713
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
73 gchar *name;
702
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
74 gint type;
719
cab9d2b182e8 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 713
diff changeset
75
722
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
76 /* Filter type 0 for SIDPlay 1 */
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
77 gfloat fs, fm, ft;
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
78
719
cab9d2b182e8 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 713
diff changeset
79 /* Filter type 1-2 points */
702
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
80 xs_int_point_t points[XS_SIDPLAY2_NFPOINTS];
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
81 gint npoints;
713
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
82
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
83 /* Distortion patch tunables */
719
cab9d2b182e8 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 713
diff changeset
84 gfloat rate, point, voice_nonlinearity,
cab9d2b182e8 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 713
diff changeset
85 cf_treshold;
713
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
86
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
87 /* Filter Type 3 tunables */
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
88 gfloat baseresistance, offset, steepness,
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
89 minimumfetresistance;
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
90
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
91 /* Filter Type 4 tunables */
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
92 gfloat k, b;
722
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
93 } xs_sid_filter_t;
713
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
94
06db79680afe Added new variables for distortion tunables and made few changes to SID1
Matti Hamalainen <ccr@tnsp.org>
parents: 702
diff changeset
95
702
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
96 extern struct xs_cfg_t {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
97 /* General audio settings */
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
98 gint audioBitsPerSample;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
99 gint audioChannels;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
100 gint audioFrequency;
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
101
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
102 /* Emulation settings */
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
103 gboolean mos8580; /* TRUE = 8580, FALSE = 6581 */
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
104 gboolean forceModel;
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
105 gint memoryMode; /* See XS_MPU-constants */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
106 gint clockSpeed; /* PAL (50Hz) or NTSC (60Hz) */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
107 gboolean forceSpeed; /* TRUE = force to given clockspeed */
75
653c9b0d1320 SIDPlay2 support "works" now. Borked problems with threads.
Matti Hamalainen <ccr@tnsp.org>
parents: 73
diff changeset
108
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
109 gint playerEngine; /* Selected player engine */
190
e036ad3350d6 Cleanup
Matti Hamalainen <ccr@tnsp.org>
parents: 172
diff changeset
110
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
111 gboolean emulateFilters;
722
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
112 xs_sid_filter_t sid1Filter; /* Current SIDPlay1 filter */
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
113
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
114 gint sid2OptLevel; /* SIDPlay2 emulation optimization */
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
115 gint sid2Builder; /* SIDPlay2 "builder" aka SID-emu */
722
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
116 xs_sid_filter_t sid2Filter; /* Current SIDPlay2 filter */
5923dfff1fac Unify xs_sid*_filter_t into one.
Matti Hamalainen <ccr@tnsp.org>
parents: 719
diff changeset
117 xs_sid_filter_t **sid2FilterPresets;
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
118 gint sid2NFilterPresets;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
119
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
120
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
121 /* Playing settings */
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
122 gboolean playMaxTimeEnable,
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
123 playMaxTimeUnknown; /* Use max-time only when song-length is unknown */
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
124 gint playMaxTime; /* MAX playtime in seconds */
169
676ec1a1ab93 Minimum playtime option
Matti Hamalainen <ccr@tnsp.org>
parents: 161
diff changeset
125
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
126 gboolean playMinTimeEnable;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
127 gint playMinTime; /* MIN playtime in seconds */
169
676ec1a1ab93 Minimum playtime option
Matti Hamalainen <ccr@tnsp.org>
parents: 161
diff changeset
128
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
129 gboolean songlenDBEnable;
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
130 gchar *songlenDBPath; /* Path to Songlengths.txt */
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
131
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
132
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
133 /* Miscellaneous settings */
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
134 gboolean stilDBEnable;
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
135 gchar *stilDBPath; /* Path to STIL.txt */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
136 gchar *hvscPath; /* Path-prefix for HVSC */
40
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
137
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
138 gint subsongControl;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
139 gboolean detectMagic;
40
1788f4ce6a44 Numerous changes towards 0.8
Matti Hamalainen <ccr@tnsp.org>
parents: 24
diff changeset
140
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
141 gboolean titleOverride; /* TRUE if XMMS titles are overriden */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
142 gchar *titleFormat;
72
e3b205a6bc7e Lots re-arranging and new code for upcoming modularization.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
143
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
144 gboolean subAutoEnable,
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
145 subAutoMinOnly;
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
146 gint subAutoMinTime;
871
d183ac29b879 Add ROM image path configuration.
Matti Hamalainen <ccr@tnsp.org>
parents: 839
diff changeset
147
d183ac29b879 Add ROM image path configuration.
Matti Hamalainen <ccr@tnsp.org>
parents: 839
diff changeset
148 gchar *romPath;
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
149 } xs_cfg;
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
150
228
a9a5924eb10c Have and use a mutex for xs_cfg configuration structure.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
151 XS_MUTEX_H(xs_cfg);
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
152
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
153
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
154 /* Configuration-file
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
155 */
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
156 enum {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
157 CTYPE_INT = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
158 CTYPE_FLOAT,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
159 CTYPE_STR,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
160 CTYPE_BOOL
57
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
161 };
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
162
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
163 enum {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
164 WTYPE_BGROUP = 1,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
165 WTYPE_SPIN,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
166 WTYPE_SCALE,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
167 WTYPE_BUTTON,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
168 WTYPE_TEXT,
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
169 WTYPE_COMBO
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
170 };
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
171
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
172
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
173 typedef struct {
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
174 gint itemType; /* Type of item (CTYPE_*) */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
175 void *itemData; /* Pointer to variable */
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
176 gchar *itemName; /* Name of configuration item */
702
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
177 } xs_cfg_item_t;
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
178
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
179
57
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
180 typedef struct {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
181 gint widType;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
182 gint itemType;
685
7bc76d9fa6cd More indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
183 gchar *widName;
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
184 void *itemData;
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
185 gint itemSet;
702
b5b6b13a6d85 Renamed some types.
Matti Hamalainen <ccr@tnsp.org>
parents: 685
diff changeset
186 } xs_wid_item_t;
57
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
187
85811bcd049e Improved, re-written configuration code and lots of minor fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 50
diff changeset
188
548
ba80c052e425 Configuration widget naming cleanups and GUI-related improvements;
Matti Hamalainen <ccr@tnsp.org>
parents: 526
diff changeset
189 /* Functions
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
190 */
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
191 void xs_init_configuration(void);
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
192 void xs_configure(void);
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
193 void xs_read_configuration(void);
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
194 gint xs_write_configuration(void);
20
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
195
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
196 #ifdef __cplusplus
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
197 }
5caef90c4ffd Added paski
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
198 #endif
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 548
diff changeset
199 #endif /* XS_CONFIG_H */