I. INTRODUCTION : Terminology Conventional memory - It refers to the memory DOS recognizes. This memory is contained in the computer system board and the 384K RAM card or Multifunction card (if any). The maximum size of the conventional memory is 640 Kbytes Expanded memory - It is a special kind of memory that locates beyond DOS 640K-byte limit. Application programs can make use of the expanded memory through the Expanded Memory Manager (EMM). RAM disk - A RAM disk is equivalent to an additional disk drive but the storage media is some of your computer random access memory (RAM). Unlike an floppy disk drive, a RAM disk is all made of electronic parts, so it works faster. How to Get Started? Before you can use the expanded memory in the Expanded Memory Specification (EMS) board, you must load the Expaned Memory Manager (EMM) driver program. MSDOS supports loading device drivers at boot time by creating a CONFIG.SYS file. A CONFIG.SYS file is an ASCII code (or text) file which has the following format. DEVICE=dddddd.SYS para dddddd.SYS is a device driver program name and para is a parameter for the device driver. A CONFIG.SYS file may declare several device drivers in the above format each separated by a carriage return. When the DOS is booted up, it searches for a CONFIG.SYS file. If a CONFIG.SYS file is found, the device drivers declared by the CONFIG.SYS are loaded one by one. Supplied in this diskette are three device drivers, namely EMM.SYS, ERAMDISK.SYS and CRAMDISK.SYS. The function of each device driver is explained in Section II. What is the use of a RAM disk? A RAM disk can speed up a program which has frequent access to a disk drive. A RAM disk can be implemented by declaring a RAM disk device driver in CONFIG.SYS. Details of implementing a RAM disk are described in Section III and IV. After a RAM disk is installed, it has no file. You have to copy application programs or data files to the RAM disk. This can be done by the COPY command (refer to DOS manual for details). After you have finished working with your program, any useful data file which has been modified in the RAM disk should be copied back to your floppy diskette or hard disk drive, since the data in RAM will be destroyed if you turn off the power or reboot the system. II. DEVICE DRIVERS INSIDE THE DISKETTE : EMM.SYS - The expanded memory manager driver program This is the driver program for the Expanded Memory Specification (EMS) board. It must be installed before the expanded memory in the EMS board can be used. ERAMDISK.SYS - The RAM disk driver program for the EMS board This is the driver program for implementing a RAM disk in the EMS board. The RAM disk has a drive ID which is the letter next to the drive ID letters used by the floppy disk drives and hard disk drives in your system. For example, if your system has two floppy drives, the drive ID of the RAM disk will be C:. If your system has two floppy drives and one hard disk drive, the drive ID of the RAM disk will be D: ( A: and B: are drive IDs for the floppy drives, and C: is the drive ID for the hard disk drive). CRAMDISK.SYS - The RAM disk driver program for the conventional memory This RAM disk driver program is similar to ERAMDISK.SYS but the RAM disk occupies conventional memory. The naming of the RAM disk drive ID is the same as that in ERAMDISK.SYS. If both ERAMDISK.SYS and CRAMDISK.SYS are installed, they will have separate drive IDs If this RAM disk is installed, some application programs (e.g. SYMPHONY) which requires large conventional memory size cannot be run. III. INSTALLING THE DEVICE DRIVER : To prepare a system diskette with the above device drivers, copy the three device drivers program to your system diskette. Then create a CONFIG.SYS file in your system diskette to invoke the device drivers. The function of the CONFIG.SYS is to load the device drivers at boot time. To create a CONFIG.SYS file, you can put your system diskette in drive A: and enter the following command. COPY CON: A:CONFIG.SYS DEVICE=EMM.SYS M3 I0 DEVICE=ERAMDISK.SYS 512 DEVICE=CRAMDISK.SYS 128 Remark: is the ENTER key and is the F6 function key. The above CONFIG.SYS file is only an example. The entries M3, I0, 512, 128 are parameters for the device drivers. They may be varied for different system configurations or applications. If a RAM disk for conventional memory is not required, the command line DEVICE=CRAMDISK.SYS can be ommitted. The command line DEVICE=EMM.SYS must be entered before DEVICE=ERAMDISK.SYS. IV. PARAMETERS IN THE DEVICE DRIVERS : EMM.SYS Format : DEVICE=EMM.SYS Ma Ib Ib M is the parameter heading defining the starting frame address of the memory in the EMS board. the 'a' after M represents a number which can be 0 to 7. M parameter Starting frame address (in HEX) ----------------------------------------------- M0 C4000 M1 C8000 M2 CC000 M3 D0000 M4 D4000 M5 D8000 M6 DC000 M7 E0000 The M parameter can be defined in any of the above values but you must make sure that the address space of the EMS memory does not conflict with the interface card with ROM memory. The EMS board occupies 64K address space starting from the frame address (i.e. if M0 is defined, EMS memory occupies address C4000-D3FFF). If your system contains a hard disk controller card which has a interface ROM with address C8000-CFFFF, parameter M0 or M1 should not be used. It is recommended to use parameter M3, since the address space does not have conflict with most common interface cards. I is the parameter heading defining the I/O port address of the EMS board installed. the 'b' after I represents a number which can be 0 to 6. I parameter I/O port address of DIP switch setting in EMS EMS board (in HEX) 1 2 3 4 ------------------------------------------------------------------ I0 208 OFF ON ON X I1 218 ON OFF ON X I2 258 OFF OFF ON X I3 268 ON ON OFF X I4 2A8 OFF ON OFF X I5 2B8 ON OFF OFF X I6 2E8 OFF OFF OFF X Remark : Pole 4 of the DIP switch may be ON or OFF If your system is a COMPACT XT with built-in EMS memory, the factory set I/O port address is 208 and parameter I0 should be used. A computer system can install up to four EMS board. Each EMS board must has its own I/O port address. There is a four pole DIP (dual in line) switch which can be set to configure different I/O port address. The DIP switch setting on each EMS board must be different in order to have different I/O port address. You should define one I parameter for one EMS board, two I parameters for two EMS boards installed in the computer system and so forth. For example, if you have four EMS boards in the system, you can define the parameters as follows. DEVICE=EMM.SYS M3 I0 I1 I2 I3 ERAMDISK.SYS Format : DEVICE=ERAMDISK.SYS nnnn nnnn represents a number which defines the RAM disk size in Kbyte of memory. The minimum number is 16 and the maximum number depends on the EMS memory size in your system. Each EMS board contains 2048 Kbytes (2 Mbytes) of memory, if the EMS board is fully filled with RAM chips. If four EMS boards are installed in your system, the EMS memory size is 8192 Kbytes (8 Mbytes). (Note: If your system diskette is MSDOS version 2.0 or 2.1 the maximum number for RAM disk is 2048. If your system diskette is MSDOS version 3.0, 3.1, 3.2 or above the maximum number is 8192.) CRAMDISK.SYS Format : DEVICE=CRAMDISK.SYS nnn nnn represents a number which defines the RAM disk size in Kbyte of memory. The minium number is 16 and the maximum number depends on the available conventional memory size. If you application program requires large memory size, it is not recommended to install this device driver.