# $Id$
#
# FreeCOM national customization file
#
#	Language: English
#	Codepage: ASCII (7bit) / any codepage
#	Author:   FreeCOM maintainer
# Changelog by W. Spiegl (2024-12-21).
# TEXT_CMDHELP_IF: added /I string==STRING
# TEXT_CMDHELP_ECHO: added ECHO.
# TEXT_CMDHELP_SHIFT: fixed (%0) to be (%%0).
# Changelog by W. Spiegl (2024-10-15):
# "FOR - Example: replaced %% by %%%%"
# This file is used to generate all the messages that command.com
# outputs.  This file is the input to the fixstrs program, and it
# outputs strings.h and strings.dat.  The .DAT file is appended to
# the command.exe file, and then renamed to command.com.  The .H
# file contains all the info for the program to retrieve the
# messages.
#
# The format of this file is simple.  Blank lines and lines starting
# with "#" are ignored.
# Each message starts with a label name that will be used to refer to
# the message in the program.  A label starts with a colon ":".
# A label has a version ID attached to it delimited by a hash sign, e.g.:
#	:TEXT_LABEL#1
# This version is incremented each time the contents of the string has
# undergo a larger change. The same language definition may contain the
# same label up to one time, regardless of the version. FIXSTRS compares
# both the label and the version ID and both must match.
# A missing version is assumed as "#0".
# If there is a percent sign (%) appended to the version, the printf()
# format string %-style placeholders are compared for the strings. The
# sign need to be set in DEFAULT.lng only.  Use a double %, %% to display a %.
#
# All lines after the label are the message until a line with a
# single "." or "," in the first column.  The difference is the
# period (".") signifies that there will be a final carriage return when
# the message is displayed, but a comma does not.
#
# The body may contain backslash escape sequences as known from C; there
# are the usual \# (where '#' is a lowercase letter except 'x' or one of
# "[]{}?"), \\ (to embed a backslash itself)
# \x?? (where '??' are up to two hexadecimal digits), \0 (to embed a NUL
# character), \, and \. (to specify a period or comma in the first column
# of a line) and the single \ at the end of the line to suppress to append
# a newline character. Note: There is NO octal sequence except the short \0!
# There is a known bug (or feature): [ignore the very first hash mark]
#:TEXT_LABEL#2
#
#\
#,
# Although the first data line appends the newline, the second does not,
# though the comma removes the newline from the first line.

# Defining prompts
# Some prompts may cause an user interaction. Those ones should be in sync
# with the issued text. To define how to interpret a pressed key, they
# are mapped into metakeys like that: [ignore first hash sign]

## Return value: a -> Yes; else -> No
#:PROMPT_YES_NO#1
#YyNn\n\r{CBREAK}
#aabb b b       b
# (Yes/No) ? \
#.

# All strings, which label start with "PROMPT_", are parsed as prompts.
# The first two lines of the body are special; the first one enumerates all
# valid keys, the second one assigns arbitrary metakeys. Metakeys may
# range from 'a' through 'z'; spaces are ignored; everything else cause
# an error. The comment preceding the prompt definition associates the
# metakeys with their meaning.
# The remaining lines of the body contain the text to be displayed.
#
# Above example defines a native Yes/No prompt with a space behind the question
# mark and no appended newline.
# The metakey 'a' means "User answered with 'Yes'" and 'b' means no.
# The keys 'Y' and 'y' are mapped to metakey 'a' (aka Yes) and the keys
# 'N', 'n', Enter and ^Break are mapped to metakey 'b' (aka No).
# The spaces between the 'b's in the second line had been inserted to
# align them with the corresponding keys of the first line, hence in order
# to enhance readability of the association between the pressed keys and their
# mapping into a metakey.
#
# The first line (pressed keys) has to enumerate the ASCII value as returned
# by DOS or BIOS (INT-10); special keys normally expressed with ASCII code zero,
# but a non-zero scancode are NOT supported; this limit includes for instance
# the function keys F1 through F12 and the cursor keys and it is not possible
# to differ between the number pad and normal keys.
# The keys may be enumerated by their ASCII character, by a backslash sequence,
# or a symbolic name enclosed in curly brackets (see FIXSTRS.C "symkeys[]"
# array about the supported symnames).


#
#  These are error messages
#
## Issued if a single character option is unknown
:TEXT_ERROR_INVALID_SWITCH#0%
Invalid switch. - /%c
.

## Issued if a longname option is unknown
:TEXT_ERROR_INVALID_LSWITCH#0%
Invalid switch. - /%s
.

## Issued if the context, the type of argument etc. is invalid
:TEXT_ERROR_ILLFORMED_OPTION#0%
Ill-formed option: '%s'
.

:TEXT_ERROR_OPT_ARG#0%
Option '%s' can not have an argument
.

:TEXT_ERROR_OPT_NOARG#0%
Option '%s' must have an argument
.

:TEXT_INVALID_NUMBER#0%
Invalid number specified in '%s'
.

:TEXT_ERROR_CLOSE_QUOTE#0%
Missing closing quote: %c
.

:TEXT_ERROR_TEMPFILE
Can not create temporary file
.

:TEXT_ERROR_TOO_MANY_PARAMETERS_STR#0%
Too many parameters. - '%s'
.

:TEXT_ERROR_TOO_MANY_PARAMETERS
Too many parameters.
.

:TEXT_ERROR_INVALID_PARAMETER#0%
Invalid parameter. - '%s'
.

:TEXT_ERROR_PATH_NOT_FOUND
Path not found.
.

:TEXT_ERROR_FILE_NOT_FOUND
File not found.
.

:TEXT_ERROR_SFILE_NOT_FOUND#0%
File not found. - '%s'
.

