Hi!
I have implemented IOCTL_SCSI_GET_ADDRESS for non scsi cdroms. On NT this ioctl is called on non scsi cdroms, and it should return a valid value. NT treats the two ide controllers as scsi (at least for this ioctl). The program which uses this ioctl, when the ioctl returns with success it tries to read further data from the registry, from the Machine\HARDWARE\DEVICEMAP\Scsi
I have looked at the registry of my w2k and I'm trying to set up according to it the registry of wine.
But I have some implementation questions: - I'm setting up the registry in the CDROM_Open (in dlls/ntdll/cdrom.c). This is right, because before that no ioctl could be called, but maybe I should setup it when the devices are initialized (then of course only for the cdroms where the Device is specified in configuration), to ensure initialization only once, and not at every CDROM_Open
- I'm having problems with the refreshing of the registry. If I delete the previously entered registry entries from system.reg, and run the (windows) regedit, then at start I dont have the Scsi registry key. But if I select ImportRegistry then the FileOpenDialog opens the cdrom, and from the debug messages I know that the data were entered to the registry, but regedit does not show it even if I press F5 (or select the Refresh menu) Why is this? I know that there are VOLATILE registry keys, but dont know if they apply here, and to how to use them...
- I'm using some includes like linux/hdreg.h linux/major.h and sys/stat.h (fstat function) - where and how to add checks for them? Is it enough if I add those headers to the list in configure.ac?
- and of course I want comments about anything - This is my first serious patch to wine
The cdrom.diff is my patch, and the ntddscsi.h is a header file created by Laurent Pinchart who is working on IOCTL_SCSI_PASS_THROUGH_DIRECT, but has not sent his patch to the list yet...
Thanks in advance for your help Zsolt Rizsanyi