Category : Utilities for DOS and Windows Machines
Archive   : NJRAMD14.ZIP
Filename : NJRAMD.DOC

Output of file : NJRAMD.DOC contained in archive : NJRAMD14.ZIP

Nifty James' Famous (Enhanced) Expanded Memory RAM Disk Drive
Version 1.30ASP of 5 December, 1989

____|__ | (tm)
--| | |-------------------
| ____|__ | Association of
| | |_| Shareware
|__| o | Professionals
-----| | |---------------------
|___|___| MEMBER

(C) Copyright 1987, 1989 By Mike Blaszczak. All Rights
Reserved. This is a Shareware Program. A $15 registration
fee is requested.



NJRAMD is a device driver that allows you to partition a
part of your EMS or EEMS memory as an extremely
efficient, extremely fast "RAM disk" drive. Having a
part of your memory configured as a RAM disk will allow
you to store temporary files, intermediate files, and
other information quickly.

NJRAMD is compatible with the Lotus/Intel/Microsoft EMS
standard, as well as the AST/Quadram/Ashton-Tate EEMS
standard. NJRAMD will function equally well with both
systems. NJRAMD was developed under LIM EMS 3.2, and
has been tested on LIM EMS 4.0 systems successfully.

This program will also run with any version of DOS,
staring with version 2.00 or later. I wrote it under
PC-DOS 3.1, and tested it under PC-DOS 2.00 and PC-DOS
2.10. The program should work with MS-DOS, but it
hasn't been "officially" tested.

NJRAMD takes up very little DOS space -- the program,
depending on the configuration that you use, takes
around 720 bytes of DOS memory, regardless of how large
the disk space is made. The smallest configuration of
NJRAMD takes under 700 bytes of DOS memory. Thus, you
can partition a very large RAM disk, and only take up a
very small portion of precious DOS memory.

Use and Installation


NJRAMD is installed as a DOS device driver when DOS is
first loaded. Thus, you must specify the device driver
in the CONFIG.SYS file of your boot disk or diskette.
The entry in the CONFIG.SYS file must be anywhere
*after* the specification for the EMS device driver.
For example, the EMS driver that came with my Taiwanese
EMS clone is called INITIAL.SYS. I also use ANSI.SYS,
which I specify in the CONFIG.SYS file, also. Thus, my
CONFIG.SYS file looks like this:


| Starting with version 1.20, this version, NJRAMD also
| comes with a file specially prepared for computers with
| extended instruction sets. This includes processors
| like the 80186, 80286, and 80386. You can also make
| use of this version if you have a NEC V-20 or V-30
| installed and running in your system.

| The version is called NJRAMDXP.SYS. "XP" stands for
| "Enhanced Processor". This version of NJRAMD is coded
| to take advantage of the special, extra instructions that
| some CPU's have. It is slightly smaller, and
| considerably faster than the standard version. If this
| version doesn't work on your system, use the regular
| version.

| Even if you only have a stock PC with a NEC V-20, you
| can expect the newver version of NJRAMD to be up to 5%
| faster in benchmark tests. On a real 80286 system, the
| program will run up to 9% faster.

| See the paragraph just before "Technical Information" if
| you have a PC's Limited computer.

You might also have settings for the BUFFERS, FILES,
STACKSPACE, and BREAK settings in your CONFIG.SYS file.
These settings can remain unchanged, as they are
independent of NJRAMD.

You can find more information on the uses of the
CONFIG.SYS file in the DOS manual. The section is
called "Configuring your system".

If you install NJRAMD as shown above, NJRAMD will
default to a disk of 32 EMS Pages, which is 512
kilobytes. (One EMS Page is equal to 16 kilobytes of
storage space. 16 kilobytes stores 16384 bytes, or
characters, of information.) If you would like to have
a larger or smaller RAM disk, you must specify the /P
option on the same line as NJRAMD in your CONFIG.SYS
file. NJRAMD allocates space in one-page increments.
Since each EMS page is 16k bytes long, you can adjust
the size of NJRAMD in 16k increments.

For example, to specify a RAM disk that is 100 pages
long, use this line in your CONFIG.SYS file:

device=njramd.sys /P100

NJRAMD will try to take 100 pages of EMS memory -- this
will give you 1600k of RAM disk space.

Of course, you must have enough free EMS memory at the
time that NJRAMD is loaded to accomodate the requested
size. If there isn't enough memory, NJRAMD will
terminate with an error, and not install itself at all.
If you have selected a size that is too big to fit, you
will see the message

Device not installed.
Requested size too big to fit.

Remember that if you don't tell NJRAMD otherwise, it
will try to create a 512k RAM Disk.