:TEXT_ERROR_REQ_PARAM_MISSING#0%
Required parameter missing.
.

:TEXT_ERROR_INVALID_DRIVE#0%
Invalid drive %c:.
.

:TEXT_ERROR_BADCOMMAND#2%
Bad command or filename - "%s".
.

:TEXT_ERROR_OUT_OF_MEMORY
Out of memory error.
.

:TEXT_ERROR_OUT_OF_DOS_MEMORY#1
Allocation of DOS memory failed.
.

:TEXT_ERROR_CANNOTPIPE
Cannot pipe!  Cannot open temporary file!
.

:TEXT_ERROR_LONG_LINE_BATCHFILE#0%
Line #%ld in batchfile '%s' too long.
.

:TEXT_ERROR_BFILE_VANISHED#0%
Batchfile '%s' not found.
.

:TEXT_ERROR_BFILE_LABEL#0%
Batchfile '%s' does not contain label '%s'.
.

:TEXT_ERROR_DIRFCT_FAILED#1%
%s failed for '%s'.
.
# The next three errors must remain in this order!
:TEXT_ERROR_SET_ENV_VAR#0%
Can not set environment variable '%s'.
Environment full?
.
:TEXT_ERROR_ENV_VAR_NOT_FOUND#0%
Environment variable '%s' not found.
.
:TEXT_ERROR_NO_ENVIRONMENT
No environment. Maybe memory short. Specify /E option.
.

# The next three errors must remain in this order!
:TEXT_ERROR_SET_ALIAS#1%
Can not set alias '%s'. Alias space full?
.
:TEXT_ERROR_ALIAS_NOT_FOUND#1%
Alias '%s' not found.
.
:TEXT_ERROR_NO_ALIAS_SEGMENT#1
No alias space. Maybe memory short.
.

:TEXT_ERROR_SYNTAX_STR#0%
Syntax error. - '%s'
.

:TEXT_ERROR_SYNTAX
Syntax error.
.

:TEXT_ERROR_FILENAME_TOO_LONG#0%
Filename too long. - '%s'
.

:TEXT_ERROR_SELFCOPY#0%
Cannot copy '%s' to itself
.

:TEXT_ERROR_COMMAND_TOO_LONG
Command line too long after alias expansion!
.

:TEXT_ERROR_LINE_TOO_LONG
Commandline longer than 125 characters.
.

:TEXT_ERROR_HISTORY_SIZE#1%
Invalid history size '%s'.
.

:TEXT_HISTORY_EMPTY#1
Command line history empty.
.


:TEXT_ERROR_BAD_MCB_CHAIN
MCB chain corrupt, or MS-DOS incompatible system.
.

:TEXT_ERROR_UNDEFINED_ERROR#0%
Undefined error %d.
.

:TEXT_ERROR_REGION_WARNING#0%
Illegal memory region %d - ignored.
.

:TEXT_ERROR_ON_OR_OFF
Must specify ON or OFF.
.

:TEXT_ERROR_BAD_VARIABLE
Bad variable specification.
.

:TEXT_ERROR_IN_MISSING#1
FOR: IN missing.
.

:TEXT_ERROR_MISSING_PARENTHESES#1
One or both parentheses missing.
.

:TEXT_ERROR_DO_MISSING#1
FOR: DO missing.
.

:TEXT_ERROR_NO_COMMAND_AFTER_DO#1
FOR: No command after DO statement.
.

:TEXT_ERROR_REDIRECT_FROM_FILE#0%
Can not redirect input from file '%s'.
.

:TEXT_ERROR_REDIRECT_TO_FILE#0%
Can not redirect output to file '%s'.
.

:TEXT_ERROR_EMPTY_REDIRECTION#1
Empty redirection.
.

:TEXT_ERROR_INVALID_DATE
Invalid date.
.

:TEXT_ERROR_INVALID_TIME
Invalid time.
.

:TEXT_ERROR_NO_GOTO_LABEL
No label specified for GOTO.
.

:TEXT_CTTY_NOTIMPLEMENTED
The CTTY command has been excluded from this COMMAND.COM.
.

:TEXT_ERROR_NORW_DEVICE#0%
Invalid or no read-write device '%s'.
.

:TEXT_ERROR_CTTY_DUP#0%
Failed to change file descriptors to TTY '%s'.
.

:TEXT_ERROR_L_NOTIMPLEMENTED
/L not implemented yet.
.

:TEXT_ERROR_U_NOTIMPLEMENTED
/U not implemented yet.
.

:TEXT_ERROR_WRITING_DEST
Error writing to destination.
.

:TEXT_ERROR_CANNOT_OPEN_SOURCE#0%
Unable to open source. - '%s'
.

:TEXT_ERROR_OPEN_FILE#0%
Unable to open file '%s'
.

:TEXT_ERROR_READ_FILE#0%
Unable to read from file '%s'
.

:TEXT_ERROR_WRITE_FILE#0%
Unable to write to file '%s'
.

:TEXT_ERROR_LEADING_PLUS
The concatenation character '+' cannot lead the arguments.
.

:TEXT_ERROR_TRAILING_PLUS
The concatenation character '+' cannot trail the arguments.
.

:TEXT_ERROR_NOTHING_TO_DO
Nothing to do.
.

:TEXT_ERROR_COPY
COPY failed
.

:TEXT_ERROR_IF_EXIST_NO_FILENAME#1
IF EXIST: missing filename
.
:TEXT_ERROR_IF_ERRORLEVEL_NO_NUMBER#1
IF ERRORLEVEL: missing number
.
:TEXT_ERROR_IF_ERRORLEVEL_INVALID_NUMBER#1
IF ERRORLEVEL: invalid number
.
:TEXT_ERROR_IF_MISSING_COMMAND#1
IF: Missing command
.

