Persuading the BTC 1004IM (very long)

Warning: This post is narrative and a bit lengthy, so if you’re not comfortable with, or don’t care for, the gory details, you may want to skip it.


This post is intended to give a heads-up to all those who are having problems with their BTC 1004IM DVD rewriters. If you’re one of them, don’t give up on the drive just yet. IMHO, it’ll work out eventually, and the support you’ll receive from BTC (Marco) is outstanding. Actually, in my opinion the BTC 1004IM is a rather nice drive and I’ve found it to be quite forgiving. It even survived some serious hot-plugging. And no, BTC does NOT pay me for publishing this opinion. Which is very unfortunate. My bet is that, apart from the incompatible media issue which is something BTC will have to do some fast work on, most of the problems you may run into will turn out to be related not to the hardware but to your system configuration and to the software environment you’re working in.

That said, posting my experience with the drive in this forum may give some of you food for thought. Mind you, I’m not saying that what worked for me will work for you also, but it may give you some new idea ideas about what to try if your drive doesn’t behave like it should. Just treat it as additional information. For others, it may make good reading. Either way is all right with me.

About two weeks ago I bought a BTC 1004IM which, right from the beginning and up to several days ago, gave me nothing but trouble. Almost the only positive things I could have said after the first couple of days was that the drive installed easily and is very quiet. And oh, by the way, that it could read both CDs and DVDs. That was all - it would neither write error-free CDs and CD-Rs, nor would it, even using a popular burning tool, make an attempt at writing to any DVD.

To write to the CD media, I used CloneCD v4.2.0.2. On any CD medium, the first read errors started at around 44 per cent of the disk volume and increased dramatically up to approx. 55 per cent. The rest of a disk, any disk at all, was completely unreadable. All the CD-Rs I coastered in the BTC drive were written from fully functional CloneCD images stored on my harddisk. Two attempts at writing fully functional CloneCD images to CD-RW media failed thoroughly. The CD-RWs were not readable in any of my three drives. Later I read somewhere that CloneCD and the BTC rewriter were incompatible. I did not follow up on this, however.

For writing to DVDs, I wanted to use my working installation of Nero 5.5.10.54, but as this had come bundled with my Cyberdrive CW038D rewriter, it strictly refused to deal with the new kid on the block. So, rather than trying out the Nero 5dotsomething which was bundled with the 1004IM, I deleted my Nero 5 installation and installed the Nero 6.0.0.23 demo. Alas, no luck from the very start - exactly when the drive should have started writing to a DVD, Nero 6 froze without warning, at the same time illuminating the harddisk LED and bringing the entire system to a screeching halt. Only a hard reset would help. Repeated installs of Nero 6.0.0.23 and later 6.0.0.28, with and without using either the Nero cleaning tools or thorough manual cleaning of the registry, did not have any noticeable effect. Nero kept freezing.

As the BTC rewriter had come with firmware V0040, I hoped that upgrading to V0043 would solve my problems or at least improve things a bit. No such luck. For reasons since reported in this forum, flashing under Windows using the BTC-provided flash package failed miserably. I therefore resorted to downloading the Dangerous Brothers’ rpc1 DUAL43 firmware which seems to be based on BTC’s V0043 firmware, booted from a pure DOS disk and set out to flash the drive using MTKFLASH 1.80.1 with the downloaded firmware. This is when I killed my drive. After the failed flashing attempt, the BTC drive was no longer recognized by the BIOS.

I freely admit that this was my mistake, and mine alone, although MTKFLASH is not too clear on its helppage. As I had only one file instead of 16 separate files, i. e. one file for each of the 16 banks of the BTC 1004IM flash chip, I had attempted to flash the entire chip in one run without using the /M switch so conveniently provided by MTKFLASH exactly for this purpose. The result was that I was left with the data in one bank only, i. e. the last one that had been written to. This had me running in circles for a while. I finally found out the hard way that, if you don’t specify the /M switch, MTKFLASH will erase the entire chip every time before writing to any bank. Sorting this out cost quite a few hours of precious night rest, but finally I was able to revive my drive again. Kudos to Marco - he has provided me with a lot of helpful information and some more tangible assistance. Hot-plugging the drive like he suggested made my hair stand on end, but even though it didn’t really get me out of the bind I was in, at least it didn’t damage the drive. It was just that hot-plugging was not the right solution to my particular problem.

