Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dragonfly_bsd [2018/12/29 10:46]
beandog
dragonfly_bsd [2019/05/24 15:57]
beandog [DragonFly BSD]
Line 6: Line 6:
  
 The default device for the optical drive is ''/​dev/​cd0''​ The default device for the optical drive is ''/​dev/​cd0''​
 +
 +It not already installed, you will need automake and autoconf:
 +
 +<​code>​
 +pkg install autoconf automake pkgconf
 +</​code>​
  
 ==== dvd_info ==== ==== dvd_info ====
Line 15: Line 21:
 </​code>​ </​code>​
  
-It not already installed, you will need automake and autoconf: 
- 
-<​code>​ 
-pkg install autoconf automake 
-</​code>​ 
  
 Download the source code from github, and build: Download the source code from github, and build:
Line 43: Line 44:
 ./configure ./configure
 make make
 +</​code>​
 +
 +==== research notes ====
 +
 +<​code>​
 +man 4 cd:
 +
 +CDIOCRESET
 +CDIOCSETDEBUG
 +CDIOCCLRDEBUG Turn on (off) debugging for the appropriate device.
 +
 +CDIOCSTART
 +CDIOCSTOP Tell the drive to spin-up (-down) the CD-ROM.
 +
 +CDIOCALLOW
 +CDIOCPREVENT Tell the drive to allow (prevent) manual ejection of the CD-ROM disc.  Not all drives support this feature.
 +
 +
 +CDIOCEJECT
 +
 +CDIOCCLOSE
 +
 +man 9 cd:
 +
 +     ​CD_Q_NO_TOUCH ​   This flag tell the driver not to probe the drive at
 +                      attach time to see if there is a disk in the drive and
 +                      find out what size it is.  This flag is currently
 +                      unimplemented in the CAM cd driver.
 +
 +     ​CDIOCCAPABILITY ​     (struct ioc_capability) Retrieve information from
 +                          the drive on what features it supports. ​ The
 +                          information is returned in the following structure:
 +
 +                                struct ioc_capability {
 +                                        u_long ​ play_function;​
 +                                #define CDDOPLAYTRK ​    ​0x00000001
 +                                        /* Can play tracks/​index */
 +                                #define CDDOPLAYMSF ​    ​0x00000002
 +                                        /* Can play msf to msf */
 +                                #define CDDOPLAYBLOCKS ​ 0x00000004
 +                                        /* Can play range of blocks */
 +                                #define CDDOPAUSE ​      ​0x00000100
 +                                        /* Output can be paused */
 +                                #define CDDORESUME ​     0x00000200
 +                                        /* Output can be resumed */
 +                                #define CDDORESET ​      ​0x00000400
 +                                        /* Drive can be completely reset */
 +                                #define CDDOSTART ​      ​0x00000800
 +                                        /* Audio can be started */
 +                                #define CDDOSTOP ​       0x00001000
 +                                        /* Audio can be stopped */
 +                                #define CDDOPITCH ​      ​0x00002000
 +                                        /* Audio pitch can be changed */
 +
 +                                        u_long ​ routing_function;​
 +                                #define CDREADVOLUME ​   0x00000001
 +                                        /* Volume settings can be read */
 +                                #define CDSETVOLUME ​    ​0x00000002
 +                                        /* Volume settings can be set */
 +                                #define CDSETMONO ​      ​0x00000100
 +                                        /* Output can be set to mono */
 +                                #define CDSETSTEREO ​    ​0x00000200
 +                                        /* Output can be set to stereo (def) */
 +                                #define CDSETLEFT ​      ​0x00000400
 +                                        /* Output can be set to left only */
 +                                #define CDSETRIGHT ​     0x00000800
 +                                        /* Output can be set to right only */
 +                                #define CDSETMUTE ​      ​0x00001000
 +                                        /* Output can be muted */
 +                                #define CDSETPATCH ​     0x00008000
 +                                        /* Direct routing control allowed */
 +
 +                                        u_long ​ special_function;​
 +                                #define CDDOEJECT ​      ​0x00000001
 +                                        /* The tray can be opened */
 +                                #define CDDOCLOSE ​      ​0x00000002
 +                                        /* The tray can be closed */
 +                                #define CDDOLOCK ​       0x00000004
 +                                        /* The tray can be locked */
 +                                #define CDREADHEADER ​   0x00000100
 +                                        /* Can read Table of Contents */
 +                                #define CDREADENTRIES ​  ​0x00000200
 +                                        /* Can read TOC Entries */
 +                                #define CDREADSUBQ ​     0x00000200
 +                                        /* Can read Subchannel info */
 +                                #define CDREADRW ​       0x00000400
 +                                        /* Can read subcodes R-W */
 +                                #define CDHASDEBUG ​     0x00004000
 +                                        /* The tray has dynamic debugging */
 +                                };
 +
 </​code>​ </​code>​

Navigation