:TEXT_NOT_IMPLEMENTED_YET
Sorry...not implemented yet.
.

:TEXT_FAILED_LOAD_STRINGS
Failed to load messages into memory.
.

:TEXT_MSG_NOTIMPLEMENTED
The /MSG option has been excluded from this COMMAND.COM.
.

:TEXT_MSG_ITEMS_DISPLAYED#1%
%u items displayed.
.

:TEXT_CORRUPT_COMMAND_LINE
Corrupt command line. This is an internal error and is related to
the system COMMAND.COM runs in. Please report this error.
.

:TEXT_QUOTED_C_OR_K#1
The /C and /K options cannot be quoted, they are ignored.
.

:TEXT_INIT_FULLY_QUALIFIED#1%
The path to COMMAND.COM must be fully qualified!
That means including drive letter and beginning with a backslash.
For example: C:\\FDOS

COMMAND.COM assumes this path now:
%s
.

:TEXT_ERROR_RESTORE_SESSION
The session information could not be restored, any local settings
are lost. Please refer to above error messages for the reason
of this problem.
.

:TEXT_ERROR_SAVE_SESSION
The current information cannot be preserved during the call of the
program. Please refer to above error messages for the reason of
this problem.
.

:TEXT_ERROR_CWD_FAILED#1%
Drive %c: not responding.
.

:TEXT_ERROR_KSWAP_ALIAS_SIZE
Swapping failed: Aliases allocate too much memory.
.


:TEXT_ERROR_KSWAP_ALLOCMEM
Swapping failed: Cannot allocate far memory.
.

:TEXT_ERROR_ALIAS_OUT_OF_MEM#1
Out of alias space.
.

:TEXT_ERROR_ALIAS_NO_SUCH#1%
No such alias: '%s'
.

:TEXT_ERROR_ALIAS_INSERT#1
Failed to insert alias.
.

:TEXT_ALIAS_INVALID_NAME#1%
Invalid alias name '%s'.
.

:TEXT_ERROR_LOADING_CONTEXT#1
Cannot load Context module or Critical Error handler.
.

:TEXT_ERROR_CONTEXT_OUT_OF_MEMORY#1
Context out of memory.
If this error persists, consider to increase some internal buffer,
such as history, directory stack etc.
.

:TEXT_ERROR_CONTEXT_LENGTH#1%
Size of context totals %lu bytes exceeding maximal limit.
Resizing context to %u bytes.
.

:TEXT_ERROR_CONTEXT_ADD_STATUS#1
Failed to add status information into context. This error may indicate
memory corruption or an incorrectly determined minimum size of
the context. Please inform the maintainer of FreeCOM at:
freedos-devel@lists.sourceforge.net mailing list.
.

:TEXT_ERROR_CONTEXT_AFTER_SWAP#1
The context is missing after swap. The context is re-created,
but all aliases etc. are lost.
.

:TEXT_ERROR_PERMISSION_DENIED#1%
%s: Permission denied
.

:TEXT_ERROR_NO_SUCH_FILE#1%
%s: No such file or directory
.

:TEXT_ERROR_UNKNOWN_ERROR#1%
%s: Unknown error
.

#
# Informational messages
#

:TEXT_MSG_PAUSE#1
Press any key to continue . . .\
.

:TEXT_MSG_HISTORY_SIZE#0%
History size is %d bytes.
.

:TEXT_MSG_DOSKEY
DOSKEY features are already enabled in the shell.
.

:TEXT_MSG_ECHO_STATE#0%
ECHO is %s
.

:TEXT_MSG_VERIFY_STATE#0%
VERIFY is %s
.

:TEXT_MSG_FDDEBUG_STATE#0%
DEBUG output is %s.
.
:TEXT_MSG_FDDEBUG_TARGET#0%
DEBUG output is printed to '%s'.
.

:TEXT_MSG_BREAK_STATE#0%
BREAK is %s
.

:TEXT_MSG_LFNFOR_STATE#0%
LFNFOR is %s
.

:TEXT_MSG_LFNFOR_COMPLETE_STATE#0%
LFN Complete is %s
.

:TEXT_MSG_CURRENT_DATE#0%
Current date is %s
.

## The three DATE prompts MUST be in this order!
:TEXT_MSG_ENTER_DATE_AMERICAN#1%
Enter new date (mm%sdd%s[cc]yy): \
.
:TEXT_MSG_ENTER_DATE_EUROPE#1%
Enter new date (dd%smm%s[cc]yy): \
.
:TEXT_MSG_ENTER_DATE_JAPANESE#1%
Enter new date ([cc]yy%smm%sdd): \
.

:TEXT_MSG_CURRENT_TIME#0%
Current time is %s
.

:TEXT_STRING_PM#1
 pm\
.
:TEXT_STRING_AM#1
 am\
.

:TEXT_MSG_ENTER_TIME#1
Enter new time: \
.

