1 /* 2 xcdroast.h 3 */ 4 5 #include "config.h" 6 7 #define XCDROAST_VERSION VERSION 8 #define MAXLINE 1024 9 #define CDDAFRAME 2352 10 #define DATASECTORSIZE 2048 11 #define SUNDATASECTORSIZE 512 12 #define XCDRLOGO "icons/xcdrlogo.gif" 13 #define CDDBLOGO "icons/cddblogo.gif" 14 #define BURNPROOFLOGO "icons/burnproof.gif" 15 #define IMG_EXTENSIONS { ".iso", ".raw", ".img", ".wav", ".toc", NULL } 16 #define CDR_TYPES_MIN {20,21,23,27,30,34,50,63,74,-80,89,99,0} /* negative value is default */ 17 #define DVD_TYPES_MB { 2600, 3950, 4700, 5200, 9400, 0 } 18 19 #define TMP_XCDR_DIR "/tmp" 20 #define XCDROAST_INFO_EXT ".xinf" 21 #define CDDA2WAV_INFO_EXT ".inf" 22 23 /* which is base of all filetree-selectors? Set to "$HOME" to have 24 this automatically be the home-directory of the current user */ 25 #define FILETREEBASE "/" 26 /* #define FILETREEBASE "$HOME" */ 27 28 /* texts to write/blank modes */ 29 #define WRITE_MODES { \ 30 N_("Disk-At-Once (DAO)"), \ 31 N_("Track-At-Once (TAO)"), \ 32 N_("TAO with zero pregap"), \ 33 N_("RAW writing (raw96r)"), \ 34 N_("RAW writing (raw96p)"), \ 35 N_("RAW writing (raw16)"), \ 36 NULL } 37 38 #define HELP_WRITE_MODES { \ 39 N_("Write CD in Disk-At-Once mode. This will create an exact copy without any pauses between tracks. Currently doesn't work with all supported writers."), \ 40 N_("Write CD in Track-At-Once mode. Generates a 2 second pause between each track, but is supported on all writers."), \ 41 N_("Write CD in Track-At-Once mode, but eliminates the 2 second pause. So this looks very much like a DAO-CD, but only works for some TEAC/Traxdata-writers."), \ 42 N_("Write CD in RAW writing mode. It will write with 2352 byte sectors plus 96 bytes of raw P-W subchannel data resulting in a sector size of 2448 bytes. This is the preferred raw writing mode as it gives best control over the CD writing process. (For expert usage only!)"), \ 43 N_("Write CD in RAW writing mode. It will write with 2352 byte sectors plus 96 bytes of packed P-W subchannel data resulting in a sector size of 2448 bytes. This is the less preferred raw writing mode as only a few recordes support it. (For expert usage only!)"), \ 44 N_("Write CD in RAW writing mode. It will write with 2352 byte sectors plus 16 bytes of P-Q subchannel data resulting in a sector size of 2368 bytes. If a recorder does not support raw96r, this is the preferred raw writing mode. It does not allow to write CD-Text but it is the only raw writing mode in cheap CD writers. As these cheap writers in most cases do not support DAO mode. (For expert usage only!)"), \ 45 NULL } 46 47 #define BLANK_MODES { \ 48 N_("blank the entire disk"), \ 49 N_("minimally blank the entire disk (PMA, TOC, pregap)"), \ 50 N_("blank a track"), \ 51 N_("unreserve a track"), \ 52 N_("blank a track tail"), \ 53 N_("unclose last session"), \ 54 N_("blank last session"), \ 55 NULL } 56 57 #define VIEW_MODES { \ 58 N_("Small"), \ 59 N_("Normal"), \ 60 N_("Extended"), \ 61 NULL } 62 63 #define CONTEXT_MSTRMENU { \ 64 N_("Select all"), \ 65 N_("Unselect all"), \ 66 N_("Load list"), \ 67 N_("Save list"), \ 68 N_("Clear list"), \ 69 NULL } 70 71 /* icons for dialogs (borrowed from gnome) */ 72 #define ICO_ERROR "icons/dialog_error.png" 73 #define ICO_INFO "icons/dialog_information.png" 74 #define ICO_WARN "icons/dialog_warning.png" 75 #define ICO_QUEST "icons/dialog_question.png" 76 #define ICO_DEF "icons/dialog_default.png" 77 78 /* external called programms */ 79 #ifndef hpux 80 # define DF "/bin/df -k" 81 # define DF2 "/usr/bin/df -k" 82 #else 83 # define DF "/bin/df -b" 84 # define DF2 "/usr/bin/df -b" 85 #endif 86 #define UNAME "/bin/uname -a" 87 #define UNAME2 "/usr/bin/uname -a" 88 89 #define CHOWNGRPMOD_PATH "/bin:/usr/bin:/sbin:/usr/sbin" 90 #define CHOWN "chown" 91 #define CHGRP "chgrp" 92 #define CHMOD "chmod" 93 94 #define SUDO "/usr/bin/sudo" 95 96 /* HISTORIC - no longer used 97 #if defined(__FreeBSD__) 98 # define GROUPADD "/usr/sbin/pw" 99 #else 100 # define GROUPADD "/usr/sbin/groupadd" 101 #endif 102 */ 103 104 #define WAVPLAY "bin/wavplay" 105 #define RMTOOL "bin/rmtool" 106 #define VRFYTOOL "bin/vrfytool" 107 #define CDDBTOOL "bin/cddbtool" 108 #define WRAPPER "bin/xcdrwrap" 109 110 /* this paths can be specified relative to lib-dir or absolute */ 111 /* xcdroast will look for these first in $LIBDIR/ and if not found 112 then in $PREFIX (e.g. /usr/bin/cdrecord instead of 113 /usr/local/lib/xcdroast-0.98/bin/cdrecord) */ 114 115 #define CDRECORD "bin/cdrecord" 116 #define CDDA2WAV "bin/cdda2wav" 117 #define READCD "bin/readcd" 118 #define MKISOFS "bin/mkisofs" 119 120 /* MINIMUM required versions. Greater versions are now silently 121 accepted. 122 Distribution-Vendors: DO NOT TOUCH THESE! 123 IT WONT WORK WITH LOWER VERSIONS, EVEN WHEN YOU THINK IT DOES! */ 124 125 #define CDRECORD_VERSION "2.01" 126 #define CDRECORD_PRODVD_VERSION "2.01a11" 127 #define CDRECORD_VERSION_WITH_ONTHFLYAUDIO "2.01a13" 128 #define MKISOFS_VERSION "2.01" 129 #define CDDA2WAV_VERSION "2.01" 130 #define READCD_VERSION "2.01" 131 132 /* group to use for non-root-mode */ 133 /* #define NONROOTMODEGROUP "xcdwrite" - HISTORIC */ 134 135 /* demo sound */ 136 #define DSPTESTSOUND "sound/test.wav" 137 138 /* max scanned scsi devices */ 139 #define MAXDEVICES 128 140 141 /* max support for cdrecord-drivers (as in cdrecord driver=help) */ 142 #define MAXDRIVERS 64 143 144 /* max support for blank-modes (as in cdrecord blank=help) */ 145 #define MAXBLANKMODES 16 146 147 /* max support for joliet charsets */ 148 #define MAXCHARSETS 64 149 150 /* max tracks a CD can have */ 151 #define MAXTRACKS 100 152 153 /* max CDDB matches */ 154 #define MAXCDDB 100 155 156 /* max args for pipes */ 157 #define MAXPIPEARGS 1024 158 159 /* timeout in seconds for CDDB queries over network */ 160 #define NETIOTIMEOUT 10; 161 162 /* default image-file-prefix */ 163 #define IMGFILEPREFIX "track" 164 165 /* default filenames for process-output-savefiles */ 166 #define SAVEOUTCDRECORD "cdrecord.out" 167 #define SAVEREADTRACKS "readtracks.out" 168 #define SAVEVERIFYTRACKS "verifytracks.out" 169 #define SAVEMASTERTRACK "mkisofs.out" 170 #define SAVEMASTERCALC "mkisofscalc.out" 171 #define SAVEMASTERLIST "xcdrmaster.lst" 172 173 /* default paths/configfile */ 174 #define PREFIX "/usr/local" 175 #define LIBDIR "lib/xcdroast-0.98" 176 #define CONFIGDIR "~/.xcdroast" 177 #define CONFFILE "xcdr098.cfg" 178 #define LOGFILE "xcdr098.log" 179 #define ISOOPTFILE "isoopt.cfg" 180 #define ISOHEADERFILE "isoheader.cfg" 181 #define WRITEOPTFILE "writeopt.cfg" 182 #define NONROOTBAK "nonrootflags.cfg" 183 /* rootconfig is stored in $sysconfdir (/usr/local/etc by default) */ 184 #define ROOTCONFIG "xcdroast.conf" 185 186 /* font definitions */ 187 #define NORMFONT "-*-helvetica-medium-r-normal-*-*-120-*-*-p-*-*,-default-*-medium-r-*--14-*-*-*-*-*-*-*,*-medium-r-*,*" 188 #define BOLDFONT "-*-helvetica-bold-r-normal-*-*-120-*-*-p-*-*,-default-*-bold-r-*--16-*-*-*-*-*-*-*,*-bold-r-*,*" 189 #define BIGFONT "-*-helvetica-bold-r-normal-*-*-240-*-*-p-*-*,-default-*-bold-r-*--24-*-*-*-*-*-*-*,*-bold-r-*,*" 190 #define SLANTFONT "-*-helvetica-medium-o-normal-*-*-100-*-*-*-*-*-*,-default-*-medium-i-*--12-*-*-*-*-*-*-*,*-medium-i-*,*" 191 #define FIXEDFONT "-*-fixed-medium-r-normal-*-*-120-*-*-*-*-*-*,*" 192 193 /* default window sizes - usage autodetected */ 194 /* 75dpi fonts */ 195 #define XCDR_TOPLEVEL_X0 790 196 #define XCDR_TOPLEVEL_Y0 550 197 /* 100dpi fonts */ 198 #define XCDR_TOPLEVEL_X1 980 199 #define XCDR_TOPLEVEL_Y1 670 200 201 /* color definitions 202 - may not be used at all because they interfere with themes */ 203 #define TOOLTIPCOL "light yellow" 204 #define GTKLISTCOL "gray95" 205 #define SELECTEDCLISTCOL "gray70" 206 #define ENABLEDCOLOR "black" 207 #define DISABLEDCOLOR "gray40" 208 209 /* text shortcuts */ 210 #define T_XCDROAST "X-CD-Roast" 211 #define T_YES _("Yes") 212 #define T_NO _("No") 213 #define T_CANCEL _("Cancel") 214 #define T_OK _("Ok") 215 #define T_CLOSE _("Close") 216 #define T_ANYWAY _("Continue anyway") 217 218 /* predefined master iso-opitions */ 219 /* there must be the same number of TYPES as TEXTS (minus the NULL element) */ 220 #define MASTER_TEXTS { \ 221 N_("Rock Ridge + Joliet"), \ 222 N_("Rock Ridge only"), \ 223 N_("MS-DOS"), \ 224 NULL } 225 #define MASTER_TYPES { { 1,1,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }, \ 226 { 1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }, \ 227 { 0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } 228 229 #define DEF_BOOT_CATALOG "boot.catalog" 230 231 /* some defines for drag&drop */ 232 233 #define DRAG_TAR_NAME_0 "text/plain" 234 #define DRAG_TAR_INFO_0 0 235 #define DRAG_TAR_NAME_1 "text/uri-list" 236 #define DRAG_TAR_INFO_1 1 237 #define DRAG_TAR_NAME_2 "STRING" 238 #define DRAG_TAR_INFO_2 2 239 240 /* long long format */ 241 #if __x86_64 || __ppc64 || __sparc64 242 # define LL_FORMAT "ld" 243 #else 244 # define LL_FORMAT "lld" 245 #endif 246