| In version 1.20 of NJRAMD, you can use the /A switch to
| use *all* of the available EMS memory, automatically,
| instead of specifying a /P option. Note, though, that
| the /A option will not leave any memory for other EMS
| programs, such as disk cache programs or for 1-2-3.

If there is no EMS memory available, at all, when NJRAMD
tries to load, you will see this message:

Device not installed.
No free EMM Memory.

If you see this message:

Device not installed.
The EMM is not installed.

the EMM for your system was not present when NJRAMD
loaded. NJRAMD depends on the EMM for access to the EMS
memory. The specification for your EMM driver *must*

appear before the specification for NJRAMD in your

Once you have entered the proper information in your
CONFIG.SYS file, you must reboot your computer so that
the information in the file will take effect. When
NJRAMD installs, it will print a copyright message, and
some status information reguarding the memory that it
has taken, and the amount of memory that is available as
a RAM disk.

If you have any problems installing NJRAMD, please feel
free to write to me. I'd be happy to help!


I programmed NJRAMD to click the system's speaker every
time the disk was accessed. Since a RAM disk is silent,
it's often hard to tell when it is working. To
compensate for the fact that there is no "whirring" or
"chirping" going on while the RAM disk is active, the
speaker clicks while the program accesses the memory.

If you find this annoying, you can turn it off by
specifying the "/S" option in the CONFIG.SYS entry. For
device=njramd.sys /P16 /S

would create a 16-page (256k byte) RAM disk that does
not click when it is accessed. If you specify the /S
option, NJRAMD will print the message

Clicking Suppressed.

when it is installed.

| If you have an PC's Limited computer, with a Smart-Vu
| display, try using the program NJRAMDPL.SYS. This
| version is the same as the other versions, but it
| writes to the Smart-Vu display. When NJRAMD is writing,
| the display will show "NJ-W", and when it is reading, it
| will show "NJ-R". Other than the statements that take
| care of the display, this version of the program is
| identical to NJRAMDXP.SYS.

| If you have a PC's Limited and do not want NJRAMD to
| access the Smart-Vu display, use the NJRAMDXP.SYS
| program.

Technical Information
--------- -----------

I have included the assembly language source code in
this .ARC file (or on your white distribution disk) for
your reference. You do not need it to run the program.
If you are a programmer, or simply have an interest in
"what makes it go", you can take a look at the
NJRAMD.ASM file. I've heavily commented it, and
therefore will not describe it in greater detail here.


This program is a work of Shareware. If you use the
program, I expect you to end a registration fee of $15.

Registering your copy of NJRAMD will automatically
entitle you to free updates. I'd like to receive a
dollar with each update request; this will let me just
about break even, with the cost of diskettes, postage,
and mailers.

If you would like to write to me, my address is

Mike Blaszczak
112 Verlinden Drive
Monroeville, PA 15146-2041

I'm also available on Participate On NWI as NIFTY JAMES.
My BIX id is blaszczak, and I can be found on GEnie as

Please feel free to send your comments, questions,
suggestions, donations, marriage proposals, and
get-rich-quick schemes.

I'm really interested in hearing any ideas that you
have about NJRAMD, as well as any questions you have
about it. If you run into any problems, please feel
free to call or write. (I don't give my phone number,
but, if you're serious enough, call directory

The ASP Ombudsman

This program is produced by a member of the Association
of Shareware Professionals (ASP). ASP wants to make sure
that the shareware principle works for you. If you are
unable to resolve a shareware-related problem with an ASP
member by contacting the member directly, ASP may be able
to help. The ASP Ombudsman can help you resolve a dispute
or problem with an ASP member, but does not provide
technical support for members' products. Please write to
the ASP Ombudsman at P.O. Box 5786, Bellevue, WA 98006 or
send a Compuserve message via easyplex to ASP Ombudsman

A Special Note

This program would not have been possible without the
outstanding generosity and good will of Doctor File
Finder and Bob Brody.

Hats off to a couple of wonderful people!

Doctor File Finder managed to find a bug in the first
version that sometimes caused the program to trash the
files on the disk -- the GetSector procedure wasn't
working properly. The problem has been corrected in
this version, and the program's optimization in the
GetSector proceudre is now fully functional.

Again, the Good Doctor helped me track down the bug that
sometimes caused this device driver to ignore the /Page
option. Thanks, Doc! The fix was made, and this is
now Version 1.15.

| Version 1.20 just let me flex my 80286 knowledge by
| adding the additional instructions. The program also is
| the first version to be developed under Microsoft Macro
| Assembler Version 5.00.

| Version 1.30 was released to refelect my newfound status
| in the Association of Shareware Profesionals.

  3 Responses to “Category : Utilities for DOS and Windows Machines
Archive   : NJRAMD14.ZIP
Filename : NJRAMD.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: