[net.micro.pc] Ramdisks in high memory

rde@ukc.ac.uk (R.D.Eager) (05/11/86)

I  have  a  related  problem,  so  I  post this as a followup. I have an
obscure British PC compatible which uses an 8086 (that's  the  important
point).   As  such,  because  it  has a 16 bit system bus and because (I
presume) of wait states in memory on an expansion  board,  programs  run
*much*  more  quickly  if loaded in the bottom 256K. This would be fine,
but I run a RAMdisk which grabs this space during device  initialisation
thus forcing user programs into slower memory.

Anyone  know  a  safe, well behaved way of getting it to use high memory
(stuff from 640K downwards) for the RAMdisk? The  DOS  manual  says  you
can't  allocate  memory  (or do most anything) from device drivers, so I
can't do clever grab/free tricks to get the right piece.
-- 
           Bob Eager

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

           Phone: +44 227 66822 ext 7589

ljz@well.UUCP (Lloyd Zusman) (05/12/86)

In article <2104@cbosgd.UUCP> mark@cbosgd.UUCP (Mark Horton) writes:
>In article <1897@ihlpg.UUCP> nromy@ihlpg.UUCP (Romy) writes:
>>> Does anyone know of either:
>>>    a) a hack that allows you to put the ramdisk above 640, or
>>>    b) a ramdisk from some other vendor that does?

>> ...

>>	DEVICE=VDISK.SYS 200 /E

>> ...

>
>I just looked in my DOS manual for the 6300 plus.  There is nothing
>called VDISK.  There is something called RAMDISK, documented in
>appendix H.  But no /E option or anything comparable.
>
>Perhaps VDISK comes from some other source?  If so, where can we get it?
>It's silly to have a third of a MB sitting there wasted while I eat up
>my precious 640K with a RAM DISK.
>
>	Mark


... and furthermore, when I try to use IBM's VDISK on my 6300+ with the
/E option, it doesn't work.

I think the difference between using VDISK on IBM and on AT&T 6300+ is that
the IBM's extended memory is on a card, and AT&T's is on the motherboard.

Since IBM supplies the source to VDISK (even though it's an assembler listing,
at least you can massage it with an editor and turn it into source), some
time when I have a week or so I'll get into it and see if I can hack it
to work on the 6300+.

Maybe someone else has done this or would like to be a hero and try.

I second the request for information about this.  AT&T just tells me, in
so many words, that I'm S.O.L. about using the extra memory under MSDOS (it's
meant for their [I hope] soon-to-be-officially-released Unix port for the
6300+).

mo@well.UUCP (Maurice Weitman) (05/13/86)

In article <1063@well.UUCP> ljz@well.UUCP (Lloyd Zusman) writes:
> []
>... and furthermore, when I try to use IBM's VDISK on my 6300+ with the
>/E option, it doesn't work.
>
>I think the difference between using VDISK on IBM and on AT&T 6300+ is that
>the IBM's extended memory is on a card, and AT&T's is on the motherboard.
>
Lloyd, I don't think that's the problem... I use PC-DOS 3.1's VDISK on an
AT clone with 1 meg on the motherboard, and the /E option works just fine.

maurice

-- 
Maurice Weitman     9600   ..!{hplabs,lll-crg,ptsfa,glacier}!well!mo
       |           57600   (415)549-0280 voice   (415)549-0388 modem-2400
   this^is not       300   mcimail mweitman      
     a pipe          110   P. O. Box 10019       Berkeley, CA  94709

bc@cyb-eng.UUCP (Bill Crews) (05/13/86)

> In article <1897@ihlpg.UUCP> nromy@ihlpg.UUCP (Romy) writes:
> >> Does anyone know of either:
> >>    a) a hack that allows you to put the ramdisk above 640, or
> >>    b) a ramdisk from some other vendor that does?
> >
> >If you are using MS-DOS 3.10, you should be able to put a RAM disk in
> >the upper memory (using the supplied VDISK.SYS driver)
> 
> I just looked in my DOS manual for the 6300 plus.  There is nothing
> called VDISK.  There is something called RAMDISK, documented in
> appendix H.  But no /E option or anything comparable.
> 
> Perhaps VDISK comes from some other source?  If so, where can we get it?
> It's silly to have a third of a MB sitting there wasted while I eat up
> my precious 640K with a RAM DISK.
> 
> 	Mark

For sure vdisk.lst and vdisk.sys is on the second ("supplemental") diskette
sent by IBM as PC-DOS 3.1.  vdisk.lst is a listing file, so some work needs
to be done if you want to modify and reassemble the source.  But vdisk.sys
works fine, as stated above, though it must be an IBM thing rather than a
Microsoft thing.
-- 
	- bc -

..!{seismo,topaz,gatech,nbires,ihnp4}!ut-sally!cyb-eng!bc  (512) 835-2266

nromy@ihlpg.UUCP (Romy) (05/13/86)

In response to my note regarding Ramdisks in high memory, in article
<2104@cbosgd.UUCP> mark@cbosgd.UUCP writes:
> I just looked in my DOS manual for the 6300 plus.  There is nothing
> called VDISK.  There is something called RAMDISK, documented in
> appendix H.  But no /E option or anything comparable.
> 
> Perhaps VDISK comes from some other source?  If so, where can we get it?
> It's silly to have a third of a MB sitting there wasted while I eat up
> my precious 640K with a RAM DISK.
> 
> 	Mark

Well, it looks like I got caught in the "We're IBM, you're the rest of the
world" trap.  After reading Mark Horton's note, I realized that the file
VDISK.SYS (for Virtual DISK) is a feature of **IBM's PC-DOS**, but not of
**Microsoft's MS-DOS**.  In other words, VDISK.SYS is an IBM software
product (that they throw in with DOS), not a Microsoft product.

What I described (using the /E option with the program called VDISK.SYS) is
a *PC-DOS* 3.[012] feature which, very nicely I might add, allows you to
use the extended memory of an enhanced PC (or a PC-AT, which uses the 80286
processor) as a (possibly very large) RAM disk.  Unfortunately, Microsoft
does not always parallel IBM (or is it vice-versa?), and so with Microsoft's
*MS-DOS* 3.x, there is instead a program called RAMDISK.DEV, which does
NOT have the /E feature.

Sorry for getting people's hopes up.  Not too long ago, I had been working
with an IBM PC-AT that I set up with a 512K RAM disk in high memory, which
is a nice feature when you're working with programs that use a minimum of
450K and can have some very large temporary files.  Of course, when the
words "RAM disk" and "extended memory" were mentioned...  I guess after a
while, you sometimes just don't realize that the world isn't always as
homogeneous as you think.
-- 
				Neil Romy
				AT&T Bell Labs, Naperville, IL
				...ihnp4!ihlpg!nromy
				(312) 979-4524

lau@ubc-ean.UUCP (Eric Lau) (05/14/86)

I just bought a Zenith AT, with MSDOS 3.1, it came with VDISK.SYS.  Microsoft
is not at fault if you do not have VDISK, it is the company who made the
licence agreement with Microsoft that is at fault.  MSDOS varies quite widely
amongst the different machines that support DOS.  For instance, the DOS
backup command works very different if you bought a Corona, when comared to
a Zenith, and when compared to a real IBMPC.

reintom@rocky2.UUCP (Tom Reingold) (05/15/86)

>Anyone  know  a  safe, well behaved way of getting it to use high memory
>(stuff from 640K downwards) for the RAMdisk? The  DOS  manual  says  you
>can't  allocate  memory  (or do most anything) from device drivers, so I
>can't do clever grab/free tricks to get the right piece.
>-- 
>           Bob Eager
>
There is a program called fastdisk and it comes as a device driver
that you load with the config.sys file.  It comes with the software
that you get when you buy an AST board.  It is like MS-DOS's vdisk
program but it also does what you want.

