motti@ocsmd.ocs.com (Motti Bazar) (11/12/90)
Hi there, I wonder if anybody as come across a utility or even real code to load config.sys driver as a TSR ??? It will allow me to load config.sys type drivers any time I need them (and maybe even to unload) instead of editing config.sys and rebooting. Any ideas ??? If I'll get enough info, I'll do it by myself and post it. Regards ... Motti
cgf@ednor.bbc.com (Chris Faylor) (11/18/90)
In article <1105@ocsmd.ocs.com> motti@ocsmd.ocs.com (Motti Bazar) writes: >Hi there, > >I wonder if anybody as come across a utility or even real code to >load config.sys driver as a TSR ??? >It will allow me to load config.sys type drivers any time I need >them (and maybe even to unload) instead of editing config.sys and >rebooting. > >Any ideas ??? If I'll get enough info, I'll do it by myself and >post it. > >Regards ... Motti I just downloaded a product called 'DMC' (Dynamic Memory Control) from a local bulletin board. It allows loading and unloading of device drivers dynamically, as well as grouping TSR's and device drivers together. It looks interesting, but I haven't had a chance to play with it. -- Chris Faylor Boston Business Computing, Ltd. cgf@ednor.bbc.com President: Anti Usenet-Obsessive-Behavior Society The opinions expressed here just might represent the opinions of this company.
valley@uchicago (Doug Dougherty) (11/20/90)
motti@ocsmd.ocs.com (Motti Bazar) writes: >Hi there, >I wonder if anybody as come across a utility or even real code to >load config.sys driver as a TSR ??? >It will allow me to load config.sys type drivers any time I need >them (and maybe even to unload) instead of editing config.sys and >rebooting. >Any ideas ??? If I'll get enough info, I'll do it by myself and >post it. >Regards ... Motti This is a very interesting idea. I'm actually not sure how well it will work out in practice, but I encourage the idea. My question is a related one. I am currently developing an "ASK" device driver. You put it in your CONFIG.SYS like this: device=ASK.SYS VDISK.SYS 384 /X and it asks you whether or not you want to load VDISK. Unfortunately, it is not working, and I think the reason is that you cannot (so say all the manuals) do DOS function calls from within the INIT code of a device driver. (Currently, what the code does is crash the system shortly after trying to open the named device driver file) However, I know this can work. There are commercial products that have this calling syntax. I have disassembled one of them, XLOAD.SYS, by Helix Software (great bunch of guys, they are!) and it does, in fact, contain the DOS function calls to open (3D), read (3F), and close (3E) a file handle. How they get away with it is a mystery to me... Any help would be appreciated.
keck@sea.com (John Keck) (11/20/90)
In article <1105@ocsmd.ocs.com> motti@ocsmd.ocs.com (Motti Bazar) writes: >Hi there, > >I wonder if anybody as come across a utility or even real code to >load config.sys driver as a TSR ??? >It will allow me to load config.sys type drivers any time I need >them (and maybe even to unload) instead of editing config.sys and >rebooting. > >Any ideas ??? If I'll get enough info, I'll do it by myself and >post it. > >Regards ... Motti > Device drivers are kept in a linked list. I wrote a program to load a given driver and insert it in the linked list, then spawn() a child (which can be another shell). When the child exits, the driver gets removed from the list. This is very handy for debugging device drivers! It was pretty simple to write; it doesn't belong to me so I can't post it, but if you want I can give you some tips. jk -- ----------------------------------------------------------------------------- John Keck INTERNET:keck@sea.com UUCP:...!ucsd!soledad!keck VOICE:619/581-6181 Systems Engineering Associates, 2204 Garnet Ave Suite 203, San Diego CA 92109
valley@uchicago (Doug Dougherty) (11/21/90)
John Keck writes: >Device drivers are kept in a linked list. I wrote a program to load a >given driver and insert it in the linked list, then spawn() a child >(which can be another shell). When the child exits, the driver gets >removed from the list. This is very handy for debugging device drivers! >It was pretty simple to write; it doesn't belong to me so I can't post it, >but if you want I can give you some tips. >jk >-- >----------------------------------------------------------------------------- >John Keck INTERNET:keck@sea.com UUCP:...!ucsd!soledad!keck VOICE:619/581-6181 >Systems Engineering Associates, 2204 Garnet Ave Suite 203, San Diego CA 92109 Does this necessarily work OK for block drivers? My understanding is that DOS does some things behind the scenes (e.g., assigning drive letters) when an installed driver turns out to be a block driver.
erick@sunee.waterloo.edu (Erick Engelke) (11/21/90)
In article <1105@ocsmd.ocs.com> motti@ocsmd.ocs.com (Motti Bazar) writes: >Hi there, > >I wonder if anybody as come across a utility or even real code to >load config.sys driver as a TSR ??? >It will allow me to load config.sys type drivers any time I need >them (and maybe even to unload) instead of editing config.sys and >rebooting. > >Regards ... Motti > You can use DRVINST which also allows you to remove device drivers. It is available via anonymous FTP from [129.97.128.196] in pub/drvinst.arc. On the bad side, it adds a bit less than 4K to the driver, but if you are unloading the driver later, who cares. Oh, and it's free! Erick -- ---------------------------------------------------------------------------- Erick Engelke Watstar Computer Network Watstar Network Guy University of Waterloo Erick@Development.Watstar.UWaterloo.ca (519) 885-1211 Ext. 2965
tjr@cbnewsc.att.com (thomas.j.roberts) (11/22/90)
From article <valley.659043938@gsbsun>, by valley@uchicago (Doug Dougherty): > motti@ocsmd.ocs.com (Motti Bazar) writes: > > My question is a related one. I am currently developing an "ASK" device > driver. You put it in your CONFIG.SYS like this: > > device=ASK.SYS VDISK.SYS 384 /X > > and it asks you whether or not you want to load VDISK. During the loading of device drivers, MS-DOS loads the ENTIRE config.sys into memory, munges it with '\0'-s following each line and each DEVICE=NAME, and then indexes through the list, calling the INIT function of drivers, etc... Thus, it should be simple to implement ASK.SYS so: DEVICE=ASK.SYS // asks about the NEXT driver in config.sys DEVICE=VDISK.SYS 384 /x if the answer is NO, ASK.SYS would change the '\0' following its command line, and the '\0' following VDISK.SYS to be '\n' (or any non-zero char), thus 'eating' the next line; if the answer is YES, ASK.SYS would do nothing, but merely exit with no memory allocated. [Actually, it is possible that a very long CONFIG.SYS would not all be loaded at once - I haven't checked; I suspect that the entire file is read, because of the complicated pre-processing performed before calling any driver's INIT entry.] Tom Roberts att!ihlpl!tjrob TJROB@IHLPL.ATT.COM