The basic problem, however, had not been solved by upgrading to firmware V0043. I did not want to rely on any CD written to by the BTC drive, and while simulation went without a glitch every time, Nero still froze when it ought to have started writing to a DVD medium. By mere coincidence, I noticed that after two or three minutes into the freeze some service (Nero probably) would pop up a window which reported an unspecified “SCSI error”. This is when I began to suspect a) CloneCD and b) my Promise Ultra UDMA drivers. Only after said window had appeared, Nero could be shut down, but not called up again without first restarting my machine. During shutdown, Windows hung every time. If I did not shut the system down after Nero had frozen, it was extremely unstable even though it appeared to have normal functionality. Sooner or later it would freeze or go BSOD on me for no obvious reason. And, until Windows was eventually shut down and the system either shut off or rebooted, the harddisk LED would remain on permanently, irrespective of whether there was harddisk activity or not.

  • An aside to facilitate understanding of the following: my mainboard is manufactured by Soyo and carries, in addition to a VIA 266A chipset, an on-board Promise chip powering two additional IDE channels, which means that I can attach a total of eight IDE devices. Tertiary and quaternary masters are a LiteOn DVD ROM LTD163 and an internal Iomega ZIP drive, respectively. Slaved drives are not present on these channels. I’m running a Windows 98 SE environment, BTW. -

I deinstalled Nero again and, for testing purposes, installed Alcohol 120 trial because I wanted to know whether a different program would be able to hook up with my BTC drive and my probs were a Nero issue only, or if I was facing more fundamental difficulties. Alcohol 120 would write a CloneCD image using the BTC 1004IM but I could not test whether it would also write to a DVD medium because it staunchly refused to read anything from my LiteOn DVD ROM drive which is sitting in the tertiary IDE master position. After reinstalling Nero, for the umpteenth time, Nero showed no inclination at all to set Rome afire but just presented me with some more freezes instead. I was completely baffled.

Like I mentioned above, I held my Ultra drivers in deep mistrust. The drivers provide UDMA functionality to the Promise chip powering my third and fourth IDE channels. They had given me trouble before, and are still causing my system to delay for 16 seconds when booting into Windows. (Hey, anyone has an idea about what happens during that delay, or know a cure for this phenomenon? Any takers? It’s getting on my nerves.) So I reinstalled and then updated them to the latest version when reinstalling alone didn’t improve things. Still Nero was on strike. So after all, it wasn’t the Ultra drivers either.

Around that time, I had another close look at the Nero log files where I found more or less interesting things like this:

