www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/04/11/14:47:07

Date: Tue, 11 Apr 1995 07:56:04 +0300
From: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii)
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Subject: Re: SmartDrive Interface

I've lost the original posting, but somebody said here the other day
that SmartDrv disk cache has an IOCTL interface, and gave a reference
to a Dr Dobb's article.

FYI, the IOCTL interface is no longer the way to talk to SmartDrive.
It worked for old versions of the cache (before 4.x, which came with
DOS 6.x and Windows 3.1x).  You can see what version your cache is by
typing the following words of wisdom from the DOS command prompt:

	smartdrv /s

If this prints version 4.x (Windows 3.1x) or 5.x (DOS 6.2x), then the
IOCTL interface is not for you.  (Try to open that SMARTAAR$ device
and you will fail.)  The newer versions of SmartDrive use several
subfunctions of Interrupt 2Fh, function 4Ah (if memory serves); you
can look it up in the Ralph Brown's Interrupt List.

Btw, there is an easy way to know if a certain device (such as
CLOCK$, SMARTAAR$, etc.) is present in your system, without writing
a single code line.  Just call the little-known TRUENAME command (it's
internal to COMMAND.COM), thusly:

	truename clock$

If the device is present, TRUENAME will print it with a FORWARD slash,
like this:

	C:/CLOCK$

(this is how the undocumented DOS function 60h of interrupt 21h, which
TRUENAME calls, returns any device name for which there is a device
driver installed on the system).  Otherwise, it will print the name as
if it were a file in the current working directory:

	C:\DIR\SUBDIR\CLOCK$

- Raw text -


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