Alcohol - How does it detect drive letter from aspi?

Hi,
I’m finalizing my aspi layer (http://www.frogaspi.org/download/wnaspi32.dll) and I’ve detected a little problem with alcohol.

Alcohol with my aspi, see my cd-rom\dvd drives as ‘C’, ‘D’, ‘E’
In fact drives are in position ‘D’,‘E’, ‘G’.
Alcohol doesn’t know if a drive is virtual or physical with my aspi :S

This problem isn’t reproduced with Nero aspi. So I suppose I don’t have implement a usefull function! But i don’t know which one…


here is a debug log of my aspi :


21:34:19 - ***************
21:34:19 - Start Log (20/11/2005)
21:34:19 - Frog ASPI v0.25.0.0
21:34:19 - ***************
21:34:19 - Device List Length : 0
21:34:19 - Is the engine running with Admin Privilege : True
21:34:19 - 
21:34:19 - ***
21:34:19 - GetUnitsFromClassDevices - Starting Engine #1 : {53F56308-B6BF-11D0-94F2-00A0C91EFB8B}
21:34:19 - ***
21:34:19 - GetUnitsFromClassDevices - VolumeMountPoint \\?\ide#cdromhl-dt-st_cd-rw_gce-8522b________________1.00____#5&2e5d5678&0&0.1.0#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}\
21:34:19 - GetUnitsFromClassDevices - volume name \\?\Volume{0f0e58d0-3f40-11da-9cb7-806d6172696f}\
21:34:19 - GetDriveSCSIAdress - [1:1:0]
21:34:19 - GetUnitsFromClassDevices - VolumeMountPoint \\?\ide#cdrompioneer_dvd-rw__dvr-108_________________1.20____#44_04447304c303434305731204c202020202020#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}\
21:34:19 - GetUnitsFromClassDevices - volume name \\?\Volume{0f0e58cf-3f40-11da-9cb7-806d6172696f}\
21:34:19 - GetDriveSCSIAdress - [1:0:0]
21:34:19 - GetUnitsFromClassDevices - VolumeMountPoint \\?\scsi#cdrom&ven_axv&prod_cd#dvd-rom&rev_2.2a#2&20c8176e&0&000#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}\
21:34:19 - GetUnitsFromClassDevices - volume name \\?\Volume{0f0e58d1-3f40-11da-9cb7-806d6172696f}\
21:34:19 - GetDriveSCSIAdress - [3:0:0]
21:34:19 - ***
21:34:19 - CleanUPDrives - Cleaning Device List
21:34:19 - ***
21:34:19 - `Maxtor 6 Y160M0 * * * * * YAR5` [0:1:0]
21:34:19 - `Maxtor 7 Y250M0 * * * * * YAR5` [0:0:0]
21:34:19 - `ITE Disk Array 0 * * * * *` [5:0:0]
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:0:0]
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:1:0]
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:2:0]
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:3:0]
21:34:19 - `HL-DT-ST CD-RW GCE-8522B *1.00` [1:1:0]
21:34:19 - `PIONEER *DVD-RW *DVR-108 *1.20` [1:0:0]
21:34:19 - `AXV * * *CD/DVD-ROM * * * 2.2a` [3:0:0]
21:34:19 - 
21:34:19 - ***
21:34:19 - SortSCSIAdress - Sorting SCSI Adresses
21:34:19 - ***
21:34:19 - `Maxtor 7 Y250M0 * * * * * YAR5` [0:0:0] | Type : 0
21:34:19 - `Maxtor 6 Y160M0 * * * * * YAR5` [0:1:0] | Type : 0
21:34:19 - `PIONEER *DVD-RW *DVR-108 *1.20` [1:0:0] | Type : 5
21:34:19 - `HL-DT-ST CD-RW GCE-8522B *1.00` [1:1:0] | Type : 5
21:34:19 - `AXV * * *CD/DVD-ROM * * * 2.2a` [3:0:0] | Type : 5
21:34:19 - `ITE Disk Array 0 * * * * *` [5:0:0] | Type : 0
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:0:0] | Type : 0
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:1:0] | Type : 0
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:2:0] | Type : 0
21:34:19 - `Generic *STORAGE DEVICE * 0128` [6:3:0] | Type : 0
21:34:19 - SPTI_GetASPI32SupportInfo - Nbr HA : 7


If anybody know how alcohol determine drive letter, i could fix this bug into my aspi.

Thanks in advance.

I think your question is a little too advanced for the alcohol sub-forum so I’ve moved it to the tech forum. The regulars here are more likely to be able to help you out. :slight_smile:

Are the hostadapter, ID and LUN for each drive in your ASPI the same values as in Nero’s ASPI driver?

i have the same adresses with frogaspi and nero aspi.
it’s not a real “bug”, but it’s right I’d like to obtain the same results as nero.

I think I found the problem.

First Alcohol scans scsi adress to detect drives.
then when it has finished it uses the ‘GetDiskInfo’ function to determine the drive letter.

And in fact my GetDiskInfo function was buggy. :S

more tests tonight.

thanks to all people who have tryed to solve the problem