# src-file <operation> target-file
:TEXT_MSG_COPYING#0%
%s %s %s
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Used by Delete all (Y/N) --> let ENTER default to NO
# Return value: a -> Yes; else -> No
:PROMPT_DELETE_ALL#1%
YyNn{CR}{LF}{CBREAK}
aabb   b   b       b
All files in '%s' will be deleted!
Are you sure (Y/N)? \
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Return value: a -> Yes; else -> No
:PROMPT_YES_NO#1
YyNn{LF}{CR}{CBREAK}{ESC}
aabb   a   a       b    b
 [Yes=ENTER, No=ESC] ? \
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Attention: This prompt is issued via BIOS; any newline MUST be prefixed
#	by \r!
# Return value: a -> Yes; b -> No; c -> All; else -> Undefined
:PROMPT_CANCEL_BATCH#1%
YyNnAaQq{LF}{CR}{CBREAK}{ESC}
aabbcccc   a   a       c    b
Control-Break pressed.\r
Terminate batch file '%s' (Yes/No/All) ? \
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Return value: a -> Yes; b -> No; c -> All; d -> Quit
:PROMPT_OVERWRITE_FILE#1%
YyNnAaQq{BREAK}{ENTER}{ESC}
aabbccdd      d      a    b
Overwrite '%s' (Yes/No/All/Quit) ? \
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Return value: a -> Yes; b -> No; c -> All; d -> Quit
:PROMPT_APPEND_FILE#1%
YyNnAaQq{BREAK}{ENTER}{ESC}
aabbccdd      d      a    b
Append to '%s' (Yes/No/All/Quit) ? \
.

# This prompt MUST include the pseudo key CBREAK!
# Note: This prompt ignores DOS NLS intentionally in order to
# keep interactive prompt & user-interaction in sync.
# Return value: a -> Yes; b -> No; c -> All; d -> Quit
:PROMPT_DELETE_FILE#1%
YyNnAaQq{BREAK}{ENTER}{ESC}
aabbccdd      d      a    b
Delete '%s' (Yes/No/All/Quit) ? \
.

:TEXT_UNKNOWN_FILENAME#1
<<unknown>>\
.

:TEXT_DIRSTACK_EMPTY
Directory stack empty.
.

## Strings to construct the DIR output
:TEXT_DIR_HDR_VOLUME#1%
 Volume in drive %c \
.
:TEXT_DIR_HDR_VOLUME_STRING#0%
is %s
.
:TEXT_DIR_HDR_VOLUME_NONE
has no label
.
:TEXT_DIR_HDR_SERIAL_NUMBER#0%
 Volume Serial Number is %04X-%04X
.
:TEXT_DIR_FTR_FILES#1%
%10s file(s)\
.
:TEXT_DIR_FTR_BYTES#0%
   %12s bytes
.
:TEXT_DIR_FTR_TOTAL_NUMBER
Total files listed:
.
:TEXT_DIR_FTR_DIRS#1%
%10s dir(s)\
.
:TEXT_DIR_FTR_BYTES_FREE#0%
 %15s bytes free
.
:TEXT_DIR_DIRECTORY#0%
Directory of %s
.
:TEXT_DIR_DIRECTORY_WITH_SPACE#0%
 Directory of %s
.
:TEXT_DIR_LINE_FILENAME_WIDE#1%
%-15s\
.
:TEXT_DIR_LINE_FILENAME_BARE#1%
%s
.
:TEXT_DIR_LINE_FILENAME_SINGLE#1%
%-13s\
.
:TEXT_DIR_LINE_FILENAME#1%
%-8s %-3s \
.
:TEXT_DIR_LINE_SIZE_DIR#1
        <DIR> \
.
:TEXT_DIR_LINE_SIZE#1%
   %10s \
.

:TEXT_FILE_COMPLATION_DISPLAY#1%
%-14s\
.

:TEXT_MSG_PATH#0%
PATH=%s
.
:TEXT_MSG_PATH_NONE#1
No search path defined.
.

## The following names MUST be in this order!
:TEXT_WEEKDAY_SHORT_NAME_SUNDAY#1
Sun\
.
:TEXT_WEEKDAY_SHORT_NAME_MONDAY#1
Mon\
.
:TEXT_WEEKDAY_SHORT_NAME_TUESDAY#1
Tue\
.
:TEXT_WEEKDAY_SHORT_NAME_WEDNSDAY#1
Wed\
.
:TEXT_WEEKDAY_SHORT_NAME_THURSDAY#1
Thu\
.
:TEXT_WEEKDAY_SHORT_NAME_FRIDAY#1
Fri\
.
:TEXT_WEEKDAY_SHORT_NAME_SATURDAY#1
Sat\
.

# Displayed by DEL how many files were removed.
# These three strings must be kept in order!
:TEXT_MSG_DEL_CNT_FILES#1
no file removed.
.
:TEXT_MSG_DEL_CNT_FILES_1#1
one file removed.
.
:TEXT_MSG_DEL_CNT_FILES_2#1%
%u files removed.
.

:TEXT_MSG_SHOWCMD_INTERNAL_COMMANDS
Internal commands available:
.

:TEXT_MSG_SHOWCMD_FEATURES

Features available:
.

## Displayed within "?" <-> showcmd() to enumerate the included features
## Note the trailing single space
:TEXT_SHOWCMD_FEATURE_ALIASES#1
[aliases] \
.
:TEXT_SHOWCMD_FEATURE_ENHANCED_INPUT#1
[enhanced input] \
.
:TEXT_SHOWCMD_FEATURE_HISTORY#1
[history] \
.
:TEXT_SHOWCMD_FEATURE_FILENAME_COMPLETION#1
[filename completion] \
.
:TEXT_SHOWCMD_FEATURE_SWAP_EXEC#1
[swapping] \
.
:TEXT_SHOWCMD_FEATURE_CALL_LOGGING#1
[start logging] \
.
:TEXT_SHOWCMD_FEATURE_LAST_DIR#1
[last dir] \
.
:TEXT_SHOWCMD_FEATURE_LONG_FILENAMES#1
[long filenames] \
.
:TEXT_SHOWCMD_FEATURE_KERNEL_SWAP_SHELL#1
[kernel swap] \
.
:TEXT_SHOWCMD_FEATURE_XMS_SWAP#1
[XMS swap] \
.
:TEXT_SHOWCMD_DEFAULT_TO_SWAP#1
[default to swap] \
.
:TEXT_SHOWCMD_FEATURE_INSTALLABLE_COMMANDS#1
[installable commands] \
.
:TEXT_SHOWCMD_FEATURE_NLS#1
[DOS NLS] \
.
:TEXT_SHOWCMD_FEATURE_DIRSTACK#1
[directory stack (PUSHD)] \
.
:TEXT_SHOWCMD_FEATURE_DEBUG#1
[FreeCOM debugging] \
.