I don't know how you can buy such a program without buying a board
but maybe they will sell them to you.  I don't have their address
with me at the moment but the company is in Irvine, California.  I
know you are in England, so if you don't have the address, write
back.

Tom Reingold
Rockefeller University
New York City
UUCP:    {seismo|ihnp4}!cmcl2!rna!rocky2!reintom
BITNET:  REINTOM@ROCKVAX
ARPANET: reintom@rockefeller.arpa

jabusch@uiucdcsb.CS.UIUC.EDU (05/15/86)

	If you have a little money to spend, you could purchase Microsoft
Windows.  It comes with a ramdisk that will load into either extended or
expanded memory, if memory serves me correctly.  Windows can use this for
swapping processes in and out of the 640 space DOS uses for work.  However,
I have used the same ramdisk in my path as a test, storing commands that I
use a lot, and had no problems with it.  Microsoft would have you believe
that it's better than VDISK.SYS...
	The nice thing is that with the $99 you get, you also get Windows,
which does have some merit.  You don't need a mouse to run it, although
you really want one if you use the bundled paint program.  The rest of the
programs run fine without a mouse, though.

<put your disclaimer here>
John Jabusch

dw@rocksvax.UUCP (Don Wegeng) (05/15/86)

In article <1063@well.UUCP> ljz@well.UUCP (Lloyd Zusman) writes:
>In article <2104@cbosgd.UUCP> mark@cbosgd.UUCP (Mark Horton) writes:
>>In article <1897@ihlpg.UUCP> nromy@ihlpg.UUCP (Romy) writes:
>>
>>I just looked in my DOS manual for the 6300 plus.  There is nothing
>>called VDISK.  There is something called RAMDISK, documented in
>>appendix H.  But no /E option or anything comparable.
>>
>>Perhaps VDISK comes from some other source?  If so, where can we get it?
>>It's silly to have a third of a MB sitting there wasted while I eat up
>>my precious 640K with a RAM DISK.
>>
>>	Mark
>
>
>... and furthermore, when I try to use IBM's VDISK on my 6300+ with the
>/E option, it doesn't work.

In the past I've heard that MS-DOS 3.1 and PC-DOS 3.1 are not the same.
My own efforts to get the cluster size on my 20 MByte dribve under
MS-DOS (on a Xerox 6064) to be 2K rather than 8K seem to confirm this.
It seems that MS-DOS 3.1 cannot handle a 16 bit FAT entry.

In general, be very cautious about assuming that *anything* under
PC-DOS is the same as under MS-DOS. It would also be nice if people
specified which DOS they were using, instead of just saying "DOS".

/Don 
-- 
Everybody wants a happy ending.

arpa:	Wegeng.Henr@Xerox.COM
uucp:	ihnp4!rocksvax!dw

ljz@well.UUCP (Lloyd Zusman) (05/16/86)

>> I just looked in my DOS manual for the 6300 plus.  There is nothing
>> called VDISK.  There is something called RAMDISK, documented in
>> appendix H.  But no /E option or anything comparable.
>> 
>> Perhaps VDISK comes from some other source?  If so, where can we get it?
>> It's silly to have a third of a MB sitting there wasted while I eat up
>> my precious 640K with a RAM DISK.
>> 
>> 	Mark
>
>For sure vdisk.lst and vdisk.sys is on the second ("supplemental") diskette
>sent by IBM as PC-DOS 3.1.  vdisk.lst is a listing file, so some work needs
>to be done if you want to modify and reassemble the source.  But vdisk.sys
>works fine, as stated above, though it must be an IBM thing rather than a
>Microsoft thing.

Sorry, but VDISK.SYS does *not* work fine on an AT&T 6300-Plus with the
/E option.  I took it off of my IBM PC-DOS system and tried using it on
my 6300-Plus.  Without the /E it was fine, but with it my system hung.

By taking VDISK.LST and getting rid of the extraneous listing stuff, I
was able to assemble it into another VDISK.SYS, which also worked the
same way (and, incidentally, was identical to the originally assembled
VDISK.SYS).

