www.pudn.com > litth_virldisk.zip > cdioctl.inc


 
NO_ERROR	equ		0 
 
MSF_ADDR	STRUCT 
 
    msf_Frame	db	?; 
    msf_Second	db	?; 
    msf_Minute	db	?; 
    msf_Filler	db	?; 
 
MSF_ADDR	ENDS 
 
CDROM_ADDR_LBA	equ		0 
CDROM_ADDR_MSF	equ		1 
 
CDROM_ADDR	STRUCT 
 
    Mode	dd	? 
    Address	dd	? 
 
CDROM_ADDR	ENDS 
 
CDROM_REGION	STRUCT 
     
    Mode		dd	?; 
    StartAddr		dd	?; 
    EndAddr		dd	?; 
     
CDROM_REGION	ENDS 
 
 
 
CD_IO_DISC_INFO				equ	0CD0BH	;	// Get Disk Information 
CD_IO_RESET_DRIVE			equ	0CD00H 
CD_IO_SEEK				equ 	0CD01H 	;	// Seek the Read Head 
CD_IO_GET_DEV_STATUS			equ	0CD02H	;	// Get Device Status Info 
CD_IO_GET_SECTOR_SIZE			equ	0CD03H	;	// Get Current Sector Size 
CD_IO_GET_HEAD_LOCATION			equ	0CD04H	;	// Get Head Location 
CD_IO_QCHAN_UPC				equ	0CD05H	;	// Get Media Catalog Number 
CD_IO_QCHAN_ISRC			equ	0CD06H	;	// Get ISRC for Track 
CD_IO_QCHAN_CURRENT_INFO		equ	0CD07H	;	// Get Current Q Channel Info 
CD_IO_GET_AUDIO_STATE			equ	0CD08H	;	// Get Audio Pause State 
CD_IO_GET_AUDIO_CHAN_CTRL 		equ	0CD09H	;	// Get Audio Volume Controls 
CD_IO_SET_AUDIO_CHAN_CTRL 		equ	0CD0AH	;	// Set Audio Volume Controls 
CD_IO_TRACK_INFO			equ	0CD0CH	;	// Get Track Parameters 
CD_IO_AUDIO_SUB_CHAN_INFO 		equ	0CD0DH	;	// Get P-W Subchannel Vector 
CD_IO_AUDIO_PLAY			equ	0CD0EH	;	// Play Audio Selection 
CD_IO_AUDIO_STOP			equ	0CD0FH	;	// Pause or Stop Audio Play 
CD_IO_AUDIO_RESUME			equ	0CD10H	;	// Resume Audio Play 
CD_IO_SECTOR_INFO 			equ	0CD11H	;	// Get Sector Information 
CD_IO_QUERY_SPEED 			equ	0CD12H	;	// Get Current Device Speed 
CD_IO_QUERY_SPEED_CAPS			equ	0CD13H	;	// Get Speed Capabilities 
CD_IO_SET_SPEED				equ	0CD14H	;	// Set New Device Speed 
CD_IO_GENERIC				equ	0CD15H	;	// Generic Vendor specific IOCTL 
CD_IO_READ_DRIVE_INFO			equ	0CD16H	;	// Reads driver specific info 
CD_IO_READ_ERROR_STATS			equ	0CD17H	;	// Reads error statistic info 
											;	// specific to each IOCTL 
CD_IO_WRITE_DRIVE_INFO			equ	0CD18H	;	// Writes driver specific info 
CD_IO_QUERY_IOCTL_FUNC			equ	0CF00H	;	// Queries IOCTL support caps 
 
CDROM_SEEK	STRUCT 
  
    Reserved	dd	?;						// Reserved - must be zero 
    SeekAddr	dd	size CDROM_ADDR;		// Sector number to locate head at. 
     
CDROM_SEEK	ENDS 
 
CDROM_DEVSTAT	STRUC 
 
    Reserved		dd	?;		// Reserved - must be zero 
    DeviceStatus	dd	?;		// CD-ROM Device Status Indicator 
 
CDROM_DEVSTAT	ENDS 
 
CDDEVSTAT_DOOR_OPEN	    			equ		1 
CDDEVSTAT_DOOR_UNLOCKED     			equ		2 
CDDEVSTAT_READ_RAW_TOO	    			equ		4 
CDDEVSTAT_WRITE_TOO	    			equ		8 
CDDEVSTAT_PLAY_AUDIO_TOO    			equ		010H 
CDDEVSTAT_INTERLEAVE	    			equ		020H 
CDDEVSTAT_RESERVED_6	    			equ		040H 
CDDEVSTAT_PREFETCHING	    			equ		080H 
CDDEVSTAT_AUDIO_MANIPULATE  			equ		0100H 
CDDEVSTAT_REDBOOK_TOO	    			equ		0200H 
CDDEVSTAT_CDXA		    			equ		0400H 
CDDEVSTAT_NO_DISK_IN_DRIVE  			equ		0800H 
CDDEVSTAT_RW_CHANNELS_OK    			equ		01000H 
CDDEVSTAT_RESERVED_13	    			equ		02000H 
CDDEVSTAT_PLAYING_AUDIO     			equ		04000H 
CDDEVSTAT_SPEED_ADJUSTABLE  			equ		08000H 
CDDEVSTAT_SPEED_NONSTANDARD 			equ		010000H