:TEXT_MSG_INIT_BYPASS_AUTOEXEC#1

Press F8 for trace mode, or F5 to bypass %s... \
.
:TEXT_MSG_INIT_BYPASSING_AUTOEXEC#0%
Bypassing '%s'.
.

:TEXT_MSG_VER_DOS_VERSION#0%
DOS version %u.%02u
.

:TEXT_MSG_VER_EARLY_FREEDOS
FreeDOS kernel (build 1933 or prior)
.

:TEXT_MSG_VER_LATER_FREEDOS#0%
FreeDOS kernel version %d.%d.%d
.


:TEXT_MSG_VER_WARRANTY
Copyright (C) 1994-2005 Tim Norman and others.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

Send bug reports to freedos-devel@lists.sourceforge.net.
Updates are available from http://freedos.sourceforge.net/freecom
.

:TEXT_MSG_VER_REDISTRIBUTION
Copyright (C) 1994-2005 Tim Norman and others.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.

Send bug reports to freedos-devel@lists.sourceforge.net.
Updates are available from http://freedos.sourceforge.net/freecom
.

:TEXT_MSG_VER_DEVELOPERS

The FreeDOS Command Shell developed by many developers, please refer
to the enclosed HISTORY.TXT file.

Send bug reports to freedos-devel@lists.sourceforge.net.
Updates are available from http://freedos.sourceforge.net/freecom
.


# Displayed when the shell is to terminate, but has been started
# with /P option <-> shell cannot exist;
# This is a crash situation, because FreeCOM won't reach this situation
# normally otherwise
# All newlines must be prefixed by \r's !
:TEXT_MSG_REBOOT_NOW#1
\r\n\r
The shell is about to be terminated, though, this is\r
forbidden (usually by enabling the "/P" option).\r
You must reboot the system or, if this shell runs in\r
a multitasking environment, terminate this process/task manually.\r
.

# Displayed during the initialization phase of FreeCOM, if its own
# filename could not be determined.
:TEXT_MSG_FREECOM_NOT_FOUND#1
FreeCOM executable not found.
You must specify the complete path to COMMAND.COM
as the first argument of COMMAND, for instance:
C:\\FDOS
.


:TEXT_MEMORY_ENVIRONMENT#1%
Environment segment    : max %5u bytes; free %5u bytes
.
:TEXT_MEMORY_CONTEXT#1%
Context segment        : max %5u bytes; free %5u bytes
.	
:TEXT_MEMORY_HEAP#1%
Heap                   : free %5lu bytes
.
:TEXT_MEMORY_CTXT_ALIAS#1%
\tAliases        : limit %5u bytes, current %5u bytes, %5u items
.
:TEXT_MEMORY_CTXT_HISTORY#1%
\tHistory        : limit %5u bytes, current %5u bytes, %5u items
.
:TEXT_MEMORY_CTXT_DIRSTACK#1%
\tDirectory stack: limit %5u bytes, current %5u bytes, %5u items
.
:TEXT_MEMORY_CTXT_LASTDIR#1%
\tLast dir cache : used  %5u bytes, %5u items
.
:TEXT_MEMORY_CTXT_BATCH#1%
\tBatch nesting  : used  %5u bytes, %5u items
.
:TEXT_MEMORY_CTXT_SWAPINFO#1%
\tSwapinfo       : used  %5u bytes, %5u items
.


## CHCP
:TEXT_ERROR_GET_CODEPAGE#1
Failed to acquire current code page from system.
.
:TEXT_ERROR_SET_CODEPAGE#1
Failed to change current code page.
.
:TEXT_DISPLAY_CODEPAGE#1%
The current codepage is %u.
The system codepage (properly) is: %u.
.

#
# Command help text
#

:TEXT_CMDHELP_ALIAS
Displays, sets, or removes aliases.

ALIAS [variable[=][string]]

	variable  Specifies the alias name.
	string    Specifies a series of characters to assign to the alias.


Type ALIAS without parameters to display the current aliases.
.

:TEXT_CMDHELP_BEEP
Make a beep sound.
.

:TEXT_CMDHELP_BREAK
Sets or clears extended CTRL+C checking.

BREAK [ON | OFF]

Type BREAK without a parameter to display the current BREAK setting.
.

:TEXT_CMDHELP_CALL#1
Calls one batch program from another.

CALL [/S | /N] [/Y] [drive:][path]filename [batch-parameters]

  batch-parameters   Specifies any command-line information required by
                     the batch program.
  /S enforces, /N denies swapping of FreeCOM.
  /Y enables tracemode during execution of the command.
.

:TEXT_CMDHELP_CD
Displays the name of or changes the current directory.

CHDIR [drive:][path]
CHDIR[..]
CD [drive:][path]
CD[..]
CD -

  ..   Specifies that you want to change to the parent directory.
  -    If "last directory" feature is enabled, change to last directory.

Type CD drive: to display the current directory in the specified drive.
Type CD without parameters to display the current drive and directory.
See also: CDD
.

:TEXT_CMDHELP_CDD
Displays the name of or changes the current directory and drive.

