Difference between revisions of "Useful DOS utilities"

From Vogons Wiki
Jump to: navigation, search
(page created)
 
(RDISK)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
MS-DOS compatible operating systems often require [[TSR]]s for basic functionality, such as [[memory management]] or CD-ROM drivers. Many older TSRs, like the drivers included in MS-DOS, often consume large amounts of [[conventional memory]]. There are however many free and open-source replacements for these TSRs, which use less base memory and add extra functionality. This page lists a number of these utilities.
+
MS-DOS compatible operating systems often require [[TSR]]s for basic functionality, such as [[DOS memory management|memory management]] or CD-ROM drivers. Many older TSRs, like the drivers included in MS-DOS, often consume large amounts of [[DOS memory management|conventional memory]]. There are however many free and open-source replacements for these TSRs, which use less base memory and/or add extra functionality. This page lists a number of these utilities.
  
 
== Utilities ==
 
== Utilities ==
Line 8: Line 8:
  
 
=== UMBPCI ===
 
=== UMBPCI ===
UMB memory manager. Provides UMB memory without EMS, uses only 200 bytes of base memory.
+
Enables Upper Memory without switching CPU to Virtual 8086 mode. Requires a supported PCI chipset, like the Intel 4x0 series and may have compatibility issues with drivers using DMA. Uses only 200 bytes of base memory.
 +
This tool is rather comfortable because it allows Real Mode configurations while still being able to load larger TSRs. An indication for the DMA issues are e.g. disk read/write errors. In this case it it strongly recommended to consult the readme or data corruption may occur.
 
