Difference between revisions of "Useful DOS utilities"
(added FDAPM) |
(added example config files.) |
||
Line 30: | Line 30: | ||
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. | 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] | [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] | ||
== 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> |
Revision as of 06:31, 19 February 2013
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 add extra functionality. This page lists a number of these utilities.
Contents
Utilities
FreeDOS
Full MS-DOS-compatible operating system. Includes most of the utilities and drivers listed below. Website
UMBPCI
UMB memory manager. Provides UMB memory without EMS, uses only 200 bytes of base memory. 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
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