CDD [drive:][path]
CDD[..]

  ..   Specifies that you want to change to the parent directory.
  -    If "last directory" feature is enabled, change to last directory.

If drive: is specified, the current working drive is changed; this
is the only different to "CHDIR".
Type CD without parameters to display the current drive and directory.
.

:TEXT_CMDHELP_CHCP
Displays or sets the active code page number.

CHCP [nnn]

  nnn   Specifies a code page number.

Type CHCP without a parameter to display the active code page number.
.

:TEXT_CMDHELP_CLS
Clears the screen.

CLS
.

:TEXT_CMDHELP_COMMAND
Starts a new copy of the FreeDOS command shell.

COMMAND [[drive:]path] [device] [/E:nnnnn] [/L:nnnn] [/U:nnn] [/P] [/MSG]
                       [/LOW] [/Y [/[C|K] command]]
  [drive:]path    Specifies the directory containing COMMAND.COM.
  device          Specifies the device to use for command input and output.
  /E:nnnnn        Sets the initial environment size to nnnnn bytes.
                  (nnnnn should be between 256 and 32,768).
  /L:nnnn         Specifies internal buffers length (requires /P as well).
                  (nnnn should be between 128 and 1,024).
  /U:nnn          Specifies the input buffer length (requires /P as well).
                  (nnn should be between 128 and 255).
  /P              Makes the new command shell permanent (can't exit).
  /MSG            Stores all error messages in memory (requires /P as well).
  /LOW            Forces the command shell to keep its resident data in
                  low memory.
  /Y              Steps through the batch program specified by /C or /K.
  /C command      Executes the specified command and returns.
  /K command      Executes the specified command and continues running.
.

:TEXT_CMDHELP_COPY
Copies one or more files to another location.

COPY [/A | /B] source [/A | /B] [+ source [/A | /B] [+ ...]] [destination
  [/A | /B]] [/V] [/Y | /-Y]

  source       Specifies the file or files to be copied.
  /A           Indicates an ASCII text file.
  /B           Indicates a binary file.
  destination  Specifies the directory and/or filename for the new file(s).
  /V           Verifies that new files are written correctly.
  /Y           Suppresses prompting to confirm you want to overwrite an
               existing destination file.
  /-Y          Causes prompting to confirm you want to overwrite an
               existing destination file.

The switch /Y may be preset in the COPYCMD environment variable.
This may be overridden with /-Y on the command line.

To append files, specify a single file for destination, but multiple files
for source (using wildcards or file1+file2+file3 format).
.

:TEXT_CMDHELP_CTTY
Changes the terminal device used to control your system.

CTTY device

  device   The terminal device you want to use, such as COM1.
.

:TEXT_CMDHELP_DATE#1
Displays or sets the date.

DATE [/D] [date]

Type DATE without parameters to display the current date setting and a
prompt for a new one.  Press ENTER to keep the same date.

/D prevents DATE to become interactive.
.

:TEXT_CMDHELP_DEL#2
Deletes one or more files.

DEL [drive:][path]filename [/P] [/V]
ERASE [drive:][path]filename [/P] [/V]

  [drive:][path]filename  Specifies the file(s) to delete.  Specify multiple
                          files by using wildcards.
  /P	Prompts for confirmation before deleting each file.
  /V	Displays all deleted files.
.

:TEXT_CMDHELP_DIR#4
Displays a list of files and subdirectories in a directory.

DIR [drive:][path][filename] [/P] [/W] [/A[[:]attributes]]
  [/O[[:]sortorder]] [/S] [/B] [/L]

  [drive:][path][filename]
            Specifies drive, directory, and/or files to list.
            (Could be enhanced file specification or multiple filespecs.)
 /P         Pauses after each screenful of information.
 /W         Uses wide list format.
 /A         Displays files with specified attributes. (Defaults to /ADHSRA)
 attributes  D  Directories                R  Read-only files
             H  Hidden files               A  Files ready for archiving
             S  System files               -  Prefix meaning not
 /O         List by files in sorted order.
 sortorder   N  By name (alphabetic)       S  By size (smallest first)
             E  By extension (alphabetic)  D  By date & time (earliest first)
             G  Group directories first    -  Prefix to reverse order
             U  Unsorted		   Defaults to /ONG
 /S         Displays files in specified directory and all subdirectories.
 /B         Uses bare format (no heading information or summary).
 /L         Uses lowercase.
 /Y or /4   Display 4-digit year.

Switches may be preset in the DIRCMD environment variable.  Override
preset switches by prefixing any switch with - (hyphen)--for example, /-W.
.

:TEXT_CMDHELP_DOSKEY#1
The external DOSKEY utility had been incorporated into FreeCOM.
Use cursor UP,& DOWN keys to recall the history and HISTORY to display it.
Use cursor LEFT,& RIGHT and the END and HOME keys to navigate within
the command line and toggle INSERT between overstrike and insert mode.
Use the TAB key to complete the current word as filename; use it twice
to show all matching files.
.

:TEXT_CMDHELP_ORIGINAL_DOSKEY#1
Edits command lines, recalls command lines, and creates macros

DOSKEY [/switch ...] [macroname=[text]]

  /BUFSIZE:size Sets size of macro and command buffer            (default:512)
  /ECHO:on|off  Enables/disables echo of macro expansions        (default:on)
  /FILE:file    Specifies file containing a list of macros
  /HISTORY      Displays all commands stored in memory
  /INSERT       Inserts new characters into line when typing
  /KEYSIZE:size Sets size of keyboard type-ahead buffer          (default:15)
  /LINE:size    Sets maximum size of line edit buffer            (default:128)
  /MACROS       Displays all DOSKey macros
  /OVERSTRIKE   Overwrites new characters onto line when typing  (default)
  /REINSTALL    Installs a new copy of DOSKey
  macroname     Specifies a name for a macro you create
  text          Specifies commands you want to assign to the macro

  UP,DOWN arrows recall commands
      Esc clears current command
       F7 displays command history
   Alt+F7 clears command history
[chars]F8 searches for command beginning with [chars]
       F9 selects a command by number
  Alt+F10 clears macro definitions

The following are special codes you can use in DOSKey macro definitions:
  $T     Command separator: allows multiple commands in a macro
  $1-$9  Batch parameters: equivalent to %1-%9 in batch programs
  $*     Symbol replaced by everything following macro name on the command line
.

:TEXT_CMDHELP_ECHO
Displays messages, or turns command-echoing on or off.

  ECHO [ON | OFF]
  ECHO [message]
  ECHO.

ECHO. displays an empty line (only in batch files)
Type ECHO without parameters to display the current echo setting.
.

:TEXT_CMDHELP_EXIT
Quits the FreeDOS command shell unless loaded with /P.

EXIT
.

:TEXT_CMDHELP_FOR
Runs a specified command for each file in a set of files.

FOR %%variable IN (set) DO command [command-parameters]

  %%variable  Specifies a replaceable parameter.
  (set)      Specifies a set of one or more files.  Wildcards may be used.
  command    Specifies the command to carry out for each file.
  command-parameters
             Specifies parameters or switches for the specified command.

To use the FOR command in a batch program, specify %%%%variable instead of
%%variable.

For example:
  FOR %%%%f IN (---start--- a*.* ---end---) DO ECHO - %%%%f -
.

:TEXT_CMDHELP_GOTO
Directs the command shell to a labelled line in a batch program.

GOTO label

  label   Specifies a text string used in the batch program as a label.

You type a label on a line by itself, beginning with a colon.
.

:TEXT_CMDHELP_HISTORY#1
History command.

HISTORY [size]

Without "size" the current contents of the command line history
buffer is displayed.
With the size, the size of the history buffer is changed.
.

:TEXT_CMDHELP_IF
Performs conditional processing in batch programs.

IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command
IF /I string==STRING

  NOT                Specifies that the command shell should carry out
                     the command only if the condition is false.
  ERRORLEVEL number  Specifies a true condition if the last program run
                     returned an exit code equal to or greater than the
                     number specified.
  command            Specifies the command to carry out if the condition
                     is met.
  string1==string2   Specifies a true condition if the specified text
                     strings match.
  EXIST filename     Specifies a true condition if the specified filename
                     exists.
  /I string==STRING  Ignores uppercase / lowercase
.

:TEXT_CMDHELP_LFNFOR
Enables/Disables long filenames within the FOR command or filename completion.

LFNFOR [ON | OFF]
LFNFOR COMPLETE [ON | OFF]

Type LFNFOR or LFNFOR COMPLETE without a parameter to display the current
LFNFOR setting.
.

:TEXT_CMDHELP_LH
Loads a program into the upper memory area.

LOADHIGH [drive:][path]filename [parameters]
LOADHIGH [/L:region1[,minsize1][;region2[,minsize2]...] [/S]]
         [drive:][path]filename [parameters]

/L:region1[,minsize1][;region2[,minsize2]]...
            Specifies the region(s) of memory into which to load the
            program.  Region1 specifies the number of the first memory
            region; minsize1 specifies the minimum size, if any, for
            region1.  Region2 and minsize2 specify the number and minimum
            size of the second region, if any.  You can specify as many
            regions as you want.

/S          Shrinks a UMB to its minimum size while the program is
            loading.

[drive:][path]filename
            Specifies the location and name of the program.
.

:TEXT_CMDHELP_LOADFIX
Loads a program above the first 64K of memory, and runs the program.

LOADFIX [drive:][path]filename

Use LOADFIX to load a program if you have received the message "Packed
file corrupt" when trying to load it in low memory.
.

:TEXT_CMDHELP_MD
Creates a directory.

MKDIR [drive:]path
MD [drive:]path
.

:TEXT_CMDHELP_PATH
Displays or sets a search path for executable files.

PATH [[drive:]path[;...]]
PATH ;

Type PATH ; to clear all search-path settings and direct the command shell
to search only in the current directory.
Type PATH without parameters to display the current path.
.

:TEXT_CMDHELP_PAUSE
Suspends processing of a batch program and displays the message:
"Press any key to continue...." or an optional specified message.

PAUSE [message]
.

:TEXT_CMDHELP_PROMPT
Changes the command prompt.

PROMPT [text]

  text    Specifies a new command prompt.

Prompt can be made up of normal characters and the following special
codes:

  $Q   = (equal sign)
  $$   $ (dollar sign)
  $T   Current time
  $D   Current date
  $P   Current drive and path
  $V   the FreeDOS command shell version number
  $N   Current drive
  $G   > (greater-than sign)
  $L   < (less-than sign)
  $B   | (pipe)
  $H   Backspace (erases previous character)
  $E   Escape code (ASCII code 27)
  $_   Carriage return and linefeed

Type PROMPT without parameters to reset the prompt to the default setting.
.

:TEXT_CMDHELP_PUSHD
Pushes current directory onto the directory stack, with the option to
change current working directory.

PUSHD [[drive:]path]
  Where [drive:]path is a path to which you wish to change.
.

:TEXT_CMDHELP_POPD
Pops a directory off of the directory stack, and changes to it.

POPD [*]
  The '*' parameter clears the directory stack.
.

:TEXT_CMDHELP_DIRS
Displays the contents of the directory stack.

DIRS
.

:TEXT_CMDHELP_RD
Removes (deletes) an empty directory.

RMDIR [drive:]path
RD [drive:]path
.

:TEXT_CMDHELP_REM
Records comments (remarks) in a batch file or CONFIG.SYS.

REM [comment]
.

:TEXT_CMDHELP_REN
Renames a file/directory or files/directories.

RENAME [drive:][path][directoryname1 | filename1] [directoryname2 | filename2]
REN [drive:][path][directoryname1 | filename1] [directoryname2 | filename2]

Note that you cannot specify a new drive or path for your destination. Use
the MOVE command for that purpose.
.

:TEXT_CMDHELP_SET#1
Displays, sets, or removes environment variables.

SET [/C] [/P] [/E] [/U] [variable[=[string]]]

  variable  Specifies the environment-variable name.
  string    Specifies a series of characters to assign to the variable.

* If no string is specified, the variable is removed from the environment.

Type SET without parameters to display the current environment variables.

Type SET VAR to display the value of VAR

/C forces to keep the case of the variable; by default the variable is
uppercased, if it is not located in the environment already, otherwise
the case is retained.

/P prompt the user with string, and assigns the user input to the variable.

/E sets the given variable to the first line of output of the command
pointed to by [string].

/U changes the case of [string] to uppercase.
.

:TEXT_CMDHELP_SHIFT#1
Changes the position of replaceable parameters in a batch file.

SHIFT [DOWN]

DOWN shifts the argument window toward the beginning (%%0); otherwise
toward the end.
.

:TEXT_CMDHELP_TIME#1
Displays or sets the system time.

TIME [/T] [time]

Type TIME with no parameters to display the current time setting and a
prompt for a new one.  Press ENTER to keep the same time.

/T prevents TIME from becoming interactive.
.

:TEXT_CMDHELP_TRUENAME
Displays the full path name of the path specified.

TRUENAME [drive:][path][filename]
.

:TEXT_CMDHELP_TYPE
Displays the contents of text files.

TYPE [drive:][path]filename
.

:TEXT_CMDHELP_VER
Displays the FreeDOS command shell version and other information.

VER [/R] [/W] [/D] [/C]

 /R         Shows kernel version and other information.
 /W         FreeDOS command shell warranty.
 /D         FreeDOS command shell redistribution information.
 /C         FreeDOS command shell contributors.
.

:TEXT_CMDHELP_VERIFY
Tells the FreeDOS file system whether to verify that your files are
written correctly to a disk.

VERIFY [ON | OFF]

Type VERIFY without a parameter to display the current VERIFY setting.
.

:TEXT_CMDHELP_FDDEBUG
If debugging is compiled into FreeDOS, this command will turn debug
output on or off, or tell you if it is on or off.

FDDEBUG [ON | OFF | file]

Type FDDEBUG without a parameter to display the current debug output
setting.
If a file is specified, all debug output is redirected into that file;
the output is appended to the file, if it already exists. The special
names "stdout" and "stderr" may be used to redirect the output
to the standard output or standard error stream.
.

:TEXT_CMDHELP_VOL
Displays the disk volume label and serial number, if they exist.

VOL [drive:]
.

:TEXT_CMDHELP_QUESTION#1
Displays a list of commands and features available with in the shell.

?
?command [argument]

The first variant displays any available internal command and feature.
The second one will prompt whether or not to execute the specified
command as if trace mode would be active.
.

:TEXT_CMDHELP_WHICH
Searches and displays the executable file for each specified command.

WHICH command...
.

:TEXT_CMDHELP_MEMORY#1
Displays the internal memory used by FreeCOM internally.

MEMORY

.

:TEXT_ERROR_COPY_PLUS_DESTINATION#1
The COPY destination must not contain plus ('+') characters.
.

:TEXT_DELETE_FILE#1%
Deleting file "%s".
.

:TEXT_ERROR_WRITE_FILE_DISC_FULL#0%
Unable to write to file '%s';
probably disc full? (%lu bytes required)
.

# Displayed for BIGcopy(), when copying takes quite a long time.
# **_NO_END if the input file size is unknown.
# Both must end in \r rather than \n!!
:TEXT_COPY_COPIED_NO_END#0%
copied %luKB/???KB\r\
.
:TEXT_COPY_COPIED#0%
copied %luKB/%luKB\r\
.

:TEXT_ERROR_FCOM_IS_DEVICE#0%
FreeCOM cannot be a device: "%s"
.
:TEXT_ERROR_FCOM_INVALID#0%
This file is no valid FreeCOM or of an incompatible version:
%s
.

:TEXT_ERROR_LOADING_STRINGS
Failed to load the strings resource into memory, the location
pointed to in %COMSPEC% seems to be invalid. Please specify another
location of FreeCOM to try to load the strings from, e.g.:
C:\\COMMAND.COM
or just hit enter to cancel to load the strings.
.

:TEXT_TERMINATING
Terminating now.
.

:TEXT_HIDDEN_CRITER#0%
%u Critical Error requests suppressed.
.

# The exit reasons MUST be kept in this order!
:TEXT_DISP_EXITCODE#0%
Exit code (ERRORLEVEL): %u, reason: %u (%s)
.
:TEXT_EXIT_REASON_NEG_1
DOS API error\
.
:TEXT_EXIT_REASON_0
terminated normally\
.
:TEXT_EXIT_REASON_1
terminated by ^Break\
.
:TEXT_EXIT_REASON_2
terminated by critical error\
.
:TEXT_EXIT_REASON_3
gone resident\
.
:TEXT_ERROR_EXE_CORRUPT
EXE file corrupt\
.