[http://www.uwe-sieber.de/umbpci_e.html Website]
 
[http://www.uwe-sieber.de/umbpci_e.html Website]
  
Line 17: Line 18:
 
=== XMGR ===
 
=== XMGR ===
 
XMS memory manager, replacement for HIMEM.SYS.
 
XMS memory manager, replacement for HIMEM.SYS.
[http://johnson.tmfc.net/dos/driver.html Website]
+
[http://optimizr.no-ip.org/dos/drivers.html Website]
  
 
=== UIDE ===
 
=== UIDE ===
 
Universal IDE/SATA driver. Provides CD/DVD drivers and a large disk cache up to 4GB.
 
Universal IDE/SATA driver. Provides CD/DVD drivers and a large disk cache up to 4GB.
[http://johnson.tmfc.net/dos/driver.html Website]
+
[http://optimizr.no-ip.org/dos/drivers.html Website]
  
 
=== RDISK ===
 
=== RDISK ===
 
Utility for creating very large RAM drives in XMS, up to 2GB.
 
Utility for creating very large RAM drives in XMS, up to 2GB.
[http://johnson.tmfc.net/dos/driver.html Website]
+
[http://optimizr.no-ip.org/dos/drivers.html Website]
 +
 
 +
=== FDAPM ===
 +
APM/ACPI manager. Provides power management and energy saving funtionality. Can also be used to slow down the CPU, which can be useful with certain speed-sensitive programs and games.
 +
[http://www.freedos.org/software/?prog=fdapm Website]
 +
 
 +
=== 4DOS ===
 +
Command shell with many advanced features, replacement for COMMAND.COM.
 +
[http://www.4dos.info/ Website]
 +
 
 +
=== GNU fileutils ===
 +
The GNU file utilities (ls, cp, rm, etc..). If you are experienced with Unix or Linux you may prefer these over the standard DOS commands.
 +
[http://reimagery.com/fsfd/unix.htm#gnufileutils Website]
 +
 
 +
=== SETEDIT ===
 +
Very advanced text editor, replacement for EDIT.EXE. Features include syntax highlighting, screensaver, integrated MP3 player, calculator and much more. Supports fancy text resolutions such as 132x60 (1056x480 px), depending on your graphics card.
 +
[http://setedit.sourceforge.net/ Website]
  
 
== Example configuration files ==
 
== Example configuration files ==
 +
Here are some good example startup files. Selecting the first startup option results in the following MEM /C output:
 +
<pre>
 +
Modules using memory below 1 MB:
 +
 +
  Name          Total          Conventional      Upper Memory
 +
  --------  ----------------  ----------------  ----------------
 +
  SYSTEM      16,288  (16K)    10,864  (11K)      5,424    (5K)
 +
  4DOS        5,392    (5K)        272    (0K)      5,120    (5K)
 +
  UIDE        5,296    (5K)          0    (0K)      5,296    (5K)
 +
  IFSHLP      3,968    (4K)          0    (0K)      3,968    (4K)
 +
  NANSI        3,264    (3K)          0    (0K)      3,264    (3K)
 +
  CTMOUSE      3,104    (3K)          0    (0K)      3,104    (3K)
 +
  Free      678,608  (663K)    642,688  (628K)    35,920  (35K)
 +
 +
Memory Type        Total      Used      Free
 +
----------------  --------  --------  --------
 +
Conventional          639K        11K      628K
 +
Upper                  61K        26K        35K
 +
Reserved              324K      324K        0K
 +
Extended (XMS)    261,056K  131,599K  129,457K
 +
----------------  --------  --------  --------
 +
Total memory      262,080K  131,960K  130,120K
 +
 +
Total under 1 MB      700K        37K      663K
 +
 +
Largest executable program size      628K (642,672 bytes)
 +
Largest free upper memory block        21K ( 21,680 bytes)
 +
FreeDOS is resident in the high memory area.
 +
</pre>
 +
 +
 +
'''(Please note I just copied these from my 440BX system, they will probably not work on yours without modifications)'''
  
 
=== CONFIG.SYS ===
 
=== CONFIG.SYS ===
...
+
<pre>
 +
        REM 0x12 = 80x50
 +
SCREEN  =0x12
 +
        REM country code, codepage, country file
 +
COUNTRY =031,437,C:\DOS\BIN\COUNTRY.SYS
 +
VERSION =6.22
 +
BREAK  =ON
 +
SWITCHES=/E
 +
 
 +
MENUCOLOR=7,0
 +
MENUDEFAULT=1
 +
MENU 1 - Load FreeDOS (XMS)
 +
MENU 2 - Load FreeDOS (XMS + EMS)
 +
MENU 3 - Load Windows 2000
 +
MENU 9 - Load FreeDOS without drivers
 +
 
 +
3?DEVICE=C:\GRUB\GRUB.EXE --config-file="root (hd0,0);chainloader /ntldr"
 +
 
 +
        REM /I= = Include region
 +
1?DEVICE=C:\DOS\BIN\UMBPCI.SYS /I=E000-EFFF
 +
 +
        REM /W  = Load in workspace buffer
 +
        REM /Nn = n XMS handles
 +
1?DEVICE=C:\DOS\BIN\XMGR.SYS /W /N128
 +
 
 +
        REM nM  = n MB EMS
 +
        REM I=  = Include UMB region
 +
        REM X=  = Exclude UMB region
 +
2?DEVICE=C:\DOS\BIN\JEMMEX.EXE 8M I=TEST X=TEST
 +
 
 +
12?DOS          =HIGH,UMB
 +
12?DOSDATA      =UMB
 +
12?BUFFERSHIGH  =4
 +
12?FILESHIGH    =40
 +
12?STACKSHIGH  =9,256
 +
12?LASTDRIVEHIGH=Z
 +
 
 +
        REM /D: = CD device driver
 +
        REM /H  = Load to HMA
 +
        REM /F  = Use large (fast) cache blocks
 +
        REM /Sn = n MB cache
 +
        REM /Rn = Use memory above n MB
 +
1?DEVICEHIGH=C:\DOS\BIN\UIDE.SYS  /D:UIDECD01 /H /F /S128 /R63
 +
2?DEVICEHIGH=C:\DOS\BIN\UIDE2.SYS /D:UIDECD01 /H /F /S128 /R63
 +
12?DEVICEHIGH=C:\DOS\NET\IFSHLP.SYS
 +
 
 +
        REM /Txx= Set xx as text mode
 +
        REM /P  = Pass unknown requests to CON:
 +
12?DEVICEHIGH=C:\DOS\BIN\NANSI.SYS /P /T5C /T5E /T6A /T70 /T71 /T72 /T73 /T74 /T75
 +
 
 +
        REM /E: = Environment size
 +
        REM /P= = Autoexec.bat location
 +
12?SHELLHIGH=C:\DOS\BIN\4DOS.COM C:\DOS\BIN /E:1024 /P=C:\AUTOEXEC.BAT
 +
9?SHELL    =C:\DOS\BIN\4DOS.COM C:\DOS\BIN /E:1024 /P=C:\AUTOEXEC.BAT
 +
</pre>
  
 
=== AUTOEXEC.BAT ===
 
=== AUTOEXEC.BAT ===
...
+
<pre>
 +
@ECHO OFF
 +
 
 +
SET /R C:\DOS\ENV\DEFAULT.VAR
 +
 
 +
    REM -h = Human readable file size
 +
    REM -a = Show all files
 +
    REM -G = Do not show user group
 +
    REM -X = Sort by extension
 +
ALIAS LS=*LS --color=auto -haGX
 +
ALIAS REBOOT=FDAPM WARMBOOT
 +
ALIAS HALT=FDAPM POWEROFF
 +
ALIAS SPINDOWN=FDAPM SPINDOWN
 +
 
 +
BREAK ON
 +
 
 +
IF "%CONFIG%"=="9" GOTO NODRIVERS
 +
 
 +
    LH DIRCOLORS -b C:\DOS\ENV\DIRCOLOR.CFG
 +
 
 +
    CALL YMF719
 +
 
 +
        REM FastVid 001
 +
    CALL FV 0
 +
 
 +
        REM CuteMouse
 +
        REM /P = PS/2 port
 +
        REM /3 = Three-button mouse
 +
    IF "%CONFIG%"=="1" LH CTMOUSE /P /3
 +
 
 +
        REM Logitech mouse driver
 +
        REM PS2  = PS/2 port
 +
        REM Sn    = Speed n
 +
    IF "%CONFIG%"=="2" LH MOUSE PS2 S05
 +
 
 +
    LH FDAPM APMBIOS
 +
 
 +
        REM $P = Current directory in uppercase
 +
        REM $g = >
 +
    PROMPT $P$g
 +
 
 +
        REM Rate  32 = 30 cps
 +
        REM Delay  1 = 1/4 sec
 +
    MODE CON: RATE=32 DELAY=1
 +
   
 +
    CLS
 +
 
 +
:NODRIVERS
 +
</pre>

Latest revision as of 16:38, 5 April 2017

MS-DOS compatible operating systems often require TSRs for basic functionality, such as memory management or CD-ROM drivers. Many older TSRs, like the drivers included in MS-DOS, often consume large amounts of conventional memory. There are however many free and open-source replacements for these TSRs, which use less base memory and/or add extra functionality. This page lists a number of these utilities.

Utilities

FreeDOS

Full MS-DOS-compatible operating system. Includes most of the utilities and drivers listed below. Website

UMBPCI

Enables Upper Memory without switching CPU to Virtual 8086 mode. Requires a supported PCI chipset, like the Intel 4x0 series and may have compatibility issues with drivers using DMA. Uses only 200 bytes of base memory. This tool is rather comfortable because it allows Real Mode configurations while still being able to load larger TSRs. An indication for the DMA issues are e.g. disk read/write errors. In this case it it strongly recommended to consult the readme or data corruption may occur. Website

Jemm386 and HimemX

XMS/EMS memory manager, replacement for HIMEM.SYS and/or EMM386.EXE. Website

XMGR

XMS memory manager, replacement for HIMEM.SYS. Website

UIDE

Universal IDE/SATA driver. Provides CD/DVD drivers and a large disk cache up to 4GB. Website

RDISK

Utility for creating very large RAM drives in XMS, up to 2GB. Website

FDAPM

APM/ACPI manager. Provides power management and energy saving funtionality. Can also be used to slow down the CPU, which can be useful with certain speed-sensitive programs and games. Website

4DOS

Command shell with many advanced features, replacement for COMMAND.COM. Website

GNU fileutils

The GNU file utilities (ls, cp, rm, etc..). If you are experienced with Unix or Linux you may prefer these over the standard DOS commands. Website

SETEDIT

Very advanced text editor, replacement for EDIT.EXE. Features include syntax highlighting, screensaver, integrated MP3 player, calculator and much more. Supports fancy text resolutions such as 132x60 (1056x480 px), depending on your graphics card. Website

Example configuration files

Here are some good example startup files. Selecting the first startup option results in the following MEM /C output:

Modules using memory below 1 MB:

  Name           Total           Conventional       Upper Memory
  --------  ----------------   ----------------   ----------------
  SYSTEM      16,288   (16K)     10,864   (11K)      5,424    (5K)
  4DOS         5,392    (5K)        272    (0K)      5,120    (5K)
  UIDE         5,296    (5K)          0    (0K)      5,296    (5K)
  IFSHLP       3,968    (4K)          0    (0K)      3,968    (4K)
  NANSI        3,264    (3K)          0    (0K)      3,264    (3K)
  CTMOUSE      3,104    (3K)          0    (0K)      3,104    (3K)
  Free       678,608  (663K)    642,688  (628K)     35,920   (35K)

Memory Type        Total       Used       Free
----------------  --------   --------   --------
Conventional          639K        11K       628K
Upper                  61K        26K        35K
Reserved              324K       324K         0K
Extended (XMS)    261,056K   131,599K   129,457K
----------------  --------   --------   --------
Total memory      262,080K   131,960K   130,120K

Total under 1 MB      700K        37K       663K

Largest executable program size       628K (642,672 bytes)
Largest free upper memory block        21K ( 21,680 bytes)
FreeDOS is resident in the high memory area.


(Please note I just copied these from my 440BX system, they will probably not work on yours without modifications)

CONFIG.SYS

        REM 0x12 = 80x50
SCREEN  =0x12
        REM country code, codepage, country file
COUNTRY =031,437,C:\DOS\BIN\COUNTRY.SYS
VERSION =6.22
BREAK   =ON
SWITCHES=/E

MENUCOLOR=7,0
MENUDEFAULT=1
MENU 1 - Load FreeDOS (XMS)
MENU 2 - Load FreeDOS (XMS + EMS)
MENU 3 - Load Windows 2000
MENU 9 - Load FreeDOS without drivers

 3?DEVICE=C:\GRUB\GRUB.EXE --config-file="root (hd0,0);chainloader /ntldr"

        REM /I= = Include region
 1?DEVICE=C:\DOS\BIN\UMBPCI.SYS /I=E000-EFFF
 
        REM /W  = Load in workspace buffer
        REM /Nn = n XMS handles
 1?DEVICE=C:\DOS\BIN\XMGR.SYS /W /N128

        REM nM  = n MB EMS
        REM I=  = Include UMB region
        REM X=  = Exclude UMB region
 2?DEVICE=C:\DOS\BIN\JEMMEX.EXE 8M I=TEST X=TEST

12?DOS          =HIGH,UMB
12?DOSDATA      =UMB
12?BUFFERSHIGH  =4
12?FILESHIGH    =40
12?STACKSHIGH   =9,256
12?LASTDRIVEHIGH=Z

        REM /D: = CD device driver
        REM /H  = Load to HMA
        REM /F  = Use large (fast) cache blocks
        REM /Sn = n MB cache
        REM /Rn = Use memory above n MB
 1?DEVICEHIGH=C:\DOS\BIN\UIDE.SYS  /D:UIDECD01 /H /F /S128 /R63
 2?DEVICEHIGH=C:\DOS\BIN\UIDE2.SYS /D:UIDECD01 /H /F /S128 /R63
12?DEVICEHIGH=C:\DOS\NET\IFSHLP.SYS

        REM /Txx= Set xx as text mode
        REM /P  = Pass unknown requests to CON:
12?DEVICEHIGH=C:\DOS\BIN\NANSI.SYS /P /T5C /T5E /T6A /T70 /T71 /T72 /T73 /T74 /T75

        REM /E: = Environment size
        REM /P= = Autoexec.bat location
12?SHELLHIGH=C:\DOS\BIN\4DOS.COM C:\DOS\BIN /E:1024 /P=C:\AUTOEXEC.BAT
 9?SHELL    =C:\DOS\BIN\4DOS.COM C:\DOS\BIN /E:1024 /P=C:\AUTOEXEC.BAT

AUTOEXEC.BAT

@ECHO OFF

SET /R C:\DOS\ENV\DEFAULT.VAR

    REM -h = Human readable file size
    REM -a = Show all files
    REM -G = Do not show user group
    REM -X = Sort by extension
ALIAS LS=*LS --color=auto -haGX
ALIAS REBOOT=FDAPM WARMBOOT 
ALIAS HALT=FDAPM POWEROFF
ALIAS SPINDOWN=FDAPM SPINDOWN

BREAK ON

IF "%CONFIG%"=="9" GOTO NODRIVERS

    LH DIRCOLORS -b C:\DOS\ENV\DIRCOLOR.CFG

    CALL YMF719

        REM FastVid 001
    CALL FV 0

        REM CuteMouse
        REM /P = PS/2 port
        REM /3 = Three-button mouse
    IF "%CONFIG%"=="1" LH CTMOUSE /P /3

        REM Logitech mouse driver
        REM PS2   = PS/2 port
        REM Sn    = Speed n
    IF "%CONFIG%"=="2" LH MOUSE PS2 S05

    LH FDAPM APMBIOS

        REM $P = Current directory in uppercase
        REM $g = >
    PROMPT $P$g

        REM Rate  32 = 30 cps
        REM Delay  1 = 1/4 sec
    MODE CON: RATE=32 DELAY=1
    
    CLS

:NODRIVERS