> Hi,
Hi Richard.
Quote:> Can you give me a clue as to how you made cdrecord 1.5 work with FreeBSD?
Sure, I'll try.
For what it's worth, I find that cdrecord 1.5 works very nicely with FreeBSD.
At the moment, I'm happy enough with it not to have to boot Windoze to use
Jeff Arnold's (www.goldenhawk.com) excellent CDRWIN program on Windoze
95 at all...
I just worked out how to make 'cdrecord' duplicate a CD recordable
master, and it does that on-the-fly too... As it also supports mastering
audio CDs from .WAV files, I think that I'm pretty much all set here.. :=)
Quote:> I've hit a stone wall trying to make cdrecord 1.5 work with FreeBSD 2.2.1
> and a Ricoh 6200.
I seem to recollect that the list of supported CDRs is quite short. Looking
in '/sys/scsi/worm.c', it appears to be the Plasmon 410, the Philips CDD2000 and
the HP 4020i (which is basically a Philips).
Probably wouldn't be too hard to add others, but this list (and the presence of
the
CDD2000 on it) is at least one reason I bought this model of CDR (the price of
$220
for a refurb with a years warranty from Philips was hard to turn down, too).
Quote:> The drive reads fine under FreeBSD, and reads/writes
> fine under Windoze NT 4.0 and the supplied software, Easy CD Pro 2.11.
> But, all I get is:
<SNIP>
Quote:> which I think suggests that the ioctl isn't getting through. I've tried
> linking /dev/scgx to /dev/cd0a, /dev/cd0c, and /dev/rcd0.ctl. I even
> made a /dev/cd0.ctl:
<SNIP
Quote:> but that didn't work either!
> What magic incantation am I missing? At this point, I'll do anything
> so that I can wipe that stupid Windoze NT off my other disk...
A very laudable aim...
I think the missing piece of the puzzle is that you're trying to write to a
CDROM...
There's a few clues in various places that this isn't the way to go, but no-one
really spells it out anywhere in the various docs I saw.
I cannot say that this recipe is definitively correct, merely that it works fine
for me
on FreeBSD 2.2.2-RELEASE with a Philips CDD2000 and cdrecord 1.5...
What I did was:
i) Include the 'worm', 'pt' and 'sctarg' drivers in the kernel.
ii) Include the 'su' (SCSI user) and 'ssc' (Super SCSI) pseudo-devices in the
kernel.
I organised this so that 'worm0' came before 'cd0' - this also put my CD back to
'cd0', which
is nice. I lifted the lines from the LINT file, and moved the declaration of
'scbus0' to the top, like
this:
controller scbus0
device worm0 at scbus? # SCSI worm
device pt0 at scbus? # SCSI processor type
device sctarg0 at scbus? # SCSI target
# These are only for watching for bitrot in old SCSI code.
pseudo-device su #scsi user
pseudo-device ssc #super scsi
device sd0
device od0 #See LINT for possible `od' options.
device st0
etc. etc. etc.
I see this when booting (or from 'dmesg'):
ahc0 <Adaptec 2940 SCSI host adapter> rev 3 int a irq 11 on pci0:14
ahc0: aic7870 Single Channel, SCSI Id=7, 16 SCBs
ahc0 waiting for scsi devices to settle
ahc0:A:5: refuses synchronous negotiation. Using asynchronous transfers
(ahc0:5:0): "IMS CDD2000/00 1.26" type 5 removable SCSI 2
worm0(ahc0:5:0): Write-Once
(ahc0:6:0): "PLEXTOR CD-ROM PX-6XCS 1.06" type 5 removable SCSI 2
I think the implication is that any CDRs not recognised by the worm driver
probably won't be usable...
Now make the 'worm' device, you can use the MAKEDEV script for this.
Also, you need to make the 'su' devices. Use the script at the bottom of the
'README.xxxBSD' file in the 'cdrecord' distribution.
Now create a link to 'scgx' from 'rworm0.ctl'. You're all set.
You can still mount CDs on the CDR, just use 'worm0' instead of 'cd0'.
Hope this helps.
Cheers,
AS