Recorder: <DVDRW IDE1004> Version: 0043 - HA 3 TA 0 - 6.0.0.28
Adapter driver: <viadsk> HA 3
Drive buffer : 2048kB
Bus Type : default (0) -> SCSI, detected: ATAPI
CD-ROM: <ELBY DVD-ROM >Version: 1.0 - HA 0 TA 0 - 6.0.0.28
Adapter driver: <elbyvcd> HA 0
LITEON DVD-ROM LTD163 (Target 0, K:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
DVDRW IDE1004 (Target 0, M:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
CyberDrv CW038D CD-R/RW (Target 1, L:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
ELBY DVD-ROM (Target 0, N:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
AXV CD/DVD-ROM (Target 0, O:): Autoinsert Off, DMA ?, Disconnect ?, SyncDataXfer ?

and this:

01:35:46 #20 CDR -1023 File ThreadedTransferInterface.cpp, Line 1548
Command sequence error

01:35:46 #21 TRANSFER -27 File ThreadedTransferInterface.cpp, Line 1548
Could not perform start of Disc-at-once

01:35:46 #22 Text 0 File dlgbrnst.cpp, Line 1658
Set remaining time: 0:00,000 (0ms) -> OK

01:35:46 #23 Phase 38 File dlgbrnst.cpp, Line 1800
Burn process failed at 2x (2.760 KB/s)

and also this:

Existing drivers:
File ‘IoSubSys\SCSI1HLP.VXD’: Ver=4.10.1998, size=19270 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\NEROCD95.VXD’: Ver=4.5.0.14, size=39882 bytes, created 11.03.2002 10:55:38
File ‘IoSubsys\CDFS.VXD’: Ver=4.00.1030, size=79098 bytes, created 09.01.1999 19:21:58
File ‘IoSubsys\ESDI_506.PDR’: Ver=4.10.2225, size=24430 bytes, created 02.02.2000 16:46:04
File ‘…\System\Vmm32\Ios.vxd’: Ver=4.10.2222, size=69566 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\Disktsd.vxd’: Ver=4.10.2222, size=18809 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\ElbyCDIO.vxd’: Ver=4, 2, 0, 0, size=33031 bytes, created 22.11.2002 16:07:40
File ‘IoSubsys\VIADSK.MPD’: Ver=2.0.950.3014, size=66621 bytes, created 09.10.2001 14:00:00 (Adapter driver for rec)
File ‘IoSubsys\sojuscsi.mpd’: Ver=3.41.0.0 built by: WinDDK, size=4096 bytes, created 28.09.2003 10:57:48 (Adapter driver for src)

I noticed that entry showing the CloneCD virtual device driver, remembered the alleged SCSI error which had been reported consistently by Nero and decided that the CloneCD driver just might be the cause for a yet unspecified conflict. I also decided that, if need be, I could do without CloneCD, so I deinstalled it. Much to my dismay, deinstalling CloneCD including its virtual CD drive also made no difference. Nero would still hang and refuse to write to a DVD.

For good measure, I tried the Nero Image Drive but this I should have left well alone. It cost me all the drives on the tertiary and quaternary IDE channels. One minute they were here, the next they weren’t. They wouldn’t even come back after a reboot. The Nero history log reflects this -

Nero Version: 6.0.0.28
Recorder: <DVDRW IDE1004> Version: 0043 - HA 1 TA 0 - 6.0.0.28
Adapter driver: <viadsk> HA 1
Drive buffer : 2048kB
Bus Type : default (0) -> SCSI, detected: ATAPI
CD-ROM: <AXV CD/DVD-ROM >Version: 2.2a - HA 2 TA 0 - 6.0.0.28
Adapter driver: <sojuscsi> HA 2
DVDRW IDE1004 (Target 0, M:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
CyberDrv CW038D CD-R/RW (Target 1, L:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
AXV CD/DVD-ROM (Target 0, O:): Autoinsert Off, DMA ?, Disconnect ?, SyncDataXfer ?

ELBYCDIO.VXD was gone, of course, because I had uninstalled CloneCD - but where was my ZIP drive? And what about my LiteOn DVD-ROM drive? Why had Nero crashed them? I haven’t found out yet; I’m a bit reluctant to let Nero mess up my system again. I just played back a very current registry file which I had set aside for just such an event, and voilà ! Both of my missing drives were on the line again.

My next approach to nailing down the problem was relocating IDE devices as far as feasible, but to no avail either. With the two additional channels driven by the Promise controller, I have a lot of IDE to play with. Originally, I had connected the BTC 1004IM drive as a secondary slave, the position in which it is supposed to operate best. Secondary master at that time was a Cyberdrive CW038D CD rewriter. It did not really matter, however, which channel the BTC drive was connected to, nor whether the drive was jumpered as a slave or a master, or a standalone. None of the configurations I tried made my problem go away, and the behavior of the drive would not change.

More than ever before, my prob smelled like a driver conflict to me. Therefore, the next logical step was to reinstall the VIA chipset drivers, one after the other, and to watch what would happen. I decided to begin with the VIA ATAPI Vendor Support Driver (VATAPI.VXD) which, according to my mind, I had never installed, but just to be on the safe side, I deinstalled it anyway. Like I expected, there was no change. Nero still could not write to a DVD.

Next on my list was the IRQ Routing Miniport Driver (VIADSK.MPD and VIAIDE.VXD) under the heading VIA Bus Master PCI IDE Controller. I deinstalled them although I had rather come to like the VIA utility IDETool which relied on the VIA implementation of the Master PCI IDE Controller and which had provided a very comfortable way of setting the transfer rates of my IDE drives.

This did it at long last. I almost couldn’t trust my eyes. In the system control menu, I finally was able to check the DMA transfer mode for the IDE drives connected to my primary and secondary IDE channels (the Promise controller enables DMA by default). Nero wrote my test file to a DVD as if there had never been a problem before. The Nero history log showed the following:

Nero Version: 6.0.0.28
Recorder: <DVDRW IDE1004> Version: 0043 - HA 1 TA 0 - 6.0.0.28
Adapter driver: <ESDI_506> HA 1
Drive buffer : 2048kB
Bus Type : default (0) -> ATAPI, detected: ATAPI
CD-ROM: <LITEON DVD-ROM LTD163 >Version: GH5K - HA 0 TA 0 - 6.0.0.28
Adapter driver: <ultra> HA 0
LITEON DVD-ROM LTD163 (Target 0, K:): Autoinsert Off, DMA ?, Disconnect On, SyncDataXfer Off
DVDRW IDE1004 (Target 0, M:): Autoinsert Off, DMA Off, Disconnect On, SyncDataXfer Off
CyberDrv CW038D CD-R/RW (Target 1, L:): Autoinsert Off, DMA Off, Disconnect On, SyncDataXfer Off
AXV CD/DVD-ROM (Target 0, O:): Autoinsert Off, DMA ?, Disconnect ?, SyncDataXfer ?

Note that the entry <viadsk> is gone, replaced by <ESDI_506>. And lo! there is that Ultra driver for my LiteOn DVD ROM drive on the Promise chip! This looked indeed promising. Best of all, however, I liked the following entry:

02:16:24 #37 Phase 37 File dlgbrnst.cpp, Line 1800
Burn process completed successfully at 2x (2.760 KB/s)

and the verfication results:

02:19:35 #41 Text 0 File UDFCompilationImpl.cpp, Line 1362
Dateien gesamt=98, identisch=98, verschieden=0, nicht zugreifbar=0, übersprungen=0.

02:19:35 #42 Phase 80 File dlgbrnst.cpp, Line 1800
Data verification completed successfully

The list of existing drivers had also changed:

Existing drivers:
File ‘IoSubSys\SCSI1HLP.VXD’: Ver=4.10.1998, size=19270 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\NEROCD95.VXD’: Ver=4.5.0.14, size=39882 bytes, created 11.03.2002 10:55:38
File ‘IoSubsys\CDFS.VXD’: Ver=4.00.1030, size=79098 bytes, created 09.01.1999 19:21:58
File ‘IoSubsys\ESDI_506.PDR’: Ver=4.10.2225, size=24430 bytes, created 02.02.2000 16:46:04
File ‘…\System\Vmm32\Ios.vxd’: Ver=4.10.2222, size=69566 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\Disktsd.vxd’: Ver=4.10.2222, size=18809 bytes, created 05.05.1999 22:22:00
File ‘IoSubsys\ESDI_506.PDR’: Ver=4.10.2225, size=24430 bytes, created 02.02.2000 16:46:04 (Adapter driver for rec)
File ‘IoSubsys\ULTRA.MPD’: Ver= 2.00.0.42, size=41124 bytes, created 27.03.2003 14:28:48 (Adapter driver for src)

Note also that several of the entries shown here are different from those listed farther above: ELBYCDIO.VXD is still gone of course, but the VIA miniport driver VIADSK.MPD is no longer listed either. New is ULTRA.MPD, which is the miniport driver for my tertiary and quaternary IDE channels. ESDI_506.PDR appears twice - I’m wondering why and to which purpose, but this is something I can live with as long as it doesn’t give me problems.

To sum it up in one sentence: at first glance, all the issues I had with the BTC 1004IM appear to be resolved. Apart from the horror story about my (temporarily) dead drive - and it could be argued that this was not really the drive’s fault - my problems hadn’t really been BTC 1004IM problems, but rather problems with software, drivers and the general layout/configuration of my system. More and more I tend to think that it was not the BTC rewriter which had caused my problems but that they had been lying in ambush ever since I built the system. All the BTC drive did was bring them out into the open where I could stumble over them. More acting like a catalyst, really.

Everything I was able to find out about the matter indicates a clash between the native Windows ESDI port driver and the VIA miniport driver as the main cause for the drive’s inability to function. Now Nero is finally performing and doing what it was supposed to have done all along - namely, to write data to DVD media. As an additional bonus for me, the Alcohol 120 trial installation will now recognize my LiteOn DVD ROM drive. One of these days when I have time to waste and nothing better to do I’m planning to give the VIA miniport driver another chance. After all, with the VIA 4in1 driver package, the sequence in which you’ll install the drivers does make a difference, and I DID like the way VIA’s IDETool let me set the drives’ transfer rates.

Up to now, the drive has handled all the DVD media I fed it without complaining and with good results. For writing the lead-outs on two of the DVD-RW media (MID: TDK502sakuM3 and OPTODISCK001), the drive took its time, however - five resp. six minutes which is more than a tad too long for my taste.

Anyway - from now on I don’t expect more than the normal hassles and probs caused by a new piece of equipment.

Things I haven’t done yet:

  1. I haven’t done a thorough analysis of any of the disks written by my BTC 1004IM using tools like KProbe or similar. (I don’t know enough yet about what exactly to look for in KProbe.) My testing essentially consisted in writing a lot of heterogeneous data to the disks, including very large .ZIP files (sizes up to and slightly above 300 MB) and reading them back both on the BTC drive and on my LiteOn CD-ROM. Then I checked whether I could painlessly extract selected files in the archives. Up to now, I haven’t run into problems. Do I hear comments to the effect that this method lacks professionalism? This may very well be true, but so what - fact is that it’s working for me.

  2. Until this day, I haven’t burned any video disks on the BTC rewriter. I intend to use the drive mainly for backing up data, so video is not among my foremost interests. There may be some surprises waiting for me if I ever get around to working with video data, but right now I just don’t care. At present, this is just one more bridge I’ll think about crossing when I reach it, not before. If ever.

  3. I have yet to read CD media which were written in the BTC 1004IM in my standalone DVD players. I’m talking audio here. But with me, this is Priority Class 2 also.

Have fun with your drives, guys and gals. Now I’m going to have some fun with mine.

Regards, Martin A