Compatibility: ?? Expects: DS:SI offset of an Lstring▲ of a DOS command to perform (note: memory must be available when loading programs) ────────────────────────────────────────────────────────────────── Returns: ?? (it's not apparent how to obtain status of request) SS:SP are destroyed ◄════ ────────────────────────────────────────────────────────────────── Info: This is ◄undocumented► through DOS 6.0. There are too many drawbacks to make this a really useful function (see notes). INT 2eH performs a DOS command, as if it had been typed at the DOS prompt. DS:SI must point to a string in which the first byte is the length of the string, followed by the command text. After the command, a byte of 0dH (CR) must be appended (but don't count it in the first byte). For instance: DB 0fH, "set PROMPT=$p$g", 0dH ;text is 0fH (15) bytes long This example illustrates the main potential use -- it is able to Set values into the DOS master (root) environment. In all other cases, fn 4bH is preferred, (e.g., EXEC COMMAND.COM, passing it the line "/c dos_cmd") since the EXEC fn is fully documented. Notes: ■ Don't use this while a batch file is running. This would cause a fatal reentrancy problem (COMMAND.COM uses this to execute batch commands). Since a program cannot control whether a batch is in progress, this is NOT a reliable function. ■ Be sure to free up some memory to execute programs and remember to relocate your local stack into the shrunken memory area. ■ Provide plenty of stack space -- DOS really eats it up. SS and SP must be saved before the call and restored directly after. See Also: INT 2fH aexxH (hook COMMAND.COM command line) fn 4b00H (load and execute a program) DOS Environment -♦-