📄 wormio.h
字号:
/* Shared between kernel & process */#ifndef _SYS_WORMIO_H_#define _SYS_WORMIO_H_#include <sys/ioccom.h>/***************************************************************\* Ioctls for the WORM drive *\***************************************************************//* * Prepare disk-wide parameters. */struct wormio_prepare_disk{ int dummy; /* use dummy writes, laser turned off */ int speed; /* drive speed selection */};#define WORMIOCPREPDISK _IOW('W', 20, struct wormio_prepare_disk)/* * Prepare track-specific parameters. */struct wormio_prepare_track{ int audio; /* audio track (data track if 0) */ int preemp; /* audio with preemphasis */#define BLOCK_RAW 0 /* 2352 bytes, raw data */#define BLOCK_RAWPQ 1 /* 2368 bytes, raw data with P and Q subchannels */#define BLOCK_RAWPW 2 /* 2448 bytes, raw data with P-W subchannel appended */#define BLOCK_MODE_1 8 /* 2048 bytes, mode 1 (ISO/IEC 10149) */#define BLOCK_MODE_2 9 /* 2336 bytes, mode 2 (ISO/IEC 10149) */#define BLOCK_MODE_2_FORM_1 10 /* 2048 bytes, CD-ROM XA form 1 */#define BLOCK_MODE_2_FORM_1b 11 /* 2056 bytes, CD-ROM XA form 1 */#define BLOCK_MODE_2_FORM_2 12 /* 2324 bytes, CD-ROM XA form 2 */#define BLOCK_MODE_2_FORM_2b 13 /* 2332 bytes, CD-ROM XA form 2 */ int track_type; /* defines the number of bytes in a block */#define COPY_INHIBIT 0 /* no copy allowed */#define COPY_PERMITTED 1 /* track can be copied */#define COPY_SCMS 2 /* alternate copy */ int copy_bits; /* define the possibilities for copying */ int track_number; char ISRC_country[2]; /* country code (2 chars) */ char ISRC_owner[3]; /* owner code (3 chars) */ int ISRC_year; /* year of recording */ char ISRC_serial[5]; /* serial number */};#define WORMIOCPREPTRACK _IOW('W', 21, struct wormio_prepare_track)/* * Fixation: write leadins and leadouts. Select table-of-contents * type for this session. If onp is != 0, another session will be * opened. */struct wormio_fixation{ int toc_type; /* TOC type */ int onp; /* open next program area */};#define WORMIOCFIXATION _IOW('W', 22, struct wormio_fixation)/* * Finalize track */#define WORMIOCFINISHTRACK _IO('W', 23)struct wormio_session_info { u_short lead_in; u_short lead_out;};#define WORMIOCREADSESSIONINFO _IOR('W', 31, struct wormio_session_info)struct wormio_write_session { int toc_type; int onp; int lofp; int length; char catalog[13]; u_char *track_desc;};#define WORMIOCWRITESESSION _IOW('W', 32, struct wormio_write_session)struct wormio_first_writable_addr { int track; int mode; int raw; int audio; int *addr;};#define WORMIOCFIRSTWRITABLEADDR _IOWR('W', 33, struct wormio_first_writable_addr)/* Errors/warnings */#define WORM_SEQUENCE_ERROR 1#define WORM_DUMMY_BLOCKS_ADDED 2#define WORM_CALIBRATION_AREA_ALMOST_FULL 3#define WORM_CALIBRATION_AREA_FULL 4#define WORM_BUFFER_UNDERRUN 5#define WORM_ABSORPTION_CONTROL_ERROR 6#define WORM_END_OF_MEDIUM 7#define WORM_OPTIMUM_POWER_CALIBRATION_ERROR 8#define WORMIOERROR _IOR('W', 24, int)#endif /* !_SYS_WORMIO_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -