[net.micro.pc] Need virtual disk ==> directory program

mjwingrove@wateng.UUCP (Mike Wingrove) (10/27/86)

Being a new reader of this news group I may be asking for help with something
that has already been discussed on the net.  

What I need is a program which maps drive names (existing or virtual) to
particular directories on a disk (especially a hard disk).  The program would 
be such that it would stay resident once loaded, and hopefully allow the
user to specify what directory to map a drive letter to through the use 
of interactive commands.

I guess this could be considered sort of like an extended DOS assign command.

The purpose of this is to aid in the installation of programs on a hard disk.
A lot of old programs don't support directories (quite a few new ones too!),
and I would find it much more convienient when transferring a program to the 
hard disk to keep the program and associated files (overlays etc.) in one 
directory.  The data created would be stored in another directory.  Since 
a lot of programs allow specification of where a file is created/loaded 
from by disk letter identifier I felt a program such as described would be most
useful.

Has any one heard of anything like this?  

If not I may write one myself.  I was thinking of doing this by intercepting
the INT 21 dos function call.  Any hints or suggestions on this would be most
helpful.

Thanks in Advance

Mike Wingrove

University of Waterloo
Computer Communciations Networks Group
Department of Electrical Engineering
Waterloo, Ontario
Canada

Disclaimer: I'm only employed here through the coop education system we have.
            Therefore I'm really just a student (4th year EE Comp Sci Option) 
            and as such my opinions don't count for much anyway! (So they tell
            me.)

plocher@puff.wisc.edu (John Plocher) (10/28/86)

Try the DOS 3.1 JOIN command - it does all you are asking for...

    RTFM :-)

-- 
"Never trust an idea you get sitting down" - Nietzche
------------	{harvard,seismo}!uwvax!uwmacc!uwhsms!plocher        (work)
John Plocher    {harvard,seismo}!uwvax!puff!plocher                 (school)
------------	decvax!encore!vaxine!spark!121!0!John_Plocher       (FidoNet)

psfales@ihlpl.UUCP (Peter Fales) (10/28/86)

> Try the DOS 3.1 JOIN command - it does all you are asking for...

Sorry, its the DOS 3.1 SUBST command he is looking for

>     RTFM :-)

Maybe he isn't running DOS 3.1, in which case SUBST  and JOIN are not 
in the manual.

romwa@utcs.UUCP (10/29/86)

In <3111@wateng.UUCP>, mjwingrove@wateng.uucp writes:

>What I need is a program which maps drive names (existing or virtual) to
>particular directories on a disk (especially a hard disk).  The program would 
>be such that it would stay resident once loaded, and hopefully allow the
>user to specify what directory to map a drive letter to through the use 
>of interactive commands.

>The purpose of this is to aid in the installation of programs on a hard disk.
>A lot of old programs don't support directories (quite a few new ones too!),
>and I would find it much more convienient when transferring a program to the 
>hard disk to keep the program and associated files (overlays etc.) in one 
>directory.  The data created would be stored in another directory.  Since 
>a lot of programs allow specification of where a file is created/loaded 
>from by disk letter identifier I felt a program such as described would be most
>useful.

I am not sure how you important the interactive function is to you,
and will not address that here, but the "subst" command in DOS 3.1 is
just the function you need.  This command allows you to assign any
drive to a directory.  You could perhaps work out the interactive part
in a batch file.

Hope this helps,

Mark T. Dornfeld
Royal Ontario Museum

utcs!romwa!mark                - or -        utcs!romwa

madd@bucsb.bu.edu.UUCP (Jim Frost) (10/29/86)

In article <3111@wateng.UUCP> mjwingrove@wateng.UUCP (Mike Wingrove) writes:
>
>What I need is a program which maps drive names (existing or virtual) to
>particular directories on a disk (especially a hard disk).  The program would 
>be such that it would stay resident once loaded, and hopefully allow the
>user to specify what directory to map a drive letter to through the use 
>of interactive commands.
>
>I guess this could be considered sort of like an extended DOS assign command.
> [...]
>Has any one heard of anything like this?  
> [...]
>Mike Wingrove

Which version of DOS do you have?  The newer versions (3.1 & 3.2
anyway) have a function built-in that I believe will do this.  I don't
have the manual handy, but try looking up ASSIGN and JOIN.  I know
that there are PD utilities to handle this that were created for
earlier versions of DOS (they *do* intercept one of the INT 21 calls,
usually the OPEN call).  I don't have one handy to email you, but if
you look around on some BBS's they probably have at least one version.

If you really want to create one, wedge your program onto INT 21 and
pass through any function call other than OPEN.  Keep a table of names
and drives that you want substituted inside the program, and just
remake the call with the extended name.  I think that you have to put
the file handle into the FCB after this, but you'll have to
experiment.  I never needed to do this so I never looked.  You'll need
to have your program restore its stacks and things so it can make the
DOS call, otherwise things crash (non-reentrancy sucks).  I really
recommend finding a tested one to use though.

Good luck.
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   - Jim Frost * The Madd Hacker -
UUCP:  ..!harvard!bu-cs!bucsb!madd | ARPANET: madd@bucsb.bu.edu
CSNET: madd%bucsb@bu-cs            | BITNET:  cscc71c@bostonu
-----------------------------------+-----------+------------------------
"Use the key, unlock the door                  |    o/ <- Rudolf the
 See what Fate might have in store." -- Rush   |   _O_    waving penguin

carl@hpcnof.UUCP (Carl Dierschow) (10/30/86)

SUBST in DOS 3.1 is interesting too - check that out.

Carl Dierschow
Hewlett-Packard Colorado Networks Division
{ihnp4|hplabs}!hpfcla!hpcnof!c_dierschow

rde@ukc.ac.uk (R.D.Eager) (10/31/86)

In article <3111@wateng.UUCP> mjwingrove@wateng.UUCP (Mike Wingrove) writes:
>
>What I need is a program which maps drive names (existing or virtual) to
>particular directories on a disk (especially a hard disk).  The program would 
>be such that it would stay resident once loaded, and hopefully allow the
>user to specify what directory to map a drive letter to through the use 
>of interactive commands.

With later versions of MS/PC-DOS (certainly 3.2, maybe 3.x) there are
two commands to do this function and indeed the 'inverse'; JOIN and
SUBST.

-- 
           Bob Eager

           rde@ukc.UUCP
           rde@ukc
           ...!mcvax!ukc!rde

           Phone: +44 227 66822 ext 7589