From: Max Lyadvinsky [ml@acronis.com] Sent: Friday, September 14, 2001 4:20 AM To: NT Developers Interest List Subject: [ntdev] RE: Virtual SCSI Miniport: Problem with MultiSession CD TOC You must return the full TOC. The format follows: ///////////////////////////////////////////////////////////////// // // READ TOC/PMA/ATIP Command (0x43) // ///////////////////////////////////////////////////////////////// #define MMC_READTOC 0x43 ///////////////////////////////////////////////////////////////// // TOC Formats #define MMC_TOC 0 #define MMC_TOC_SESSIONINFO 1 #define MMC_TOC_FULL 2 #define MMC_TOC_PMA 3 #define MMC_TOC_ATIP 4 #define MMC_TOC_CDTEXT 5 ///////////////////////////////////////////////////////////////// // Point values in full TOC #define MMC_POINT_MINTRACK 1 #define MMC_POINT_MAXTRACK 0x63 #define MMC_POINT_FIRSTTRACK 0xA0 #define MMC_POINT_LASTTRACK 0xA1 #define MMC_POINT_LEADOUT 0xA2 #define MMC_POINT_FIRSTLEADIN 0xC0 ///////////////////////////////////////////////////////////////// // Disk types // CD-DA or CD Data with first track in Mode 1 #define MMC_DISK_CD 0 // CD-I disc #define MMC_DISK_CD_I 0x10 // CD data XA disc with first track in Mode 2 #define MMC_DISK_XA 0x20 ///////////////////////////////////////////////////////////////// // Track control bits #define MMC_CONTROL_DATA 4 ///////////////////////////////////////////////////////////////// // Full TOC structure for multisession CDs typedef struct _TOC_FULLDESC { BYTE bSession; // Session number BYTE fControl : 4; // Control bits BYTE fAdr : 4; // Adr bits BYTE bTno; BYTE bPoint; BYTE bMin; BYTE bSec; BYTE bFrame; BYTE bZero; BYTE bPMin; BYTE bPSec; BYTE bPFrame; } TOC_FULLDESC, *PTOC_FULLDESC; typedef struct _TOC_FULL { BYTE msbSize[2]; // TOC Size BYTE bFirstSession; // First session BYTE bLastSession; // Last session TOC_FULLDESC TOCDescs[1]; // TOC descriptors } TOC_FULL, *PTOC_FULL; Regards, Max -----Original Message----- From: bounce-ntdev-5529@lists.osr.com [mailto:bounce-ntdev-5529@lists.osr.com]On Behalf Of Arun Gangotri Sent: Friday, September 14, 2001 11:49 AM To: NT Developers Interest List Subject: [ntdev] Virtual SCSI Miniport: Problem with MultiSession CD TOC hi all, This is regarding the virtual scsi miniport for cdrom device. My miniport is working all fine for single session CD images. But it is not working properly for multisessioned and Video CD's. I am passing the normal toc containing just the track details. It shows the directory structure but when open some file, the data is corrupted. Do i need to pass some different kind of TOC. I went through the SCSI specification for read_toc command. According to that, the Scsiop_read_toc request i am getting, is with Format field ( 3rd Byte of CDB ) 000b. so it means i should pass the normal toc. but when i try to see the properties of the drive in Explorer, i get scsiop_read_toc with format field = 010b. Here i am bit confused about passing the full toc. Can anybody help me constructing the full toc required for multisessioned and Video CD. I had read Max Lyadvinsky previous postings, where he had mentioned that one need to pass different toc for multisessioned and video CD. Max , can you help me? Thanks in Advance. Best Regards. Arun --- You are currently subscribed to ntdev as: ml@acronis.com To unsubscribe send a blank email to leave-ntdev-247T@lists.osr.com --- You are currently subscribed to ntdev as: GlennEverhart@FirstUSA.com To unsubscribe send a blank email to leave-ntdev-247T@lists.osr.com