M S X -- D O S v e r s i o n 2
=================================
The advanced disk operating system
for MSX 2 computers
CONTENTS Page
1. Introduction ......................... 3
2. Editing command lines ................ 3
3. Notation ............................. 6
4. Description of Commands .............. 10
5. Redirection and Piping ............... 70
6. Batch files, AUTOEXEC and REBOOT ..... 72
7. Environment Items .................... 75
8. Errors and Messages .................. 79
9. Command Summary ...................... 94
10. DISK-BASIC 2.0 ....................... 100
This manual describes the user interface and commands provided by
MSX-DOS 2 version 2.20.
1. INTRODUCTION
=================
MSX-DOS 2, like its predecessor MSX-DOS 1, is provided in a cartridge
and in some disk files. The disk files are MSXDOS2.SYS, COMMAND2.COM, help
files and transient commands.
MSXDOS2.SYS has the ability to load and execute programs in an enhanced
CP/M-compatible environment. COMMAND2.COM is a special program which, when
loaded and executed, provides the user with many sophisticated commands and
features generally compatible with and in many cases better than those found
in MS-DOS and MSX-DOS 1, such as extended memory management.
It also has the ability to load and execute specially written MSX-DOS 1
programs and most standard CP/M programs, and can execute batch files with
parameter substitution and other features similar to those found in MS-DOS.
An APPEND facility is provided to increase the ease of use of
directories with CP/M programs which were not written to handle them.
Throughout the rest of this manual the term MSX-DOS is used to mean
MSX-DOS version 2.xx unless otherwise stated.
2. EDITING COMMAND LINES
========================
When typing in a command line to MSX-DOS, a simple editing facility is
available for correction of mistakes or the re-entering and editing of
previous commands.
Typing ordinary characters at the keyboard cause the characters to
appear on the screen as would be expected. Typing most control characters
cause them to be represented by a '^' symbol followed by the control letter.
Exceptions are carriage return (RET or CTRL-M), back space (BS or CTRL-H),
tab (TAB or CTRL-I), insert (INS or CTRL-R), escape (ESC or CTRL-[), home
(HOME or CTRL-K), CTRL-C, CTRL-J, CTRL-N, CTRL-P, CTRL-S, CTRL-U and CTRL-X
(SELECT). These perform the following functions:
CTRL-C - this acts as a 'break' key. A more drastic and preferred
'break' key is CTRL-STOP.
CTRL-J - line feed; nothing happens if this was given in the
command line.
CTRL-K - home cursor (HOME).
CTRL-N - this turns the printer off after being turned on by
CTRL-P.
CTRL-P - this turns the printer on. When on, all characters
printed on the screen are also printed on the printer.
CTRL-S - this suspends all character output until another key is
pressed.
CTRL-U - this erases the line currently being entered.
CTRL-X - this erases the line currently being entered (SELECT).
The line is entered when the 'enter' key is pressed.
At any point whilst typing in a command line, the backspace key (marked
BS or BACK SPACE on most MSX machines) can be used to delete the character
immediately to the left of the cursor in the normal way.
The cursor left and right keys will move the cursor left and right along
the line. Typing a character at this point will overwrite the character
currently underneath the cursor.
Pressing the insert key (marked INS on most MSX machines) will toggle to
'insert mode', and the cursor will change to an underline cursor to indicate
this. Instead of the characters being typed overwriting the characters under
the cursor, they will instead be inserted before the cursor character, the
remaining characters to the end of the line being moved one position to the
right.
The delete key (marked DEL on most MSX machines) will delete the
character under the cursor and move the remaining characters to the end of
the line one position to the left.
The home key (marked 'HOME' on most MSX machines) will move the cursor
to the start of the line.
Pressing ESC, CTRL-U or CTRL-X will clear the line to allow a new one to
be entered.
The command editor also keeps a list of previous commands entered, up to
a limit of 256 characters. Pressing the cursor up key will move up the list
and display the previous command line entered, allowing this old command line
to be edited and re-entered. Pressing the cursor down key will similarly move
to the next old command line that was entered.
If a previous command line is changed, then it will be used as the new
command line and added to the bottom of the list. If it was not changed, then
it will not be added to the list and the current command line will be the
next one which was originally entered. This allows a whole sequence of
previous commands to be entered easily.
The list of previous commands is in fact circular and moving off the top
or bottom will move to the last or first command in the list respectively.
The previous command can be called to be re-entered or edited from this
command history list.
The features described here are in fact available to many programs that
MSX-DOS can execute. In any program that does 'line inputs', each line can be
edited as described above. Previous lines can be recalled for re-entering and
editing, although the list of previous lines will of course include previous
commands.
3. NOTATION
===========
The syntax of the commands available from MSX-DOS are described in
chapter 4 using the following notation:
Words in upper case
These are keywords and must be entered as shown in any mixture of upper
or lower case.
Items in lower case
These are parameters which must be supplied to the command at this point
in the command line.
Items in square brackets ('[' and ']')
These are optional items. The brackets themselves should not be included
in the command line.
Items separated by a vertical bar ('|')
This indicates that only one of the items is required. The vertical bar
itself should not be included in the command line.
The following is a list of items which can appear on a command line:
d:
This indicates that a drive name is required (A:, B: etc.).
If d: is shown as optional and is not specified, then the currently
logged-on drive, as indicated by the command prompt, is assumed.
path
This indicates that a directory path is required, the syntax of which is
similar to MS-DOS. Each directory in the path is separated by a backslash
'\'. A backslash at the start of the path indicates that the path starts at
the root directory, otherwise the path starts at the current directory as
indicated by the CHDIR command. Frequently a filename follows a path, in
which case the two must be separated by a backslash.
Two consecutive dots '..' signify the immediate parent directory in the
path. A single dot '.' signifies the current directory in the path and
therefore usually has no value in a path specification.
On non-English MSX machines, the backslash character '\' may be replaced
by some other character. In particular, on Japanese MSX machines the Yen
character is used.
If a path is shown as optional and is not specified, then the current
directory as indicated by the CHDIR command is assumed.
The syntax of the directory names that make up a path name follows that
for filenames given below.
filename
This indicates that the name of a file is required, the syntax of which
is similar to MS-DOS and MSX-DOS 1. An ambiguous filename is one that
contains '*' and '?' characters and may match more that one file on disk,
whilst one that does not contain these is an unambiguous filename.
A filename has the following syntax:-
mainname[.suf]
where mainname is a sequence of up to 8 characters and suf is a sequence
of up to 3 characters inclusive. Any characters beyond these fields are
ignored. A '*' in the main name or suffix is equivalent to filling from that
character position to the end of the field with '?'. If the suffix is given
then it must be separated from the main part of the filename by a single dot
'.'.
The following characters cannot be used in filenames:-
Control codes and SPACE (in the range 0 to 20h, and 7FH and FFH)
: ; . , = + \ < > ( ) | / " [ ]
All characters are converted to upper case where appropriate and
therefore lower and upper case characters have the same meaning. Note that
extended two-character Japanese characters(SHIFT-JIS code) are allowed.
If a filename is shown as optional and is not specified, then a filename
of *.* is assumed.
filespec
This is used to identify a file or several files in the same directory
on a disk. It's syntax is:-
[d:][path][filename]
where at least one of the three optional items must be given. Where this is
used to specify existing files, /H may be given to allow hidden files to be
found.
Generally, d: if not given defaults to the currently logged on drive,
path if not given defaults to the current directory of that drive and
filename if not given defaults to a filename of *.*.
compound-filespec
This is used in many commands to specify the files or directories to
which the command is applied. It's syntax is:-
filespec [+ filespec [+ filespec ...]]
Thus several filespecs (see above) can be given, separated by '+'
symbols, with spaces etc. allowed either side of the +. The effect of this in
commands is exactly the same as if all the matched files could have been
matched by a single filespec.
Where a compound-filespec is used to specify existing files, /H may be
given after each filespec (see above), in which case it will take effect only
for the files matched by that single filespec. If a /H is given before the
compound-filespec, then it will apply over all the filespecs.
volname
This indicates that a volume name is required. A volume name is a
sequence of up to 11 characters, which can include the characters not valid
for filenames with the exception of control codes and '/', although leading
spaces will be deleted.
device
This indicates one of the five standard MSX-DOS devices is required.
These and their meaning are:
CON - screen/keyboard I/O
NUL - 'null' device, does nothing
AUX - auxiliary I/O (eg. RS232 serial)
LST - printer output
PRN - printer output
Unlike on some other systems, a colon is not required after the device
name.
Device names can generally be used wherever filenames can be used. For
example, the command COPY MYFILE PRN will read the file MYFILE and write it
to the printer.
When using the CON device as an input filename, lines can be typed in
and edited in the same way as command lines (see chapter 2 on Editing Command
Lines). To end the operation, control-Z (^Z) must be typed at the start of a
line. For example, a small text file called MYFILE can be created with the
command COPY CON MYFILE:
A>COPY CON MYFILE
All work and no play makes Jack a dull boy.
Can you hear me?
^Z
A>
Lines of text can then be typed in, and they will be written to the file
MYFILE. The command will then complete when a line containing a single
control-Z is entered.
If the NUL device is written to by the command COPY CON NUL, then the
characters written are simply ignored. If read from, then an end-of-file
condition is returned straight away (which is equivalent to typing the
control-Z in the example above).
For most commands, it is not sensible to specify a device (the CON
device cannot be deleted using the ERASE command, for example). The commands
that devices are likely to be used with are those that read and write data
from and to files, such as CONCAT, COPY and TYPE.
number
This indicates that a number is required. This may be in the range 0 to
255 or 0 to 65535 depending on the command.
4. COMMANDS
===========
This chapter describes in detail all the commands available from the
MSX-DOS CLI. Each command is described using the notation described in
chapter 3. Where two or more parameters are described using this notation,
they must be separated by separators. Separators consist of zero or more
leading spaces, a separator character, and zero or more trailing spaces.
Valid separator characters are:
space tab ; , =
Option letters introduced by '/' characters are an exception to this and
need not be preceded by a separator.
A transient MSX-DOS or CP/M-80 program can be loaded and executed by
typing the main name of the filename plus an optional extension of .COM.
Batch files can similarly be executed except that the extension is .BAT.
Where COM and BAT files exist in the same directory and with the same name,
the COM file is found and executed in preference to the BAT file. The exact
location on disk of the command can be specified by including its drive
and/or path with its name.
When looking for a COM or BAT file, the specified directory of the
specified drive is searched. If not found and a drive or path was given with
the command, then an 'unrecognized command' error results.
If just the filename and optional extension were given, the current
directory is searched first. If not found, then a list of directories is
searched. This list can be specified and changed using the PATH command. If
still not found then an 'unrecognized command' error again results.
No CP/M program will be able to specify directories or path names since
these do not exist in CP/M, only the current directory of the appropriate
drive being accessible from these programs. An APPEND environment item is
available which increases the usability of these programs by allowing an
alternative directory to be searched by the program as well as the current
one (see chapter 7 on Environment Items).
Many commands and programs perform input or output using the 'standard
input' and 'standard output'. The standard input normally refers to the
keyboard, and the standard output normally refers to the screen. These can be
changed, however, to refer to other devices or to disk files for the duration
of the command by including the redirection symbols <, > and >> on the
command line, followed by a device or file name. The standard output of one
command can also be sent to the standard input of the next command by
including the piping symbol | on the command line between the two commands.
See chapter 5 on Redirection and Piping for more details of these facilities.
When a transient command is executed, that command may overwrite some of
the memory that COMMAND2.COM was using. Thus when the command terminates,
COMMAND2.COM may need to re-load itself from disk into memory from the
COMMAND2.COM file that it was originally loaded from. This file is located by
looking at the SHELL environment item (see chapter 7 on Environment Items),
or the root directory of the boot drive if it is not found there. If it is
still not found, then a prompt is issued. For example, if MSX-DOS was booted
from drive A:, then the prompt will be:
Insert COMMAND2.COM disk in drive A:
Press any key to continue...
After inserting into drive A: a disk containing COMMAND2.COM in the root
directory and pressing a key, COMMAND2.COM will be re-loaded and the system
will continue as normal.
Although not a command as such, the currently logged on drive can be
changed by giving the command:
d:
which causes the drive d: to become the current drive. This should be shown
by the prompt letter.
In the command examples that follow, underlined text is an example
response to a command, and the other text consists of the example command
given by the user. In most examples a single space is shown as the parameter
separator, although other separator characters can be used as specified
above.
ASSIGN
Format
ASSIGN [d: [d:]]
Purpose
Sets up the logical to physical translation of drives.
Use
If no drives are given, then all current drive assignments are cancelled.
If only one drive is given, then the physical drive to which this refers
is printed.
If both drives are given, then the subsequent access to the first drive
(logical drive) will be done to the second drive (physical drive) by MSX-DOS.
Examples
ASSIGN
Un-assigns all previous drive assignments.
ASSIGN A: B:
Assigns drive A: to drive B:, so that all accesses that previously would
go to drive A: go instead to drive B:
ASSIGN A:
A:=B:
Displays the drive to which A: is currently assigned, which in this case
is B:.
ATDIR
Format
ATDIR +|-H [/H] [/P] compound-filespec
Purpose
Changes the attributes of directories to make them hidden/not hidden.
Use
The compound-filespec specifies the directories whose attributes are to
be changed.
If +H is given, then the selected directories are marked as hidden, and
will not be affected by other directory commands or shown by a DIR command
unless a /H option is given with those commands. The -H option marks the
selected directories as not hidden, and will not have any effect unless the
/H option is given.
Unlike files, directories cannot be made read only.
When an error occurs, the erroneous directory name is printed followed
by an error message, and the command will continue with the next directory.
If many errors occur, then the /P option can be used to cause the output to
pause at the end of the screen.
The DIR /H command can be used to indicate the current attributes of
directories.
Examples
ATDIR +H DIR1
Marks the directory called DIR1 as hidden.
ATDIR -H DIR1/H
Marks the hidden directory DIR1 as not hidden.
ATDIR +H DIR?
Marks all directories matching DIR? as hidden (for example DIR1, DIR2 and DIR3).
ATDIR +H \DIR1+\DIR2
Marks the DIR1 directory and the DIR2 directory as hidden.
ATTRIB
Format
ATTRIB +|-R|H [/H] [/P] compound-filespec
Purpose
Changes the attributes of files to make them hidden/not hidden and read
only/not read only.
Use
The compound-filespec specifies the files whose attributes are to be
changed, and /H allows hidden files to also have their attributes changed.
If +H is given, then the selected files are marked as hidden, and will
not be affected by most commands or be shown by the DIR command unless a /H
option is given with those commands. -H marks the selected files as not
hidden, and will not have any effect unless the files are hidden.
If +R is given, then the selected files are marked as read only. -R
marks the selected files as not read only (read/write). Read only files
cannot be written to or changed.
When an error occurs, the erroneous filename is printed followed by an
error message, and the command will continue with the next file. If many
errors occur, then the /P option can be used to cause the output to pause at
the end of the screen.
The DIR command can be used to indicate the current attributes of files.
Examples
ATTRIB +R FILE1
The file FILE1 is marked as read only, and will not subsequently be
modifiable or deletable.
ATTRIB +HB:\DIR1\*.COM
Marks all *.COM files in the directory B:DIR1 as hidden, and will not be
displayed by the DIR command.
ATTRIB -R -H \DIR1/H/P
All the files in DIR1 are marked as not read only and not hidden. The
output, if any, will pause at the bottom of the screen.
ATTRIB +R \DIR1 + \DIR2 + FILE1
All files in the directories DIR1 and DIR2 and the file FILE1 are marked
as read only.
BASIC
Format
BASIC [program]
Purpose
Transfers control to MSX disk BASIC.
Use
[Program] is the name of a BASIC program on disk.
Control is passed to the built-in MSX BASIC, which will load and execute
the BASIC program if specified. If a RAM disk has been set up, then it can
still be used from BASIC.
The BASIC command CALL SYSTEM("command") can be used to return to
MSX-DOS, and the optional command, which can be any command executable on
MSX-DOS, will be executed. If the command is not given, then a batch file
called REBOOT.BAT will be searched for and executed if found (see chapter 6
on Batch Files).
Examples
BASIC
MSX disk BASIC is entered.
BASIC MYPROG.BAS
MSX disk BASIC is entered, and the BASIC program MYPROG.BAS loaded and
RUN.
BUFFERS
Format
BUFFERS [number]
Purpose
Displays or changes the number of disk buffers in the system.
Use
If the number is not given, then the number of disk buffers currently in
the system will be displayed, otherwise the number of buffers will be changed
to the specified number, the now unused memory being freed for other purposes
if the new number is less than the previous. If there is not enough memory
for the specified number of buffers, then as many as possible are created and
no error is given.
Increasing the number of disk buffers may speed up some applications,
particularly those that perform random accesses to files. Setting the number
above 10 is unlikely to improve performance much, and unnecessarily uses up
memory.
The memory area used for disk buffers is also used for environment items
and for opening files. Thus keeping buffers set to the maximum possible may
prevent some commands from working, particularly SET, COPY and CONCAT. If any
of these commands give a 'not enough memory' error then it may help to reduce
the number of buffers. Reducing them below about three however will impair
performance considerably.
The default number of buffers in the system is 5, which will be adequate
for most purposes.
Examples
BUFFERS
BUFFERS=5
The current number of disk buffers is printed, which in this case is 5.
BUFFERS 10
(or BUFFERS=10)
The number of buffers is increased to as many as possible up to a limit
of 10.
BUFFERS = 5
(or BUFFERS 5)
The number of buffers is reduced again to 5.
CD
See CHDIR
CHDIR
Format
CHDIR [d:] [path]
or
CD [d:] [path]
Purpose
Displays or changes the current directory.
Use
If no path is specified, then the current directory path for the current
or specified drive is printed. This is the directory path from the root
directory to the current directory.
If a path is specified, then the current directory for the current or
specified drive is changed to the directory specified by the path.
Each drive has it's own current directory. This remains at the directory
specified by the last CHDIR command for that drive (or at the root directory
initially) until another CHDIR command is given or it cannot be found on the
disk when it is accessed (because the disk has been changed, for example). It
is then returned to the root directory.
The CD command is an abbreviated form of the CHDIR command provided for
convenience and MS-DOS compatibility.
Note that the command prompt can be changed to display the current
directory with the command SET PROMPT ON (see chapter 7 on Environment
Items).
Examples
CHDIR \DIR1
The current directory of the current drive is changed to DIR1.
CHDIR A:DIR2
The current directory of drive A: is changed to DIR2.
CD
E:\DIR1
The current directory of the current drive is displayed, which in this
case is DIR1.
CHDIR A:
A:\DIR2
The current directory for drive A: is displayed, which is also DIR2.
CHKDSK
Format
CHKDSK [d:] [/F]
Purpose
Checks the integrity of the files on the disk.
Use
The integrity of the data structures on disk in the specified or current
drive is checked and lost disk space is checked for. When errors are found on
the disk, corrective action is taken. If lost clusters are found, a prompt is
issued allowing the lost disk space to be either converted into usable disk
space or into files. If the latter is chosen, then files of the form
FILE0000.CHK, FILE0001.CHK etc. will be created.
If the /F option is not given, then CHKDSK will not actually write any
corrections it makes to disk, but will behave as though it has. This allows
CHKDSK to be executed to see what would be done to the disk if /F was given.
Disk space can become lost (ie. lost clusters created) when some
programs are aborted. This applies particularly to CP/M programs. It is
recommended that CHKDSK is used occasionally on all disks.
Note that this is a transient command, and must therefore be loaded off
disk.
Examples
CHKDSK
The disk in the current drive is checked. A 'status report' will be
printed. Any errors found will not be written to disk.
CHKDSK B:
The disk in drive B: is checked. Any errors found will not be written to
disk.
CHKDSK/F
20 lost clusters found in 1 chain
Convert lost chains to files (Y/N) ?
The disk in the current drive was checked, and some lost disk space
found. Since /F was given, the corrections will be written to disk and the
lost space recovered.
CLS
Format
CLS
Purpose
Clears the screen.
Use
Simply clears the screen and homes the cursor.
Examples
CLS
The screen is cleared, and another command can be typed.
COMMAND2
Format
COMMAND2 [command]
Purpose
Invokes the command interpreter.
Use
command is any command that can normally be typed at the prompt (such as
the commands in this manual).
COMMAND2 is simply the name of the command interpreter on disk, and can
be executed as a normal transient program. In normal use it gets loaded and
executed once by MSXDOS2.SYS at the boot time, and this provides the ability
to perform all the commands in this manual.
Advanced users may, however, wish to invoke another command interpreter
for a variety of reasons. The second COMMAND2.COM may, for example, be a
later version and provide more facilities. If a transient program has the
ability to load and execute programs, as some sophisticated programs do, then
they can load the COMMAND2.COM program and any MSX-DOS command can then be
given. When COMMAND2.COM exits by EXIT command, the original program will be
returned to.
If no command is given as a parameter, then the second COMMAND2.COM will
simply issue the normal prompt (without executing AUTOEXEC.BAT or REBOOT.BAT)
and wait for commands in the normal way. It will terminate and exit back to
the original command interpreter or program when the EXIT command is given
(see the EXIT command). If an error code is given to this EXIT command, then
the original command interpreter or program will receive it and, in the case
of COMMAND2.COM and MSXDOS2.SYS, print an appropriate error message (see
chapter 8 on Errors).
If a command is given as a parameter to COMMAND2.COM however, then it
will be executed as though it had been typed in the normal way. The command
may be an internal command or an external COM or BAT command. After executing
the command, COMMAND2.COM will immediately exit back to the original command
interpreter or program.
In this way, invoking a second COMMAND2.COM from the normal command
interpreter with a batch file name as a command can be used to 'nest' batch
files (see chapter 6 on Batch Files), instead of 'chaining'.
When COMMAND2.COM is executed, it saves the whole environment, and then
restores it again when it exits. It only sets up the default environment
items however if they are not already defined. Thus the second COMMAND2.COM
inherits the environment of the first. Any changes made whilst the second
COMMAND2.COM is executing will only last as long it does, and will be lost
when it exits.
Each incarnation of COMMAND2.COM uses up some memory which is freed
again when it exits. This depends partly on the number of environment items,
and is typically about 1.5K.
When COMMAND2.COM executes a transient program, it may have to re-load
itself off disk since the program is allowed to use the memory occupied by
COMMAND2.COM. In this case, it uses the SHELL environment item to locate the
file that it must use to load itself (see chapter 7 on Environment Items).
When first loaded from the COMMAND2.COM file on disk, SHELL is set to refer
to that file.
Examples
COMMAND2
A>
Another copy of COMMAND2 is loaded, and prints it's normal prompt. EXIT
will exit back to the original prompt.
COMMAND2 FILE.BAT
Normally in a batch file. The file FILE.BAT is executed, and when it
ends the current batch file will be resumed with the command after this one.
CONCAT
Format
CONCAT [/H] [/P] [/B] [/V] compound-filespec filespec
Purpose
Concatenates (joins together) files.
Use
The compound-filespec specifies the files that are to be joined
together, and /H allows hidden files to be joined.
The second parameter is a filespec that must be unambiguous and is
created before the source files are read. Each source file is then read,
joined onto the end of the previous one and written out to the destination.
As each source file is read, it's filename is printed. If for some
reason the file cannot be read (eg. it is the file that has been created as
the destination) then the filename is followed by an error message and the
CONCAT operation continues with the next source file. If many files are being
concatenated, then /P will cause the output to pause at the end of the screen
until a key is pressed.
Normally, the concatenation is performed on ASCII files. Source files
are read up to the first end-of-file character (CTRL-Z) and a single
end-of-file character is appended to the destination after all data has been
written out. If, however, /B (binary mode) is given, then no interpretation
is given to the data read and no additional data is added.
It is also possible to give the /B to the destination or to any of the
filespecs in the compound-filespec, and it will then refer only to those
files. /A may also be given to reverse the effect of /B.
The /V option can be given to turn write verification on for the
duration of the CONCAT command (see the VERIFY command). This will ensure
that data is written correctly to disks if the device driver being used has
the feature, but will slow the operation down for the verification.
If CONCAT gives a 'Not enough memory' error then probably reducing the
number of buffers (see the BUFFERS command) or removing some environment
items (see chapter 7 on Environment Items) will free up sufficient memory.
Examples
CONCAT *.DOC ALL.PRN
A new file called ALL.PRN is created, and all files matching *.DOC (for
example FILE1.DOC, FILE2.DOC and FILE3.DOC) are joined together and written
to the new file in the order that they are found on disk. Any existing file
called ALL.PRN will be overwritten.
CONCAT /H /P *.DOC ALL.DOC
FILE1.DOC
FILE2.DOC
FILE3.DOC
ALL.DOC -- Destination file cannot be concatenated
A new file called ALL.DOC is created, and all files matching *.DOC are
joined together and written to the new file in the order that they are found
on disk. Since the destination file ALL.DOC also matched the source filename
*.DOC, the message is printed and it is not included in the concatenation.
Since /H was given, hidden files are also concatenated and, since /P was
given, the key input is waited after each screenful output if the number of
the lines of the file list is larger than that of the screen.
CONCAT /B FILE2.DOC + FILE3.DOC + FILE1.DOC ALL.DOC
A new file ALL.DOC is created, and the files FILE2.DOC, FILE3.DOC and
FILE1.DOC and joined together in that order and written to the new file. They
are joined together in binary mode.
COPY
Format
COPY [/A] [/H] [/T] [/V] [/P] [/B] source dest
Purpose
Copies data from files or devices to other files or devices.
Use
The definition of the source is:
compound-filespec | device
The compound-filespec specifies the files that are to be copied. It may be
the device specification. If /H is given then hidden files may be copied.
The definition of the dest is:
[d:] [path] [filename] | device
Where d: and path default to the current drive and directory respectively. If
any part of the filename is ambiguous then the appropriate character from the
source filename is substituted, thus allowing the files to be renamed in the
process. If the filename is not given, then the entire source filename is
used. If the dest is an unambiguous directory, then the files are copied into
that directory with a filename of *.*.
COPY will read as many source files as possible into memory before
writing any out. When it can read no more into memory (eg. when it has used
all available memory) it will write out each file in the order that it read
them. When it creates each destination file, it prints the source filename.
Then if it is unable to create the destination file, an error message is
printed and the copy operation continues with the next file. /P can be given
to make the output pause at the end of the screen.
Many reasons exist for COPY to be unable to create the destination, such
as a read-only file already existing with the same name. Sometimes COPY will
refuse to create the destination because the user may have made a mistake.
For example, a file cannot be copied onto itself, or several files cannot be
copied onto one file. A 'Cannot create destination' error may be given if the
destination of one file would delete a previous source file or a file already
being used for something else (eg. the currently executing batch file). A
'Cannot overwrite previous destination file' error results if an attempt is
made to copy many files to one file. This usually means that the intended
destination was a directory, but that the name has been misspelled.
If /A is specified, then an ASCII copy is performed. This means that
source files will only be read as far as the first end-of-file (EOF)
character (CTRL-Z) and then each destination will have a single end-of-file
character appended to it.
It is also possible to give a /A to the destination or to any of the
filespecs in the compound-filespec separately, in which case it applies only
to that source or dest specification.
The /B option can be given to copy in binary mode, that is, the file
being read will be copied as it is and no data will be added.
The /V option can be given to turn write verification on for the
duration of the COPY command (see the VERIFY command). This will ensure that
data is written correctly to disks if the device driver being used has the
feature, but will slow the operation down.
Normally, the destination files are given the same date and time as the
source files. However, the /T option can be given to cause the destination
files to have the current date and time. The destination files will not be
hidden or read-only, regardless of the attributes of the source files. The
ATTRIB command can be used to change these.
If COPY gives a 'Not enough memory' error then probably reducing the
number of buffers (see the BUFFERS command) or removing some environment
items (see chapter 7 on Environment Items) will free up sufficient work area.
Note that the COPY command is simpler than that in MS-DOS and MSX-DOS 1
because it cannot concatenate (join together) files. To do this, a CONCAT
command is available (see the CONCAT command).
Examples
COPY FILE1 B:
The file FILE1 is copied from the current directory of the current drive
to the current directory of drive B:.
COPY /H MSXDOS2.SYS + COMMAND2.COM B:
The two hidden files MSXDOS2.SYS and COMMAND2.COM are copied to drive
B:, thus making it a booting disk.
COPY A:\DIR1 B:\DIR1 /V
All files in the directory DIR1 from the root of drive A: are copied to
a similar directory on drive B: with verify on to ensure that the files were
written correctly.
COPY B:
All files in the current directory of drive B: are copied to the current
directory of the current drive.
COPY /A AUX CON
Characters are read from the device AUX (which may be used for RS232
serial for example) to the device CON, which is the screen. The copy is done
as far as the first end-of-file character. If /A was not given, then there
may have been no way of stopping the COPY operation without pressing the
CTRL-STOP key.
COPY A:*.DOC B:/T
All files matching *.DOC (for example FILE1.DOC, FILE2.DOC and
FILE3.DOC) are copied to the current directory of drive B: and are given the
current date and time instead of the dates and times of the *.DOC files.
COPY *.BAT
AUTOEXEC.BAT -- File cannot be copied onto itself
REBOOT.BAT -- File cannot be copied onto itself
This command told COPY to copy all files matching *.BAT (in this case
AUTOEXEC.BAT and REBOOT.BAT) from the current directory of the current drive
to the same place, and COPY printed the messages to warn of this. No data in
this case was actually copied.
COPY *.BAT DIR2
AUTOEXEC.BAT
REBOOT.BAT -- Cannot overwrite previous destination file
This command told COPY to copy all files matching *.BAT (in this case
AUTOEXEC.BAT and REBOOT.BAT) to a directory called DIR2. DIR2, however, did
not exist so AUTOEXEC.BAT was copied to a file called DIR2, and then an
attempt was made to copy REBOOT.BAT also to a file called DIR2. The message was printed as a warning that a
mistake was probably made (in this case DIR2 not existing). REBOOT.BAT was
not actually copied anywhere.
DATE
Format
DATE [date]
Purpose
Displays or sets the current date.
Use
If the date is given after the command, then the date is set to this
value (for the format see below). If the date is not given after the command,
then the current day and date is printed and the new date is prompted for and
input. If no input is given (ie. if the 'enter' key alone is pressed) then
the current date is not altered. Otherwise the input is assumed to be a new
date, and is interpreted as described below. If the date is invalid then an
error message is displayed and the new date again prompted for and input.
The date is expected to consist of up to three numbers, separated by one
of the following characters:
space tab , - . / :
with spaces allowed either side of the character. Any missing numbers will
default to the current setting. The year may either be a full century and
year, or may be just the year in which case the century defaults to 19 if the
year is greater than 80 or 20 otherwise. The date and the year specifications
may be substituted by '-' to be omitted.
The format in which the date is printed and input is flexible and can be
changed. An environment item called DATE is set up by default to a format
that is appropriate for the country of origin of the MSX machine (see chapter
7 on Environment Items). For example, on Japanese machines the default
setting is YY-MM-DD. The command SET DATE DD-MM-YY will change the date
format to the European format. The format also affects the dates printed by
the DIR command.
If the DATE environment item is defined, then it will be printed by the
DATE command to indicate the format in which the date is required to be
input.
Examples
DATE 86-6-18
The current date is set to the 18th June 1986.
DATE
Current date is Wed 1986-06-18
Enter new date (yy-mm-dd): - -19
No parameter was given, so the current date of 18th June 1986 was
printed and a new date prompted for. In the reply to the prompt, the date was
updated to the next day by only specifying the 19th. Since the year and month
were not given, they remained the same.
SET DATE = DD/MM/YY
The date format has been changed to the European format.
DATE
Current date is Thu 19-06-1986
Enter new date (DD/MM/YY):
No parameter was given, so the current date of 19th June 1986 was
printed in the European format, and the prompt printed. The reply is expected
in the European format.
Formats are:
ISO YY/MM/DD
American MM/DD/YY
European DD/MM/YY
DEL
See ERASE.
DIR
Format
DIR [/H] [/W] [/P] [compound-filespec]
Purpose
Displays the names of files on disk.
Use
The compound-filespec specifies which files are to be listed. If the /H
option is given, then hidden files will also be listed.
In the DIR command, unlike all other commands, it is permissible to not
give the main filename or the filename extension, and both will default to
'*'. Thus a filename of 'FRED' is equivalent to 'FRED.*' and a filename of
'.COM' is equivalent to '*.COM'. Note that if the '.' at the end of a main
filename is given, then the extension is also assumed to have been given, so
that the filename 'FRED.' is not equivalent to 'FRED.*', unlike the example
above.
There are two formats of the listing. If the /W option is given, then a
'wide' listing is printed, with several filenames output per line.
Sub-directory names, file attributes, and the date and time each file was
created are not displayed.
If the /W option is not given, then the filenames are printed with one
filename per line, together with the attributes, the file size and the date
and time at which the file was last modified. The attributes are printed as
an 'r' if the file is read-only and an 'h' if the file is hidden (and /H is
given). If the time of a file is zero (ie. the file does not have an
associated time) then the time field will not be printed. If the date of a
file is zero, then neither the date nor the time fields will be printed. The
formats in which the dates and times are printed can be changed (see the DATE
and TIME commands).
The non-/W display is designed to fit within a 40 column screen, but if
fewer columns are available then some fields of the listing will not be shown
so that the display will always fit on one line. The number of files per line
that are printed when /W is specified is also adjusted according to the
screen width. If the width of the display is less than 13 characters however,
then in both cases the filenames will wrap to the next line.
At the top of the list of files, the volume name of the disk and the
name of the directory being listed is displayed. At the bottom, the number of
files listed, the total number of bytes in the files and the amount of
remaining disk space is printed.
When the directory of a sub-directory is printed, the first two items
listed will always be two special sub-directories called '.' and '..'. These
are automatically created when a new directory is created, and it is these
that allow '.' and '..' to be given in path names to signify the current and
parent directories respectively (see chapter 3 on Notation for a description
of paths).
When printing a number of bytes, the number is truncated and printed as
the number of kilobytes if 1K or greater.
If the /P option is given, then the output will pause at the bottom of
the screen until a key is pressed.
Examples
DIR
All filenames and directory names in the current directory of the
current drive will be printed. This might be as follows:
Volume in drive A: is MSX-DOS 2
Directory of A:\
MSXDOS2 SYS r 4096 86-06-19 2:45p
COMMAND2 COM r 10496 86-06-19 2:46p
UTILS
86-06-19 2:50p
HELP 86-06-19 2:50p
14K in 2 files 222K free
The disk thus contains the two MSX-DOS system files MSXDOS2.SYS and
COMMAND2.COM, which are read only, and two directories called UTILS and HELP.
DIR B:\HELP/W
A 'wide' directory format has been requested of the HELP directory on
drive B:. This might be as follows:
Volume in drive B: is MSX-DOS 2
Directory of B:\HELP
BUFFERS .HLP ATTRIB .HLP ASSIGN .HLP
ATDIR .HLP CHDIR .HLP CD .HLP
SYNTAX .HLP ENV .HLP BATCH .HLP
EDITING .HLP
25K in 10 files 222K free
DIR UTILS + HELP/P
This will list all the files in the UTILS directory and all the files in
the HELP directory, and will pause at the end of every screen full.
DIR .COM
No main filename was given, and so defaults to *. Thus this command is
equivalent to the command DIR *.COM.
DIR COMMAND2
No extension was given, so this defaults to .*. Thus this command is
equivalent to the command DIR COMMAND2.*.
DISKCOPY
Format
DISKCOPY [d: [d:]] [/X]
Purpose
Copies one disk to another.
Use
The first drive is the source drive and the second the destination,
which defaults to the current drive. If no drives are given, then DISKCOPY
will prompt for both the source and the destination.
Before DISKCOPY is used, the destination disk must be formatted with the
same format as the source disk, and an error will be given if this is not the
case.
If /X is given, then various messages printed during the disk copy
operation will be suppressed.
Note that this is a transient command, and must therefore be loaded from
disk.
Examples
DISKCOPY A: B:
Insert source disk in drive A:
Insert target disk in drive B:
Press any key to continue...
The command was given to copy the disk in drive A: to the disk in drive
B:, thus destroying all existing data on the disk in drive B: The prompt is
printed first.
DISKCOPY B:
The disk in drive B: is copied to the disk in the current drive.
DISKCOPY
Enter source drive:
Enter target drive:
The DISKCOPY command was given with no parameters, so the source and
destination disks were prompted for. The reply to the prompts consists of
just a single drive letter.
ECHO
Format
ECHO [text]
Purpose
Prints text.
Use
The text is simply displayed on the screen. If no text is given, then
just a blank line is output.
This command should not be confused with the 'echo' state in batch
files, which is controlled by an environment item called ECHO (see chapter 7
on Environment Items).
Examples
ECHO AUTOEXEC batch file executed
AUTOEXEC batch file executed
The specified text ('AUTOEXEC batch file executed') was printed on the
screen.
ECHO
No parameters were given, so just a blank line was printed.
ERA
See ERASE.
ERASE
Format
ERASE [/H] [/P] compound-filespec
or
DEL [/H] [/P] compound-filespec
or
ERA [/H] [/P] compound-filespec
Purpose
Deletes one or more files.
Use
The compound-filespec specifies which files are to be deleted. The /H
option allows hidden files to also be deleted.
During the delete operation, if a file cannot be deleted for some reason
(eg. it is set to 'read only') then the offending filename is printed along
with an error message, and the delete operation continues with the next file.
If many such errors occur, then the /P option will cause the output to pause
at the end of the screen.
If the filename is *.*, then the prompt:
Erase all files (Y/N) ?
is printed, and a reply is waited for. If the reply is anything other than
'Y' or 'y', then the file deletion does not take place. This is a safety
feature designed to prevent accidental loss of all files in a directory.
If files are deleted unintentionally on a disk that was formatted under
MSX-DOS 2, then the UNDEL command may be used immediately afterwards to
restore them again.
Examples
ERASE FILE1.BAK
The file FILE1.BAK is deleted from the current directory of the current
drive.
DEL *.COM/H
All files matching *.COM, both hidden and not hidden, are deleted.
DEL B:\UTIL\*.COM + B:\UTIL\*.BAT
All files matching *.COM or *.BAT are deleted from the directory called
UTIL on drive B:.
DEL B:\UTIL
Erase all files (Y/N) ?
All files in the directory called UTIL on drive B: are deleted. Since so
many files are being deleted, a prompt is printed first to prevent a
catastrophe.
DEL *.BAT
AUTOEXEC.BAT -- Read only file
REBOOT.BAT -- Read only file
All files matching *.BAT are deleted except for AUTOEXEC.BAT and
REBOOT.BAT which have been marked as read only.
EXIT
Format
EXIT [number]
Purpose
Exits COMMAND2.COM to the invoking program.
Use
The number is an error code and defaults to 0, which in MSX-DOS
indicates no error (see chapter 8 on Errors).
EXIT exits the command interpreter (COMMAND2.COM) and returns the error
code to the program that originally loaded and executed it (see the COMMAND2
command). This may be another COMMAND2.COM, another program or, normally,
MSXDOS2.SYS. In the latter case, an appropriate error message will be printed
and COMMAND2.COM simply reloaded and executed.
COMMAND2.COM when loaded saves the current environment (see chapter 7 on
Environment Items), and EXIT restores it. Thus, when EXIT exits back to
MSXDOS2.SYS (that is, EXIT is executed at the primary level), the environment
will be cleared. COMMAND2.COM will then be reloaded and will set up the
default environment again, providing a method of resetting the environment to
it's default values.
Examples
EXIT
The command interpreter is exited. What happens next depends on what
loaded it.
EXIT 40
*** User error 40
The command interpreter is exited with an error code of 40. Since this does
not correspond to an error that is known to the system, the error message is
printed by whatever loaded the command interpreter in the first place (see
chapter 8 on Errors).
FIXDISK
Format
FIXDISK [d:] [/S]
Purpose
Updates a disk to the full MSX-DOS 2 format.
Use
d: specifies the drive on which FIXDISK is to operate. If d: is not
specified, the current drive will be assumed. /S option causes the disk to be
updated to full MSX-DOS 2 disk.
This command is mainly used to update MSX-DOS 1 disks to full MSX-DOS 2
compatibility, but may also be useful for updating other disks of a similar
format or reparing incorrect boot sector.
Although the disk format used by MSX-DOS 1 and MSX-DOS 2 is
standardized, MSX-DOS 1 does not use the information stored on certain parts
of the disk (the boot sector) and so this information is not necessarily
correct on MSX-DOS 1 disks. This can cause problems when MSX-DOS 2 is used
with these disks. Additionally, the MSX-DOS 2 UNDEL command will only work
with disks that were formatted using MSX-DOS 2 (ie. disks that have a 'volume
id' in the boot sector) and so will not work with MSX-DOS 1 disks or disks
formatted on other systems.
The FIXDISK command will update a disk so that it is fully MSX-DOS 2
compatible, and it's use will allow full use of MSX-DOS 2 disk features. If
/S option is specified, the boot program will be updated for MSX-DOS 2 so
that the features of MSX-DOS 2 disk can fully work. When a disk has been
updated in this way, however, it may no longer be fully compatible with the
original system. For example, if /S option is specified against the disk of
the application which uses non-standard boot program, such as some games, the
application will no longer be booted, although it will still be able to start
MSX-DOS 1 or MSX-DOS 2.
To help prevent accidental updates of boot disks from other systems, a
prompt is issued before updating a disk.
Examples
FIXDISK B: /S
Disk in drive B: will only be able to boot MSX-DOS 2
Press any key to continue...
Drive B: will be updated to be fully MSX-DOS 2 compatible. Since the
disk may have been a boot disk from another system, a prompt is issued before
the disk is actually updated.
FORMAT
Format
FORMAT [d:]
Purpose
Formats (initializes) a disk.
Use
The specified or current drive is formatted, and all data on the disk
will be destroyed.
After giving a FORMAT command, an option may be prompted for, allowing
the required format of the disk (such as 1DD or 2DD) to be selected. The
exact nature of these prompts depends on the manufacturer of the MSX machine,
so obey the descriptions of the manual of the machine when you want to format
the disk.
After formatting, there will be no files or directories on the disk, and
the maximum amount of disk space will be free. The disk will not have a
volume name, but can be given one with the VOL command. To turn the disk into
a boot disk so that MSX-DOS can be started up from it, the files MSXDOS2.SYS
and COMMAND2.COM must be copied onto it with the COPY command.
Examples
FORMAT B:
1 - Single sided
2 - Double sided
? 2
All data on drive B: will be destroyed
Press any key to continue...
The command was given to format the disk in drive B:. In this case, the
options available were to select either double sided or single sided, and
double sided was selected. The standard warning prompt was then printed.
FORMAT
This will format the current drive after the prompts given above.
HELP
Format
HELP [subject]
Purpose
Provides on-line help for an MSX-DOS feature.
Use
If no parameter is given, then a list of standard subjects on which help
is available is printed. This includes all the commands and the major system
features.
If a subject is specified, then help text on this subject is printed on
the screen from a 'help file'. This will pause at the end of every screen
until a key is pressed.
Help files have a filename of:
subject.HLP
and are located by default on the standard MSX-DOS boot disk in a directory
called HELP.
An environment item called HELP is set up initially to refer to the HELP
directory (see chapter 7 on Environment Items). This can be changed with the
SET command to refer to any other directory or disk if required.
Any HELP subject can be added by the user for his own use simply by
adding the appropriate .HLP file in the HELP directory. The help file will be
displayed very much like the TYPE command would display it.
Examples
HELP
A general help screen is printed. This lists all the subjects on which
help is available, including the standard commands and main features of
MSX-DOS. The user-supplied subjects are not available here.
HELP XCOPY
Help information on the XCOPY command is printed. This includes a
description of how to use the command and what options are available.
HELP ME
*** File for HELP not found
This command caused HELP to look for a file called ME.HLP from which to
get the help text, but did not find it so printed the error message. The
files containing the help text are normally found in a directory called \HELP
on the drive from which MSX-DOS was booted, and any other help files may be
added if required. If ME.HLP was added then HELP ME would print it on the
screen.
MD
See MKDIR
MKDIR
Format
MKDIR [d:] path
or
MD [d:] path
Purpose
Creates a new sub-directory.
Use
The last item in the path is the name of the new sub-directory which is
to be created on the current or specified drive. Thus if this is the only
item in the path, the new directory is created in the current directory. If
the new directory is to be hidden, then it must be separately made hidden
with the ATDIR command.
When a new directory is created, it is empty except for two special
sub-directories called '.' and '..'. These are automatically created in the
directory and it is these that allow '.' and '..' to be given in path names
to signify the current and parent directories respectively (see chapter 3 on
Notation for a description of paths).
The MD command is an abbreviated form of the MKDIR command provided for
convenience and MS-DOS compatibility.
Examples
MKDIR UTIL
A directory called UTIL is created in the current directory of the
current drive.
MKDIR A:\UTIL\RAM
A directory called RAM is created in the UTIL directory in the root
directory of drive A:.
MODE
Format
MODE number
Purpose
Changes the number of characters/line on the screen.
Use
The number must be in the range 1 to 80 inclusive, and the number of
characters per line on the screen will be set to this. The screen will be
cleared and the cursor moved to the top left corner in the process.
Examples
MODE 80
(or MODE=80)
The screen is set to 80 column mode and is cleared in the process.
MODE 25
(or MODE=25)
The screen is set to 25 columns.
MOVE
Format
MOVE [/H] [/P] compound-filespec [path]
Purpose
Moves files from one place to another on a disk.
Use
The compound-filespec specifies which files are to be moved, and /H
allows hidden files to be included in the move.
The path specifies the directory to which the files are to be moved, the
current directory being used if this is not given. The path must exist on
each drive referenced by the filespecs in the compound-filespec.
If a particular file cannot be moved into the specified or current
directory (eg. if a file of the same name already exists) then the offending
filename is printed along with an error message, and the move operation
continues with the next file. If many errors occur, then the /P option will
cause the output to pause at the bottom of the screen.
Examples
MOVE FILE1 \
The file FILE1 is moved from the current directory of the current drive
to the root directory of the current drive.
MOVE /H /P E:*.COM \
COMMAND2.COM -- File exists
All files matching *.COM, both hidden and not hidden, in the current
directory of drive E: are moved to the root directory of that drive. The file
COMMAND2.COM already existed in the root directory, so the error was printed.
Neither of the COMMAND2.COM files were moved or altered. If many such errors
had occurred then a prompt would have been printed after a screen full.
MOVE \UTIL\*.COM + \UTIL\*.BAT
All files matching *.COM or *.BAT in a directory called UTIL on the
current drive are moved to the current directory of that drive.
MVDIR
Format
MVDIR [/H] [/P] compound-filespec [path]
Purpose
Moves directories from one place to another on a disk.
Use
The compound-filespec specifies which directories are to be moved, and
/H allows hidden directories to be included in the move.
The second parameter specifies the directory into which the directories
are to be moved, the current directory being used if this is not given. The
path must exist on each drive referenced by the filespecs in the compound
filepecs.
If a particular directory cannot be moved into the specified or current
directory (eg. if a directory of the same name already exists) then the
offending directory name is printed along with an error message, and the move
operation continues with the next directory. If many errors occur, then the
/P option will cause the output to pause at the bottom of the screen.
Note that it is not possible to move a directory into one of it's own
descendant directories, as this would produce an invalid sub-directory tree.
An error is given if this is attempted.
Examples
MVDIR COM UTIL
A directory called COM and all descendant directories and files are
moved into a directory called UTIL, both directories being in the current
directory of the current drive.
MVDIR \COM + \BAT \UTIL
A directory called COM and a directory called BAT, and both their
contents, are moved into a directory called UTIL.
MVDIR E:DIR?/H/P ALL
DIR2 -- Duplicate filename
All directories in drive E matching DIR? (eg. DIR1, DIR2 and DIR3),
which may be hidden, and the contents of the directories, are moved into a
directory called ALL. A directory called DIR2 already existed in ALL so the
error was printed. Neither of the DIR2 directories were affected at all.
PATH
Format
PATH [ [+|-] [d:]path [ [d:]path [ [d:]path ...]] ]
Purpose
Displays or sets the COM and BAT command search path.
Use
If no parameters are specified, then the search path currently set will
be displayed, separated by semi-colons (';').
If + or - is not given, then the search path will be set to the list of
path names given and any existing search path will be deleted.
If - is given before the list of paths, then each path in the list will
be deleted from the currently set search path, and an error will be given if
any of the given paths do not already exist.
If + is given before the list of paths, then each path specified will
first be deleted from the currently set search path if it exists, and will
then be added onto the end. This allows the order of the paths in the search
path to be changed and allows new paths to be appended to the end of the
current search path. The + syntax can also be used to set a search path
longer than can be given in one command, the maximum length of the search
path being 255 characters and the maximum length of a command 127 characters.
When searching for a COM or BAT file, the paths in the current search
path will be used in order from left to right. It is recommended that the
paths in the search path are specified as full paths starting at the root
directory and with the drive specified. If this is not the case, then the
meaning of the search path could change when the current drive or directory
is changed.
The search path is stored as an environment item (see chapter 7 on
Environment Items), and so can also be accessed with the SET command.
Examples
PATH E:\COM E:\BAT
When a COM or BAT command is next searched for, the directories searched
will be the current directory of the current drive, the COM directory in the
root directory of drive E: and the BAT directory in the root directory of
drive E:, in that order.
PATH
; E:\COM; E:\BAT
No parameters were given so the current search path was printed.
PATH +A:\COM; A:\BAT
The directories A:\COM and A:\BAT are added to the end of the search
path.
PATH
; E:\COM; E:\BAT; A:\COM; A:\BAT
The new search path is printed.
PATH -E:\COM, E:\BAT
The directories E:\COM and E:\BAT are deleted from the current search
path.
PATH
; A:\COM; A:\BAT
The new search path is again printed.
PAUSE
Format
PAUSE [comment]
Purpose
Prompts and waits for a key press in a batch file.
Use
The comment consists of an arbitrary sequence of characters.
The comment, if given, is printed followed by the prompt 'Press any key
to continue... ' on the next line. The system will then wait for a key to be
pressed and will echo the key pressed if it is a printable character. If no
comment is given as a parameter, then just the prompt will be printed.
The main use of this command is to issue prompts from within a batch
file.
Examples
PAUSE
Press any key to continue...
No comment was given, so just the prompt was printed.
PAUSE Insert document disk in drive B:
Insert document disk in drive B:
Press any key to continue...
The comment given was 'Insert document disk in drive B:' so this was
printed followed by the prompt.
RAMDISK
Format
RAMDISK [number[K]] [/D]
Purpose
Displays or sets the RAM disk size.
Use
If no parameters are given, then the current RAMDISK size is displayed
as the number of kilobytes.
The number, if given, specifies the maximum size for the new RAM disk,
and is specified in kilobytes. The range is 0 to 4064. If the number is 0 or
only /D is specified, the RAM disk will be deleted. This number will be
rounded up to the nearest multiple of 16K since the RAM disk is always a
multiple of 16K. A RAM disk smaller then the specified maximum size may be
created if there is not enough free memory for the full size, although a 'not
enough memory' error will be given if there is no memory at all available for
the RAM disk. Note that the number specified is the maximum amount of RAM to
use for the RAM disk, which is not the same as the maximum amount of free
space available on the newly-created RAM disk since the system needs to use
some for FAT or directories.
On MSX machines with 128K RAM, the maximum amount of RAM disk is 32K.
If a RAM disk already exists before a new one is created, then a
'Destroy all data on RAM disk (Y/N)?' prompt is printed to avoid accidental
loss of data. /D can be given which will automatically delete any existing
RAM disk first, thus suppressing the prompt.
Having created a RAM disk, it can be referred to as drive H:.
The RAMDISK command is normally only used in an AUTOEXEC.BAT batch file,
with a large number specified so that as large a RAMDISK as possible is
created. It is not advisable to keep any data on a RAM disk except for a
short length of time that is not also kept on a floppy disk, since it will be
lost if, for example, the power to the computer fails.
Examples
RAMDISK
RAMDISK=160K
No parameters were given, so the current size is printed, in this case
160K.
RAMDISK
*** RAM disk does not exist
No parameters were given but no RAM disk has been created, so the error
is given.
RAMDISK = 300
Destroy all data on RAM disk (Y/N)? y
A RAM disk already existed, so the prompt was printed. In this case, the
reply was 'y' so the current RAM disk was deleted and the new one set up with
a maximum size of 300K.
RD
See RMDIR
REM
Format
REM [comment]
Purpose
Introduces a comment in a batch file.
Use
The comment is simply ignored, and the next command executed. The
comment consists of a sequence of any characters up to the maximum length of
a command line (127 characters).
Examples
REM This is my AUTOEXEC batch file
This command, either in a batch file or typed in, does nothing at all
with it's parameters.
REN
See RENAME
RENAME
Format
RENAME [/H] [/P] compound-filespec filename
or
REN [/H] [/P] compound-filespec filename
Purpose
Renames one or more files.
Use
The compound-filespec specifies the files that are to be renamed, and /H
allows hidden files to be included in the rename operation.
The second filename specifies the new name for the files. A '?' in the
new name indicates that the corresponding character from the filename being
renamed will be used, thus allowing an ambiguous rename. Thus '*' in the
second filename, which is just equivalent to a series of '?'s, indicates that
the whole of the filename or extension will remain unchanged.
If for some reason a particular file cannot be renamed (eg. if a file or
directory with the new name already exists or they are read-only) then the
offending filename will be printed along with an error message and the rename
operation will continue with the next file. If many errors occur, then /P
will cause the output to pause at the end of the screen.
Examples
RENAME FILE1 FILE2
The file FILE1 in the current directory of the current drive is renamed
to FILE2.
REN B:\DIR1\*.DOC/H/P *.OLD
FILE2.DOC -- Duplicate filename
All files matching *.DOC in the directory called DIR1 in the root
directory of drive B:, including hidden files, are renamed with the same main
name but with an extension of .OLD. The file FILE2.DOC could not be renamed
because there was already a file called FILE2.OLD in the directory, so the
error was printed. Neither FILE2.DOC nor FILE2.OLD was altered at all. If
many such errors had been printed, then a prompt would have been printed at
the bottom of every screen full, since /P was given.
REN DOC + FILE1 *.OLD
All files in the directory called DOC and the file FILE1, both in the
current directory of the current drive, and renamed with an extension of
.OLD.
RMDIR
Format
RMDIR [/H] [/P] compound-filespec
or
RD [/H] [/P] compound-filespec
Purpose
Removes one or more sub-directories.
Use
The compound-filespec specifies which directories are to be deleted, and
/H allows hidden directories to be included in the delete operation.
In order to delete a directory, it must contain no other files or other
directories except for the special '.' and '..' directories which are always
contained in a directory. These are put in a new directory when it is created
and cannot be removed. It is these that allow '.' and '..' to be used in path
names to specify the current and parent directories respectively (see chapter
3 on Notation for a description of paths).
If a directory cannot be deleted for some reason (eg. it is not empty)
then the name of the offending directory is printed along with an error
message, and the delete operation continues with the next directory. If many
errors occur then /P will cause the output to pause at the end of the screen.
Examples
RMDIR DIR1
The directory called DIR1 in the current directory of the current drive
is removed.
RD B:\COM + B:\BAT
The directories COM and BAT are removed from the root directory of drive
B:.
RD \*.*
UTIL -- Directory not empty
An attempt was made to remove all directories from the root directory of
the current drive, but a directory called UTIL was not empty and so the error
was printed. UTIL and it's contents are not affected at all.
RNDIR
Format
RNDIR [/H] [/P] compound-filespec filename
Purpose
Renames one or more sub-directories.
Use
The compound-filespec specifies the directories that are to be renamed,
and /H allows hidden directories to be included in the rename operation. The
contents of the directories remain unchanged.
The second filename specifies the new name for the directories. A '?' in
the new name indicates that the corresponding character from the name of the
directory being renamed will be used, thus allowing an ambiguous rename. Thus
'*' in the second filename, which is just equivalent to a series of '?'s,
indicates that the whole of the filename or extension of the directory name
will remain unchanged.
If for some reason a particular directory cannot be renamed (eg. if a
file or directory of the new name already exists) then the offending
directory name will be printed along with an error message and the rename
operation will continue with the next directory. If many errors occur, then
/P will cause the output to pause at the end of the screen.
Examples
RNDIR UTIL COM
The directory called UTIL in the current directory of the current drive
is renamed COM.
RNDIR A:\*.*/H/P *.OLD
UTIL -- Duplicate filename
All directories, hidden and not hidden, in the root directory of drive
A: are renamed with an extension of .OLD. The directory UTIL could not be
renamed because a directory called UTIL.OLD already existed, so the error was
printed. If many such errors were printed then /P would cause a prompt to be
printed at the end of every screen full.
RNDIR COM + BAT *.OLD
The directories COM and BAT are renamed to COM.OLD and BAT.OLD
respectively.
SET
Format
SET [name] [separator] [value]
Purpose
Displays/sets environment items.
Use
If no parameters are given, then all currently defined environment items
and their current values are displayed. Initially there are several items set
up to default values (see chapter 7 on Environment Items).
If just a name is given as the parameter, then the current value of the
specified environment item is printed.
If the name is followed by a separator, then the separator is ignored
and the name is set to the following value. If the value is blank (ie. not
given) then the environment item is deleted from the environment space.
The area of memory used for environment items is also used for disk
buffers. Thus if a 'not enough memory' error occurs when using the SET
command, then it may help to reduce the number of disk buffers (see the
BUFFERS command).
Chapter 7 contains more information about environment items and the
items and values that are set up by default.
Examples
SET
ECHO=OFF
PROMPT=OFF
PATH=;
TIME=12
DATE=yy-mm-dd
HELP=A:\HELP
SHELL=A:\COMMAND2.COM
No parameters were given, so all the currently set environment items
were printed, in this case typical default values.
SET HELP=A:\HELP
An item called HELP is set to the value A:\HELP.
SET HELP
A:\HELP
The current value of HELP is printed.
SET HELP=
The item HELP is set to a null value, thus removing it from the
environment item list.
TIME
Format
TIME [time]
Purpose
Displays or sets the current time.
Use
If the time is given after the command, then the time is set to this
value (for the format see below). If the time is not given after the command,
then the current time is printed and the new time is prompted for and input.
If no input is given (ie. if the 'enter' key alone is pressed) then the
current time is not altered. Otherwise the input is assumed to be a new time,
and is interpreted as described below. If the time is invalid then an error
message is displayed and the new time again prompted for and input.
The time is expected to consist of up to four numbers, separated by one
of the following characters:
space tab , - . / :
with spaces allowed either side of the character. Any missing numbers will
default to the current setting. The first number is the hour, the second is
the minutes, the third is the seconds and the forth is the centi-seconds. The
centi-seconds are not printed however since it is not very useful to know the
current value, or indeed to enter a new one.
The format in which the time is printed is flexible and can be changed.
An environment item (see chapter 7 on Environment Items) called TIME is set
up by default to the value '12', which indicates that the time will be
printed in 12 hour format with a following 'a' or 'p' for am and pm. The
command SET TIME 24 will cause the time to be printed in 24 hour mode. The
time can be input unambiguously in either format. The time format also
affects the times printed by the DIR command.
Examples
TIME 16:45
The current time is set to 4:45 pm.
TIME
Current time is 10:45:00a
Enter new time:
No parameters were given, so the current time is printed (in this case
in 12 hour mode) and the new time prompted for.
TIME 10-50-30-23
The time is set to 30.23 seconds after 10:50 am.
TYPE
Format
TYPE [/H] [/P] [/B] compound-filespec | device
Purpose
Displays data from a file or device.
Use
The compound-filespec specifies the files that are to be displayed, and
/H allows hidden files to be typed. If the compound-filespec is ambiguous,
then the filename is printed before each one is typed.
If /B is specified, then data is read from each file and displayed
without modification on the screen, until the end of file is reached. This
may have strange effect on the screen if the file contains control
characters.
If /B is not given, then TYPE will look for the end-of-file character
(CTRL-Z) and stop when it finds it. Also control characters except carriage
return, line feed and tab will be converted into characters that can be
printed, A for ^A, W for ^W, etc.
If /P is given, then the output will pause at the end of the screen
until a key is pressed.
Examples
TYPE FILE1
Data is read from the file and printed on the screen, up to the first
end-of-file character.
TYPE *.BAT/H/P
All batch files, including hidden ones, are read in and displayed. A
prompt is printed at the end of every screen full.
TYPE AUTOEXEC.BAT + REBOOT.BAT
The files AUTOEXEC.BAT and REBOOT.BAT are displayed.
TYPE /B DIR1
All files in the directory DIR1 are printed on the screen and no
interpretation is put on the data in the files.
UNDEL
Format
UNDEL [filespec]
Purpose
Recovers a previously deleted file.
Use
The filespec specifies which files are to be undeleted if possible, and
defaults to *.*.
Files can only be undeleted if they have been deleted using MSX-DOS 2 on
an MSX-DOS 2 formatted disk and if no disk allocation has taken place since
the file was originally deleted, which usually means that they have to be
undeleted immediately after they have been deleted.
Each deleted file and directory reference that is found in the directory
specified by the filespec will be undeleted if it's name is matched by the
filename in the filespec, and if undeletion is possible. UNDEL can therefore
be used to restore a directory removed with the 'RD' or 'RMDIR' commands; to
restore the contents of the directory a further UNDEL command is required
specifying the now undeleted directory.
Note that UNDEL is a transient command, and therefore must be loaded
from disk.
Examples
UNDEL B:HELP.MAC
Attempts to undelete the file HELP.MAC from the current directory of
drive B:.
UNDEL A:\DIR1
All undeletable files and directories in DIR1 are undeleted.
VER
Format
VER
Purpose
Displays the system's version numbers.
Use
The version numbers of the three main components of the MSX-DOS disk
system are displayed. Each version number consists of three digits. The first
digit is the main MSX-DOS version number and for MSX-DOS 2 will always be 2.
The second digit is the version number and will change for future versions
that have, for example, had extra major features added. The last digit is the
release number and will change with different releases of the same version of
the system which have had minor changes, improvements and corrections made.
Examples
VER
MSX-DOS kernel version 2.20
MSXDOS2.SYS version 2.20
COMMAND2.COM version 2.20
Copyright 1988 ASCII Corporation
The version numbers of all the components of the MSX-DOS disk system are
printed out.
VERIFY
Format
VERIFY [ON | OFF]
Purpose
Displays/sets the current disk write verify state.
Use
If no parameters are given, then the current verify state is displayed
on the screen.
If ON or OFF is given, then the verify state is changed appropriately.
The verify state affects all writes to disk. If OFF, the default state,
then data is simply written. If ON, then after writing the data it is read
back and compared with the original to ensure that it was written correctly.
The extra overhead of this means that writing is slower when verify is on.
This feature depends on the device driver, so this will have no effect
if the driver does not have the feature.
Examples
VERIFY
VERIFY=OFF
No parameters were given, so the current verify state is printed, which
in this case is off.
VERIFY ON
Disk write verification is turned on.
VOL
Format
VOL [d:] [volname]
Purpose
Displays or changes the volume name on a disk.
Use
If no parameters are given, or if only a drive name is given, then the
volume name of the current or specified drive is printed.
If a volname is given, then the volume name of the specified or current
drive is changed to the specified volume name.
Examples
VOL B:
Volume in drive B: has no name
Just a drive was given, so the volume name for the disk in that drive is
printed. In this case there was no volume name defined.
VOL B:BACKUP
The volume name of the disk in drive B: is changed to BACKUP.
XCOPY
Format
XCOPY [filespec [filespec]] [options]
Purpose
Copies files and directories from one disk to another.
Use
The options available are:
[/A] [/E] [/H] [/M] [/P] [/S] [/T] [/W] [/V]
XCOPY is an extended file copying command (compare with the COPY
command) that can selectively copy both files and directories. The first
filespec specifies the source filenames, and if /H is given then hidden files
will also be copied. The second filespec is the destination filename. Thus
files can be renamed during the copy (as in the standard COPY command).
/T (Time) will cause the copied files to have the current date and time
rather than the source file's date and time.
If /A (Archive) is specified, then only files with the 'archive'
attribute set are copied. A file has an archive attribute in the same way as
a 'hidden' attribute and a 'read only' attribute. It is set whenever a file
is updated (written to).
/M is similar to /A, but resets the archive bit after copying the file.
Thus, using this option, files can be regularly copied onto another disk only
if they have been updated, providing a file backup facility.
/S causes XCOPY to copy directories as well as files. Within each
directory, all files are copied and then any matching files within each
directory are copied, with the directory being created on the destination if
it does not already exist. Normally, these directories will not be created if
no files are to be copied into them.
/E can be given to cause the /S option to create all directories, even
if they are empty.
The /P (Pause) option will cause XCOPY to pause and prompt before
copying each file, which allows files to be selectively copied.
/W (Wait) causes XCOPY to pause and prompt before copying any files, so
that disks can be changed.
/V option can be given to turn write verification on for the duration of
the XCOPY command (see the VERIFY command). This will ensure that data is
written correctly to disks if the device driver being used has the feature,
but will slow the operation down.
Note that XCOPY is a transient command, and so must be loaded off disk.
Examples
XCOPY B:\
All files in the root directory of drive B: are copied to the current
directory of the current drive. There is no advantage in this case over using
the standard built-in COPY command.
XCOPY *.* B: /H/S/M
All files, including hidden files, are copied to drive B: only if they
have been modified since a similar command was last given. The archive
attributes are then reset so that the files are marked as unmodified. Not
only are all the files in the current directory copied, but so are
directories and all their descendant directories and files.
XDIR
Format
XDIR [filespec] [/H]
Purpose
Lists all files within directories.
Use
The filespec specifies which files are to be listed, and /H allows
hidden files to be included.
XDIR is similar to the DIR command, but does not print the files' dates
and times.
After all files in the specified directory have been listed, then files
within descendant directories are also listed, and are shown indented. This
allows a DIR of a complete directory tree or disk to be obtained.
Note that XDIR is a transient command, and so must be loaded off disk.
Examples
XDIR
The directory of the entire disk in or descending from the current
directory of the current drive is printed.
Volume in drive A: is MSX-DOS 2
X-Directory of A:\
MSXDOS2.SYS r 4480
COMMAND2.COM r 14976
AUTOEXEC.BAT 57
REBOOT.BAT 57
\UTILS
CHKDSK.COM 7680
DISKCOPY.COM 7168
FIXDISK.COM 768
UNDEL.COM 3968
XCOPY.COM 10112
XDIR.COM 7168
MKSYS.BAT 569
AUTOEXEC.BAT 47
REBOOT.BAT 90
\HELP
ASSIGN.HLP 819
ATDIR.HLP 1527
ATTRIB.HLP 1828
.
.
.
292K in 117 files 530K free
XDIR B:\DIR1
All the files and directories and their contents are printed from the
directory DIR1.
XDIR \*.COM/H
The names of all files, including hidden files, matching *.COM are
displayed.
5. Redirection and Piping
=========================
COMMAND2.COM offers the redirection and piping features as described
below. They may be bypassed by setting the environment item "REDIR" to "OFF"
("SET REDIR=OFF"), so the compatibility to MSX-DOS 1 or CP/M can be achieved.
Redirection
Most commands, CP/M programs and MSX-DOS programs output text to the
screen by writing to the 'standard output', and read from the keyboard by
reading from the 'standard input'. COMMAND2.COM, however, provides facilities
for changing the standard input and standard output for the duration of the
command to refer to other MSX-DOS devices or to files on disk by including
one or more of the redirection symbols <, > and >> on the command line,
followed by a filename.
For example, the ECHO command normally just outputs it's parameters to
the screen by writing the characters to the standard output. It can be made
to output to the printer instead by redirecting it's output, as follows:
ECHO text >PRN
which changes the standard output to refer to the device PRN for the duration
of the ECHO command. Similarly, the command:
ECHO text >file1
will cause the specified file ("file1") to be created, and the output of the
ECHO command written to the file. To append the output of a command to the
end of an existing file, the >> symbol can be used instead of the > symbol,
and the file will only be created if it does not already exist.
To change the standard input, the < symbol is used in a similar manner
to the > symbol. In this case, the file must already exist, and must contain
adequate input for the command. If the command attempts to read input beyond
the end of the file, then it will be aborted since it cannot continue.
When redirection information is given on the command line, it is used by
COMMAND2.COM to set up the redirection and then removed from the command
line. Thus in the examples above, the ECHO command will not echo the
redirection symbols or the filename.
If the input or output of a batch file is redirected, then that
redirection is applied to all commands within the batch file. Individual
commands within the batch file may still be redirected, however, which will
override the batch file redirection. See chapter 6 on Batch Files for more
information on commands in batch files.
Piping
As well as redirecting the input and output of a command or program to
another device or a disk file, it is possible to redirect or 'pipe' the
standard output of one command into the standard input of another. Typically
the second command will be a program which reads from it's standard input,
modifies the data, and writes it to it's standard output. Such a program is
called a 'filter'. For example, a filter could be produced which read data
from it's standard input, sorted it into alphabetical order, and wrote it to
it's standard output. Thus the output of the DIR command could be sorted.
Piping is indicated on the command line by separating the two commands
by the | symbol. The command to the left of the | symbol will be performed
first, and it's output will be redirected to a temporary file created by
COMMAND2.COM. Then the second command will be performed, with it's standard
input redirected from the same temporary file. When the second command ends,
the temporary file will be deleted. The standard output of the second command
may of course have been piped into the standard input of a third command, and
so on.
If any input redirection occurs on a command line involving a pipe, then
the redirection is applied to the first command in the pipe, as all the other
commands receive their standard input from the standard output of the
previous command in the pipe. Similarly, if any output redirection occurs on
a command line involving a pipe, then the redirection will apply to the last
command on the command line.
It is not possible to use pipes on either the input or the output of
batch files directly. It is, however, possible to use piping with batch files
if they are executed with the COMMAND2 command (see chapter 4) since it is
then the COMMAND2 command that is being redirected and not the batch file.
As mentioned above, in order to pipe the output of one command into the
input of another, temporary files will be created and deleted by
COMMAND2.COM. The location of these temporary files is specified by the TEMP
environment item (see chapter 7 on Environment Items), and this may be
changed to refer to any drive and directory (for example piping will be
speeded up considerably if TEMP refers to a directory on a RAM disk). By
default, TEMP refers to the root directory of the boot disk. The filename
used for the temporary file is created by COMMAND2.COM, so TEMP should
specify just the drive and directory. The filename is of the form:
%PIPExxx.$$$
where xxx is a three digit number chosen by COMMAND2.COM to avoid clashes
with any other files in the TEMP directory.
6. Batch Files
==============
When a command is given to MSX-DOS and it is not one of the internal
commands, a file of that name is searched for with an extension of COM or
BAT. If not found in the current directory then the current search path is
searched (see the PATH command). If a COM file is found, then it is loaded
and executed. If a BAT file is found, then MSX-DOS starts execution of the
batch file.
A batch file is a text file that contains a list of commands, and these
commands are read from the file a line at a time and executed as though they
were typed at the keyboard. Several of the commands described in chapter 4
are in fact provided mainly for use in batch files, such as ECHO and PAUSE.
As each command is read, normally it is executed immediately. An
environment item ECHO exists, however, that can be set to ON (with the
command SET ECHO ON) to cause each command line to be printed on the screen
before it is executed (see chapter 7 for Environment Items). The command line
is echoed in this way after % parameter substitution (see below) has taken
place. The command SET ECHO OFF will restore the normal state.
In the command line that invoked the batch file, parameters may follow
the name of the batch file just like any other command or transient program
name. These parameters may be accessed anywhere in the batch file by
specifying %0 to %9. %1 is the first parameter specified in the command line,
%2 is the second and so on. %0 is the name of the batch file itself. The %
number will be replaced by the parameter on the original command line, and
may appear anywhere on a batch file command line. To actually use a % symbol
on a command line a double % must be given ('%%') which will then be replaced
by a single one.
If the execution of any command in a batch file is terminated
prematurely for some reason (typically the control-STOP or control-C key
being pressed) then the following prompt is issued:
Terminate batch file (Y/N)?
If the response to this is 'Y', then execution of the whole batch file
is stopped. If the response is 'N', then batch file execution continues with
the next command in the batch file.
After MSX-DOS has executed a command in batch file, it may need to read
the next command in the batch file off disk. If the correct disk is not in
the drive when it comes to do this, then a prompt is issued. For example, the
following prompt will be issued if the batch file was originally executed
from drive A::
Insert disk for batch file in drive A:
Press any key to continue...
When the correct disk has been inserted and a key pressed, batch file
execution will continue normally.
Below is a very simple batch file, which just prints the first few
parameters.
ECHO Parameter 0 = %0
ECHO Parameter 1 = %1
ECHO Parameter 2 = %2
ECHO Parameter 3 = %3
If this is called MYBAT.BAT then the command MYBAT a b c will output
Parameter 0 = MYBAT
Parameter 1 = a
Parameter 2 = b
Parameter 3 = c
When MSX-DOS starts up for the first time, a special batch file called
AUTOEXEC.BAT is looked for and is executed if found. This may contain any
MSX-DOS command, and usually contains once-only initialization commands, such
as a RAMDISK command to set up a RAM disk.
One % parameter is passed to AUTOEXEC.BAT as %1. This the drive that
MSX-DOS booted from and is in the form of a normal drive letter followed by a
colon.
Another special batch file is REBOOT.BAT. This is executed when MSX-DOS
is re-booted after using DISK-BASIC. As with AUTOEXEC.BAT files, the single
%1 parameter passed is the drive from which MSX-DOS was re-booted.
Usually some commands need to be performed whenever MSX-DOS is booted,
whether for the first time or sometime later, and these are put in the REBOOT
batch file. They can then be executed from the AUTOEXEC batch file by ending
it with the command REBOOT %1. An example of a command that might be put in
the REBOOT batch file is the PATH command to set up the transient command
search path. When setting up the search path using the command, %1 can be
used to set up the path on whatever drive was booted from.
When a command in a batch file is the name of another batch file, then
that second batch file is executed in the normal way. When it ends, control
passes back to the interactive command interpreter, and not to the first
batch file. Batch file commands thus 'chain' together.
If it is desired to 'nest' batch files ie. to pass control back to the
first batch file above, then this can be done with the COMMAND2 command (see
chapter 4), passing the name of the second batch file as the parameter. Then
when the second batch file ends, the first one will be continued with the
command after the COMMAND2 command.
A typical AUTOEXEC batch file is as follows:
ECHO AUTOEXEC executing
RAMDISK 100
RAMDISK
COPY COMMAND2.COM H:\
REBOOT %1
A typical REBOOT batch file is as follows:
ECHO REBOOT executing
PATH H:\, %1\UTILS, %1\BATCH
SET SHELL=H:\COMMAND2.COM
SET TEMP=H:\
SET PROMPT ON
H:
When the AUTOEXEC batch file executes, the message "AUTOEXEC executing"
is printed, and then a RAM disk is set up with a maximum size of 100K.
Another RAMDISK command is then given which will print out the actual size of
RAM disk created. The COPY command then copies COMMAND2.COM onto the RAM disk
so that it can load and re-load quickly. Finally the REBOOT batch file is
executed, with the %1 parameter (the boot drive) passed to it.
The REBOOT batch file prints a message and then sets a PATH. The first
item in the path refers to the RAM disk that was created by the AUTOEXEC
batch file, and the other items refer to directories on the disk from which
MSX-DOS was booted (ie. %1). The SHELL environment item is set up so that
COMMAND2.COM can re-load quickly off the RAM disk, and the TEMP environment
item is set up so that temporary piping files are created on the RAM disk.
The prompt is set ON so that the current directory is printed as the prompt
and, finally, the RAM disk is made the default drive.
7. Environment Items
====================
MSX-DOS maintains a list of 'environment items' in its work area. An
environment item is a named item that has a value associated with it.
An environment item can have any name chosen by the user, and can
consist of the same characters that are valid in a filename. The maximum
length of an environment item name is 255 characters. MSX-DOS provides
several environment items set up by default.
The value of an environment item is simply a string of arbitrary
characters up to a maximum length of 255. No processing is performed on the
characters and so the casing of characters is preserved. Any environment item
that does not exist has a null value (ie. no characters).
An environment item can be changed or set up by the SET command, which
can also display currently set environment items.
The environment items set up by default and the manner in which their
value is interpreted are as follows:
ECHO
This controls the echoing of lines read from a batch file (see chapter 6
on Batch Files). Any value except 'ON' (lowercase also allowed) is
interpreted as 'OFF'.
PROMPT
This controls the displaying of the prompt at command level. Any value
except 'ON' is interpreted as 'OFF'.
When PROMPT is OFF, as it is by default, then the prompt consists of the
current drive followed by '>' eg. A>.
When PROMPT is ON, then the prompt consists of the current drive and the
current directory of that drive followed by '>' eg. A:\COM>. In order to do
this, the current drive must be accessed to read the current directory and so
may take a little longer to appear.
PATH
The current search path by which COMMAND2.COM searches the command given
is maintained as an environment item PATH, and it is this that the PATH
command manipulates.
SHELL
The SHELL environment item indicates where the command interpreter
(COMMAND2.COM) exists, and is set up by default to where it was loaded from.
When the command interpreter needs to re-load itself from disk (after running
a transient command) it looks at the SHELL environment item and attempts to
load itself from the file that it specifies. If this gives an error then it
attempts to load itself from the root directory of the drive that it was
originally loaded from.
To cause the command interpreter to re-load itself from another drive or
directory, COMMAND2.COM can be copied there and SHELL set to refer to it. For
example, it might be copied to the RAMDISK with the command COPY COMMAND2.COM
H:\ and then SHELL set with the command SET SHELL=H:\COMMAND2.COM.
TIME
TIME specifies the format the time is displayed by MSX-DOS. If not '24',
which indicates that it is displayed as a 24-hour time, then '12' is assumed,
which indicates that it is displayed as a 12-hour time with an am. or pm.
indication. The TIME environment item does not apply when the time is input
because it can be input in either format unambiguously.
DATE
DATE specifies the format the date is displayed and input by MSX-DOS. It
defaults to a format appropriate for the country of origin of the MSX
machine. It takes the form of three letters or three letter pairs separated
by date/time separators (see the DATE command). To set the American format,
for example, the command SET DATE=MM/DD/YY could be given.
HELP
When the HELP command is given the name of command for which help is
required, then it reads the information displayed from a file on disk. This
file is in the directory specified by the HELP environment item. It defaults
to a directory called HELP in the root directory of the drive that MSX-DOS
was booted from.
APPEND
APPEND is not actually defined by default, but when set up is an
environment item that has a special meaning to the system. It is used only
with standard CP/M programs.
CP/M programs do not know how to use sub-directories because CP/M does
not have sub-directories, but instead just has the equivalent of the current
directory. When such a program opens a file, it searches for it only within
this single directory and thus only has drives and filenames, not paths.
When a CP/M program is run under MSX-DOS and attempts to open a file, it
only searches for the filename in the current directory of the appropriate
drive. Similarly, when the user types in a filename to a CP/M program it may
only contain a drive and filename, and thus also refers only to files in the
current directory.
When this search is performed through MSX-DOS, if the file is not found
in the current directory, then the APPEND environment item is looked at. If
it is not set up then the file has not been found. If set up, then it is
assumed to be a path name, and specifies a single alternative directory in
which the search for the file continues.
This will only be of use if the CP/M program opens a file and then reads
or writes to it. If it attempts to, for example, delete a file or create a
file, then APPEND will not be used. Indeed, it may have undesirable effects
and for this reason it is recommended that APPEND is used normally only in a
batch file which sets it up, executes the CP/M program, and then unsets it
again.
Typical uses for APPEND include specifying the directory in which large
programs (such as word processors and database programs) find 'overlay' or
messages files, and specifying the directory in which compilers, assemblers
and linkers find their source and working files. Typical cases for which
APPEND is not suitable and may have undesirable effects include editing a
file with a wordprocessor when the file to be edited probably cannot be in a
directory other than the current one, even if APPEND is set up.
PROGRAM and PARAMETERS
These special environment items are set up by COMMAND2.COM when a
transient command is executed and removed when it finishes, and should thus
be avoided for general use.
TEMP
When piping is performed (see chapter 5 on Redirection and Piping) it is
necessary for COMMAND2.COM to create one or more temporary files, and the
TEMP environment item indicates the drive and directory in which these
temporary files are to be created. By default, it refers to the root
directory of the boot drive, and typically may be changed to refer to a RAM
disk since this increases the speed of piping.
Although the standard MSX-DOS system only uses TEMP for piping, any
other programs and utilities that need to create temporary files may also use
the TEMP environment item.
UPPER
UPPER controls whether the command line from 80h to be passed to the
transient program be converted to uppercase. Any value except 'ON' is
interpreted as 'OFF'.
When UPPER is 'OFF' (default), no conversion will be done and the values
will be passed to the transient program as they are typed.
When UPPER is 'ON', each character in the command line will be converted
to its associated uppercase character and then passed to the transient
program. This is compatible to CP/M environment.
REDIR
REDIR controls whether the redirection or piping characters in the
command line be processed by COMMAND2.COM. Any value except 'ON' is
interpreted as 'OFF'.
When REDIR is 'OFF', the redirection or piping characters will be passed
to the transient program as they are typed, and the transient program may
process them.
When REDIR is 'ON' (default), the redirection or piping characters will
be interpreted and executed by COMMAND2.COM, so they will not be passed to
the transient program.
8. ERRORS AND MESSAGES
======================
Disk errors
Disk errors occur when a command or program is attempting to access a
disk and fails for some reason, such as a disk not being in the drive. When
this happens, message and prompt appears which allows the user the either
retry the operation which may now work (eg. if a disk has been inserted into
the drive), to ignore the operation or to abort the entire command.
An example disk error message and prompt is as follows, and may be given
if the disk was taken out whilst drive A: was being accessed:
Not ready reading drive A:
Abort, Retry or Ignore (A/R/I)?
The 'not ready' part of the message indicates why the disk operation failed,
and other possibilities exist (see below). 'reading' indicates that the
command was trying to read the disk, and may be replaced by 'writing' if that
is what it was doing. 'drive A:' is the drive in which the disk was attempted
to be accessed.
The 'Abort, Retry or Ignore' part indicates the possible actions that
can be taken by the user, and these are selected by pressing the 'A', 'R' or
'I' key.
If Abort is selected, then the entire command is aborted and the message
'Disk operation aborted' is printed before another command can be typed.
If Retry is selected then the failed disk operation will simply be
retried and may fail again or may work, particularly if some corrective
action has been taken such as inserting a missing disk.
Ignore causes the failed disk operation to be ignored by the command. In
many cases, ignoring an error may not be recommended and in these cases the
Ignore option will not even be displayed, although it may still be selected.
Doing so may however cause serious system malfunction and could destroy data
on the disk. Even if the Ignore option is displayed, it should be used with
extreme caution, and only when all else fails. Normally Ignore is only used
when the data on a disk has got corrupted and ignoring the disk error offers
the only possibility of recovering all or part of the data.
A few serious errors which generally mean the disk has been corrupted
beyond possible use are automatically aborted, and just the appropriate error
message is printed (eg. 'Bad file allocation table').
The possible errors that can occur as disk errors and their meanings
are, in alphabetical order, as follows:
Bad file allocation table
The disk contains an invalid file allocation table (FAT). The FAT is an
area on disk in which the system keeps information to tell it where on the
disk the data in each file is stored. Thus if the FAT is invalid, it cannot
read any data at all. This message usually means that the disk has been
corrupted beyond possible use.
Cannot format this drive
An attempt was made to format a disk in a drive that does not support
disk formatting. This probably means that a FORMAT command was given
specifying the RAM disk.
Data error
The data was read or written without error, but the CRC check failed.
This usually means the disk has been corrupted.
Disk error
The data could not be read or written to the disk.
Incompatible disk
An attempt was made to access 2D or 1D disk or a double sided disk in a
single sided drive.
Not a DOS disk
The disk is not a format that MSX-DOS can read. For example, although
MSX-DOS can execute CP/M programs it cannot access CP/M disks.
Not ready
The disk is not in the drive being accessed. The disk should be inserted
into the drive and 'Retry' selected.
Sector not found
MSX-DOS tried to read or write to a non-existent sector. May indicate
that the disk has been corrupted.
Seek error
The requested track on the disk could not be found. Could mean a
corrupted disk or faulty disk drive.
Unformatted disk
The disk has not been formatted. Use the FORMAT command on the disk
before accessing it.
Verify error
Only occurs when verify is on, and means that data appeared to be
written to disk successfully but when read back was found to be different to
that written.
Write error
Data was not written correctly.
Write protected disk
The disk is write protected and an attempt was made to write data to it.
The disk should be made unprotected and 'Retry' selected.
Wrong disk and Wrong disk for file
MSX-DOS accessed a disk once and subsequently needed to access it again,
but found that the drive contained a different one. The correct disk should
be inserted and 'Retry' selected.
Command Errors
Command errors occur when a command cannot perform it's intended
function for some reason.
If an error occurs in a command and it is unlikely to be able to
continue, then an appropriate error message is printed, and the next command
is read at the prompt.
An example error message is:
*** File not found
The three asterisks *** are printed first to indicate that an error has
occurred. The message is then printed, followed by the normal command prompt
on the next line. The possible errors that can occur are listed below.
When a command error occurs in a specific situation, an 'error type'
message may also be printed. For example, generally when a required file
cannot be found on disk, the 'File not found' message is printed as in the
above example. However, if the file required is a file specified by the
redirection symbol < (see chapter 5 on Redirection and Piping) then the
message printed will be:
*** Redirection error: File not found
The possible error types are:
Batch file error:
An error occurred whilst attempting to read from a batch file, for
example a disk error occurred and 'abort' was selected.
Piping error:
The error occurred during a piping operation, probably in connection
with the temporary files that COMMAND2.COM creates (see chapter 5 on
Redirection and Piping). For example, the TEMP environment item did not refer
to a valid drive or directory (see chapter 7 on Environment Items).
Redirection error:
The error occurred during a redirection operation. For example, an
invalid filename was specified after a redirection symbol <, > or >>, or the
specified input file was not found (see chapter 5 on Redirection and Piping).
Standard input error:
An error occurred on the standard input to a command or program after
redirection or piping has been set up, for example the standard input has
been redirected from a file and the end of the file has been reached.
Standard output error:
An error occurred on the standard output of a command or program after
redirection or piping has been set up, for example the standard output has
been redirected to a file and the disk is full.
Many commands operate on files or directories, and if an ambiguous
filename is given then the command operates on several files or directories
(for example the RENAME command or the COPY command). Often an error occurs
when it is trying to perform the command on one of the files, but which may
be successful on one of the other files. In this case, the filename is
printed followed by the error message and the command then continues. For
example:
COMMAND2.COM -- File cannot be copied onto itself
The possible command errors that can be given are, in alphabetical
order, as follows:
Cannot concatenate destination file
This error is given by CONCAT and means that one of the filenames
matched by the source file specification is the destination file. This is not
necessarily wrong but may indicate a mistake in the command.
Cannot create destination file
This is given by COPY, and usually means that the destination file for the
file it is copying would, if it was created, overwrite a file that was
already in use. This is likely to be a previously copied source file but may
be some other file such as the currently executing batch file.
Cannot overwrite previous destination file
This is given by COPY, and means that the destination file for the file
it is copying would, if it was created, overwrite the destination file of the
file that was previously copied. This usually means that the intended
destination was a directory but that it's name was misspelled.
Cannot transfer above 64K
This should not normally occur from commands.
Command too long
A command that was given is too long. This will not occur when typing
commands from the keyboard, but may occur from a batch file. The maximum
length of a command is 127 characters after % parameter substitution.
Ctrl-C pressed
The command was interrupted by pressing CTRL-C.
Ctrl-STOP pressed
The command was interrupted by pressing CTRL-STOP.
Directory exists
A command attempted to create a new file or directory on disk with the
same name as an existing directory.
Directory not empty
The RMDIR (RD) command tried to remove a directory that contains files
or other directories. These must be deleted first with the ERASE and RMDIR
commands since directories must be empty before they can be removed.
Directory not found
A directory command (eg. RNDIR) could not find the specified directory.
Disk full
There is no more room on the disk and files will have to be deleted and
the command given again.
Disk operation aborted
A disk error occurred and the 'Abort' option was chosen, thus aborting
the whole command.
Duplicate filename
RENAME (REN) or RNDIR cannot perform the specified rename because the new
filename is the same as a filename that already exists. Also occurs from MOVE
or MVDIR because a filename already exists in the destination directory with
the same name as the file or directory being moved.
End of file
This should not normally occur from commands.
Environment string too long
This should not normally occur from commands.
Error on standard input
This should not normally occur from commands, and means that an error
occurred while a command was attempting to read from the keyboard.
Error on standard output
This should not normally occur from commands, and means that an error
occurred while a command was attempting to write to the screen.
File access violation
This should not normally occur from commands.
File allocation error
This should not normally occur from commands.
File cannot be copied onto itself
The destination file when trying to do a COPY is the same file as the
source.
File exists
MKDIR (MD) tried to create a new directory but a file with the same name
already exists in the specified directory.
File for HELP not found
The HELP command looked for a file to get the help text from but could
not find it. Help files are usually kept in a directory called \HELP on the
boot disk.
File handle not open
This should not normally occur from commands.
File is already in use
A command tried to modify a file that is already being used for some
other purpose, such as the currently executing batch file.
File not found
A command could not find the specified file or files.
Internal error
This should not normally occur from commands.
Invalid MSX-DOS call
This should not normally occur from commands.
Invalid attributes
Usually means an invalid +/- attribute was specified in ATTRIB or ATDIR.
Invalid date
The date typed into the DATE command is not a valid date or was typed in
in an invalid format.
Invalid device operation
A command cannot perform it's function on one of the built-in system
devices eg. a file cannot be renamed CON.
Invalid directory move
MVDIR attempted to move a directory into one of it's own descendant
directories, which cannot be done.
Invalid drive
A drive that does not exist was specified.
Invalid environment string
The name of an environment item contains invalid characters. Only those
characters valid in filenames are valid in environment item names.
Invalid file handle
This should not normally occur from commands.
Invalid filename
A filename contains invalid characters. This may be a filename
explicitly given, or may be the result of attempting to rename a file with an
ambiguous new name.
Invalid number
A number given in a command contained non-digit characters.
Invalid option
An invalid letter was given after a / on a command line.
Invalid . or .. operation
A command cannot perform it's function on the special '.' and '..'
directories that are present at the start of all sub-directories.
Invalid parameter
The parameter to a command is generally not valid for that command in
some way.
Invalid pathname
A path specified on a command line does not exist or is syntactically
incorrect.
Invalid process id
This should not normally occur from commands.
Invalid time
The time typed into the TIME command is not a valid time or was typed in
in an invalid format.
Missing parameter
A command expected a parameter but did not find one.
No spare file handles
Should not normally occur from commands.
Not enough memory
Not enough memory is available for the given command. For example, a
large program to large to fit into memory or not enough memory for a new
environment string.
Not enough memory, system halted
This special error message is printed when MSX-DOS attempts to start up
and finds that there is not enough memory to continue. As the message
suggests, the computer must then be reset. This should normally occur.
Pathname too long
A path is too long. Either the length of the pathname given exceeds 100
characters, or the total length of a path from the root directory to a file
is more than 63 characters.
RAM disk already exists
Should not normally occur from commands.
RAM disk does not exist
The RAMDISK command was used to display the current size of the RAM
disk, but no RAM disk exists.
Read only file
An attempt was made to modify or overwrite a file marked as read only.
The DIR command shows this, and the ATTRIB command can make it not read only.
Root directory full
The fixed maximum number of files in the root directory (often 64 or
112) has been reached. Directories do not have this limitation.
System file exists
An attempt was made to create a file which would, if it was created,
overwrite a file that is marked as a system file. System files are not used
in MSX-DOS, and are not shown by the DIR command or accessible from any other
commands, and so this error should not normally occur with commands.
Too many parameters
All the parameters a command expected were found on a command line, but
there were still more parameters left on the end of the line.
Unrecognized command
A given command was not an internal command or an external COM or BAT
command found along the current search path as set by the PATH command.
Wrong version of command
After executing a program, COMMAND2.COM tried to re-load itself from the
COMMAND2.COM file on disk, and found it was not the same version. A prompt is
then printed and COMMAND2.COM will attempt to re-load itself again.
Wrong version of MSX-DOS, system halted
This special error message is printed when MSX-DOS attempts to starts up
and finds that some other part of the MSX-DOS system has a version number
earlier than required. As the message suggests, the computer must then be
reset. This should not normally occur.
Internally, errors are represented as error numbers. The numbers
corresponding to the errors above start at 255 and decrease. If an error
number is received for which there is no message, then it is printed. Numbers
above 64 are reserved for future version of MSX-DOS and so are called 'system
errors' and numbers below 63 can be used by external commercially available
programs and are called 'user errors'. User errors below 32 never print a
message. The two default error messages (which will not normally occur from
commands) are thus:
System error 64
and
User error 63
where the 64 and 63 are example error numbers. The only command which uses
error numbers is the EXIT command. A list of the actual numbers for the above
messages is available in the Program Interface specification.
Prompt Messages
There are several situations in which user interaction is required
before the system can continue with what it was doing, typically inserting a
disk. Also many potentially dangerous commands require confirmation prompts
to be answered before they perform their operation. These various system
prompts are given below.
All data on drive A: will be destroyed
Press any key to continue...
This prompt is given by the FORMAT command, and is issued to reduce the
risk of accidentally formatting the wrong disk. To abort the FORMAT command,
control-STOP or control-C can be pressed.
Destroy all data on RAM disk (Y/N)?
A RAMDISK command was given to set up a RAM disk, but a RAM disk already
existed. If the response to the prompt is 'Y', then any files on this
existing RAM disk will be destroyed. A response of 'N' or control-STOP or
control-C will abort the command.
Disk in drive A: will only be able to boot MSX-DOS
Press any key to continue...
This prompt is given by the FIXDISK command, and is issued to reduce the
risk of accidentally updating a non-MSX-DOS 2 disk. To abort the FIXDISK
command, control-STOP or control-C can be pressed.
Erase all files (Y/N)?
This prompt occurs when a DEL (or ERA or ERASE) command is given
specifying all the files in a directory, and is issued to reduce the risk of
accidentally deleting a lot of files.
Insert COMMAND2.COM disk in drive A:
Press any key to continue...
This may occur after running a program, and requires a disk containing
COMMAND2.COM in the root directory to be present in the specified drive.
After inserting the disk in the drive (which is the drive from which MSX-DOS
was originally booted) and pressing a key, the system will continue as
normal. If COMMAND2.COM has been copied somewhere else (eg. a RAM disk) then
the SHELL environment item can be set up to make COMMAND2.COM re-load from
there instead (see chapter 7 on Environment Items).
Insert batch file disk in drive A:
Press any key to continue...
This may occur during the execution of a batch file, and means that the
system needed to read the next command from the batch file but found that the
wrong disk was in the drive. After inserting the disk in the specified drive
(which will be the drive from which the batch file was originally started)
and pressing a key, execution of the batch file will continue as normal.
Press any key to continue...
This prompt is generally issued when some user interaction is required, and
is normally printed after some other message which describes the action
required. It is also printed by the PAUSE command. To abort the command that
issued the prompt, control-STOP or control-C can be pressed.
Terminate batch file (Y/N)?
When MSX-DOS aborts a command prematurely (such as when the control-STOP or
control-C key is pressed) and the command was executing in a batch file, this
prompt is issued. If the response is 'Y' then the batch file will also be
aborted. If 'N' is the response then the batch file will continue with the command that follows
the aborted command.
9. COMMAND SUMMARY
==================
The following is a list of all the standard commands available in
MSX-DOS, together with their syntax and purpose.
ASSIGN [d: [d:]]
Sets up the logical to physical translation of drives.
ATDIR +|-H [/H] [/P] compound-filespec
Changes the attributes of directories to make them
hidden/not hidden.
ATTRIB +|- R|H [/H] [/P] compound-filespec
Changes the attributes of files to make them hidden/not
hidden and read only/not read only.
BASIC [program]
Transfers control to MSX disk BASIC.
BUFFERS [number]
Displays or changes the number of disk buffers in the
system.
CD [d:] [path]
Displays or changes the current directory.
CHDIR [d:] [path]
Displays or changes the current directory.
CHKDSK [d:] [/F]
Checks the integrity of the files on the disk.
CLS
Clears the screen.
COMMAND2 [command]
Invokes the command interpreter.
CONCAT [/H] [/P] [/B] [/V] compound-filespec filespec
Concatenates (joins together) files.
COPY [/A] [/H] [/T] [/V] [/P] compound-filespec [filespec]
Copies data from files or devices to other files or
devices.
DATE [date]
Displays or sets the current date.
DEL [/H] [/P] compound-filespec
Deletes one or more files.
DIR [/H] [/W] [/P] [compound-filespec]
Displays the names of files on disk.
DISKCOPY [d: [d:]] [/X]
Copies one disk to another.
ECHO [text]
Prints text in a batch file.
ERA [/H] [/P] compound-filespec
Deletes one or more files.
ERASE [/H] [/P] compound-filespec
Deletes one or more files.
EXIT [number]
Exits COMMAND2.COM to the invoking program.
FIXDISK [d:] [/S]
Updates a disk to the full MSX-DOS 2 format.
FORMAT [d:]
Formats (initializes) a disk.
HELP [subject]
Provides on-line help for an MSX-DOS feature.
MD [d:] path
Creates a new sub-directory.
MKDIR [d:] path
Creates a new sub-directory.
MODE number
Changes the number of characters/line on the screen.
MOVE [/H] [/P] compound-filespec [path]
Moves files from one place to another on a disk.
MVDIR [/H] [/P] compound-filespec [path]
Moves directories from one place to another on a disk.
PATH [ [+|-] [d:]path [ [d:]path [ [d:]path ...]] ]
Displays or sets the COM and BAT command search path.
PAUSE [comment]
Prompts and waits for a key press in a batch file.
RAMDISK [number[K]] [/D]
Displays or sets the RAM disk size.
RD [/H] [/P] compound-filespec
Removes one or more sub-directories.
REM [comment]
Introduces a comment in a batch file.
REN [/H] [/P] compound-filespec filename
Renames one or more files.
RENAME [/H] [/P] compound-filespec filename
Renames one or more files.
RMDIR [/H] [/P] compound-filespec
Removes one or more sub-directories.
RNDIR [/H] [/P] compound-filespec filename
Renames one or more sub-directories.
SET [name] [separator] [value]
Displays or sets environment items.
TIME [time]
Displays or sets the current time.
TYPE [/H] [/P] [/B] compound-filespec | device
Displays data from a file or device.
UNDEL filespec
Recovers a previously deleted file.
VER
Displays the system's version numbers.
VERIFY [ON | OFF]
Displays/sets the current disk write verify state.
VOL [d:] [volname]
Displays or changes the volume name on a disk.
XCOPY [filespec [filespec]] [/A][/E][/H][/M][/P][/S][/T][/V][/W]
Copies files and directories from one disk to another.
XDIR [filespec] [/H]
Lists all files within directories.
10. DISK-BASIC 2.0
==================
Overview
When the system disk (the one which contains MSXDOS2.SYS and
COMMAND2.COM) does not exist at the system startup, or when MSX-DOS BASIC
command is executed, DISK-BASIC 2.0 will be started.
DISK-BASIC 2.0 is the extended version of previous DISK-BASIC 1.0.
Instructions to operate with the RAM disk or the directory has been added or
extended.
Description of Commands
CALL CHDIR
Format CALL CHDIR("[d:][path]")
Purpose Set or display current directory
Example CALL CHDIR("WORK")
Description The function is the same as MSX-DOS CHDIR. See CHDIR.
CALL CHDRV
Format CALL CHDRV("[d:]")
Purpose Switch default drive
Example CALL CHDRV("H:")
Description The same action is taken as when the drive name is given at
MSX-DOS prompt.
CALL MKDIR
Format CALL MKDIR("[d:][path]")
Purpose Create new subdirectory
Example CALL MKDIR("WORK")
Description The function is the same as MSX-DOS MKDIR. See MKDIR.
CALL RMDIR
Format CALL RMDIR("[d:][path]")
Purpose Remove one or more subdirectories
Example CALL RMDIR("WORK")
Description The function is the same as MSX-DOS RMDIR. See RMDIR.
CALL RAMDISK
Format CALL RAMDISK[([number][, variable name])]
Purpose Set size of RAM disk or assign it into a variable
Example CALL RAMDISK(32)
CALL RAMDISK(1000, A)
Description The function is the same as MSX-DOS RAMDISK. See RAMDISK.
CALL SYSTEM
Format CALL SYSTEM
or
CALL SYSTEM[("DOS command name")]
Purpose Pass control back to MSX-DOS
Example CALL SYSTEM("WORK")
Description CALL SYSTEM passes the control back to MSX-DOS. The command
name may be given to specify the operation to be executed
after the control returns to DOS. If no command name is
specified, REBOOT.BAT in the root directory on the boot
drive, if any, will be executed.
FILES
Format FILES["filename"][, L]
Purpose Display names of files and directories on disk
Example FILES"W*.*"
Description The function is the same as MSX-DOS DIR. See DIR. "FILES, L"
displays the names in the long format.
* * * * *