Improved emulation of mode page 2A
This commit is contained in:
parent
57909c48d5
commit
2c9354fc56
@ -1 +1 @@
|
|||||||
#define Cdrskin_timestamP "2014.02.19.111017"
|
#define Cdrskin_timestamP "2014.03.01.101537"
|
||||||
|
@ -1222,6 +1222,7 @@ static int drive_getcaps(struct burn_drive *d, struct burn_drive_info *out)
|
|||||||
{
|
{
|
||||||
struct burn_scsi_inquiry_data *id;
|
struct burn_scsi_inquiry_data *id;
|
||||||
int i, profile;
|
int i, profile;
|
||||||
|
struct burn_feature_descr *feat;
|
||||||
|
|
||||||
/* ts A61007 : now prevented in enumerate_common() */
|
/* ts A61007 : now prevented in enumerate_common() */
|
||||||
#if 0
|
#if 0
|
||||||
@ -1275,6 +1276,13 @@ static int drive_getcaps(struct burn_drive *d, struct burn_drive_info *out)
|
|||||||
else if (profile == 0x12)
|
else if (profile == 0x12)
|
||||||
out->write_dvdram = out->read_dvdram = 1;
|
out->write_dvdram = out->read_dvdram = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Test Write bit of CD TAO, CD Mastering, DVD-R/-RW Write */
|
||||||
|
for (i = 0x002D; i <= 0x002F; i++)
|
||||||
|
if (burn_drive_has_feature(d, i, &feat, 0))
|
||||||
|
if (feat->data_lenght > 0)
|
||||||
|
out->write_simulate |=
|
||||||
|
!!(feat->data[0] & 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
out->drive = d;
|
out->drive = d;
|
||||||
|
@ -594,10 +594,10 @@ struct burn_drive_info
|
|||||||
to inquire a device file address. ^^^^^ ALWAYS ^^^^^^^*/
|
to inquire a device file address. ^^^^^ ALWAYS ^^^^^^^*/
|
||||||
char location[17];
|
char location[17];
|
||||||
|
|
||||||
/* DEPRECATION:
|
/* NOTE: The capability to write particular media types is also
|
||||||
Start of information from mode page 2Ah which is declared
|
announced by their profile number being in the list returned
|
||||||
obsolete by MMC-5. Do not rely on this, if you can get a
|
by burn_drive_get_all_profile(). This is the only way to
|
||||||
meaningful reply from burn_drive_get_all_profiles()
|
inquire types DVD-RW, DVD+R, DVD+R DL, DVD+RW, BD-R, BD-RE.
|
||||||
*/
|
*/
|
||||||
/** Can the drive read DVD-RAM discs */
|
/** Can the drive read DVD-RAM discs */
|
||||||
unsigned int read_dvdram:1;
|
unsigned int read_dvdram:1;
|
||||||
@ -622,13 +622,12 @@ struct burn_drive_info
|
|||||||
/** Can the drive simulate a write */
|
/** Can the drive simulate a write */
|
||||||
unsigned int write_simulate:1;
|
unsigned int write_simulate:1;
|
||||||
|
|
||||||
/** Can the drive report C2 errors */
|
/** DEPRECATED: Can the drive report C2 errors */
|
||||||
unsigned int c2_errors:1;
|
unsigned int c2_errors:1;
|
||||||
|
|
||||||
/** The size of the drive's buffer (in kilobytes) */
|
/** DEPRECATED: The size of the drive's buffer (in kilobytes) */
|
||||||
int buffer_size;
|
int buffer_size;
|
||||||
|
|
||||||
/* End of DEPRECATION */
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The supported block types in tao mode.
|
* The supported block types in tao mode.
|
||||||
@ -1646,7 +1645,7 @@ void burn_disc_erase(struct burn_drive *drive, int fast);
|
|||||||
/** Format media for use with libburn. This currently applies to DVD-RW
|
/** Format media for use with libburn. This currently applies to DVD-RW
|
||||||
in state "Sequential Recording" (profile 0014h) which get formatted to
|
in state "Sequential Recording" (profile 0014h) which get formatted to
|
||||||
state "Restricted Overwrite" (profile 0013h). DVD+RW can be "de-iced"
|
state "Restricted Overwrite" (profile 0013h). DVD+RW can be "de-iced"
|
||||||
by setting bit2 of flag. DVD-RAM and BD-RE may get formatted initially
|
by setting bit4 of flag. DVD-RAM and BD-RE may get formatted initially
|
||||||
or re-formatted to adjust their Defect Managment.
|
or re-formatted to adjust their Defect Managment.
|
||||||
This function usually returns while the drive is still in the process
|
This function usually returns while the drive is still in the process
|
||||||
of formatting. The formatting is done, when burn_drive_get_status()
|
of formatting. The formatting is done, when burn_drive_get_status()
|
||||||
|
@ -151,6 +151,8 @@ struct burn_feature_descr {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
unsigned char data_lenght;
|
unsigned char data_lenght;
|
||||||
|
|
||||||
|
/* Additional bytes after the first 4 bytes of the descriptor */
|
||||||
unsigned char *data;
|
unsigned char *data;
|
||||||
|
|
||||||
struct burn_feature_descr *next;
|
struct burn_feature_descr *next;
|
||||||
|
Loading…
Reference in New Issue
Block a user