MS-DOS ฿฿฿฿฿฿ The Microsoft Disk Operating System (MS-DOS) is a group of programs that controls the running and operation of the computer. It provides an interface between the operator and the computer. DOS allows communication with the Central Processor Unit (CPU), the monitor, the disk drives, the printer, and other peripherals. It enables the manipulation of program and data files stored on diskette or hard disk. DOS has a command library of over 40 commands that provide the environment for handling files, developing programs and running applications. It should be noted that Turbo Pascal allows an easy switch between the TP environment and DOS. The file handling commands of DOS allow the operator to copy and delete files, copy entire diskettes, display the contents of files, etc., but also to group files in a hierarchical directory structure. There is also a Line Editor called EDLIN and a DEBUG utility. Although GW-Basic is usually provided with DOS when a PC is purchased, other high-level languages, such as Turbo Pascal must be provided as additional software. When the computer is switched on, DOS is initialized, provided it is either on the hard disk or on a diskette in drive A. After initialization, some DOS commands are memory resident, and these are called internal commands. Others, known as external commands, remain on disk. The internal commands, which are part of the command processor, are not seen on a directory listing and comprise the following: BREAK DEL(ERASE) MKDIR(MD) SET CHDIR(CD) DIR PATH SHIFT CLS ECHO PAUSE TIME COPY EXIT PROMPT TYPE CTTY FOR REM VER DATE GOTO REN(RENAME) VERIFY IF RMDIR(RD) VOL External commands reside on disk as program files, with extension names of .COM, .EXE, or .BAT, and include the following: ASSIGN EDIT GWBASIC REPLACE ATTRIB EDLIN HEXDUMP RESTORE BACKUP EXE2BIN JOIN SELECT CHKDSK FC LABEL SHARE COMMAND FDISK LINK SORT COMP FIND MODE SUBST DEBUG FORMAT MORE SYS DISKCOMP GRAFTABL PRINT TREE DISKCOPY GRAPHICS RECOVER XCOPY DOS enables a commonly executed series of commands to be grouped together into a single file, called a batch file, that can be executed by typing the file name. e.g. a file START.BAT would enable a certain process to be started by typing START and pressing the ENTER key. The AUTOEXEC.BAT file is a special form of batch file which, if present, is automatically executed at system initialization. A typical autoexec.bat file is shown below: echo off {prevent the commands being 'echoed' on screen} path \dos;\menu {set path from root to dos and menu directories} keybuk {select the UK keyboard} type help.mes {type a text file of help information} pause {wait until a key is pressed} cd\menu {change to the directory 'menu'} type menu.mes {type a text file showing a menu of options} The full set of MS-DOS commands are listed in the manual supplied with the computer. It is however worthwhile to illustrate some of the more frequently used ones. Most of the commands require Parameters and possibly Switches as indicated: Parameters. อออออออออออ d: Disk drive letter filename Up to eight-character name of the file on disk. filespec Disk drive letter and filename. path Disk drive letter and directory location. pathname Path to the name of the file Delimiters, which separate commands and parameters, are: space, comma, semicolon, or equal sign. Switches. อออออออออ /F CHKDSK/F Correct any error found. /P DIR/P Stop displaying the directory when screen full. Press any key to continue. /S FORMAT/S Copy the system files to the disk. /V FORMAT/V Enter a volume label on the diskette. /W DIR/W Display only the file names widthwise. Commands. อออออออออ CD [drive:][path] Change the current directory as indicated by 'path'. [d:][path]CHKDSK[drive:][path][filename][/F] Check disk and report. CLS Clear screen and move cursor to the home position. COPY[pathname][pathname] Copies one or more files. DEL or ERASE[drive:]pathname Deletes the specified files from disk. DIR[drive:][pathname][/P][/W] Lists files in current or specified directory. [d:][[path]DISKCOPY[sourcedrive][targetdrive] Copies the contents of a diskette onto another diskette. [d:][path]FORMAT drive: [/S][/V] Format a disk to receive MS-DOS files. If 'drive' not specified the default is chosen, so take care not to inadvertently format the hard disk. MD (or MKDIR) path Make a new directory. PATH[d:]\path[;[d:]\path.....] Display or set command search path. REN (or RENAME) pathname filename Renames files. RD (or RMDIR) [drive:] path Removes a directory. TYPE pathname Displays the contents of the specified file on the screen. The display can be redirected to the printer by the redirection indicator > followed by PRN i.e >PRN A text file can be edited in a number of ways. In MS-DOS the Text Editor, called EDLIN, can be used. It is usual for each computer manufacturer to provide an additional editor (e.g. Amstrad's RPED) and of course the Turbo Pascal EDIT facility may be used. EDLIN. ออออออ From the DOS prompt the command is [d:][path]EDLIN filespec. EDLIN then copies the file into a workspace area of memory for editing and if all is correct displays the message 'End of input file'. Each line of the file is numbered and is referenced by that number (n) in the edit procedure. Some of the more important EDLIN commands are : n Edit line n, which is displayed and a new line with the same number is displayed to allow the modification. [n]D Delete line. E End the edit, save new file and return to DOS. [n]I Insert line, before n. Q Quit the edit and abandon changes made. DEBUG. ออออออ For binary and executable files a facility, called DEBUG, is provided. The command is DEBUG filespec arguments where filespec can be the full file specification, including drive, directory and filename. The 'arguments' refer to the parameters used by the program under examination. Debug responds with its own command prompt, which is a hyphen (-). Some Debug parameters are: address hexadecimal segment;hexadecimal offset. bytevalue hexadecimal byte value. range start address, end address. Some debug commands are: D [range] address Display this area of memory. E address [,bytevalue[,bytevalue]...] Replace value at address with bytevalue. Q Quit debug and discard file. W [address] Write file to disk. The above information is provided as a limited indication of the facilities available under MS-DOS and is far from complete. Reference to the DOS manual must be made for more detailed information. More Advanced MS-DOS. ฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿฿ There are two other important system files in DOS. The first is CONFIG.SYS which is a text file containing a set of commands to change certain default options selected by DOS at initialization. This file can call the second, called ANSI.SYS, which extends the screen handling facilities. CONFIG.SYS ออออออออออ Some of the commands in this file are: BREAK=[ON][OFF] extends the [Ctrl][C] interrupt to disk read/write operations. BUFFERS=n changes number of buffers used in disk read/write operations. The default is 2, but 10-20 recommended. COUNTRY=country code sets correct time ,date, currency and decimal separator. DEVICE=pathname installs a device driver, such as ANSI.SYS (see below). FILES=n sets the maximum number of files open concurrently. ANSI.SYS ออออออออ When this file is called by CONFIG.SYS (see above), standard ANSI screen control codes are made available. These control codes all begin with the character ESC (decimal 27, hex 1B) followed by a left bracket and are frequently referred to as the ANSI escape sequences. There are four groups as follows: Cursor Control Commands. ออออออออออออออออออออออออ Cursor Position ESC[n;mf or ESC[n;mH moves the cursor to row n, column m Cursor Up ESC[nA moves cursor up n rows. Cursor Down ESC[nB moves cursor down n rows. Cursor Right ESC[nC moves cursor right n columns. Cursor Left ESC[nD moves cursor left n columns. and others, which save, restore, and report cursor position. Erase Display Commands. อออออออออออออออออออออออ Erase Display ESC[2J erases screen and moves cursor to home position. Erase Line ESC[K erases to end of line. Attribute and Mode Commands. ออออออออออออออออออออออออออออ Set Display Mode ESC[=nh sets screen mode.... n=0 is 40 x 25 black & white. . n=4 is 320 x 200 color etc. Set Graphics ESC[n;..;km where n...k take the values as follows: 0 all attributes off. 1 bold .... 30 black foreground 40 black background 31 red foreground 41 red background ..... 37 white foreground 47 white background Keyboard Control Commands. ออออออออออออออออออออออออออ Define Key ESC[n;.....;np Assigns one or more characters to be produced when a specified key is pressed. The first 'n' specifies the key to be defined (ASCII 1 to 127) or if a key combination or function key then 0;n must be used. The last n is the character(s) to be produced, and can be a string enclosed in double quotes. e.g. ESC[0;68;"dir|sort|more";13p redefines the function key F10 for a directory list, piped to sort and more commands. Restore Key ESC[n;....;np where the first n and second n are the same. e.g. ESC[0;68;0;68p restores the F10 key to its original meaning. MSDOS.TXT 5.1.90