Writing CDs on Memorex Dual X1

vbimport

#1

My day job currently has me writing CD burning software, so far things are working just fine, except for this one drive. The Memorex DVD+/-RW Dual-X1, which I belive this is the same as the pioneer DVD-A06. (I do not have that model to test with though)

It writes DVDs just fine, and other software can write CDs on this drive. However I cannot successfully write CDs (CD-R and CD-RW). Because other software can make it work I’m sure I’m doing something wrong, and hoping someone else can clue me in as to what.

Starting with a blank CD, I use get track info to get the next writeable address. (0). Then mode select to select multisession, and packet writes (mode one data blocks). When a write(10), which fails, seq:5, ASC:64h (Illegal Mode for this track). According to the drive setting the track mode is not allowed in this mode page.

Trying a different track, the above steps, except selecting Track at Once writes. The writes now appear to succeed. Close the track, then close the session. It appears I should have data on this disk, but it cannot be read. I again get Seq:5 ASC:64h (Illegal Mode for this track). Interestingly, the valid bit is set in the sense code, but I don’t know what that means. (the information field is all 0)

Things I’m not doing: power calibration, or speed selection. This shouldn’t affect anything should it?

Note that this software has been tested on several other drives, and it works just fine. All tests have been done with enough different media that I’m sure there isn’t a problem there.


#2

In further investigation we have discovered that this drive is writing mode 0 tracks. (Audio, no pre-emphasis). This should be 4 or 5 (data tracks). We are setting this in the write parameters mode page, not that it makes a difference, the drive reports that this is not a changeable value.

Is there some other way of setting this that we have missed?


#3

For those interested, I found the problem: the firmware does not report correct values for that is changeable in mope page 5. My code zeros out all non-changeable values. Tre drive claims that Track Mode is not changeable, so I don’t change it. In fact it is changeable, and by working around this area I’m able to make the drive work.

Is it worth talking to Memorex about this issue, or are they like most places, unwilling to admit to firmware bugs.