So once again, does anyone know either ...

1)  ... how to alter VDISK.SYS so that it'll work on an AT&T 6300-Plus using
    main motherboard memory above 640K?

2)  ... where I could find a device driver that will do this on the
    AT&T 6300-Plus?

Lloyd Zusman
Master Byte Software

...!well!ljz

wtm@neoucom.UUCP (Bill Mayhew) (05/16/86)

....etc, etc, etc...

	I don't think that VDISK is specific to Brother Bigblue.  I
have an Epson Equity III in my office.  It came supplied with
MS-DOS version 3.10, which included vdisk.

	The Epson version of Vdisk does indeed include the infamous
/E option which installs into high (that is to say >640K) memory.
Without /E you get the regular memory.

	I also have a very new ATT 6300 with MS-DOS version 3.10.
The ATT refers to a similar Utility as RAMDISK.  They also fail to
mention /E as an acceptible option.

	VDISK will run on just about anything, provided [I presume]
that the /E option is not used.  I have even run VDISK on a
Commodore-Amiga (68,000 chip only!!!!) running 8088 emulation
software.  The results were very well behaved, and worked nicely.

	I don't have AT 16 bit memory cards on any of my machines,
thus I have not been able to try VDISK's /E option.  I suspect that
/E will not work in conjunction with Intel "above board" memory
expanders in regular XT compatible machines.

Now Amiga:

I've been playing around with "Transformer" on the Amiga in my Lab.
Basically, "Transformer" appears to run 8088 as p-code using Amy's
68000.  The disk access and writes to screen seem to run at about
50% the speed of a regular xt, thus I assume that they manage to
steal the usual DOS interrupts and run them in native 68K code.
When "Transformer" boots up, it apparently supplants the normal
Amiga ROM kernel by over-writing it-- they even get rid of the
normal Amiga font and replace it with what seems to be the IBM CGA
font.

In version 1.0 of Transformer, only the IBM Mono mode is supported,
although the setup menu has a slot for setting up CGA color
mapping-- the manual kind of hints around that there may be a
version 2 of transformer as a (I hope free) update that provides
CGA.

Transformer comes with little key stickers that one places on the
Amiga keypad that correspond 1-to-1 with the XT keypad.  All the
regular XT keys are there plus the Amiga inverted T cursor pad so
that numlock needn't be used.

So far, I haven't found any IBM mono programs that Amiga
Transformer can't run.  Here's a list of things I've tried:

