Jump to content

Cosmetic "bug" in status bar at end of erase of DVD+RW


Defenestration

Recommended Posts

I've just burned my first image to a RW DVD disc (DVD+RW) and before the burn ImgBurn promted me that the disc had to be fully formatted before use. I clicked OK and the erasing procedure begain. At the end, the Imgburn status bar showed "99% - Erasing" which is OK, but then showed "0% - Erasing" for a bit until the burn procedure started. It would be nice if at the end of the erase, the drive showed "100% - Erasing" or 'Preparing for burn...' (or something like that)

 

Now, I know you say that Imgburn only displays what the drive reports, but this "bug" does not appear to fall into that category.

 

--- You can count on me to only report the really important showstopper bugs! :w00t::P

 

A couple of questions:

 

1) When using a RW disc, does Imgburn always leave it un-finalized after a burn (ie. you have to use the menu option Tools->Drive->Close->Disc to do that) ?

 

I ask because <spit> Nero :stinker: has an option on the burn dialog "Allow files to be added later".

 

2) A programming question - During the burn, the taskbar button for ImgBurn shows the percent complete, but the ImgBurn window title bar does not. How do you do this because I thought the taskbar button just used the text from the window title bar ?

 

3) My DVD+RW discs are only rated at 4x, but the Write Speed was left at 12x (ie. the speed I normally burn DVD-R's at). The burn completed at 4x, but I wanted to clarify how Imgburn works in this regard. If the selected speed is greated than the DVD burners rated max speed for this disc, does Imgburn just use ignore the specified speed and use the burners rated speed instead ?

Link to comment
Share on other sites

This isn't a bug, DVD+RW erasing (formatting) is a 2 part process.

 

The drive basically reports progress for both parts individually - and as you said, I report what the drive says.

 

So you'd get a 0 - 100% (or 99%) quickly - that's the foreground part.

Then the background part starts - hence it goes back to 0%.

 

You drive must not report the status properly for background formatting, and yet it's telling ImgBurn that the 'progress' bytes are valid in the sense data it's returning.

 

So the bug is in your firmware I'm afraid ;)

 

You can confirm this by pressing F8 and watching the 'Sense Area' info during an erase / format.

 

Byte 15 will be set to 0x80 if status/progress is being reported - or at least if it SHOULD be being reported!

 

Bytes 16 + 17 (as a WORD) are the progress, ((progress / 65536) * 100) to get the % complete value.

 

1) ImgBurn always closes the discs automatically.

 

2) Borland uses a hidden main form so you can set the taskbar caption to whatever you want (being that it's really setting the main 'hidden' window caption). You can then set the logical main form caption to whatever you want without effecting the taskbar.

 

3) It'll still send the speed you've selected regardless of what it is and what's supported or not. It really doesn't care! The drive handles it from there.

For erasing/formatting though, this is always performed at max speed and the 'Write Speed' box isn't even looked at.

Link to comment
Share on other sites

So you'd get a 0 - 100% (or 99%) quickly - that's the foreground part.

Then the background part starts - hence it goes back to 0%.

I understand what you're saying, but I'm not so sure. It took quite a while to get up to 99% (I assume because it was the background part which was actually doing ther erasing part). The 0% occurred after this and lasted only a few seconds before continuing with the burn of the ISO.

 

Is there no part in the IB code which could cause this after an erase, but before the burn (eg. displaying static text, or static text built with the percent variable) ?

 

I will check with the F8 when I next do an erase and report back here.

 

 

Thanks for the info about the taskbar text. I'll try to reporoduce this in VC++.

Link to comment
Share on other sites

Oh ok, I was under the impression the 0% lasted ages - so I thought it would have been the background part of the forum.

 

No there is no way the 0% could stay there otherwise.

 

If the status valid byte is not set to 0x80, the percentage is removed from the status bar and task bar.

 

At the end of that function, it's set to 100% - so if it was ever a 'static text' problem, it would read 100%, not 0%.

Link to comment
Share on other sites

You can confirm this by pressing F8 and watching the 'Sense Area' info during an erase / format.

 

Byte 15 will be set to 0x80 if status/progress is being reported - or at least if it SHOULD be being reported!

 

