XMSDSK.EXE & EMSDSK.EXE Franck UBERTO - 93/11/15 Grenoble - FRANCE Email : uberto@esrf.fr These utilities are 2 ramdisks. For some people, they surely will lack of some "bells and whistles", but I made them efficient and easy to use. There are 2 programs because I wanted to optimize size and speed, so one is for XMS and the other one is for EMS. To get help for running them, just type : XMSDSK (or EMSDSK) /?. You can use them on 286 and upper (use EMSDSK86 for 8086 cpu). Once installed they will occupy about 400 bytes. I have performed some tests and I found them not so bad compared with concurrents (even well known). Surprisingly I discovered that EMS ramdisk is a bit faster than its XMS counterpart on 386+ (with EMM386). You can resize the disk (down to zero, or up to all memory) at any time and so regain memory for another usage. This is possible on DOS command line but *NOT* under WINDOWS because of virtualization. The transient part of EXE will calculate all parameters for new size disk (I use the same ones as MS-DOS for hard disk, so they should be convenient for all cases). Take care, if you shell out of a DOS program and modify the size of the disk : in the case you have set TEMP (or TMP) variable on the ramdisk or you have told this program to use the ramdisk, then some (hidden) files may have been created and some (not) pleasant things can happen. These two EXE are in fact some mixing of SYS and COM files. Resident part is written in assembler (for optimization) and transient part (initialization of driver and size modification) in C (for simplicity). For this I have to modify the startup code of my compiler because the driver part (resident and installation code) must be placed before it. So at the end you have : - resident part of driver in assembler - initialization of driver in C - C startup code in assembler - size modification part in C Well all this to say that some day I will release source code, but for the moment you can use and distribute these files : it's freeware. So ENJOY ... * Examples device[high]='path'\XMSDSK.EXE [size] (or EMSDSK.EXE) Install ramdisk in config.sys. If size is not specified then 512 Ko is requested. XMSDSK (or EMSDSK) On DOS command line, tells you the size and drive used by the ramdisk. XMSDSK size (or EMSDSK) Modify the size of the ramdisk. echo y | XMSDSK size (or EMSDSK) In autoexec.bat, modify, without prompting, the size of the ramdisk. * History v1.0 (May 92) Initial version. v1.1 (June 92) Adds some optimization in resident part. v1.2 (Oct. 93) Adds some tests in size modification part.