IBM DOS ver 2.1  (This is the DOS Commodore Recommends you use.)
Lotus 1-2-3. v1A (I nop'ed out the copy protection in 123.EXE)
Wordstar version 3.3
Zork II & Zork III  (My Zork I is CP/M)
GW-BASIC  (I think it was version 2.05)
VDISK      (from Epson MS-DOS v3.1)
HELP
EDLIN
FORMAT     (also works on 3.5 inch disketts)

The penalty in using Transformer is that the math and computation
only seems to run at 1/6 the rate of an XT.  Really, its amazing
enough that it works!

I bought Transformer for $259 which included a 360K 5.25 inch disk
drive and the program.  It was probably a good deal.  One nice
benefit is that the 5.25 inch dirve can be used to download
programs onto 3.5 inch diskettes, then it is no longer needed.
Amiga was smart, and chose a 3.5 format that's compatible with that
of the IBM PC-Convertible!  (Although you only get a 360K per disk
since IBM DOS 2.1 dosen't have the ability to go higer.  Perhaps
somebody will write an istallable driver that would use a full 720K
on the Amiga drive).

Obviously, I don't get any money from Commodore, etc.  Remember,
the above isn't an endorsement;  Transformer is really too slow to
be a replacement for an XT!

	Bill Mayhew
	Electrical Engineer
	Division of Basic Medical Sciences
	Northeastern Ohio Universities' College of Medicine
	4209 State Route 44
	Rootstown, OH  44272  USA   (216) 325-2511 ext. 323

	....!allegra!neoucom!wtm   (I think this is my path!!)

vector@duncan.UUCP (05/20/86)

/* Written  3:36 am  May 13, 1986 by mark@cbosgd.UUCP in duncan:net.micro.pc */
/* ---------- "Re: Ramdisks in high memory" ---------- */
In article <1897@ihlpg.UUCP> nromy@ihlpg.UUCP (Romy) writes:
>> Does anyone know of either:
>>    a) a hack that allows you to put the ramdisk above 640, or
>>    b) a ramdisk from some other vendor that does?
>
>If you are using MS-DOS 3.10, you should be able to put a RAM disk in
>the upper memory (using the supplied VDISK.SYS driver) by specifying the
>option /E (for extended memory?), which tells the driver that it is to
>use the extended memory space instead of the normal memory space.  This
>is done by putting a line in your CONFIG.SYS file that looks something
>like this:
>
>	DEVICE=VDISK.SYS 200 /E
>
>I don't have a DOS manual with me, so I'm not sure if this is exact (though
>I think it's pretty close).  I seem to remember that this /E option is
>described in the chapter on installable device drivers in the DOS manual
>(buried somewhere in the section which shows examples of how to use the
>VDISK.SYS driver).

I just looked in my DOS manual for the 6300 plus.  There is nothing
called VDISK.  There is something called RAMDISK, documented in
appendix H.  But no /E option or anything comparable.

Perhaps VDISK comes from some other source?  If so, where can we get it?
It's silly to have a third of a MB sitting there wasted while I eat up
my precious 640K with a RAM DISK.

	Mark
/* End of text from duncan:net.micro.pc */

peter@baylor.UUCP (Peter da Silva) (05/21/86)

According to every book on the subject I have ever seen, the standard Ram Disk
software for the PC, "VDISK.SYS", automatically uses the highest memory that
MS-DOS knows about for the buffer area. It won't put it into extended memory,
but it'll put it just under the 640K mark which should leave your fast 256K
alone. The source to VDISK is published in one of the IBM manuals.
-- 
-- Peter da Silva
-- UUCP: ...!shell!{baylor,graffiti}!peter; MCI: PDASILVA; CIS: 70216,1076

rde@ukc.ac.uk (R.D.Eager) (05/24/86)

In article <667@baylor.UUCP> peter@baylor.UUCP writes:
>According to every book on the subject I have ever seen, the standard Ram Disk
>software for the PC, "VDISK.SYS", automatically uses the highest memory that
>MS-DOS knows about for the buffer area. It won't put it into extended memory,
>but it'll put it just under the 640K mark which should leave your fast 256K
>alone. The source to VDISK is published in one of the IBM manuals.


I  just went and looked at the sources to VDISK (DOS 2.0) and VDISK (DOS
3.0) and I have to disagree. Both of them put the disk area  immediately
after  the  driver code (the only place it is easy to put them given the
DOS rules).

Has anyone any other ideas? To reiterate, I want to put  my  RAMdisk  at
the  top  of  my 640K memory so that the fast motherboard memory is left
for applications.
-- 
           Bob Eager

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

           Phone: +44 227 66822 ext 7589

bc@cyb-eng.UUCP (Bill Crews) (05/28/86)

> According to every book on the subject I have ever seen, the standard Ram Disk
> software for the PC, "VDISK.SYS", automatically uses the highest memory that
> MS-DOS knows about for the buffer area. It won't put it into extended memory,
> but it'll put it just under the 640K mark which should leave your fast 256K
> alone.

Correction:  vdisk.sys has an argument with which one may specify that the
RAMdisk reside in extended memory.

>        The source to VDISK is published in one of the IBM manuals.

Correction:  vdisk.lst (the *listing* file for vdisk.asm) is supplied on
the PC-DOS "supplemental" diskette.

> -- Peter da Silva
-- 
	- bc -

..!{seismo,topaz,gatech,nbires,ihnp4}!ut-sally!cyb-eng!bc  (512) 835-2266