Bytes 16 + 17 (as a WORD) are the progress, ((progress / 65536) * 100) to get the % complete value.

I've just done another erase of a DVD+RW and below is the last part of the log for this erase with I/O Interface debug logging enabled. I've highlighted the line where it reaches 100%, after which the drive sends 0% (ie. 00 05) for about 5 seconds. As the status is '80', I guess it's the drive at fault then. Is this common with drives ?

 

I 19:35:43 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 FF 09 D0 09 00 00 00 00

I 19:35:44 [0:0:0]_NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:44 CDB: 03 00 00 00 18 00

I 19:35:44 CDB Interpretation: Request Sense

I 19:35:44 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 FF 5A D0 5A 00 00 00 00

I 19:35:45 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:45 CDB: 03 00 00 00 18 00

I 19:35:45 CDB Interpretation: Request Sense

I 19:35:45 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 FF AD D0 AD 00 00 00 00

I 19:35:46 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:46 CDB: 03 00 00 00 18 00

I 19:35:46 CDB Interpretation: Request Sense

I 19:35:46 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 FF FF D0 FF 00 00 00 00

I 19:35:47 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:47 CDB: 03 00 00 00 18 00

I 19:35:47 CDB Interpretation: Request Sense

I 19:35:48 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:49 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:49 CDB: 03 00 00 00 18 00

I 19:35:49 CDB Interpretation: Request Sense

I 19:35:49 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:50 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:50 CDB: 03 00 00 00 18 00

I 19:35:50 CDB Interpretation: Request Sense

I 19:35:50 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:51 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:51 CDB: 03 00 00 00 18 00

I 19:35:51 CDB Interpretation: Request Sense

I 19:35:51 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:52 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:52 CDB: 03 00 00 00 18 00

I 19:35:52 CDB Interpretation: Request Sense

I 19:35:52 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:53 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:53 CDB: 03 00 00 00 18 00

I 19:35:53 CDB Interpretation: Request Sense

I 19:35:53 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:54 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:54 CDB: 03 00 00 00 18 00

I 19:35:54 CDB Interpretation: Request Sense

I 19:35:54 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:55 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:55 CDB: 03 00 00 00 18 00

I 19:35:55 CDB Interpretation: Request Sense

I 19:35:55 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 04 04 00 80 00 05 D0 05 00 00 00 00

I 19:35:56 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:56 CDB: 03 00 00 00 18 00

I 19:35:56 CDB Interpretation: Request Sense

I 19:35:56 BUFFER: 70 00 00 00 00 00 00 0A 00 00 00 00 00 00 00 00 00 00 D0 00 00 00 00 00

I 19:35:58 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:58 CDB: 51 00 00 00 00 00 00 00 20 00

I 19:35:58 CDB Interpretation: Read Disc Information

I 19:35:58 BUFFER: 00 28 1E 01 01 01 01 03 FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

I 19:35:58 [0:0:0] _NEC DVD_RW ND-4550A 1.X7 (E:) (1394)

I 19:35:58 CDB: 1E 00 00 00 00 00

I 19:35:58 CDB Interpretation: Prevent/Allow Medium Removal

I 19:35:58 Operation Successfully Completed! - Duration: 00:14:27

 

 

BTW, as the drive can only report a maximum of 65535, I would suggest that you should use this value instead of 65536 in the percentage calculation. Yet another showstopper moi has spotted :D

Edited by Defenestration
Link to comment
Share on other sites

You could, if you were inclined, add a workaround so that once the erase had reached 100% for the background erase, it would check to see if the percetage being sent is less than this. If it is, ImgBurn would not change the display.

 

On the other hand..... you could not :D

Link to comment
Share on other sites

I don't like doing things like that because you can miss stuff.

 

If I report exactly what's being told to me by the drive, nobody has a leg to stand on - as if there's a problem, it's the drives fault!

 

(As is the case here :P )

 

Oh and as for the 65535 Vs 65536 stuff, I actually had to double check my code when I posted my initial response.

I too found it odd that it could never actually get to 100%. However, the value was/is taken from the specs and who am I to argue with them?!

 

Also, many drives stick on 99% (FF FF) for ages. I'd rather they did that than stuck on 100%.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.