delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/08/25/22:27:41

Message-ID: <19990825102051.84665.qmail@hotmail.com>
X-Originating-IP: [62.236.76.17]
From: "Niko Salminen" <niko_salminen AT hotmail DOT com>
To: djgpp AT delorie DOT com
Subject: MSCDEX Data Block Headers
Date: Wed, 25 Aug 1999 03:20:51 PDT
Mime-Version: 1.0
Reply-To: djgpp AT delorie DOT com

I have a piece of code which uses IOCTL functions at the CDRom drive, but 
for some reason, when I pass the data block's transfer address with the 
in/output call, MSCDEX keeps finding only zeros at that location.

For example, if I want to close the tray, I send MSCDEX my IOCTL output 
block with a pointer to an unsigned char which contains the value 5 
(CLOSE_TRAY). The result is that the tray opens.

The transfer address expects a far pointer (the original routine was 
real-mode) but I just pass the protected mode address as-is. I even tried 
reserving mem from the first 640kB and passing it's address, but then even 
the tray didn't open with the proper function.

If you have any idea of what is wrong, please answer into this Hotmail 
address.

-Niko Salminen


______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019