]> git.pld-linux.org Git - packages/cdrkit.git/blob - cdrkit-1.1.11-paranoiacdio.patch
debian patch to fix build with gcc 10
[packages/cdrkit.git] / cdrkit-1.1.11-paranoiacdio.patch
1 diff -up cdiopara/icedax/global.h.wrk cdiopara/icedax/global.h
2 diff -up cdiopara/icedax/icedax.c.wrk cdiopara/icedax/icedax.c
3 --- cdiopara/icedax/icedax.c.wrk        2013-05-14 14:53:18.446879592 +0200
4 +++ cdiopara/icedax/icedax.c    2013-05-20 14:38:29.724047315 +0200
5 @@ -1149,15 +1149,15 @@ static void paranoia_reset()
6         para_stat->skips = 0;
7  }
8  
9 -static void paranoia_callback(long inpos, int function);
10 +static void paranoia_callback(long inpos, paranoia_cb_mode_t function);
11  
12 -static void paranoia_callback(long inpos, int function)
13 +static void paranoia_callback(long inpos, paranoia_cb_mode_t function)
14  {
15         struct timeval thistime;
16         long    test;
17  
18         switch (function) {
19 -               case    -2:
20 +/*             case    -2:
21                         para_stat->v_sector = inpos / CD_FRAMEWORDS;
22                         return;
23                 case    -1:
24 @@ -1165,7 +1165,7 @@ static void paranoia_callback(long inpos
25                         para_stat->heartbeat = '*';
26                         para_stat->slevel = 0;
27                         para_stat->v_sector = inpos / CD_FRAMEWORDS;
28 -               break;
29 +               break;*/
30                 case    PARANOIA_CB_VERIFY:
31                         if (para_stat->stimeout >= 30) {
32                                 if (para_stat->curoverlap > CD_FRAMEWORDS) {
33 @@ -1232,6 +1232,12 @@ static void paranoia_callback(long inpos
34                         para_stat->slevel = 5;
35                         para_stat->fixup_dupeds++;
36                 break;
37 +
38 +               case PARANOIA_CB_REPAIR:
39 +               case PARANOIA_CB_BACKOFF:
40 +               default:
41 +                       fprintf(stderr, "ERROR: Unknown function requested from paranoia_callback. REPORT THIS AS A BUG!/n");
42 +               break;
43         }
44  
45         gettimeofday(&thistime, NULL);
46 @@ -2895,7 +2901,7 @@ Rate   Divider      Rate   Divider
47                 long paranoia_mode;
48                 cdrom_drive *tmpdrive;
49                 usal_close(get_scsi_p());
50 -
51 +//             global.cdp = paranoia_init(get_scsi_p()/*, global.nsectors*/);
52                 tmpdrive = cdda_identify(global.dev_name, 0, NULL);
53                 if (!tmpdrive)
54                 {
55 @@ -2906,7 +2912,7 @@ Rate   Divider      Rate   Divider
56                 if(global.nsectors)
57                 {
58                   tmpdrive->nsectors = global.nsectors;
59 -                 tmpdrive->bigbuff = global.nsectors * CD_FRAMESIZE_RAW;
60 +//               tmpdrive->bigbuff = global.nsectors * CD_FRAMESIZE_RAW;
61                 }
62                 if (cdda_open(tmpdrive) != 0)
63                 {
64 diff -up cdiopara/icedax/icedax.h.wrk cdiopara/icedax/icedax.h
65 --- cdiopara/icedax/icedax.h.wrk        2013-05-14 14:35:09.646871797 +0200
66 +++ cdiopara/icedax/icedax.h    2013-05-14 14:35:55.114209747 +0200
67 @@ -71,7 +71,8 @@ unsigned int get_current_track(void);
68  #define CD_XA_SYNC_HEAD   (CD_SYNC_SIZE+CD_XA_HEAD)/* sync bytes + header of XA frame */
69  
70  #define CD_FRAMESIZE      2048 /* bytes per frame, "cooked" mode */
71 -#define CD_FRAMESIZE_RAW  2352 /* bytes per frame, "raw" mode */
72 +//defined in libcdio:
73 +//#define CD_FRAMESIZE_RAW  2352 /* bytes per frame, "raw" mode */
74  /* most drives don't deliver everything: */
75  #define CD_FRAMESIZE_RAW1 (CD_FRAMESIZE_RAW-CD_SYNC_SIZE) /* 2340 */
76  #define CD_FRAMESIZE_RAW0 (CD_FRAMESIZE_RAW-CD_SYNC_SIZE-CD_HEAD_SIZE) /* 2336 */
77 diff -up cdiopara/icedax/interface.c.wrk cdiopara/icedax/interface.c
78 --- cdiopara/icedax/interface.c.wrk     2013-05-20 14:54:28.400943735 +0200
79 +++ cdiopara/icedax/interface.c 2013-06-25 17:31:18.912450933 +0200
80 @@ -75,15 +75,15 @@
81  
82  #include "mytype.h"
83  #include "byteorder.h"
84 -#include "interface.h"
85  #include "icedax.h"
86  #include "semshm.h"
87  #include "setuid.h"
88 +#include "global.h"
89  #include "ringbuff.h"
90  #include "toc.h"
91 -#include "global.h"
92  #include "ioctl.h"
93  #include "exitcodes.h"
94 +#include "interface.h"
95  #include "scsi_cmds.h"
96  
97  #include <utypes.h>
98 diff -up cdiopara/icedax/interface.h.wrk cdiopara/icedax/interface.h
99 --- cdiopara/icedax/interface.h.wrk     2013-05-22 15:24:17.117837738 +0200
100 +++ cdiopara/icedax/interface.h 2013-06-25 17:23:38.155611522 +0200
101 @@ -26,7 +26,11 @@
102  #define CD_FRAMESIZE_RAW 2352
103  #endif
104  
105 +#ifndef _CDDA_INTERFACE_H_
106 +//#ifndef CD_FRAMESAMPLES
107  #define CD_FRAMESAMPLES (CD_FRAMESIZE_RAW / 4)
108 +//#endif
109 +#endif
110  
111  extern unsigned interface;
112  
113 diff -up cdiopara/icedax/ioctl.c.wrk cdiopara/icedax/ioctl.c
114 --- cdiopara/icedax/ioctl.c.wrk 2013-06-25 17:35:30.494695270 +0200
115 +++ cdiopara/icedax/ioctl.c     2013-06-25 17:36:21.377147425 +0200
116 @@ -55,11 +55,11 @@
117  
118  #include "mytype.h"
119  #include "byteorder.h"
120 +#include "global.h"
121  #include "interface.h"
122  #include "toc.h"
123  #include "icedax.h"
124  #include "ioctl.h"
125 -#include "global.h"
126  #include "exitcodes.h"
127  
128  #include <utypes.h>
129 diff -up cdiopara/icedax/resample.c.wrk cdiopara/icedax/resample.c
130 --- cdiopara/icedax/resample.c.wrk      2013-06-25 17:38:40.413456990 +0200
131 +++ cdiopara/icedax/resample.c  2013-06-25 17:39:00.557653547 +0200
132 @@ -42,6 +42,7 @@
133  
134  #include "mytype.h"
135  #include "icedax.h"
136 +#include "global.h"
137  #include "interface.h"
138  #include "byteorder.h"
139  #include "ringbuff.h"
140 @@ -49,7 +50,6 @@
141  #include "toc.h"
142  #include "sndfile.h"
143  #include "sndconfig.h"
144 -#include "global.h"
145  #include "exitcodes.h"
146  
147  
148 diff -up cdiopara/icedax/scsi_cmds.c.wrk cdiopara/icedax/scsi_cmds.c
149 --- cdiopara/icedax/scsi_cmds.c.wrk     2013-06-25 17:40:24.592486996 +0200
150 +++ cdiopara/icedax/scsi_cmds.c 2013-06-25 17:40:42.189663871 +0200
151 @@ -40,9 +40,9 @@
152  
153  #include "mytype.h"
154  #include "icedax.h"
155 +#include "global.h"
156  #include "interface.h"
157  #include "byteorder.h"
158 -#include "global.h"
159  #include "wodim.h"
160  #include "toc.h"
161  #include "scsi_cmds.h"
162 diff -up cdiopara/icedax/semshm.c.wrk cdiopara/icedax/semshm.c
163 --- cdiopara/icedax/semshm.c.wrk        2013-06-25 17:59:53.181820740 +0200
164 +++ cdiopara/icedax/semshm.c    2013-06-25 18:00:35.372272020 +0200
165 @@ -90,9 +90,9 @@
166  #endif
167  
168  #include "mytype.h"
169 +#include "global.h"
170  #include "interface.h"
171  #include "ringbuff.h"
172 -#include "global.h"
173  #include "exitcodes.h"
174  #include "semshm.h"
175  
176 diff -up cdiopara/icedax/toc.c.wrk cdiopara/icedax/toc.c
177 --- cdiopara/icedax/toc.c.wrk   2013-06-25 18:11:05.910961694 +0200
178 +++ cdiopara/icedax/toc.c       2013-06-25 18:32:39.559603392 +0200
179 @@ -58,9 +58,9 @@
180  
181  #include "mytype.h"
182  #include "byteorder.h"
183 +#include "global.h"
184  #include "interface.h"
185  #include "icedax.h"
186 -#include "global.h"
187  #include "sha.h"
188  #include "base64.h"
189  #include "toc.h"
190 @@ -379,7 +379,7 @@ static void emit_cddb_form(char *fname_b
191  static void emit_cdindex_form(char *fname_baseval);
192  #endif
193  
194 -typedef struct TOC_t { /* structure of table of contents (cdrom) */
195 +typedef struct icedax_TOC_t {  /* structure of table of contents (cdrom) */
196         unsigned char reserved1;
197         unsigned char bFlags;
198         unsigned char bTrack;
199 @@ -390,7 +390,7 @@ typedef struct TOC_t {      /* structure of t
200         int frms;
201         unsigned char ISRC[16];
202         int     SCMS;
203 -} TOC_t;
204 +} icedax_TOC_t;
205  
206  /* Flags contains two fields:
207      bits 7-4 (ADR)
208 @@ -430,7 +430,7 @@ struct iterator {
209         int index;
210         int startindex;
211         void        (*reset)(struct iterator *this);
212 -       struct TOC_t *(*getNextTrack)(struct iterator *this);
213 +       struct icedax_TOC_t *(*getNextTrack)(struct iterator *this);
214         int         (*hasNextTrack)(struct iterator *this);
215  };
216  
217 @@ -516,7 +516,7 @@ unsigned FixupTOC(unsigned no_tracks)
218                     InitIterator(&i, 1);
219  
220             while (i.hasNextTrack(&i)) {
221 -                   struct TOC_t *p = i.getNextTrack(&i);
222 +                   struct icedax_TOC_t *p = i.getNextTrack(&i);
223                     if (IS__AUDIO(p)) count_audio_tracks++;
224             }
225  
226 @@ -731,7 +731,7 @@ static void emit_cddb_form(char *fname_b
227    fprintf( cddb_form, "# Track frame offsets:\n#\n");
228  
229    while (i.hasNextTrack(&i)) {
230 -         struct TOC_t *p = i.getNextTrack(&i);
231 +         struct icedax_TOC_t *p = i.getNextTrack(&i);
232           if (GETTRACK(p) == CDROM_LEADOUT) break;
233           fprintf( cddb_form,
234                    "# %lu\n", 150 + Get_AudioStartSector(GETTRACK(p)));
235 @@ -763,7 +763,7 @@ static void emit_cddb_form(char *fname_b
236  
237    i.reset(&i);
238    while (i.hasNextTrack(&i)) {
239 -         struct TOC_t *p = i.getNextTrack(&i);
240 +         struct icedax_TOC_t *p = i.getNextTrack(&i);
241           int ii;
242  
243           ii = GETTRACK(p);
244 @@ -786,7 +786,7 @@ static void emit_cddb_form(char *fname_b
245  
246    i.reset(&i);
247    while (i.hasNextTrack(&i)) {
248 -         struct TOC_t *p = i.getNextTrack(&i);
249 +         struct icedax_TOC_t *p = i.getNextTrack(&i);
250           int ii;
251  
252           ii = GETTRACK(p);
253 @@ -1493,7 +1493,7 @@ static int IsSingleArtist(void)
254         InitIterator(&i, 1);
255  
256         while (i.hasNextTrack(&i)) {
257 -               struct TOC_t *p = i.getNextTrack(&i);
258 +               struct icedax_TOC_t *p = i.getNextTrack(&i);
259                 int ii;
260  
261                 if (IS__DATA(p) || GETTRACK(p) == CDROM_LEADOUT) continue;
262 @@ -1679,7 +1679,7 @@ static void emit_cdindex_form(char *fnam
263          global.creator ? ascii2html(global.creator) : "");
264  
265      while (i.hasNextTrack(&i)) {
266 -           struct TOC_t *p = i.getNextTrack(&i);
267 +           struct icedax_TOC_t *p = i.getNextTrack(&i);
268             int ii = GETTRACK(p);
269  
270             if (ii == CDROM_LEADOUT) break;
271 @@ -1701,7 +1701,7 @@ static void emit_cdindex_form(char *fnam
272      fprintf( cdindex_form, "   <MultipleArtistCD>\n");
273  
274      while (i.hasNextTrack(&i)) {
275 -           struct TOC_t *p = i.getNextTrack(&i);
276 +           struct icedax_TOC_t *p = i.getNextTrack(&i);
277             int ii = GETTRACK(p);
278  
279             if (ii == CDROM_LEADOUT) break;
280 @@ -1940,9 +1940,9 @@ static void DisplayToc_with_gui(unsigned
281  
282         if ((global.verbose & (SHOW_TOC | SHOW_STARTPOSITIONS | SHOW_SUMMARY | SHOW_TITLES)) != 0
283             && i.hasNextTrack(&i)) {
284 -               TOC_t *o = i.getNextTrack(&i);
285 +               icedax_TOC_t *o = i.getNextTrack(&i);
286                 while (i.hasNextTrack(&i)) {
287 -                       TOC_t *p = i.getNextTrack(&i);
288 +                       icedax_TOC_t *p = i.getNextTrack(&i);
289                         int from;
290                         from = GETTRACK(o);
291  
292 @@ -2070,9 +2070,9 @@ static void DisplayToc_no_gui(unsigned l
293         count_audio_trks = 0;
294  
295         if (i.hasNextTrack(&i)) {
296 -               TOC_t *o = i.getNextTrack(&i);
297 +               icedax_TOC_t *o = i.getNextTrack(&i);
298                 while (i.hasNextTrack(&i)) {
299 -                       TOC_t *p = i.getNextTrack(&i);
300 +                       icedax_TOC_t *p = i.getNextTrack(&i);
301                         int from;
302                         from = GETTRACK(o);
303  
304 @@ -2129,10 +2129,10 @@ static void DisplayToc_no_gui(unsigned l
305         i.reset(&i);
306         if ((global.verbose & SHOW_TOC) != 0 &&
307                 i.hasNextTrack(&i)) {
308 -               TOC_t *o = i.getNextTrack(&i);
309 +               icedax_TOC_t *o = i.getNextTrack(&i);
310  
311                 for (; i.hasNextTrack(&i);) {
312 -                       TOC_t *p = i.getNextTrack(&i);
313 +                       icedax_TOC_t *p = i.getNextTrack(&i);
314  
315                         if ( GETTRACK(o) <= MAXTRK ) {
316                                 unsigned char brace1, brace2;
317 @@ -2187,9 +2187,9 @@ static void DisplayToc_no_gui(unsigned l
318                 ii = 0;
319                 i.reset(&i);
320                 if (i.hasNextTrack(&i)) {
321 -                       TOC_t *o = i.getNextTrack(&i);
322 +                       icedax_TOC_t *o = i.getNextTrack(&i);
323                         for ( ; i.hasNextTrack(&i);) {
324 -                               TOC_t *p = i.getNextTrack(&i);
325 +                               icedax_TOC_t *p = i.getNextTrack(&i);
326                                 fprintf ( stderr,
327                                           " %2u.(%8u)",
328                                           GETTRACK(o),
329 @@ -2246,7 +2246,7 @@ static void DisplayToc_no_gui(unsigned l
330  
331                 i.reset(&i);
332                 for ( ; i.hasNextTrack(&i);) {
333 -                       TOC_t *p = i.getNextTrack(&i);
334 +                       icedax_TOC_t *p = i.getNextTrack(&i);
335                         int jj = GETTRACK(p);
336  
337                         if ( global.tracktitle[jj] != NULL ) {
338 @@ -2258,7 +2258,7 @@ static void DisplayToc_no_gui(unsigned l
339                 
340                 i.reset(&i);
341                 for ( ; i.hasNextTrack(&i); ) {
342 -                       TOC_t *p = i.getNextTrack(&i);
343 +                       icedax_TOC_t *p = i.getNextTrack(&i);
344                         int jj;
345  
346                         if (IS__DATA(p))
347 @@ -2718,7 +2718,7 @@ void Read_MCN_ISRC(void)
348                 InitIterator(&i, 1);
349  
350                 while (i.hasNextTrack(&i)) {
351 -                       struct TOC_t *p = i.getNextTrack(&i);
352 +                       struct icedax_TOC_t *p = i.getNextTrack(&i);
353                         unsigned ii = GETTRACK(p);
354                         
355                         if (ii == CDROM_LEADOUT) break;
356 @@ -3153,7 +3153,7 @@ unsigned ScanIndices(unsigned track, uns
357  
358  
359    while (i.hasNextTrack(&i)) {
360 -         struct TOC_t *p = i.getNextTrack(&i);
361 +         struct icedax_TOC_t *p = i.getNextTrack(&i);
362           unsigned ii = GETTRACK(p);
363  
364           if ( ii < starttrack || IS__DATA(p) )
365 @@ -3320,7 +3320,7 @@ unsigned char *Get_MCN(void)
366  }
367  
368  
369 -static TOC_t g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
370 +static icedax_TOC_t g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
371  
372  /*#define IS_AUDIO(i) (!(g_toc[i].bFlags & 0x40))*/
373  
374 @@ -3395,10 +3395,10 @@ static int patch_cd_extra(unsigned track
375  
376  static int restrict_tracks_illleadout(void)
377  {
378 -       struct TOC_t *o = &g_toc[cdtracks+1];
379 +       struct icedax_TOC_t *o = &g_toc[cdtracks+1];
380         int i;
381         for (i = cdtracks; i >= 0; i--) {
382 -               struct TOC_t *p = &g_toc[i];
383 +               struct icedax_TOC_t *p = &g_toc[i];
384                 if (GETSTART(o) > GETSTART(p)) break;
385         }
386         patch_cd_extra(i+1, GETSTART(o));
387 @@ -3521,7 +3521,7 @@ static void it_reset(struct iterator *th
388  
389  
390  static int it_hasNextTrack(struct iterator *this);
391 -static struct TOC_t *it_getNextTrack(struct iterator *this);
392 +static struct icedax_TOC_t *it_getNextTrack(struct iterator *this);
393  
394  static int it_hasNextTrack(struct iterator *this)
395  {
396 @@ -3530,7 +3530,7 @@ static int it_hasNextTrack(struct iterat
397  
398  
399  
400 -static struct TOC_t *it_getNextTrack(struct iterator *this)
401 +static struct icedax_TOC_t *it_getNextTrack(struct iterator *this)
402  {
403         /* if ( (*this->hasNextTrack)(this) == 0 ) return NULL; */
404         if ( this->index > (int)cdtracks+1 ) return NULL;
405 @@ -3581,7 +3581,7 @@ long Get_AudioStartSector(unsigned long
406         if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
407  
408         while (i.hasNextTrack(&i)) {
409 -               TOC_t *p = i.getNextTrack(&i);
410 +               icedax_TOC_t *p = i.getNextTrack(&i);
411  
412                 if (GETTRACK(p) == p_track) {
413                         if (IS__DATA(p)) {
414 @@ -3611,7 +3611,7 @@ long Get_StartSector(unsigned long p_tra
415         if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
416  
417         while (i.hasNextTrack(&i)) {
418 -               TOC_t *p = i.getNextTrack(&i);
419 +               icedax_TOC_t *p = i.getNextTrack(&i);
420  
421                 if (GETTRACK(p) == p_track) {
422                         return GETSTART(p);
423 @@ -3635,7 +3635,7 @@ long Get_EndSector(unsigned long p_track
424         if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
425  
426         while (i.hasNextTrack(&i)) {
427 -               TOC_t *p = i.getNextTrack(&i);
428 +               icedax_TOC_t *p = i.getNextTrack(&i);
429                 if (GETTRACK(p) == p_track) {
430                         p = i.getNextTrack(&i);
431                         if (p == NULL) {
432 @@ -3667,7 +3667,7 @@ long FirstAudioTrack(void)
433         else i.reset(&i);
434  
435         while (i.hasNextTrack(&i)) {
436 -               TOC_t *p = i.getNextTrack(&i);
437 +               icedax_TOC_t *p = i.getNextTrack(&i);
438                 unsigned ii = GETTRACK(p);
439  
440                 if (ii == CDROM_LEADOUT) break;
441 @@ -3685,7 +3685,7 @@ long FirstDataTrack(void)
442         else i.reset(&i);
443  
444         while (i.hasNextTrack(&i)) {
445 -               TOC_t *p = i.getNextTrack(&i);
446 +               icedax_TOC_t *p = i.getNextTrack(&i);
447                 if (IS__DATA(p)) {
448                         return GETTRACK(p);
449                 }
450 @@ -3706,7 +3706,7 @@ long LastAudioTrack(void)
451         else i.reset(&i);
452  
453         while (i.hasNextTrack(&i)) {
454 -               TOC_t *p = i.getNextTrack(&i);
455 +               icedax_TOC_t *p = i.getNextTrack(&i);
456                 if (IS__AUDIO(p) && (GETTRACK(p) != CDROM_LEADOUT)) {
457                         j = GETTRACK(p);
458                 }
459 @@ -3728,7 +3728,7 @@ long Get_LastSectorOnCd(unsigned long p_
460         if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
461  
462         while (i.hasNextTrack(&i)) {
463 -               TOC_t *p = i.getNextTrack(&i);
464 +               icedax_TOC_t *p = i.getNextTrack(&i);
465  
466                 if (GETTRACK(p) < p_track)
467                         continue;
468 @@ -3747,9 +3747,9 @@ int Get_Track(unsigned long sector)
469         else i.reset(&i);
470  
471         if (i.hasNextTrack(&i)) {
472 -               TOC_t *o = i.getNextTrack(&i);
473 +               icedax_TOC_t *o = i.getNextTrack(&i);
474                 while (i.hasNextTrack(&i)) {
475 -                       TOC_t *p = i.getNextTrack(&i);
476 +                       icedax_TOC_t *p = i.getNextTrack(&i);
477                         if ((GETSTART(o) <= sector) && (GETSTART(p) > sector)) {
478                                 if (IS__DATA(o)) {
479                                         return -1;
480 @@ -3770,7 +3770,7 @@ int CheckTrackrange(unsigned long from,
481         else i.reset(&i);
482  
483         while (i.hasNextTrack(&i)) {
484 -               TOC_t *p = i.getNextTrack(&i);
485 +               icedax_TOC_t *p = i.getNextTrack(&i);
486  
487                 if (GETTRACK(p) < from)
488                         continue;
489 diff -up cdiopara/icedax/toc.h.wrk cdiopara/icedax/toc.h
490 --- cdiopara/icedax/toc.h.wrk   2013-05-14 14:41:35.646726988 +0200
491 +++ cdiopara/icedax/toc.h       2013-05-14 14:42:06.556954562 +0200
492 @@ -12,7 +12,8 @@
493  
494  /* @(#)toc.h   1.9 06/02/19 Copyright 1998,1999 Heiko Eissfeldt, Copyright 2006 J. Schilling */
495  
496 -#define        MAXTRK  100     /* maximum of audio tracks (without a hidden track) */
497 +//defined in libcdio:
498 +//#define      MAXTRK  100     /* maximum of audio tracks (without a hidden track) */
499  
500  extern unsigned cdtracks;
501  extern int     have_multisession;
502 diff -up cdiopara/readom/readom.c.wrk cdiopara/readom/readom.c
503 --- cdiopara/readom/readom.c.wrk        2013-06-25 16:13:03.587078284 +0200
504 +++ cdiopara/readom/readom.c    2013-06-25 16:13:27.466480361 +0200
505 @@ -1146,7 +1146,7 @@ fread_2448_16(SCSI *usalp, rparm_t *rp,
506  {
507  
508         if (rp->ismmc) {
509 -               track_t trackdesc;
510 +               wodim_track_t trackdesc;
511                 int     ret;
512                 int     i;
513                 char    *p;
514 diff -up cdiopara/wodim/auinfo.c.wrk cdiopara/wodim/auinfo.c
515 --- cdiopara/wodim/auinfo.c.wrk 2013-06-25 16:40:14.572918883 +0200
516 +++ cdiopara/wodim/auinfo.c     2013-06-25 16:40:45.335248444 +0200
517 @@ -46,16 +46,16 @@
518  extern int     debug;
519  extern int     xdebug;
520  
521 -BOOL                   auinfosize(char *name, track_t *trackp);
522 -void                   auinfo(char *name, int track, track_t *trackp);
523 -textptr_t      *gettextptr(int track, track_t *trackp);
524 +BOOL                   auinfosize(char *name, wodim_track_t *trackp);
525 +void                   auinfo(char *name, int track, wodim_track_t *trackp);
526 +textptr_t      *gettextptr(int track, wodim_track_t *trackp);
527  static char *savestr(char *name);
528  static char *readtag(char *name);
529  static char *readtstr(char *name);
530 -void                   setmcn(char *mcn, track_t *trackp);
531 +void                   setmcn(char *mcn, wodim_track_t *trackp);
532  static void    isrc_illchar(char *isrc, int c);
533 -void                   setisrc(char *isrc, track_t *trackp);
534 -void                   setindex(char *tindex, track_t *trackp);
535 +void                   setisrc(char *isrc, wodim_track_t *trackp);
536 +void                   setindex(char *tindex, wodim_track_t *trackp);
537  
538  #ifdef XXX
539  int 
540 @@ -68,7 +68,7 @@ main(int argc, char *argv[])
541  #endif
542  
543  BOOL 
544 -auinfosize(char *name, track_t *trackp)
545 +auinfosize(char *name, wodim_track_t *trackp)
546  {
547         const   char    *p;
548         const   char    *tlp;
549 @@ -145,11 +145,11 @@ auinfosize(char *name, track_t *trackp)
550  }
551  
552  void 
553 -auinfo(char *name, int track, track_t *trackp)
554 +auinfo(char *name, int track, wodim_track_t *trackp)
555  {
556         char    infname[1024];
557         char    *p;
558 -       track_t *tp = &trackp[track];
559 +       wodim_track_t   *tp = &trackp[track];
560         textptr_t *txp;
561         long    l;
562         long    tno = -1;
563 @@ -303,7 +303,7 @@ auinfo(char *name, int track, track_t *t
564  }
565  
566  textptr_t *
567 -gettextptr(int track, track_t *trackp)
568 +gettextptr(int track, wodim_track_t *trackp)
569  {
570         register textptr_t *txp;
571  
572 @@ -366,7 +366,7 @@ readtstr(char *name)
573   * Media catalog number is a 13 digit number.
574   */
575  void 
576 -setmcn(char *mcn, track_t *trackp)
577 +setmcn(char *mcn, wodim_track_t *trackp)
578  {
579         register char   *p;
580  
581 @@ -404,7 +404,7 @@ isrc_illchar(char *isrc, int c)
582   *     CC-OOO-YY-SSSSS
583   */
584  void 
585 -setisrc(char *isrc, track_t *trackp)
586 +setisrc(char *isrc, wodim_track_t *trackp)
587  {
588         char    ibuf[13];
589         char    *ip;
590 @@ -482,7 +482,7 @@ illchar:
591  }
592  
593  void 
594 -setindex(char *tindex, track_t *trackp)
595 +setindex(char *tindex, wodim_track_t *trackp)
596  {
597         char    *p;
598         int     i;
599 diff -up cdiopara/wodim/cd_misc.c.wrk cdiopara/wodim/cd_misc.c
600 --- cdiopara/wodim/cd_misc.c.wrk        2013-06-25 16:52:56.893056513 +0200
601 +++ cdiopara/wodim/cd_misc.c    2013-06-25 16:54:56.960519199 +0200
602 @@ -42,8 +42,8 @@
603  int    from_bcd(int b);
604  int    to_bcd(int i);
605  long   msf_to_lba(int m, int s, int f, BOOL force_positive);
606 -BOOL   lba_to_msf(long lba, msf_t *mp);
607 -void   sec_to_msf(long sec, msf_t *mp);
608 +BOOL   lba_to_msf(long lba, wodim_msf_t *mp);
609 +void   sec_to_msf(long sec, wodim_msf_t *mp);
610  void   print_min_atip(long li, long lo);
611  
612  int 
613 @@ -73,7 +73,7 @@ msf_to_lba(int m, int s, int f, BOOL for
614  }
615  
616  BOOL 
617 -lba_to_msf(long lba, msf_t *mp)
618 +lba_to_msf(long lba, wodim_msf_t *mp)
619  {
620         int     m;
621         int     s;
622 @@ -110,7 +110,7 @@ lba_to_msf(long lba, msf_t *mp)
623  }
624  
625  void 
626 -sec_to_msf(long sec, msf_t *mp)
627 +sec_to_msf(long sec, wodim_msf_t *mp)
628  {
629         int     m;
630         int     s;
631 @@ -128,7 +128,7 @@ sec_to_msf(long sec, msf_t *mp)
632  void 
633  print_min_atip(long li, long lo)
634  {
635 -       msf_t   msf;
636 +       wodim_msf_t     msf;
637  
638         if (li < 0) {
639                 lba_to_msf(li, &msf);
640 diff -up cdiopara/wodim/cdr_drv.c.wrk cdiopara/wodim/cdr_drv.c
641 --- cdiopara/wodim/cdr_drv.c.wrk        2013-06-25 16:42:28.603492864 +0200
642 +++ cdiopara/wodim/cdr_drv.c    2013-06-25 16:43:07.938976575 +0200
643 @@ -77,7 +77,7 @@ int   format_dummy(SCSI *usalp, cdr_t *, i
644  int    drive_getdisktype(SCSI *usalp, cdr_t *dp);
645  int    cmd_ill(SCSI *usalp);
646  int    cmd_dummy(SCSI *usalp, cdr_t *);
647 -int    no_sendcue(SCSI *usalp, cdr_t *, track_t *trackp);
648 +int    no_sendcue(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
649  int    buf_dummy(SCSI *usalp, long *sp, long *fp);
650  BOOL   set_cdrcmds(char *name, cdr_t **dpp);
651  cdr_t  *get_cdrcmds(SCSI *usalp);
652 @@ -165,7 +165,7 @@ cmd_dummy(SCSI *usalp, cdr_t *dp)
653  }
654  
655  int 
656 -no_sendcue(SCSI *usalp, cdr_t *dp, track_t *trackp)
657 +no_sendcue(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
658  {
659         errmsgno(EX_BAD, "SAO writing not available or not implemented for this drive.\n");
660         return (-1);
661 diff -up cdiopara/wodim/cdtext.c.wrk cdiopara/wodim/cdtext.c
662 --- cdiopara/wodim/cdtext.c.wrk 2013-06-25 16:44:38.388059921 +0200
663 +++ cdiopara/wodim/cdtext.c     2013-06-25 16:44:59.599309190 +0200
664 @@ -119,8 +119,8 @@ int textlen;
665  BOOL                   checktextfile(char *fname);
666  static void    setuptextdata(Uchar *bp, int len);
667  static BOOL    cdtext_crc_ok(struct textpack *p);
668 -void                   packtext(int tracks, track_t *trackp);
669 -static BOOL    anytext(int pack_type, int tracks, track_t *trackp);
670 +void                   packtext(int tracks, wodim_track_t *trackp);
671 +static BOOL    anytext(int pack_type, int tracks, wodim_track_t *trackp);
672  static void    fillup_pack(txtarg_t *ap);
673  static void    fillpacks(txtarg_t *ap, char *from, int len, int track_no, int pack_type);
674  int                    write_cdtext(SCSI *usalp, cdr_t *dp, long startsec);
675 @@ -295,7 +295,7 @@ static BOOL cdtext_crc_ok(struct textpac
676  }
677  
678  
679 -void packtext(int tracks, track_t *trackp)
680 +void packtext(int tracks, wodim_track_t *trackp)
681  {
682         int     type;
683         int     i;
684 @@ -373,7 +373,7 @@ void packtext(int tracks, track_t *track
685  #endif
686  }
687  
688 -static BOOL anytext(int pack_type, int tracks, track_t *trackp)
689 +static BOOL anytext(int pack_type, int tracks, wodim_track_t *trackp)
690  {
691         register int    i;
692         register char   *p;
693 diff -up cdiopara/wodim/clone.c.wrk cdiopara/wodim/clone.c
694 --- cdiopara/wodim/clone.c.wrk  2013-06-25 17:33:21.013643927 +0200
695 +++ cdiopara/wodim/clone.c      2013-06-25 17:43:07.932151568 +0200
696 @@ -52,8 +52,8 @@
697  
698  /*#define      SAO_RAW*/
699  
700 -void   clone_toc(track_t *trackp);
701 -void   clone_tracktype(track_t *trackp);
702 +void   clone_toc(wodim_track_t *trackp);
703 +void   clone_tracktype(wodim_track_t *trackp);
704  
705  extern int     lverbose;
706  extern int     xdebug;
707 @@ -72,11 +72,11 @@ static      long    loutstart;
708  /*
709   * Read Clone TOC description from full toc file.
710   */
711 -void clone_toc(track_t *trackp)
712 +void clone_toc(wodim_track_t *trackp)
713  {
714         char    filename[1024];
715 -       msf_t   m;
716 -       msf_t   mr;
717 +       wodim_msf_t     m;
718 +       wodim_msf_t     mr;
719         struct  tocheader *tp;
720         struct  ftrackdesc *fp;
721         int     f;
722 @@ -208,7 +208,7 @@ void clone_toc(track_t *trackp)
723   * Control 4 = data
724   * Control 5 = packet data
725   */
726 -void clone_tracktype(track_t *trackp)
727 +void clone_tracktype(wodim_track_t *trackp)
728  {
729         int     tracks = trackp->tracks;
730         int     sectype;
731 diff -up cdiopara/wodim/cue.c.wrk cdiopara/wodim/cue.c
732 --- cdiopara/wodim/cue.c.wrk    2013-06-25 17:44:52.030231911 +0200
733 +++ cdiopara/wodim/cue.c        2013-06-25 17:46:01.606959365 +0200
734 @@ -238,22 +238,22 @@ static keyw_t     dtypes[] = {
735  };
736  
737  
738 -int    parsecue(char *cuefname, track_t trackp[]);
739 -void   fparsecue(FILE *f, track_t trackp[]);
740 -static void    parse_mcn(track_t trackp[], state_t *sp);
741 -static void    parse_textfile(track_t trackp[], state_t *sp);
742 -static void    parse_file(track_t trackp[], state_t *sp);
743 -static void    parse_flags(track_t trackp[], state_t *sp);
744 -static void    parse_index(track_t trackp[], state_t *sp);
745 -static void    parse_isrc(track_t trackp[], state_t *sp);
746 -static void    parse_performer(track_t trackp[], state_t *sp);
747 -static void    parse_postgap(track_t trackp[], state_t *sp);
748 -static void    parse_pregap(track_t trackp[], state_t *sp);
749 -static void    parse_songwriter(track_t trackp[], state_t *sp);
750 -static void    parse_title(track_t trackp[], state_t *sp);
751 -static void    parse_track(track_t trackp[], state_t *sp);
752 +int    parsecue(char *cuefname, wodim_track_t trackp[]);
753 +void   fparsecue(FILE *f, wodim_track_t trackp[]);
754 +static void    parse_mcn(wodim_track_t trackp[], state_t *sp);
755 +static void    parse_textfile(wodim_track_t trackp[], state_t *sp);
756 +static void    parse_file(wodim_track_t trackp[], state_t *sp);
757 +static void    parse_flags(wodim_track_t trackp[], state_t *sp);
758 +static void    parse_index(wodim_track_t trackp[], state_t *sp);
759 +static void    parse_isrc(wodim_track_t trackp[], state_t *sp);
760 +static void    parse_performer(wodim_track_t trackp[], state_t *sp);
761 +static void    parse_postgap(wodim_track_t trackp[], state_t *sp);
762 +static void    parse_pregap(wodim_track_t trackp[], state_t *sp);
763 +static void    parse_songwriter(wodim_track_t trackp[], state_t *sp);
764 +static void    parse_title(wodim_track_t trackp[], state_t *sp);
765 +static void    parse_track(wodim_track_t trackp[], state_t *sp);
766  static void    parse_offset(long *lp);
767 -static void    newtrack(track_t trackp[], state_t *sp);
768 +static void    newtrack(wodim_track_t trackp[], state_t *sp);
769  
770  static keyw_t  *lookup(char *word, keyw_t table[]);
771  static void    wdebug(void);
772 @@ -286,7 +286,7 @@ int
773  main(int argc, char *argv[])
774  {
775         int     i;
776 -       track_t track[MAX_TRACK+2];     /* Max tracks + track 0 + track AA */
777 +       wodim_track_t   track[MAX_TRACK+2];     /* Max tracks + track 0 + track AA */
778  
779         save_args(argc, argv);
780  
781 @@ -304,7 +304,7 @@ extern      int     xdebug;
782  #endif
783  
784  int 
785 -parsecue(char *cuefname, track_t trackp[])
786 +parsecue(char *cuefname, wodim_track_t trackp[])
787  {
788         FILE    *f = cueopen(cuefname);
789  
790 @@ -313,7 +313,7 @@ parsecue(char *cuefname, track_t trackp[
791  }
792  
793  void 
794 -fparsecue(FILE *f, track_t trackp[])
795 +fparsecue(FILE *f, wodim_track_t trackp[])
796  {
797         char    *word;
798         struct keyw *kp;
799 @@ -402,7 +402,7 @@ fparsecue(FILE *f, track_t trackp[])
800  }
801  
802  static void 
803 -parse_mcn(track_t trackp[], state_t *sp)
804 +parse_mcn(wodim_track_t trackp[], state_t *sp)
805  {
806         char    *word;
807         textptr_t *txp;
808 @@ -419,7 +419,7 @@ parse_mcn(track_t trackp[], state_t *sp)
809  }
810  
811  static void 
812 -parse_textfile(track_t trackp[], state_t *sp)
813 +parse_textfile(wodim_track_t trackp[], state_t *sp)
814  {
815         char    *word;
816  
817 @@ -444,7 +444,7 @@ parse_textfile(track_t trackp[], state_t
818  }
819  
820  static void 
821 -parse_file(track_t trackp[], state_t *sp)
822 +parse_file(wodim_track_t trackp[], state_t *sp)
823  {
824         char    cname[1024];
825         char    newname[1024];
826 @@ -543,7 +543,7 @@ parse_file(track_t trackp[], state_t *sp
827  }
828  
829  static void 
830 -parse_flags(track_t trackp[], state_t *sp)
831 +parse_flags(wodim_track_t trackp[], state_t *sp)
832  {
833         struct keyw *kp;
834         char    *word;
835 @@ -575,7 +575,7 @@ parse_flags(track_t trackp[], state_t *s
836  }
837  
838  static void 
839 -parse_index(track_t trackp[], state_t *sp)
840 +parse_index(wodim_track_t trackp[], state_t *sp)
841  {
842         char    *word;
843         long    l;
844 @@ -634,7 +634,7 @@ parse_index(track_t trackp[], state_t *s
845  }
846  
847  static void 
848 -parse_isrc(track_t trackp[], state_t *sp)
849 +parse_isrc(wodim_track_t trackp[], state_t *sp)
850  {
851         char    *word;
852         textptr_t *txp;
853 @@ -657,7 +657,7 @@ parse_isrc(track_t trackp[], state_t *sp
854  }
855  
856  static void 
857 -parse_performer(track_t trackp[], state_t *sp)
858 +parse_performer(wodim_track_t trackp[], state_t *sp)
859  {
860         char    *word;
861         textptr_t *txp;
862 @@ -670,7 +670,7 @@ parse_performer(track_t trackp[], state_
863  }
864  
865  static void 
866 -parse_postgap(track_t trackp[], state_t *sp)
867 +parse_postgap(wodim_track_t trackp[], state_t *sp)
868  {
869         long    l;
870  
871 @@ -685,7 +685,7 @@ parse_postgap(track_t trackp[], state_t
872  }
873  
874  static void 
875 -parse_pregap(track_t trackp[], state_t *sp)
876 +parse_pregap(wodim_track_t trackp[], state_t *sp)
877  {
878         long    l;
879  
880 @@ -701,7 +701,7 @@ parse_pregap(track_t trackp[], state_t *
881  }
882  
883  static void 
884 -parse_songwriter(track_t trackp[], state_t *sp)
885 +parse_songwriter(wodim_track_t trackp[], state_t *sp)
886  {
887         char    *word;
888         textptr_t *txp;
889 @@ -714,7 +714,7 @@ parse_songwriter(track_t trackp[], state
890  }
891  
892  static void 
893 -parse_title(track_t trackp[], state_t *sp)
894 +parse_title(wodim_track_t trackp[], state_t *sp)
895  {
896         char    *word;
897         textptr_t *txp;
898 @@ -727,7 +727,7 @@ parse_title(track_t trackp[], state_t *s
899  }
900  
901  static void 
902 -parse_track(track_t trackp[], state_t *sp)
903 +parse_track(wodim_track_t trackp[], state_t *sp)
904  {
905         struct keyw *kp;
906         char    *word;
907 @@ -878,7 +878,7 @@ parse_offset(long *lp)
908  
909  /*--------------------------------------------------------------------------*/
910  static void 
911 -newtrack(track_t trackp[], state_t *sp)
912 +newtrack(wodim_track_t trackp[], state_t *sp)
913  {
914         register int    i;
915         register int    track = sp->track;
916 diff -up cdiopara/wodim/diskid.c.wrk cdiopara/wodim/diskid.c
917 --- cdiopara/wodim/diskid.c.wrk 2013-06-25 18:02:27.661472904 +0200
918 +++ cdiopara/wodim/diskid.c     2013-06-25 18:03:26.453101549 +0200
919 @@ -39,13 +39,13 @@
920  
921  #include "wodim.h"
922  
923 -void   pr_manufacturer(msf_t *mp, BOOL rw, BOOL audio);
924 -static struct disk_man *man_ptr(msf_t *mp);
925 -int    manufacturer_id(msf_t *mp);
926 -long   disk_rcap(msf_t *mp, long maxblock, BOOL rw, BOOL audio);
927 +void   pr_manufacturer(wodim_msf_t *mp, BOOL rw, BOOL audio);
928 +static struct disk_man *man_ptr(wodim_msf_t *mp);
929 +int    manufacturer_id(wodim_msf_t *mp);
930 +long   disk_rcap(wodim_msf_t *mp, long maxblock, BOOL rw, BOOL audio);
931  
932  struct disk_man {
933 -       msf_t   mi_msf;
934 +       wodim_msf_t     mi_msf;
935         char    mi_num;
936         char    *mi_name;
937  };
938 @@ -328,7 +328,7 @@ static      struct disk_man dman[] = {
939  #define        ndman   (sizeof (dman)/sizeof (dman[0]))
940  
941  static struct disk_man *
942 -man_ptr(msf_t *mp)
943 +man_ptr(wodim_msf_t *mp)
944  {
945         struct disk_man * dp;
946         int     frame;
947 @@ -363,7 +363,7 @@ man_ptr(msf_t *mp)
948         return (NULL);
949  }
950  
951 -void pr_manufacturer(msf_t *mp, BOOL rw, BOOL audio)
952 +void pr_manufacturer(wodim_msf_t *mp, BOOL rw, BOOL audio)
953  {
954         struct disk_man * dp;
955         struct disk_man xdman;
956 @@ -417,7 +417,7 @@ void pr_manufacturer(msf_t *mp, BOOL rw,
957         }
958  }
959  
960 -int manufacturer_id(msf_t *mp)
961 +int manufacturer_id(wodim_msf_t *mp)
962  {
963         struct disk_man * dp;
964  
965 @@ -428,7 +428,7 @@ int manufacturer_id(msf_t *mp)
966  }
967  
968  struct disk_rcap {
969 -       msf_t   ci_msf;                         /* Lead in start time       */
970 +       wodim_msf_t     ci_msf;                         /* Lead in start time       */
971         long    ci_cap;                         /* Lead out start time      */
972         long    ci_rcap;                        /* Abs max lead out start   */
973  };
974 @@ -505,7 +505,7 @@ static      struct disk_rcap rcap[] = {
975  };
976  
977  long 
978 -disk_rcap(msf_t *mp, long maxblock, BOOL rw, BOOL audio)
979 +disk_rcap(wodim_msf_t *mp, long maxblock, BOOL rw, BOOL audio)
980  {
981         struct disk_rcap * dp;
982  
983 diff -up cdiopara/wodim/drv_7501.c.wrk cdiopara/wodim/drv_7501.c
984 --- cdiopara/wodim/drv_7501.c.wrk       2013-06-25 18:08:14.575166824 +0200
985 +++ cdiopara/wodim/drv_7501.c   2013-06-25 18:14:44.030252075 +0200
986 @@ -225,18 +225,18 @@ static    int     cw7501_attach(SCSI *usalp, cd
987  static int     cw7501_init(SCSI *usalp, cdr_t *dp);
988  static int     cw7501_getdisktype(SCSI *usalp, cdr_t *dp);
989  static int     cw7501_speed_select(SCSI *usalp, cdr_t *dp, int *speedp);
990 -static int     cw7501_next_wr_addr(SCSI *usalp, track_t *trackp, long *ap);
991 +static int     cw7501_next_wr_addr(SCSI *usalp, wodim_track_t *trackp, long *ap);
992  static int     cw7501_write(SCSI *usalp, caddr_t bp, long sectaddr, long size, 
993                                                                          int blocks, BOOL islast);
994 -static int     cw7501_write_leadin(SCSI *usalp, cdr_t *dp, track_t *trackp);
995 -static int     cw7501_open_track(SCSI *usalp, cdr_t *dp, track_t *trackp);
996 -static int     cw7501_close_track(SCSI *usalp, cdr_t *dp, track_t *trackp);
997 -static int     cw7501_open_session(SCSI *usalp, cdr_t *dp, track_t *trackp);
998 -static int     cw7501_gen_cue(track_t *trackp, void *vcuep, BOOL needgap);
999 +static int     cw7501_write_leadin(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1000 +static int     cw7501_open_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1001 +static int     cw7501_close_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1002 +static int     cw7501_open_session(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1003 +static int     cw7501_gen_cue(wodim_track_t *trackp, void *vcuep, BOOL needgap);
1004  static void    fillcue(struct cw7501_cue *cp, int ca, int tno, int idx, 
1005 -                                                         int dataform, int scms, msf_t *mp);
1006 -static int     cw7501_send_cue(SCSI *usalp, cdr_t *dp, track_t *trackp);
1007 -static int     cw7501_fixate(SCSI *usalp, cdr_t *dp, track_t *trackp);
1008 +                                                         int dataform, int scms, wodim_msf_t *mp);
1009 +static int     cw7501_send_cue(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1010 +static int     cw7501_fixate(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1011  static int     cw7501_rezero(SCSI *usalp, int reset, int dwreset);
1012  static int     cw7501_read_trackinfo(SCSI *usalp, Uchar *bp, int count, 
1013                                                                                                  int track, int mode);
1014 @@ -461,7 +461,7 @@ cw7501_speed_select(SCSI *usalp, cdr_t *
1015  }
1016  
1017  static int 
1018 -cw7501_next_wr_addr(SCSI *usalp, track_t *trackp, long *ap)
1019 +cw7501_next_wr_addr(SCSI *usalp, wodim_track_t *trackp, long *ap)
1020  {
1021         struct cw7501_nwa       *nwa;
1022         Uchar   buf[256];
1023 @@ -520,7 +520,7 @@ cw7501_write(SCSI *usalp,
1024  }
1025  
1026  static int 
1027 -cw7501_write_leadin(SCSI *usalp, cdr_t *dp, track_t *trackp)
1028 +cw7501_write_leadin(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1029  {
1030         Uint    i;
1031         long    startsec = 0L;
1032 @@ -572,7 +572,7 @@ static Uchar        db2phys[] = {
1033  };
1034  
1035  static int 
1036 -cw7501_open_track(SCSI *usalp, cdr_t *dp, track_t *trackp)
1037 +cw7501_open_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1038  {
1039         struct  scsi_mode_page_header   *mp;
1040         Uchar                           mode[256];
1041 @@ -632,7 +632,7 @@ cw7501_open_track(SCSI *usalp, cdr_t *dp
1042  
1043  
1044  static int 
1045 -cw7501_close_track(SCSI *usalp, cdr_t *dp, track_t *trackp)
1046 +cw7501_close_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1047  {
1048         if (!is_tao(trackp) && !is_packet(trackp)) {
1049                 return (0);
1050 @@ -641,7 +641,7 @@ cw7501_close_track(SCSI *usalp, cdr_t *d
1051  }
1052  
1053  static int 
1054 -cw7501_open_session(SCSI *usalp, cdr_t *dp, track_t *trackp)
1055 +cw7501_open_session(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1056  {
1057         struct cw7501_mode_data         md;
1058         int                             count;
1059 @@ -695,7 +695,7 @@ cw7501_open_session(SCSI *usalp, cdr_t *
1060  }
1061  
1062  static int 
1063 -cw7501_fixate(SCSI *usalp, cdr_t *dp, track_t *trackp)
1064 +cw7501_fixate(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1065  {
1066         if (!is_tao(trackp) && !is_packet(trackp)) {
1067                 return (scsi_flush_cache(usalp, FALSE));
1068 @@ -711,7 +711,7 @@ cw7501_fixate(SCSI *usalp, cdr_t *dp, tr
1069  /*--------------------------------------------------------------------------*/
1070  
1071  static int 
1072 -cw7501_gen_cue(track_t *trackp, void *vcuep, BOOL needgap)
1073 +cw7501_gen_cue(wodim_track_t *trackp, void *vcuep, BOOL needgap)
1074  {
1075         int     tracks = trackp->tracks;
1076         int     i;
1077 @@ -721,7 +721,7 @@ cw7501_gen_cue(track_t *trackp, void *vc
1078         int     ncue = 0;
1079         int     icue = 0;
1080         int     pgsize;
1081 -       msf_t   m;
1082 +       wodim_msf_t     m;
1083         int     ctl;
1084         int     df;
1085         int     scms;
1086 @@ -820,7 +820,7 @@ fillcue(struct cw7501_cue *cp       /* The tar
1087          int idx                                        /* Index for this entry */, 
1088          int dataform                   /* Data format for this entry */, 
1089          int scms                                       /* Serial copy management */, 
1090 -        msf_t *mp                              /* MSF value for this entry */)
1091 +        wodim_msf_t *mp                                /* MSF value for this entry */)
1092  {
1093         cp->cs_ctladr = ca;
1094         if (tno <= 99)
1095 @@ -838,7 +838,7 @@ fillcue(struct cw7501_cue *cp       /* The tar
1096  }
1097  
1098  static int 
1099 -cw7501_send_cue(SCSI *usalp, cdr_t *dp, track_t *trackp)
1100 +cw7501_send_cue(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1101  {
1102         struct cw7501_cue *cp;
1103         int             ncue;
1104 diff -up cdiopara/wodim/drv_jvc.c.wrk cdiopara/wodim/drv_jvc.c
1105 --- cdiopara/wodim/drv_jvc.c.wrk        2013-06-25 18:17:15.654847220 +0200
1106 +++ cdiopara/wodim/drv_jvc.c    2013-06-25 18:20:04.868629843 +0200
1107 @@ -220,15 +220,15 @@ static    int     teac_attach(SCSI *usalp, cdr_
1108  static int     teac_init(SCSI *usalp, cdr_t *dp);
1109  static int     teac_getdisktype(SCSI *usalp, cdr_t *dp);
1110  static int     speed_select_teac(SCSI *usalp, cdr_t *dp, int *speedp);
1111 -static int     select_secsize_teac(SCSI *usalp, track_t *trackp);
1112 -static int     next_wr_addr_jvc(SCSI *usalp, track_t *, long *ap);
1113 +static int     select_secsize_teac(SCSI *usalp, wodim_track_t *trackp);
1114 +static int     next_wr_addr_jvc(SCSI *usalp, wodim_track_t *, long *ap);
1115  static int     write_teac_xg1(SCSI *usalp, caddr_t, long, long, int, BOOL);
1116  static int     cdr_write_teac(SCSI *usalp, caddr_t bp, long sectaddr, long size, 
1117                                                                                 int blocks, BOOL islast);
1118 -static int     open_track_jvc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1119 -static int     teac_fixation(SCSI *usalp, cdr_t *dp, track_t *trackp);
1120 -static int     close_track_teac(SCSI *usalp, cdr_t *dp, track_t *trackp);
1121 -static int     teac_open_session(SCSI *usalp, cdr_t *dp, track_t *trackp);
1122 +static int     open_track_jvc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1123 +static int     teac_fixation(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1124 +static int     close_track_teac(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1125 +static int     teac_open_session(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1126  static int     initsub_teac(SCSI *usalp, int toctype, int multi);
1127  static int     teac_doopc(SCSI *usalp);
1128  static int     teac_opc(SCSI *usalp, caddr_t, int cnt, int doopc);
1129 @@ -278,9 +278,9 @@ cdr_t       cdr_teac_cdr50 = {
1130         next_wr_addr_jvc,
1131         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1132         cdr_write_teac,
1133 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1134 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1135         no_sendcue,
1136 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1137 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1138         open_track_jvc,
1139         close_track_teac,
1140         teac_open_session,
1141 @@ -372,7 +372,7 @@ speed_select_teac(SCSI *usalp, cdr_t *dp
1142  }
1143  
1144  static int 
1145 -select_secsize_teac(SCSI *usalp, track_t *trackp)
1146 +select_secsize_teac(SCSI *usalp, wodim_track_t *trackp)
1147  {
1148         struct scsi_mode_data md;
1149         int     count = sizeof (struct scsi_mode_header) +
1150 @@ -403,7 +403,7 @@ select_secsize_teac(SCSI *usalp, track_t
1151  }
1152  
1153  static int 
1154 -next_wr_addr_jvc(SCSI *usalp, track_t *trackp, long *ap)
1155 +next_wr_addr_jvc(SCSI *usalp, wodim_track_t *trackp, long *ap)
1156  {
1157         if (trackp != 0 && trackp->track > 0) {
1158                 *ap = lba_addr;
1159 @@ -473,7 +473,7 @@ cdr_write_teac(SCSI *usalp,
1160  }
1161  
1162  static int 
1163 -open_track_jvc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1164 +open_track_jvc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1165  {
1166         int     status;
1167         long    blocks;
1168 @@ -601,7 +601,7 @@ if (!is_last(trackp) && trackp[1].pregap
1169  static char    sector[3000];
1170  
1171  static int 
1172 -close_track_teac(SCSI *usalp, cdr_t *dp, track_t *trackp)
1173 +close_track_teac(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1174  {
1175         int     ret = 0;
1176  
1177 @@ -698,7 +698,7 @@ teac_attach(SCSI *usalp, cdr_t *dp)
1178  }
1179  
1180  static int 
1181 -teac_fixation(SCSI *usalp, cdr_t *dp, track_t *trackp)
1182 +teac_fixation(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1183  {
1184         long    lba;
1185         int     status;
1186 @@ -811,7 +811,7 @@ extern      char    *buf;
1187  }
1188  
1189  static int 
1190 -teac_open_session(SCSI *usalp, cdr_t *dp, track_t *trackp)
1191 +teac_open_session(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1192  {
1193         Uint    i;
1194  
1195 diff -up cdiopara/wodim/drv_mmc.c.wrk cdiopara/wodim/drv_mmc.c
1196 --- cdiopara/wodim/drv_mmc.c.wrk        2013-06-25 18:24:35.494485316 +0200
1197 +++ cdiopara/wodim/drv_mmc.c    2013-06-25 18:25:57.345350411 +0200
1198 @@ -110,18 +110,18 @@ static    int     speed_select_mmc(SCSI *usalp,
1199  static  int   speed_select_mdvd(SCSI *usalp, cdr_t *dp, int *speedp);
1200  static int     mmc_set_speed(SCSI *usalp, int readspeed, int writespeed, 
1201                                                                           int rotctl);
1202 -static int     next_wr_addr_mmc(SCSI *usalp, track_t *trackp, long *ap);
1203 -static  int   next_wr_addr_mdvd(SCSI *usalp, track_t *trackp, long *ap);
1204 -static int     write_leadin_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1205 -static int     open_track_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1206 -static  int   open_track_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp);
1207 -static int     close_track_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1208 -static  int   close_track_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp); 
1209 -static int     open_session_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1210 -static  int   open_session_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp);
1211 +static int     next_wr_addr_mmc(SCSI *usalp, wodim_track_t *trackp, long *ap);
1212 +static  int   next_wr_addr_mdvd(SCSI *usalp, wodim_track_t *trackp, long *ap);
1213 +static int     write_leadin_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1214 +static int     open_track_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1215 +static  int   open_track_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1216 +static int     close_track_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1217 +static  int   close_track_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp); 
1218 +static int     open_session_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1219 +static  int   open_session_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1220  static int     waitfix_mmc(SCSI *usalp, int secs);
1221 -static int     fixate_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1222 -static  int   fixate_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp);
1223 +static int     fixate_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1224 +static  int   fixate_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1225  static int     blank_mmc(SCSI *usalp, cdr_t *dp, long addr, int blanktype);
1226  static int     format_mdvd(SCSI *usalp, cdr_t *dp, int formattype);
1227  static int     send_opc_mmc(SCSI *usalp, caddr_t, int cnt, int doopc);
1228 @@ -130,10 +130,10 @@ static    int     opt1_mdvd(SCSI *usalp, cdr_t
1229  static int     opt2_mmc(SCSI *usalp, cdr_t *dp);
1230  static int     scsi_sony_write(SCSI *usalp, caddr_t bp, long sectaddr, long size, 
1231                                                                                  int blocks, BOOL islast);
1232 -static int     gen_cue_mmc(track_t *trackp, void *vcuep, BOOL needgap);
1233 +static int     gen_cue_mmc(wodim_track_t *trackp, void *vcuep, BOOL needgap);
1234  static void    fillcue(struct mmc_cue *cp, int ca, int tno, int idx, int dataform,
1235 -                                                        int scms, msf_t *mp);
1236 -static int     send_cue_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp);
1237 +                                                        int scms, wodim_msf_t *mp);
1238 +static int     send_cue_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1239  static         int     stats_mmc(SCSI *usalp, cdr_t *dp);
1240  static         BOOL    mmc_isplextor(SCSI *usalp);
1241  static         BOOL    mmc_isyamaha(SCSI *usalp);
1242 @@ -251,8 +251,8 @@ cdr_t   cdr_mdvd = {
1243         next_wr_addr_mdvd,
1244         (int(*)(SCSI *, Ulong))cmd_ill,   /* reserve_track        */
1245         scsi_cdr_write,
1246 -       (int(*)__PR((track_t *, void *, BOOL)))cmd_dummy, /* gen_cue */
1247 -       (int(*)__PR((SCSI *usalp, cdr_t *, track_t *)))cmd_dummy, /* send_cue */
1248 +       (int(*)__PR((wodim_track_t *, void *, BOOL)))cmd_dummy, /* gen_cue */
1249 +       (int(*)__PR((SCSI *usalp, cdr_t *, wodim_track_t *)))cmd_dummy, /* send_cue */
1250         write_leadin_mmc,
1251         open_track_mdvd,
1252         close_track_mdvd,
1253 @@ -337,19 +337,19 @@ cdr_t     cdr_cd = {
1254         (int(*)(SCSI *, cdr_t *, int))cmd_dummy,        /* recover      */
1255         speed_select_mmc,
1256         select_secsize,
1257 -       (int(*)(SCSI *usalp, track_t *, long *))cmd_ill,        /* next_wr_addr         */
1258 +       (int(*)(SCSI *usalp, wodim_track_t *, long *))cmd_ill,  /* next_wr_addr         */
1259         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1260         scsi_cdr_write,
1261 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1262 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1263         no_sendcue,
1264 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1265 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1266         open_track_mmc,
1267         close_track_mmc,
1268 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,
1269 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,
1270         cmd_dummy,
1271         cmd_dummy,                                      /* abort        */
1272         read_session_offset,
1273 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,     /* fixation */
1274 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,       /* fixation */
1275         cmd_dummy,                                      /* stats        */
1276         blank_dummy,
1277         format_dummy,
1278 @@ -381,19 +381,19 @@ cdr_t     cdr_oldcd = {
1279         (int(*)(SCSI *, cdr_t *, int))cmd_dummy,        /* recover      */
1280         speed_select_mmc,
1281         select_secsize,
1282 -       (int(*)(SCSI *usal, track_t *, long *))cmd_ill, /* next_wr_addr         */
1283 +       (int(*)(SCSI *usal, wodim_track_t *, long *))cmd_ill,   /* next_wr_addr         */
1284         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1285         scsi_cdr_write,
1286 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1287 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1288         no_sendcue,
1289 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1290 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1291         open_track_mmc,
1292         close_track_mmc,
1293 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,
1294 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,
1295         cmd_dummy,
1296         cmd_dummy,                                      /* abort        */
1297         read_session_offset_philips,
1298 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,     /* fixation */
1299 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,       /* fixation */
1300         cmd_dummy,                                      /* stats        */
1301         blank_dummy,
1302         format_dummy,
1303 @@ -426,19 +426,19 @@ cdr_t     cdr_cd_dvd = {
1304         (int(*)(SCSI *, cdr_t *, int))cmd_dummy,        /* recover      */
1305         speed_select_mmc,
1306         select_secsize,
1307 -       (int(*)(SCSI *usalp, track_t *, long *))cmd_ill,        /* next_wr_addr         */
1308 +       (int(*)(SCSI *usalp, wodim_track_t *, long *))cmd_ill,  /* next_wr_addr         */
1309         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1310         scsi_cdr_write,
1311 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1312 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1313         no_sendcue,
1314 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1315 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1316         open_track_mmc,
1317         close_track_mmc,
1318 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,
1319 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,
1320         cmd_dummy,
1321         cmd_dummy,                                      /* abort        */
1322         read_session_offset,
1323 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy,     /* fixation */
1324 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy,       /* fixation */
1325         cmd_dummy,                                      /* stats        */
1326         blank_dummy,
1327         format_dummy,
1328 @@ -1549,7 +1549,7 @@ extern    char    *buf;
1329         dstat_t *dsp = dp->cdr_dstat;
1330         struct disk_info *dip;
1331         Uchar   mode[0x100];
1332 -       msf_t   msf;
1333 +       wodim_msf_t     msf;
1334         BOOL    did_atip = FALSE;
1335         BOOL    did_dummy = FALSE;
1336         int     rplus;
1337 @@ -2116,7 +2116,7 @@ speed_select_mdvd(SCSI *usalp, cdr_t *dp
1338  }
1339  
1340  static int 
1341 -next_wr_addr_mmc(SCSI *usalp, track_t *trackp, long *ap)
1342 +next_wr_addr_mmc(SCSI *usalp, wodim_track_t *trackp, long *ap)
1343  {
1344         struct  track_info      track_info;
1345         long    next_addr;
1346 @@ -2157,7 +2157,7 @@ next_wr_addr_mmc(SCSI *usalp, track_t *t
1347  }
1348  
1349  static int 
1350 -write_leadin_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1351 +write_leadin_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1352  {
1353         Uint    i;
1354         long    startsec = 0L;
1355 @@ -2247,7 +2247,7 @@ int       st2mode[] = {
1356  };
1357  
1358  static int 
1359 -next_wr_addr_mdvd(SCSI *usalp, track_t *trackp, long *ap)
1360 +next_wr_addr_mdvd(SCSI *usalp, wodim_track_t *trackp, long *ap)
1361  {
1362         int     track=0;
1363         struct  track_info      track_info;
1364 @@ -2287,7 +2287,7 @@ next_wr_addr_mdvd(SCSI *usalp, track_t *
1365  }
1366  
1367  static int 
1368 -open_track_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1369 +open_track_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1370  {
1371         Uchar   mode[0x100];
1372         int     len;
1373 @@ -2364,7 +2364,7 @@ open_track_mmc(SCSI *usalp, cdr_t *dp, t
1374  }
1375  
1376  static int 
1377 -open_track_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp)
1378 +open_track_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1379  {
1380         Uchar   mode[0x100];
1381         int     len;
1382 @@ -2400,7 +2400,7 @@ open_track_mdvd(SCSI *usalp, cdr_t *dp,
1383  }
1384  
1385  static int 
1386 -close_track_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1387 +close_track_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1388  {
1389         int     ret;
1390  
1391 @@ -2423,7 +2423,7 @@ close_track_mmc(SCSI *usalp, cdr_t *dp,
1392  }
1393  
1394  static int 
1395 -close_track_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp)
1396 +close_track_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1397  {
1398         int     ret;
1399         if (!is_packet(trackp))
1400 @@ -2454,7 +2454,7 @@ int       toc2sess[] = {
1401  };
1402  
1403  static int 
1404 -open_session_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1405 +open_session_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1406  {
1407         Uchar   mode[0x100];
1408         int     len;
1409 @@ -2523,7 +2523,7 @@ open_session_mmc(SCSI *usalp, cdr_t *dp,
1410  }
1411  
1412  static int 
1413 -open_session_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp)
1414 +open_session_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1415  {
1416         Uchar   mode[0x100];
1417         int     tracks = trackp->tracks;
1418 @@ -2633,7 +2633,7 @@ waitfix_mmc(SCSI *usalp, int secs)
1419  }
1420  
1421  static int 
1422 -fixate_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1423 +fixate_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1424  {
1425         int     ret = 0;
1426         int     key = 0;
1427 @@ -2738,7 +2738,7 @@ fixate_mmc(SCSI *usalp, cdr_t *dp, track
1428  }
1429  
1430  static int 
1431 -fixate_mdvd(SCSI *usalp, cdr_t *dp, track_t *trackp)
1432 +fixate_mdvd(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1433  {
1434         int ret;
1435         if (scsi_flush_cache(usalp, (dp->cdr_cmdflags&F_IMMED) != 0) < 0) {
1436 @@ -2960,7 +2960,7 @@ opt1_mmc(SCSI *usalp, cdr_t *dp)
1437                 }
1438                 dp->cdr_dstat->ds_cdrflags = oflags;
1439                 if (oflags & RF_PRATIP) {
1440 -                       msf_t   msf;
1441 +                       wodim_msf_t   msf;
1442                         lba_to_msf(dp->cdr_dstat->ds_first_leadin, &msf);
1443                         printf("New start of lead in: %ld (%02d:%02d/%02d)\n",
1444                                 (long)dp->cdr_dstat->ds_first_leadin,
1445 @@ -2998,7 +2998,7 @@ opt1_mmc(SCSI *usalp, cdr_t *dp)
1446                 else
1447                         gcode = gigarec_plextor(usalp, 0);
1448                 if (gcode != 0) {
1449 -                       msf_t   msf;
1450 +                       wodim_msf_t   msf;
1451  
1452                         dp->cdr_dstat->ds_first_leadin =
1453                                         gigarec_mult(gcode, dp->cdr_dstat->ds_first_leadin);
1454 @@ -3126,7 +3126,7 @@ opt1_mdvd(SCSI *usalp, cdr_t *dp)
1455                 }
1456                 dp->cdr_dstat->ds_cdrflags = oflags;
1457                 if (oflags & RF_PRATIP) {
1458 -                       msf_t   msf;
1459 +                       wodim_msf_t   msf;
1460                         lba_to_msf(dp->cdr_dstat->ds_first_leadin, &msf);
1461                         printf("New start of lead in: %ld (%02d:%02d/%02d)\n",
1462                                 (long)dp->cdr_dstat->ds_first_leadin,
1463 @@ -3175,7 +3175,7 @@ Uchar     db2df[] = {
1464  };
1465  
1466  static int 
1467 -gen_cue_mmc(track_t *trackp, void *vcuep, BOOL needgap)
1468 +gen_cue_mmc(wodim_track_t *trackp, void *vcuep, BOOL needgap)
1469  {
1470         int     tracks = trackp->tracks;
1471         int     i;
1472 @@ -3185,7 +3185,7 @@ gen_cue_mmc(track_t *trackp, void *vcuep
1473         int     ncue = 0;
1474         int     icue = 0;
1475         int     pgsize;
1476 -       msf_t   m;
1477 +       wodim_msf_t     m;
1478         int     ctl;
1479         int     df;
1480         int     scms;
1481 @@ -3318,7 +3318,7 @@ fillcue(struct mmc_cue *cp  /* The targe
1482          int idx             /* Index for this entry */, 
1483          int dataform        /* Data format for this entry */, 
1484          int scms            /* Serial copy management */, 
1485 -        msf_t *mp           /* MSF value for this entry */)
1486 +        wodim_msf_t *mp           /* MSF value for this entry */)
1487  {
1488         cp->cs_ctladr = ca;             /* XXX wie lead in */
1489         cp->cs_tno = tno;
1490 @@ -3331,7 +3331,7 @@ fillcue(struct mmc_cue *cp  /* The targe
1491  }
1492  
1493  static int 
1494 -send_cue_mmc(SCSI *usalp, cdr_t *dp, track_t *trackp)
1495 +send_cue_mmc(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1496  {
1497         struct mmc_cue  *cp;
1498         int             ncue;
1499 diff -up cdiopara/wodim/drv_philips.c.wrk cdiopara/wodim/drv_philips.c
1500 --- cdiopara/wodim/drv_philips.c.wrk    2013-06-25 18:34:35.454829395 +0200
1501 +++ cdiopara/wodim/drv_philips.c        2013-06-25 18:36:03.525761201 +0200
1502 @@ -67,18 +67,18 @@ static      int     philips_getdisktype(SCSI *usa
1503  static BOOL    capacity_philips(SCSI *usalp, long *lp);
1504  static int     first_writable_addr_philips(SCSI *usalp, long *, int, int, int, 
1505                                                                                                                  int);
1506 -static int     next_wr_addr_philips(SCSI *usalp, track_t *trackp, long *ap);
1507 +static int     next_wr_addr_philips(SCSI *usalp, wodim_track_t *trackp, long *ap);
1508  static int     reserve_track_philips(SCSI *usalp, unsigned long);
1509  static int     scsi_cdr_write_philips(SCSI *usalp, caddr_t bp, long sectaddr, 
1510                                                                                                   long size, int blocks, BOOL islast);
1511  static int     write_track_info_philips(SCSI *usalp, int);
1512  static int     write_track_philips(SCSI *usalp, long, int);
1513 -static int     open_track_philips(SCSI *usalp, cdr_t *dp, track_t *trackp);
1514 -static int     open_track_plasmon(SCSI *usalp, cdr_t *dp, track_t *trackp);
1515 -static int     open_track_oldphilips(SCSI *usalp, cdr_t *dp, track_t *trackp);
1516 -static int     open_track_yamaha(SCSI *usalp, cdr_t *dp, track_t *trackp);
1517 -static int     close_track_philips(SCSI *usalp, cdr_t *dp, track_t *trackp);
1518 -static int     fixation_philips(SCSI *usalp, cdr_t *dp, track_t *trackp);
1519 +static int     open_track_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1520 +static int     open_track_plasmon(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1521 +static int     open_track_oldphilips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1522 +static int     open_track_yamaha(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1523 +static int     close_track_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1524 +static int     fixation_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1525  
1526  static int     philips_attach(SCSI *usalp, cdr_t *);
1527  static int     plasmon_attach(SCSI *usalp, cdr_t *);
1528 @@ -159,12 +159,12 @@ cdr_t     cdr_philips_cdd521O = {
1529         next_wr_addr_philips,
1530         reserve_track_philips,
1531         scsi_cdr_write_philips,
1532 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1533 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1534         no_sendcue,
1535 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1536 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1537         open_track_oldphilips,
1538         close_track_philips,
1539 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1540 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1541         cmd_dummy,
1542         cmd_dummy,                                      /* abort        */
1543         read_session_offset_philips,
1544 @@ -200,12 +200,12 @@ cdr_t     cdr_philips_dumb = {
1545         next_wr_addr_philips,
1546         reserve_track_philips,
1547         scsi_cdr_write_philips,
1548 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1549 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1550         no_sendcue,
1551 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1552 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1553         open_track_oldphilips,
1554         close_track_philips,
1555 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1556 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1557         cmd_dummy,
1558         cmd_dummy,                                      /* abort        */
1559         read_session_offset_philips,
1560 @@ -241,12 +241,12 @@ cdr_t     cdr_philips_cdd521 = {
1561         next_wr_addr_philips,
1562         reserve_track_philips,
1563         scsi_cdr_write_philips,
1564 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1565 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1566         no_sendcue,
1567 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1568 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1569         open_track_philips,
1570         close_track_philips,
1571 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1572 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1573         cmd_dummy,
1574         cmd_dummy,                                      /* abort        */
1575         read_session_offset_philips,
1576 @@ -283,12 +283,12 @@ cdr_t     cdr_philips_cdd522 = {
1577         next_wr_addr_philips,
1578         reserve_track_philips,
1579         scsi_cdr_write_philips,
1580 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1581 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1582         no_sendcue,
1583 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1584 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1585         open_track_philips,
1586         close_track_philips,
1587 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1588 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1589         cmd_dummy,
1590         cmd_dummy,                                      /* abort        */
1591         read_session_offset_philips,
1592 @@ -324,12 +324,12 @@ cdr_t     cdr_tyuden_ew50 = {
1593         next_wr_addr_philips,
1594         reserve_track_philips,
1595         scsi_cdr_write_philips,
1596 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1597 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1598         no_sendcue,
1599 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1600 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1601         open_track_philips,
1602         close_track_philips,
1603 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1604 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1605         cmd_dummy,
1606         cmd_dummy,                                      /* abort        */
1607         read_session_offset_philips,
1608 @@ -365,12 +365,12 @@ cdr_t     cdr_kodak_pcd600 = {
1609         next_wr_addr_philips,
1610         reserve_track_philips,
1611         scsi_cdr_write_philips,
1612 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1613 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1614         no_sendcue,
1615 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1616 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1617         open_track_oldphilips,
1618         close_track_philips,
1619 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1620 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1621         cmd_dummy,
1622         cmd_dummy,                                      /* abort        */
1623         read_session_offset_philips,
1624 @@ -406,12 +406,12 @@ cdr_t     cdr_plasmon_rf4100 = {
1625         next_wr_addr_philips,
1626         reserve_track_philips,
1627         scsi_cdr_write_philips,
1628 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1629 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1630         no_sendcue,
1631 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1632 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1633         open_track_plasmon,
1634         close_track_philips,
1635 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1636 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1637         cmd_dummy,
1638         cmd_dummy,                                      /* abort        */
1639         read_session_offset_philips,
1640 @@ -447,13 +447,13 @@ cdr_t     cdr_pioneer_dw_s114x = {
1641         next_wr_addr_philips,
1642         reserve_track_philips,
1643         scsi_cdr_write_philips,
1644 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1645 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1646         no_sendcue,
1647 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1648 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1649  /*     open_track_yamaha,*/
1650  /*???*/        open_track_oldphilips,
1651         close_track_philips,
1652 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1653 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1654         cmd_dummy,
1655         cmd_dummy,                                      /* abort        */
1656         read_session_offset_philips,
1657 @@ -490,12 +490,12 @@ cdr_t     cdr_yamaha_cdr100 = {
1658         next_wr_addr_philips,
1659         reserve_track_philips,
1660         scsi_cdr_write_philips,
1661 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1662 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1663         no_sendcue,
1664 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1665 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1666         open_track_yamaha,
1667         close_track_philips,
1668 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1669 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1670         cmd_dummy,
1671         cmd_dummy,                                      /* abort        */
1672         read_session_offset_philips,
1673 @@ -532,12 +532,12 @@ cdr_t     cdr_ricoh_ro1060 = {
1674         next_wr_addr_philips,
1675         reserve_track_philips,
1676         scsi_cdr_write_philips,
1677 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1678 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1679         no_sendcue,
1680 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1681 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1682         open_track_philips,
1683         close_track_philips,
1684 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1685 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1686         cmd_dummy,
1687         cmd_dummy,                                      /* abort        */
1688         read_session_offset_philips,
1689 @@ -574,12 +574,12 @@ cdr_t     cdr_ricoh_ro1420 = {
1690         next_wr_addr_philips,
1691         reserve_track_philips,
1692         scsi_cdr_write_philips,
1693 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1694 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1695         no_sendcue,
1696 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1697 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1698         open_track_philips,
1699         close_track_philips,
1700 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy,
1701 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy,
1702         cmd_dummy,
1703         cmd_dummy,                                      /* abort        */
1704         read_session_offset_philips,
1705 @@ -835,11 +835,11 @@ philips_getdisktype(SCSI *usalp, cdr_t *
1706         long    dummy;
1707         long    lilen;
1708         long    lolen;
1709 -       msf_t   msf;
1710 +       wodim_msf_t     msf;
1711         int     audio = -1;
1712  
1713         usalp->silent++;
1714 -       dummy = (*dp->cdr_next_wr_address)(usalp, (track_t *)0, &lilen);
1715 +       dummy = (*dp->cdr_next_wr_address)(usalp, (wodim_track_t *)0, &lilen);
1716         usalp->silent--;
1717  
1718         /*
1719 @@ -972,7 +972,7 @@ first_writable_addr_philips(SCSI *usalp,
1720  }
1721  
1722  static int 
1723 -next_wr_addr_philips(SCSI *usalp, track_t *trackp, long *ap)
1724 +next_wr_addr_philips(SCSI *usalp, wodim_track_t *trackp, long *ap)
1725  {
1726  
1727  /*     if (first_writable_addr_philips(usalp, ap, 0, 0, 0, 1) < 0)*/
1728 @@ -1054,7 +1054,7 @@ write_track_philips(SCSI *usalp,
1729  }
1730  
1731  static int 
1732 -open_track_philips(SCSI *usalp, cdr_t *dp, track_t *trackp)
1733 +open_track_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1734  {
1735         if (select_secsize(usalp, trackp->secsize) < 0)
1736                 return (-1);
1737 @@ -1069,7 +1069,7 @@ open_track_philips(SCSI *usalp, cdr_t *d
1738  }
1739  
1740  static int 
1741 -open_track_plasmon(SCSI *usalp, cdr_t *dp, track_t *trackp)
1742 +open_track_plasmon(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1743  {
1744         if (select_secsize(usalp, trackp->secsize) < 0)
1745                 return (-1);
1746 @@ -1081,7 +1081,7 @@ open_track_plasmon(SCSI *usalp, cdr_t *d
1747  }
1748  
1749  static int 
1750 -open_track_oldphilips(SCSI *usalp, cdr_t *dp, track_t *trackp)
1751 +open_track_oldphilips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1752  {
1753         if (write_track_philips(usalp, 0, trackp->sectype) < 0)
1754                 return (-1);
1755 @@ -1090,7 +1090,7 @@ open_track_oldphilips(SCSI *usalp, cdr_t
1756  }
1757  
1758  static int 
1759 -open_track_yamaha(SCSI *usalp, cdr_t *dp, track_t *trackp)
1760 +open_track_yamaha(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1761  {
1762         if (select_secsize(usalp, trackp->secsize) < 0)
1763                 return (-1);
1764 @@ -1102,12 +1102,12 @@ open_track_yamaha(SCSI *usalp, cdr_t *dp
1765  }
1766  
1767  static int 
1768 -close_track_philips(SCSI *usalp, cdr_t *dp, track_t *trackp)
1769 +close_track_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1770  {
1771         return (scsi_flush_cache(usalp, FALSE));
1772  }
1773  
1774 -static int fixation_philips(SCSI *usalp, cdr_t *dp, track_t *trackp)
1775 +static int fixation_philips(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1776  {
1777         register struct usal_cmd        *scmd = usalp->scmd;
1778  
1779 diff -up cdiopara/wodim/drv_simul.c.wrk cdiopara/wodim/drv_simul.c
1780 --- cdiopara/wodim/drv_simul.c.wrk      2013-06-25 18:37:30.686683498 +0200
1781 +++ cdiopara/wodim/drv_simul.c  2013-06-25 18:38:09.542094684 +0200
1782 @@ -66,13 +66,13 @@ static      cdr_t   *identify_simul(SCSI *usalp
1783  static int     init_simul(SCSI *usalp, cdr_t *dp);
1784  static int     getdisktype_simul(SCSI *usalp, cdr_t *dp);
1785  static int     speed_select_simul(SCSI *usalp, cdr_t *dp, int *speedp);
1786 -static int     next_wr_addr_simul(SCSI *usalp, track_t *trackp, long *ap);
1787 +static int     next_wr_addr_simul(SCSI *usalp, wodim_track_t *trackp, long *ap);
1788  static int     cdr_write_simul(SCSI *usalp, caddr_t bp, long sectaddr, long size, 
1789                                                                                  int blocks, BOOL islast);
1790 -static int     open_track_simul(SCSI *usalp, cdr_t *dp, track_t *trackp);
1791 -static int     close_track_simul(SCSI *usalp, cdr_t *dp, track_t *trackp);
1792 -static int     open_session_simul(SCSI *usalp, cdr_t *dp, track_t *trackp);
1793 -static int     fixate_simul(SCSI *usalp, cdr_t *dp, track_t *trackp);
1794 +static int     open_track_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1795 +static int     close_track_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1796 +static int     open_session_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1797 +static int     fixate_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1798  static void    tv_sub(struct timeval *tvp1, struct timeval *tvp2);
1799  
1800  static int simul_load(SCSI *usalp, cdr_t *dp)
1801 @@ -108,9 +108,9 @@ cdr_t       cdr_cdr_simul = {
1802         next_wr_addr_simul,
1803         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1804         cdr_write_simul,
1805 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1806 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy, /* send_cue */
1807 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1808 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1809 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy, /* send_cue */
1810 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1811         open_track_simul,
1812         close_track_simul,
1813         open_session_simul,
1814 @@ -149,9 +149,9 @@ cdr_t       cdr_dvd_simul = {
1815         next_wr_addr_simul,
1816         (int(*)(SCSI *, Ulong))cmd_ill, /* reserve_track        */
1817         cdr_write_simul,
1818 -       (int(*)(track_t *, void *, BOOL))cmd_dummy,     /* gen_cue */
1819 -       (int(*)(SCSI *usalp, cdr_t *, track_t *))cmd_dummy, /* send_cue */
1820 -       (int(*)(SCSI *, cdr_t *, track_t *))cmd_dummy, /* leadin */
1821 +       (int(*)(wodim_track_t *, void *, BOOL))cmd_dummy,       /* gen_cue */
1822 +       (int(*)(SCSI *usalp, cdr_t *, wodim_track_t *))cmd_dummy, /* send_cue */
1823 +       (int(*)(SCSI *, cdr_t *, wodim_track_t *))cmd_dummy, /* leadin */
1824         open_track_simul,
1825         close_track_simul,
1826         open_session_simul,
1827 @@ -249,7 +249,7 @@ speed_select_simul(SCSI *usalp, cdr_t *d
1828  }
1829  
1830  static int
1831 -next_wr_addr_simul(SCSI *usalp, track_t *trackp, long *ap)
1832 +next_wr_addr_simul(SCSI *usalp, wodim_track_t *trackp, long *ap)
1833  {
1834         /*
1835          * This will most likely not 100% correct for TAO CDs
1836 @@ -345,14 +345,14 @@ cdr_write_simul(SCSI *usalp, caddr_t bp
1837  }
1838  
1839  static int
1840 -open_track_simul(SCSI *usalp, cdr_t *dp, track_t *trackp)
1841 +open_track_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1842  {
1843         sleep_min = 999 * 1000000;
1844         return (0);
1845  }
1846  
1847  static int
1848 -close_track_simul(SCSI *usalp, cdr_t *dp, track_t *trackp)
1849 +close_track_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1850  {
1851         if (lverbose) {
1852                 printf("Remaining reserve time in drive buffer: %d.%3.3d ms\n",
1853 @@ -368,14 +368,14 @@ close_track_simul(SCSI *usalp, cdr_t *dp
1854  }
1855  
1856  static int
1857 -open_session_simul(SCSI *usalp, cdr_t *dp, track_t *trackp)
1858 +open_session_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1859  {
1860         simul_nwa = 0L;
1861         return (0);
1862  }
1863  
1864  static int
1865 -fixate_simul(SCSI *usalp, cdr_t *dp, track_t *trackp)
1866 +fixate_simul(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1867  {
1868         return (0);
1869  }
1870 diff -up cdiopara/wodim/drv_sony.c.wrk cdiopara/wodim/drv_sony.c
1871 --- cdiopara/wodim/drv_sony.c.wrk       2013-06-25 18:42:41.039821118 +0200
1872 +++ cdiopara/wodim/drv_sony.c   2013-06-25 18:43:35.479307474 +0200
1873 @@ -213,12 +213,12 @@ static    int     write_continue_sony(SCSI *usa
1874                                                                                           long size, int blocks, BOOL islast);
1875  static int     discontinue_sony(SCSI *usalp);
1876  static int     write_track_sony(SCSI *usalp, long track, int sectype);
1877 -static int     close_track_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1878 +static int     close_track_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1879  static int     flush_sony(SCSI *usalp, int track);
1880 -static int     finalize_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1881 +static int     finalize_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1882  static int     recover_sony(SCSI *usalp, cdr_t *dp, int track);
1883  static int     set_wr_parameter_sony(SCSI *usalp, caddr_t bp, int size);
1884 -static int     next_wr_addr_sony(SCSI *usalp, track_t *trackp, long *ap);
1885 +static int     next_wr_addr_sony(SCSI *usalp, wodim_track_t *trackp, long *ap);
1886  static int     reserve_track_sony(SCSI *usalp, unsigned long len);
1887  static int     init_sony(SCSI *usalp, cdr_t *dp);
1888  static int     getdisktype_sony(SCSI *usalp, cdr_t *dp);
1889 @@ -229,14 +229,14 @@ static    int     next_writable_address_sony(SC
1890                                                                                                                 int sectype, int tracktype);
1891  static int     new_track_sony(SCSI *usalp, int track, int sectype, 
1892                                                                                 int tracktype);
1893 -static int     open_track_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1894 -static int     open_session_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1895 +static int     open_track_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1896 +static int     open_session_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1897  static int     abort_session_sony(SCSI *usalp, cdr_t *dp);
1898  static int     get_page22_sony(SCSI *usalp, char *mode);
1899 -static int     gen_cue_sony(track_t *trackp, void *vcuep, BOOL needgap);
1900 -static void    fillcue(struct sony_cue *cp, int ca, int tno, int idx, int dataform, int scms, msf_t *mp);
1901 -static int     send_cue_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1902 -static int     write_leadin_sony(SCSI *usalp, cdr_t *dp, track_t *trackp);
1903 +static int     gen_cue_sony(wodim_track_t *trackp, void *vcuep, BOOL needgap);
1904 +static void    fillcue(struct sony_cue *cp, int ca, int tno, int idx, int dataform, int scms, wodim_msf_t *mp);
1905 +static int     send_cue_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1906 +static int     write_leadin_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
1907  static int     sony_attach(SCSI *usalp, cdr_t *dp);
1908  #ifdef SONY_DEBUG
1909  static void    print_sony_mp22(struct sony_924_mode_page_22 *xp, int len);
1910 @@ -383,7 +383,7 @@ write_track_sony(SCSI *usalp,
1911  
1912  /* XXX NOCH NICHT FERTIG */
1913  static int
1914 -close_track_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
1915 +close_track_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1916  {
1917         register struct usal_cmd        *scmd = usalp->scmd;
1918         int     track = 0;
1919 @@ -420,7 +420,7 @@ close_track_sony(SCSI *usalp, cdr_t *dp,
1920  }
1921  
1922  static int
1923 -finalize_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
1924 +finalize_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1925  {
1926         register struct usal_cmd        *scmd = usalp->scmd;
1927         int     dummy = track_base(trackp)->tracktype & TOCF_DUMMY;
1928 @@ -517,7 +517,7 @@ set_wr_parameter_sony(SCSI *usalp, caddr
1929  }
1930  
1931  static int
1932 -next_wr_addr_sony(SCSI *usalp, track_t *trackp, long *ap)
1933 +next_wr_addr_sony(SCSI *usalp, wodim_track_t *trackp, long *ap)
1934  {
1935         if (next_writable_address_sony(usalp, ap, 0, 0, 0) < 0)
1936                 return (-1);
1937 @@ -559,7 +559,7 @@ getdisktype_sony(SCSI *usalp, cdr_t *dp)
1938         dstat_t *dsp = dp->cdr_dstat;
1939         long    dummy;
1940         long    lst;
1941 -       msf_t   msf;
1942 +       wodim_msf_t     msf;
1943  
1944         char                    mode[256];
1945         struct scsi_mode_page_header    *mp;
1946 @@ -626,7 +626,7 @@ getdisktype_sony(SCSI *usalp, cdr_t *dp)
1947  static void
1948  di_to_dstat_sony(struct sony_924_mode_page_22 *dip, dstat_t *dsp)
1949  {
1950 -       msf_t   msf;
1951 +       wodim_msf_t     msf;
1952  
1953         dsp->ds_diskid = a_to_u_4_byte(dip->disk_id_code);
1954  #ifdef PROTOTYPES
1955 @@ -841,7 +841,7 @@ new_track_sony(SCSI *usalp, int track, i
1956  }
1957  
1958  static int
1959 -open_track_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
1960 +open_track_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1961  {
1962         if (!is_tao(trackp) && !is_packet(trackp)) {
1963                 if (trackp->pregapsize > 0 && (trackp->flags & TI_PREGAP) == 0) {
1964 @@ -874,7 +874,7 @@ open_track_sony(SCSI *usalp, cdr_t *dp,
1965  }
1966  
1967  static int
1968 -open_session_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
1969 +open_session_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
1970  {
1971         struct  scsi_mode_page_header *mp;
1972         char                    mode[256];
1973 @@ -994,7 +994,7 @@ static Uchar        db2df[] = {
1974  };
1975  
1976  static int
1977 -gen_cue_sony(track_t *trackp, void *vcuep, BOOL needgap)
1978 +gen_cue_sony(wodim_track_t *trackp, void *vcuep, BOOL needgap)
1979  {
1980         int     tracks = trackp->tracks;
1981         int     i;
1982 @@ -1004,7 +1004,7 @@ gen_cue_sony(track_t *trackp, void *vcue
1983         int     ncue = 0;
1984         int     icue = 0;
1985         int     pgsize;
1986 -       msf_t   m;
1987 +       wodim_msf_t     m;
1988         int     ctl;
1989         int     df;
1990         int     scms;
1991 @@ -1110,7 +1110,7 @@ fillcue(struct sony_cue *cp     /* The t
1992          int idx                 /* Index for this entry */, 
1993          int dataform            /* Data format for this entry */, 
1994          int scms                /* Serial copy management */, 
1995 -        msf_t *mp               /* MSF value for this entry */)
1996 +        wodim_msf_t *mp               /* MSF value for this entry */)
1997  {
1998         cp->cs_ctladr = ca;
1999         if (tno <= 99)
2000 @@ -1126,7 +1126,7 @@ fillcue(struct sony_cue *cp     /* The t
2001  }
2002  
2003  static int
2004 -send_cue_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
2005 +send_cue_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
2006  {
2007         struct sony_cue *cp;
2008         int             ncue;
2009 @@ -1169,7 +1169,7 @@ send_cue_sony(SCSI *usalp, cdr_t *dp, tr
2010  }
2011  
2012  static int
2013 -write_leadin_sony(SCSI *usalp, cdr_t *dp, track_t *trackp)
2014 +write_leadin_sony(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
2015  {
2016         Uint    i;
2017         long    startsec = 0L;
2018 diff -up cdiopara/wodim/fifo.c.wrk cdiopara/wodim/fifo.c
2019 --- cdiopara/wodim/fifo.c.wrk   2013-06-25 18:47:09.024350983 +0200
2020 +++ cdiopara/wodim/fifo.c       2013-06-25 18:47:35.540614992 +0200
2021 @@ -194,15 +194,15 @@ static    char    *mkbeosshm(int size);
2022  static void    beosshm_child(void);
2023  #endif
2024  
2025 -BOOL   init_faio(track_t *trackp, int);
2026 +BOOL   init_faio(wodim_track_t *trackp, int);
2027  BOOL   await_faio(void);
2028  void   kill_faio(void);
2029  int    wait_faio(void);
2030 -static void    faio_reader(track_t *trackp);
2031 -static void    faio_read_track(track_t *trackp);
2032 +static void    faio_reader(wodim_track_t *trackp);
2033 +static void    faio_read_track(wodim_track_t *trackp);
2034  static void    faio_wait_on_buffer(faio_t *f, fowner_t s, unsigned long delay,
2035                                                                                           unsigned long max_wait);
2036 -static int     faio_read_segment(int fd, faio_t *f, track_t *track, long secno, 
2037 +static int     faio_read_segment(int fd, faio_t *f, wodim_track_t *track, long secno, 
2038                                                                                         int len);
2039  static faio_t  *faio_ref(int n);
2040  int    faio_read_buf(int f, char *bp, int size);
2041 @@ -425,7 +425,7 @@ static      BOOL    faio_didwait;
2042  
2043  
2044  BOOL
2045 -init_faio(track_t *trackp, int bufsize)
2046 +init_faio(wodim_track_t *trackp, int bufsize)
2047  {
2048         int     n;
2049         faio_t  *f;
2050 @@ -582,7 +582,7 @@ wait_faio()
2051  }
2052  
2053  static void
2054 -faio_reader(track_t *trackp)
2055 +faio_reader(wodim_track_t *trackp)
2056  {
2057         /* This function should not return, but _exit. */
2058         Uint    trackno;
2059 @@ -623,7 +623,7 @@ faio_ref(int n)
2060  
2061  
2062  static void
2063 -faio_read_track(track_t *trackp)
2064 +faio_read_track(wodim_track_t *trackp)
2065  {
2066         int     fd = -1;
2067         int     bytespt = trackp->secsize * trackp->secspt;
2068 @@ -704,7 +704,7 @@ faio_wait_on_buffer(faio_t *f, fowner_t
2069  }
2070  
2071  static int
2072 -faio_read_segment(int fd, faio_t *f, track_t *trackp, long secno, int len)
2073 +faio_read_segment(int fd, faio_t *f, wodim_track_t *trackp, long secno, int len)
2074  {
2075         int l;
2076  
2077 @@ -821,7 +821,7 @@ fifo_percent(BOOL addone)
2078  #include "wodim.h"
2079  
2080  void   init_fifo(long);
2081 -BOOL   init_faio(track_t *track, int);
2082 +BOOL   init_faio(wodim_track_t *track, int);
2083  BOOL   await_faio(void);
2084  void   kill_faio(void);
2085  int    wait_faio(void);
2086 @@ -836,7 +836,7 @@ void init_fifo(long fs)
2087         errmsgno(EX_BAD, "Fifo not supported.\n");
2088  }
2089  
2090 -BOOL init_faio(track_t *track, 
2091 +BOOL init_faio(wodim_track_t *track, 
2092                 int bufsize /* The size of a single transfer buffer */)
2093  {
2094         return (FALSE);
2095 diff -up cdiopara/wodim/movesect.c.wrk cdiopara/wodim/movesect.c
2096 --- cdiopara/wodim/movesect.c.wrk       2013-06-25 15:42:48.986166461 +0200
2097 +++ cdiopara/wodim/movesect.c   2013-06-25 15:43:07.045269496 +0200
2098 @@ -37,7 +37,7 @@
2099  #include "wodim.h"
2100  #include "movesect.h"
2101  
2102 -void   scatter_secs(track_t *trackp, char *bp, int nsecs);
2103 +void   scatter_secs(wodim_track_t *trackp, char *bp, int nsecs);
2104  
2105  /*
2106   * Scatter input sector size records over buffer to make them
2107 @@ -69,7 +69,7 @@ void  scatter_secs(track_t *trackp, char
2108   *     Sector_0 must never be moved.
2109   */
2110  void
2111 -scatter_secs(track_t *trackp, char *bp, int nsecs)
2112 +scatter_secs(wodim_track_t *trackp, char *bp, int nsecs)
2113  {
2114         char    *from;
2115         char    *to;
2116 diff -up cdiopara/wodim/movesect.h.wrk cdiopara/wodim/movesect.h
2117 --- cdiopara/wodim/movesect.h.wrk       2013-06-25 15:42:19.921000633 +0200
2118 +++ cdiopara/wodim/movesect.h   2013-06-25 15:42:35.156087555 +0200
2119 @@ -40,6 +40,6 @@
2120  #define        fill2048(p, val)        fillbytes(p, 2048, val)
2121  #define        fill96(p, val)          fillbytes(p, 96, val)
2122  
2123 -extern void    scatter_secs(track_t *trackp, char *bp, int nsecs);
2124 +extern void    scatter_secs(wodim_track_t *trackp, char *bp, int nsecs);
2125  
2126  #endif
2127 diff -up cdiopara/wodim/sector.c.wrk cdiopara/wodim/sector.c
2128 --- cdiopara/wodim/sector.c.wrk 2013-06-25 18:53:58.999549774 +0200
2129 +++ cdiopara/wodim/sector.c     2013-06-25 18:54:25.509826416 +0200
2130 @@ -55,8 +55,8 @@
2131  #endif
2132  
2133  int    encspeed(BOOL be_verbose);
2134 -void   encsectors(track_t *trackp, Uchar *bp, int address, int nsecs);
2135 -void   scrsectors(track_t *trackp, Uchar *bp, int address, int nsecs);
2136 +void   encsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2137 +void   scrsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2138  void   encodesector(Uchar *sp, int sectype, int address);
2139  void   fillsector(Uchar *sp, int sectype, int address);
2140  
2141 @@ -105,7 +105,7 @@ void        fillsector(Uchar *sp, int sectype,
2142  int
2143  encspeed(BOOL be_verbose)
2144  {
2145 -       track_t t[1];
2146 +       wodim_track_t   t[1];
2147         Uchar   sect[2352];
2148         int     i;
2149         struct  timeval tv;
2150 @@ -141,7 +141,7 @@ encspeed(BOOL be_verbose)
2151   * Encode sectors according to trackp->sectype
2152   */
2153  void
2154 -encsectors(track_t *trackp, Uchar *bp, int address, int nsecs)
2155 +encsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2156  {
2157         int     sectype = trackp->sectype;
2158  
2159 @@ -169,7 +169,7 @@ encsectors(track_t *trackp, Uchar *bp, i
2160   * Scramble data sectors without coding (needed for clone writing)
2161   */
2162  void
2163 -scrsectors(track_t *trackp, Uchar *bp, int address, int nsecs)
2164 +scrsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2165  {
2166         /*
2167          * In Clone write mode, we cannot expect that the sector type
2168 @@ -187,7 +187,7 @@ scrsectors(track_t *trackp, Uchar *bp, i
2169  }
2170  #else
2171  void
2172 -scrsectors(track_t *trackp, Uchar *bp, int address, int nsecs)
2173 +scrsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2174  {
2175         comerrno(EX_BAD, "Cannot write in clone RAW mode.\n");
2176  }
2177 diff -up cdiopara/wodim/subchan.c.wrk cdiopara/wodim/subchan.c
2178 --- cdiopara/wodim/subchan.c.wrk        2013-06-27 15:23:49.864130939 +0200
2179 +++ cdiopara/wodim/subchan.c    2013-06-27 15:24:59.699507721 +0200
2180 @@ -43,14 +43,14 @@
2181  #include "wodim.h"
2182  #include "crc16.h"
2183  
2184 -int    do_leadin(track_t *trackp);
2185 -int    write_leadin(SCSI *usalp, cdr_t *dp, track_t *trackp, int leadinstart);
2186 -int    write_leadout(SCSI *usalp, cdr_t *dp, track_t *trackp);
2187 -void   fillsubch(track_t *trackp, Uchar *sp, int secno, int nsecs);
2188 -void   filltpoint(Uchar *sub, int ctrl_adr, int point, msf_t *mp);
2189 -void   fillttime(Uchar *sub, msf_t *mp);
2190 -static void    filldsubq(Uchar *sub, int ca, int t, int i, msf_t *mrp, 
2191 -                                                                msf_t *mp);
2192 +int    do_leadin(wodim_track_t *trackp);
2193 +int    write_leadin(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, int leadinstart);
2194 +int    write_leadout(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2195 +void   fillsubch(wodim_track_t *trackp, Uchar *sp, int secno, int nsecs);
2196 +void   filltpoint(Uchar *sub, int ctrl_adr, int point, wodim_msf_t *mp);
2197 +void   fillttime(Uchar *sub, wodim_msf_t *mp);
2198 +static void    filldsubq(Uchar *sub, int ca, int t, int i, wodim_msf_t *mrp, 
2199 +                                                                wodim_msf_t *mp);
2200  static void    fillmcn(Uchar *sub, Uchar *mcn);
2201  static void    fillisrc(Uchar *sub, Uchar *isrc);
2202  static int     ascii2q(int c);
2203 @@ -58,7 +58,7 @@ static        void    qpto16(Uchar *sub, Uchar *su
2204  void   qpto96(Uchar *sub, Uchar *subq, int dop);
2205  void   addrw(Uchar *sub, Uchar *subrwptr);
2206  void   qwto16(Uchar *subq, Uchar *subptr);
2207 -void   subrecodesecs(track_t *trackp, Uchar *bp, int address, int nsecs);
2208 +void   subrecodesecs(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2209  static void    subinterleave(Uchar *sub);
2210  
2211  /*#define      TEST_CRC*/
2212 @@ -93,10 +93,10 @@ extern      int     xdebug;
2213   * Prepare master sunchannel data for RAW TOC.
2214   */
2215  int
2216 -do_leadin(track_t *trackp)
2217 +do_leadin(wodim_track_t *trackp)
2218  {
2219         int     tracks = trackp->tracks;
2220 -       msf_t   m;
2221 +       wodim_msf_t     m;
2222         int     ctrl;
2223         int     i;
2224         int     toctype = trackp[0].tracktype & TOC_MASK;
2225 @@ -183,9 +183,9 @@ do_leadin(track_t *trackp)
2226   * subchannel frames for the lead-in.
2227   */
2228  int
2229 -write_leadin(SCSI *usalp, cdr_t *dp, track_t *trackp, int leadinstart)
2230 +write_leadin(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, int leadinstart)
2231  {
2232 -       msf_t   m;
2233 +       wodim_msf_t     m;
2234         int     i;
2235         Uint    j;
2236         Uchar   *bp = usalp->bufptr;
2237 @@ -198,7 +198,7 @@ write_leadin(SCSI *usalp, cdr_t *dp, tra
2238         int     startsec;
2239         long    bytes = 0L;
2240         int     textoff = 0;
2241 -       msf_t   msf;
2242 +       wodim_msf_t     msf;
2243  
2244         secsize = trackp[0].secsize;
2245         secspt = trackp[0].secspt;
2246 @@ -292,11 +292,11 @@ write_leadin(SCSI *usalp, cdr_t *dp, tra
2247   * Write Track 0xAA (lead-out)
2248   */
2249  int
2250 -write_leadout(SCSI *usalp, cdr_t *dp, track_t *trackp)
2251 +write_leadout(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
2252  {
2253         int     tracks = trackp->tracks;
2254 -       msf_t   m;
2255 -       msf_t   mr;
2256 +       wodim_msf_t     m;
2257 +       wodim_msf_t     mr;
2258         int     ctrl;
2259         int     i;
2260         int     j;
2261 @@ -313,7 +313,7 @@ write_leadout(SCSI *usalp, cdr_t *dp, tr
2262         int     leadoutstart;
2263         Uchar   sub[12];
2264         BOOL    p;
2265 -       msf_t   msf;
2266 +       wodim_msf_t     msf;
2267  
2268         fillbytes(sub, 12, '\0');
2269  
2270 @@ -397,13 +397,13 @@ write_leadout(SCSI *usalp, cdr_t *dp, tr
2271   * the data part of a CD (bewteen lead-in and lead-out).
2272   */
2273  void
2274 -fillsubch(track_t *trackp, 
2275 +fillsubch(wodim_track_t *trackp, 
2276            Uchar *sp /* Sector data pointer  */, 
2277            int secno /* Starting sector #    */, 
2278            int nsecs /* # of sectors to fill */)
2279  {
2280 -       msf_t   m;
2281 -       msf_t   mr;
2282 +       wodim_msf_t     m;
2283 +       wodim_msf_t     mr;
2284         int     ctrl;
2285         int     i;
2286         int     rsecno;
2287 @@ -563,7 +563,7 @@ static      Uchar   lastindex = 255;
2288   * Ax Werte einfüllen.
2289   */
2290  void
2291 -filltpoint(Uchar *sub, int ctrl_adr, int point, msf_t *mp)
2292 +filltpoint(Uchar *sub, int ctrl_adr, int point, wodim_msf_t *mp)
2293  {
2294         sub[0] = ctrl_adr;
2295         sub[2] = point;
2296 @@ -577,7 +577,7 @@ filltpoint(Uchar *sub, int ctrl_adr, int
2297   * Aktuelle Zeit in TOC Sub-Q einfüllen.
2298   */
2299  void
2300 -fillttime(Uchar *sub, msf_t *mp)
2301 +fillttime(Uchar *sub, wodim_msf_t *mp)
2302  {
2303         sub[3] = to_bcd(mp->msf_min);
2304         sub[4] = to_bcd(mp->msf_sec);
2305 @@ -588,7 +588,7 @@ fillttime(Uchar *sub, msf_t *mp)
2306   * Q-Sub in Datenbereich füllen.
2307   */
2308  static void
2309 -filldsubq(Uchar *sub, int ca, int t, int i, msf_t *mrp, msf_t *mp)
2310 +filldsubq(Uchar *sub, int ca, int t, int i, wodim_msf_t *mrp, wodim_msf_t *mp)
2311  {
2312         sub[0] = ca;
2313         sub[1] = to_bcd(t);
2314 @@ -856,7 +856,7 @@ qwto16(Uchar *subq, Uchar *subptr)
2315   * Recode subchannels of sectors from 2352 + 96 bytes to 2352 + 16 bytes
2316   */
2317  void
2318 -subrecodesecs(track_t *trackp, Uchar *bp, int address, int nsecs)
2319 +subrecodesecs(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2320  {
2321         bp += 2352;
2322         while (--nsecs >= 0) {
2323 @@ -867,7 +867,7 @@ subrecodesecs(track_t *trackp, Uchar *bp
2324  
2325  #ifndef        HAVE_LIB_EDC_ECC
2326  void
2327 -encsectors(track_t *trackp, Uchar *bp, int address, int nsecs)
2328 +encsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2329  {
2330         int     sectype = trackp->sectype;
2331  
2332 @@ -878,7 +878,7 @@ encsectors(track_t *trackp, Uchar *bp, i
2333  }
2334  
2335  void
2336 -scrsectors(track_t *trackp, Uchar *bp, int address, int nsecs)
2337 +scrsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs)
2338  {
2339         comerrno(EX_BAD, "Cannot write in clone RAW mode.\n");
2340  }
2341 diff -up cdiopara/wodim/wm_packet.c.wrk cdiopara/wodim/wm_packet.c
2342 --- cdiopara/wodim/wm_packet.c.wrk      2013-06-27 15:26:58.973141891 +0200
2343 +++ cdiopara/wodim/wm_packet.c  2013-06-27 15:27:22.066263842 +0200
2344 @@ -51,10 +51,10 @@ extern      int     lverbose;
2345  
2346  extern char    *buf;                   /* The transfer buffer */
2347  
2348 -int    write_packet_data(SCSI *usalp, cdr_t *dp, track_t *trackp);
2349 +int    write_packet_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2350  
2351  int
2352 -write_packet_data(SCSI *usalp, cdr_t *dp, track_t *trackp)
2353 +write_packet_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
2354  {
2355         int     track = trackp->trackno;
2356         int     f = -1;
2357 diff -up cdiopara/wodim/wm_session.c.wrk cdiopara/wodim/wm_session.c
2358 --- cdiopara/wodim/wm_session.c.wrk     2013-06-27 15:29:40.932998275 +0200
2359 +++ cdiopara/wodim/wm_session.c 2013-06-27 15:30:03.907119952 +0200
2360 @@ -48,4 +48,4 @@ extern        int     lverbose;
2361  
2362  extern char    *buf;                   /* The transfer buffer */
2363  
2364 -int    write_session_data(SCSI *usalp, cdr_t *dp, track_t *trackp);
2365 +int    write_session_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2366 diff -up cdiopara/wodim/wm_track.c.wrk cdiopara/wodim/wm_track.c
2367 --- cdiopara/wodim/wm_track.c.wrk       2013-06-27 15:28:45.701705951 +0200
2368 +++ cdiopara/wodim/wm_track.c   2013-06-27 15:29:29.673938661 +0200
2369 @@ -47,4 +47,4 @@ extern        int     lverbose;
2370  
2371  extern char    *buf;                   /* The transfer buffer */
2372  
2373 -int    write_track_data(cdr_t *dp, int track, track_t *trackp);
2374 +int    write_track_data(cdr_t *dp, int track, wodim_track_t *trackp);
2375 diff -up cdiopara/wodim/wodim.c.wrk cdiopara/wodim/wodim.c
2376 --- cdiopara/wodim/wodim.c.wrk  2013-06-25 16:38:32.153811969 +0200
2377 +++ cdiopara/wodim/wodim.c      2013-06-25 16:30:08.636892373 +0200
2378 @@ -205,31 +205,31 @@ static    void    intfifo(int sig);
2379  static void    exscsi(int excode, void *arg);
2380  static void    excdr(int excode, void *arg);
2381  int    read_buf(int f, char *bp, int size);
2382 -int    fill_buf(int f, track_t *trackp, long secno, char *bp, int size);
2383 -int    get_buf(int f, track_t *trackp, long secno, char **bpp, int size);
2384 +int    fill_buf(int f, wodim_track_t *trackp, long secno, char *bp, int size);
2385 +int    get_buf(int f, wodim_track_t *trackp, long secno, char **bpp, int size);
2386  int    write_secs(SCSI *usalp, cdr_t *dp, char *bp, long startsec, int bytespt,
2387                                           int secspt, BOOL islast);
2388 -static int     write_track_data(SCSI *usalp, cdr_t *, track_t *);
2389 -int    pad_track(SCSI *usalp, cdr_t *dp, track_t *trackp, long startsec, 
2390 +static int     write_track_data(SCSI *usalp, cdr_t *, wodim_track_t *);
2391 +int    pad_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, long startsec, 
2392                                          Llong amt, BOOL dolast, Llong *bytesp);
2393 -int    write_buf(SCSI *usalp, cdr_t *dp, track_t *trackp, char *bp, 
2394 +int    write_buf(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, char *bp, 
2395                                          long startsec, Llong amt, int secsize, BOOL dolast, 
2396                                          Llong *bytesp);
2397 -static void    printdata(int, track_t *);
2398 -static void    printaudio(int, track_t *);
2399 -static void    checkfile(int, track_t *);
2400 -static int     checkfiles(int, track_t *);
2401 -static void    setleadinout(int, track_t *);
2402 -static void    setpregaps(int, track_t *);
2403 -static long    checktsize(int, track_t *);
2404 -static void    opentracks(track_t *);
2405 -static void    checksize(track_t *);
2406 +static void    printdata(int, wodim_track_t *);
2407 +static void    printaudio(int, wodim_track_t *);
2408 +static void    checkfile(int, wodim_track_t *);
2409 +static int     checkfiles(int, wodim_track_t *);
2410 +static void    setleadinout(int, wodim_track_t *);
2411 +static void    setpregaps(int, wodim_track_t *);
2412 +static long    checktsize(int, wodim_track_t *);
2413 +static void    opentracks(wodim_track_t *);
2414 +static void    checksize(wodim_track_t *);
2415  static BOOL    checkdsize(SCSI *usalp, cdr_t *dp, long tsize, int flags);
2416  static void    raise_fdlim(void);
2417  static void    raise_memlock(void);
2418 -static int     gargs(int, char **, int *, track_t *, char **, int *, cdr_t **,
2419 +static int     gargs(int, char **, int *, wodim_track_t *, char **, int *, cdr_t **,
2420                                                         int *, long *, int *, int *);
2421 -static void    set_trsizes(cdr_t *, int, track_t *);
2422 +static void    set_trsizes(cdr_t *, int, wodim_track_t *);
2423  void           load_media(SCSI *usalp, cdr_t *, BOOL);
2424  void           unload_media(SCSI *usalp, cdr_t *, int);
2425  void           reload_media(SCSI *usalp, cdr_t *);
2426 @@ -287,7 +287,7 @@ int main(int argc, char *argv[])
2427         int     tracks = 0;
2428         int     trackno;
2429         long    tsize;
2430 -       track_t track[MAX_TRACK+2];     /* Max tracks + track 0 + track AA */
2431 +       wodim_track_t   track[MAX_TRACK+2];     /* Max tracks + track 0 + track AA */
2432         cdr_t   *dp = (cdr_t *)0;
2433         long    startsec = 0L;
2434         int     errs = 0;
2435 @@ -1860,7 +1860,7 @@ read_buf(int f, char *bp, int size)
2436  }
2437  
2438  int 
2439 -fill_buf(int f, track_t *trackp, long secno, char *bp, int size)
2440 +fill_buf(int f, wodim_track_t *trackp, long secno, char *bp, int size)
2441  {
2442         int     amount = 0;
2443         int     nsecs;
2444 @@ -1936,7 +1936,7 @@ fill_buf(int f, track_t *trackp, long se
2445  }
2446  
2447  int 
2448 -get_buf(int f, track_t *trackp, long secno, char **bpp, int size)
2449 +get_buf(int f, wodim_track_t *trackp, long secno, char **bpp, int size)
2450  {
2451         if (fs > 0) {
2452  /*             return (faio_read_buf(f, *bpp, size));*/
2453 @@ -1987,7 +1987,7 @@ again:
2454  }
2455  
2456  static int 
2457 -write_track_data(SCSI *usalp, cdr_t *dp, track_t *trackp)
2458 +write_track_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp)
2459  {
2460         int     track = trackp->trackno;
2461         int     f = -1;
2462 @@ -2270,7 +2270,7 @@ int oper = -1;
2463  }
2464  
2465  int 
2466 -pad_track(SCSI *usalp, cdr_t   *dp, track_t *trackp, long startsec, Llong amt,
2467 +pad_track(SCSI *usalp, cdr_t   *dp, wodim_track_t *trackp, long startsec, Llong amt,
2468                                 BOOL dolast, Llong *bytesp)
2469  {
2470         int     track = trackp->trackno;
2471 @@ -2404,7 +2404,7 @@ int oper = -1;
2472  
2473  #ifdef USE_WRITE_BUF
2474  int 
2475 -write_buf(SCSI *usalp, cdr_t *dp, track_t *trackp, char *bp, long startsec, 
2476 +write_buf(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, char *bp, long startsec, 
2477                   Llong amt, int secsize, BOOL dolast, Llong *bytesp)
2478  {
2479         int     track = trackp->trackno;
2480 @@ -2467,7 +2467,7 @@ write_buf(SCSI *usalp, cdr_t *dp, track_
2481  #endif /* USE_WRITE_BUF */
2482  
2483  static void 
2484 -printdata(int track, track_t *trackp)
2485 +printdata(int track, wodim_track_t *trackp)
2486  {
2487         if (trackp->itracksize >= 0) {
2488                 printf("Track %02d: data  %4lld MB        ",
2489 @@ -2494,7 +2494,7 @@ printdata(int track, track_t *trackp)
2490  }
2491  
2492  static void 
2493 -printaudio(int track, track_t *trackp)
2494 +printaudio(int track, wodim_track_t *trackp)
2495  {
2496         if (trackp->itracksize >= 0) {
2497                 printf("Track %02d: audio %4lld MB (%02d:%02d.%02d) %spreemp%s%s",
2498 @@ -2542,7 +2542,7 @@ printaudio(int track, track_t *trackp)
2499  }
2500  
2501  static void 
2502 -checkfile(int track, track_t *trackp)
2503 +checkfile(int track, wodim_track_t *trackp)
2504  {
2505         if (trackp->itracksize > 0 &&
2506                         is_audio(trackp) &&
2507 @@ -2571,7 +2571,7 @@ checkfile(int track, track_t *trackp)
2508  }
2509  
2510  static int 
2511 -checkfiles(int tracks, track_t *trackp)
2512 +checkfiles(int tracks, wodim_track_t *trackp)
2513  {
2514         int     i;
2515         int     isaudio = 1;
2516 @@ -2596,7 +2596,7 @@ checkfiles(int tracks, track_t *trackp)
2517  }
2518  
2519  static void 
2520 -setleadinout(int tracks, track_t *trackp)
2521 +setleadinout(int tracks, wodim_track_t *trackp)
2522  {
2523         /*
2524          * Set some values for track 0 (the lead-in)
2525 @@ -2631,12 +2631,12 @@ setleadinout(int tracks, track_t *trackp
2526  }
2527  
2528  static void 
2529 -setpregaps(int tracks, track_t *trackp)
2530 +setpregaps(int tracks, wodim_track_t *trackp)
2531  {
2532         int     i;
2533         int     sectype;
2534         long    pregapsize;
2535 -       track_t *tp;
2536 +       wodim_track_t   *tp;
2537  
2538         sectype = trackp[1].sectype;
2539         sectype &= ST_MASK;
2540 @@ -2674,13 +2674,13 @@ setpregaps(int tracks, track_t *trackp)
2541   * Check total size of the medium
2542   */
2543  static long 
2544 -checktsize(int tracks, track_t *trackp)
2545 +checktsize(int tracks, wodim_track_t *trackp)
2546  {
2547         int     i;
2548         Llong   curr;
2549         Llong   total = -150;   /* CD track #1 pregap compensation */
2550         Ullong  btotal;
2551 -       track_t *tp;
2552 +       wodim_track_t   *tp;
2553  
2554         if (trackp->flags & TI_DVD)
2555                 total = 0;
2556 @@ -2751,9 +2751,9 @@ checktsize(int tracks, track_t *trackp)
2557  }
2558  
2559  static void 
2560 -opentracks(track_t *trackp)
2561 +opentracks(wodim_track_t *trackp)
2562  {
2563 -       track_t *tp;
2564 +       wodim_track_t   *tp;
2565         int     i;
2566         int     tracks = trackp[0].tracks;
2567  
2568 @@ -2825,7 +2825,7 @@ opentracks(track_t *trackp)
2569  }
2570  
2571  static void 
2572 -checksize(track_t *trackp)
2573 +checksize(wodim_track_t *trackp)
2574  {
2575         struct stat     st;
2576         Llong           lsize;
2577 @@ -2890,7 +2890,7 @@ checkdsize(SCSI *usalp, cdr_t *dp, long
2578         int     profile;
2579  
2580         usalp->silent++;
2581 -       (*dp->cdr_next_wr_address)(usalp, (track_t *)0, &startsec);
2582 +       (*dp->cdr_next_wr_address)(usalp, (wodim_track_t *)0, &startsec);
2583         usalp->silent--;
2584  
2585         /*
2586 @@ -3098,7 +3098,7 @@ char      *opts =
2587  #define        M_RAW           4       /* Raw mode */
2588  #define        M_PACKET        8       /* Packed mode */
2589  static int 
2590 -gargs(int ac, char **av, int *tracksp, track_t *trackp, char **devp, 
2591 +gargs(int ac, char **av, int *tracksp, wodim_track_t *trackp, char **devp, 
2592                 int *timeoutp, cdr_t **dpp, int *speedp, long *flagsp, int *blankp, 
2593                 int *formatp)
2594  {
2595 @@ -3809,7 +3809,7 @@ gargs(int ac, char **av, int *tracksp, t
2596  }
2597  
2598  static void 
2599 -set_trsizes(cdr_t *dp, int tracks, track_t *trackp)
2600 +set_trsizes(cdr_t *dp, int tracks, wodim_track_t *trackp)
2601  {
2602         int     i;
2603         int     secsize;
2604 @@ -4110,7 +4110,7 @@ print_msinfo(SCSI *usalp, cdr_t *dp)
2605         if (lverbose)
2606                 printf("session offset: %ld\n", off);
2607  
2608 -       if (dp->cdr_next_wr_address(usalp, (track_t *)0, &fa) < 0) {
2609 +       if (dp->cdr_next_wr_address(usalp, (wodim_track_t *)0, &fa) < 0) {
2610                 errmsgno(EX_BAD, "Cannot read first writable address\n");
2611                 return;
2612         }
2613 diff -up cdiopara/wodim/wodim.h.wrk cdiopara/wodim/wodim.h
2614 --- cdiopara/wodim/wodim.h.wrk  2013-06-25 15:07:16.550727303 +0200
2615 +++ cdiopara/wodim/wodim.h      2013-06-25 16:57:07.110050011 +0200
2616 @@ -186,7 +186,9 @@ typedef struct track {
2617         long    *tindex;        /* Track index descriptor               */
2618         char    *isrc;          /* ISRC code for this track / disk MCN  */
2619         void    *text;          /* Opaque CD-Text data (txtptr_t *)     */
2620 -} track_t;
2621 +} wodim_track_t;
2622 +
2623 +#define track_t taka_neexistuje
2624  
2625  #define        track_base(tp)  ((tp) - (tp)->track)
2626  
2627 @@ -515,8 +517,9 @@ typedef struct msf {
2628         char    msf_min;
2629         char    msf_sec;
2630         char    msf_frame;
2631 -} msf_t;
2632 +} wodim_msf_t;
2633  
2634 +#define msf_t nahradzuj_msf
2635  /*
2636   * Definitions for read TOC/PMA/ATIP command
2637   */
2638 @@ -673,7 +676,7 @@ struct disk_status {
2639   *     cdr_open_session()
2640   *     cdr_fixate()
2641   *
2642 - * Called with (track_t *) 0 or pointer to current track:
2643 + * Called with (wodim_track_t *) 0 or pointer to current track:
2644   *     cdr_next_wr_address()
2645   *
2646   * Called with pointer to current track:
2647 @@ -751,23 +754,23 @@ struct cdr_cmd {
2648         /* set sector size */
2649         int     (*cdr_set_secsize)(SCSI *usalp, int secsize);
2650         /* get next writable addr. */
2651 -       int     (*cdr_next_wr_address)(SCSI *usalp, track_t *trackp, long *ap);
2652 +       int     (*cdr_next_wr_address)(SCSI *usalp, wodim_track_t *trackp, long *ap);
2653         /* reserve track for future use */
2654         int     (*cdr_reserve_track)(SCSI *usalp, Ulong len);
2655         int     (*cdr_write_trackdata)(SCSI *usalp, caddr_t buf, long daddr, long bytecnt, 
2656                                                                                   int seccnt, BOOL islast);
2657         /* generate cue sheet */
2658 -       int     (*cdr_gen_cue)(track_t *trackp, void *cuep, BOOL needgap);
2659 +       int     (*cdr_gen_cue)(wodim_track_t *trackp, void *cuep, BOOL needgap);
2660         /* send cue sheet */
2661 -       int     (*cdr_send_cue)(SCSI *usalp, cdr_t *, track_t *trackp);
2662 +       int     (*cdr_send_cue)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2663         /* write leadin */
2664 -       int     (*cdr_write_leadin)(SCSI *usalp, cdr_t *, track_t *trackp);
2665 +       int     (*cdr_write_leadin)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2666         /* open new track */
2667 -       int     (*cdr_open_track)(SCSI *usalp, cdr_t *, track_t *trackp);
2668 +       int     (*cdr_open_track)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2669         /* close written track */
2670 -       int     (*cdr_close_track)(SCSI *usalp, cdr_t *, track_t *trackp);
2671 +       int     (*cdr_close_track)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2672         /* open new session */
2673 -       int     (*cdr_open_session)(SCSI *usalp, cdr_t *, track_t *trackp);
2674 +       int     (*cdr_open_session)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2675         /* really needed ??? */
2676         int     (*cdr_close_session)(SCSI *usalp, cdr_t *);
2677         /* abort current write */
2678 @@ -775,7 +778,7 @@ struct cdr_cmd {
2679         /* read session offset*/
2680         int     (*cdr_session_offset)(SCSI *usalp, long *soff);
2681         /* write toc on disk */
2682 -       int     (*cdr_fixate)(SCSI *usalp, cdr_t *, track_t *trackp);
2683 +       int     (*cdr_fixate)(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2684         /* final statistics printing*/
2685         int     (*cdr_stats)(SCSI *usalp, cdr_t *);
2686         /* blank something */
2687 @@ -849,12 +852,12 @@ struct cdr_cmd {
2688   * cdrecord.c
2689   */
2690  extern int     read_buf(int f, char *bp, int size);
2691 -extern int     fill_buf(int f, track_t *trackp, long secno, char *bp, int size);
2692 -extern int     get_buf(int f, track_t *trackp, long secno, char **bpp, int size);
2693 +extern int     fill_buf(int f, wodim_track_t *trackp, long secno, char *bp, int size);
2694 +extern int     get_buf(int f, wodim_track_t *trackp, long secno, char **bpp, int size);
2695  #ifdef _SCG_SCSITRANSP_H
2696  extern int     write_secs(SCSI *usalp, cdr_t *dp, char *bp, long startsec, 
2697                                                                   int bytespt, int secspt, BOOL islast);
2698 -extern int     pad_track(SCSI *usalp, cdr_t *dp, track_t *trackp,
2699 +extern int     pad_track(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp,
2700                                                                  long startsec, Llong amt,
2701                                                                  BOOL dolast, Llong *bytesp);
2702  extern void    load_media(SCSI *usalp, cdr_t *, BOOL);
2703 @@ -870,15 +873,15 @@ extern    int     getnum(char *arg, long *valp)
2704  extern int     from_bcd(int b);
2705  extern int     to_bcd(int i);
2706  extern long    msf_to_lba(int m, int s, int f, BOOL force_positive);
2707 -extern BOOL    lba_to_msf(long lba, msf_t *mp);
2708 -extern void    sec_to_msf(long sec, msf_t *mp);
2709 +extern BOOL    lba_to_msf(long lba, wodim_msf_t *mp);
2710 +extern void    sec_to_msf(long sec, wodim_msf_t *mp);
2711  extern void    print_min_atip(long li, long lo);
2712  
2713  /*
2714   * fifo.c
2715   */
2716  extern void    init_fifo(long);
2717 -extern BOOL    init_faio(track_t *track, int);
2718 +extern BOOL    init_faio(wodim_track_t *track, int);
2719  extern BOOL    await_faio(void);
2720  extern void    kill_faio(void);
2721  extern int     wait_faio(void);
2722 @@ -891,21 +894,21 @@ extern    int     fifo_percent(BOOL addone);
2723   * wm_session.c
2724   */
2725  #ifdef _SCG_SCSITRANSP_H
2726 -extern int     write_session_data(SCSI *usalp, cdr_t *dp, track_t *trackp);
2727 +extern int     write_session_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2728  #endif
2729  
2730  /*
2731   * wm_track.c
2732   */
2733  #ifdef _SCG_SCSITRANSP_H
2734 -/*extern       int     write_track_data __PR((SCSI *usalp, cdr_t *dp, track_t *trackp));*/
2735 +/*extern       int     write_track_data __PR((SCSI *usalp, cdr_t *dp, wodim_track_t *trackp));*/
2736  #endif
2737  
2738  /*
2739   * wm_packet.c
2740   */
2741  #ifdef _SCG_SCSITRANSP_H
2742 -extern int     write_packet_data(SCSI *usalp, cdr_t *dp, track_t *trackp);
2743 +extern int     write_packet_data(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2744  #endif
2745  
2746  /*
2747 @@ -1103,7 +1106,7 @@ int       format_dummy(SCSI *usalp, cdr_t *, i
2748  extern int     drive_getdisktype(SCSI *usalp, cdr_t *dp);
2749  extern int     cmd_ill(SCSI *usalp);
2750  extern int     cmd_dummy(SCSI *usalp, cdr_t *);
2751 -extern int     no_sendcue(SCSI *usalp, cdr_t *, track_t *trackp);
2752 +extern int     no_sendcue(SCSI *usalp, cdr_t *, wodim_track_t *trackp);
2753  extern int     buf_dummy(SCSI *usalp, long *sp, long *fp);
2754  #endif
2755  extern BOOL    set_cdrcmds(char *name, cdr_t **dpp);
2756 @@ -1137,68 +1140,68 @@ extern  off_t   wavsize(int f);
2757  /*
2758   * auinfo.c
2759   */
2760 -extern BOOL    auinfosize(char *name, track_t *trackp);
2761 -extern void    auinfo(char *name, int track, track_t *trackp);
2762 +extern BOOL    auinfosize(char *name, wodim_track_t *trackp);
2763 +extern void    auinfo(char *name, int track, wodim_track_t *trackp);
2764  #ifdef CDTEXT_H
2765 -extern textptr_t *gettextptr(int track, track_t *trackp);
2766 +extern textptr_t *gettextptr(int track, wodim_track_t *trackp);
2767  #endif
2768 -extern void    setmcn(char *mcn, track_t *trackp);
2769 -extern void    setisrc(char *isrc, track_t *trackp);
2770 -extern void    setindex(char *tindex, track_t *trackp);
2771 +extern void    setmcn(char *mcn, wodim_track_t *trackp);
2772 +extern void    setisrc(char *isrc, wodim_track_t *trackp);
2773 +extern void    setindex(char *tindex, wodim_track_t *trackp);
2774  
2775  /*
2776   * diskid.c
2777   */
2778 -extern void    pr_manufacturer(msf_t *mp, BOOL rw, BOOL audio);
2779 -extern int     manufacturer_id(msf_t *mp);
2780 -extern long    disk_rcap(msf_t *mp, long maxblock, BOOL rw, BOOL audio);
2781 +extern void    pr_manufacturer(wodim_msf_t *mp, BOOL rw, BOOL audio);
2782 +extern int     manufacturer_id(wodim_msf_t *mp);
2783 +extern long    disk_rcap(wodim_msf_t *mp, long maxblock, BOOL rw, BOOL audio);
2784  
2785  /*--------------------------------------------------------------------------*/
2786  /* Test only                                                               */
2787  /*--------------------------------------------------------------------------*/
2788  #ifdef _SCSIMMC_H
2789 -/*extern       int     do_cue          __PR((track_t *trackp, struct mmc_cue **cuep));*/
2790 +/*extern       int     do_cue          __PR((wodim_track_t *trackp, struct mmc_cue **cuep));*/
2791  #else
2792 -/*extern       int     do_cue          __PR((track_t *trackp, void *cuep));*/
2793 +/*extern       int     do_cue          __PR((wodim_track_t *trackp, void *cuep));*/
2794  #endif
2795  
2796  /*
2797   * subchan.c
2798   */
2799 -extern int     do_leadin(track_t *trackp);
2800 +extern int     do_leadin(wodim_track_t *trackp);
2801  #ifdef _SCG_SCSITRANSP_H
2802 -extern int     write_leadin(SCSI *usalp, cdr_t *dp, track_t *trackp, 
2803 +extern int     write_leadin(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp, 
2804                                                                          int leadinstart);
2805 -extern int     write_leadout(SCSI *usalp, cdr_t *dp, track_t *trackp);
2806 +extern int     write_leadout(SCSI *usalp, cdr_t *dp, wodim_track_t *trackp);
2807  #endif
2808 -extern void    fillsubch(track_t *trackp, Uchar *sp, int secno, int nsecs);
2809 -extern void    filltpoint(Uchar *sub, int ctrl_adr, int point, msf_t *mp);
2810 -extern void    fillttime(Uchar *sub, msf_t *mp);
2811 +extern void    fillsubch(wodim_track_t *trackp, Uchar *sp, int secno, int nsecs);
2812 +extern void    filltpoint(Uchar *sub, int ctrl_adr, int point, wodim_msf_t *mp);
2813 +extern void    fillttime(Uchar *sub, wodim_msf_t *mp);
2814  extern void    qpto96(Uchar *sub, Uchar *subq, int dop);
2815  extern void    addrw(Uchar *sub, Uchar *subrwptr);
2816  extern void    qwto16(Uchar *subq, Uchar *subptr);
2817 -extern void    subrecodesecs(track_t *trackp, Uchar *bp, int address, int nsecs);
2818 +extern void    subrecodesecs(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2819  
2820  /*
2821   * sector.c
2822   */
2823  extern int     encspeed(BOOL be_verbose);
2824 -extern void    encsectors(track_t *trackp, Uchar *bp, int address, int nsecs);
2825 -extern void    scrsectors(track_t *trackp, Uchar *bp, int address, int nsecs);
2826 +extern void    encsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2827 +extern void    scrsectors(wodim_track_t *trackp, Uchar *bp, int address, int nsecs);
2828  extern void    encodesector(Uchar *sp, int sectype, int address);
2829  extern void    fillsector(Uchar *sp, int sectype, int address);
2830  
2831  /*
2832   * clone.c
2833   */
2834 -extern void    clone_toc(track_t *trackp);
2835 -extern void    clone_tracktype(track_t *trackp);
2836 +extern void    clone_toc(wodim_track_t *trackp);
2837 +extern void    clone_tracktype(wodim_track_t *trackp);
2838  
2839  /*
2840   * cdtext.c
2841   */
2842  extern BOOL    checktextfile(char *fname);
2843 -extern void    packtext(int tracks, track_t *trackp);
2844 +extern void    packtext(int tracks, wodim_track_t *trackp);
2845  #ifdef _SCG_SCSITRANSP_H
2846  extern int     write_cdtext(SCSI *usalp, cdr_t *dp, long startsec);
2847  #endif
2848 @@ -1206,7 +1209,7 @@ extern    int     write_cdtext(SCSI *usalp, cdr
2849  /*
2850   * cue.c
2851   */
2852 -extern int     parsecue(char *cuefname, track_t trackp[]);
2853 +extern int     parsecue(char *cuefname, wodim_track_t trackp[]);
2854  #ifdef EOF     /* stdio.h has been included */
2855 -extern void    fparsecue(FILE *f, track_t trackp[]);
2856 +extern void    fparsecue(FILE *f, wodim_track_t trackp[]);
2857  #endif
This page took 0.470739 seconds and 3 git commands to generate.