Category: shells/command interpreters
Flags: Undocumented function
INT 2F - DOS 5+ - COMMAND.COM INTERFACE AX = 5500h Return: AX = 0000h if an instance of COMMAND.COM is already running DS:SI -> entry point table Notes: used to access the shareable portion of COMMAND.COM, which may have been moved into the HMA; only the primary COMMAND.COM retains this portion procedures called from a dispatcher in COMMAND's resident portion; most assume that the segment address of the resident portion is on the stack and are thus not of general use DR PalmDOS up to DR-DOS 7.03 COMMAND.COM do not support this call. When loading the default command processor (no SHELL= directive in CONFIG.SYS), MS-DOS 6.0-6.22 IO.SYS & PC DOS 6.1-2000 IBMBIO.COM check a signature (see #04099) in the COMMAND.COM file image to test if it is actually their own shell and has the correct version, before they will launch it. If the signature is not found, the message "Invalid COMMAND.COM" will be displayed. This test seems to have vanished with MS-DOS 7+, as it uses an .EXE style file format. In addition to this, the MS-DOS/PC DOS COMMAND.COM checks the version of the underlaying OS to see if it is their own. Hence, the PC DOS 6.1 (and by SETVER version faking also the PC DOS 7 and 2000) COMMAND.COM also run on Novell DOS 7 - DR DOS 7.03, which all identify themselves as DOS API level 6.0 and IBM OEM (not yet tested as primary shell). PC DOS 5.0 COMMAND.COM should run on DR PalmDOS (untested). The MS-DOS 7+ COMMAND.COM seems to no longer perform this kind of version check any more, which can cause a serious deadlock situation on a multi-boot system with DR-DOS installed, when the MS-DOS 7+ COMMAND.COM is placed in C:\. When IBMBIO.COM attempts to load the MS-DOS 7+ COMMAND.COM as a primary shell under DR-OpenDOS 7.02 to DR-DOS 7.03 no error message will be displayed by COMMAND.COM, but the machine will just hang. To defuse this situation, DR-DOS 7.02+ IBMBIO.COM was changed to still scan for a SHELL= directive in [D]CONFIG.SYS even in F5-mode. For maximum safety, the MS-DOS 7 COMMAND.COM should be moved from C:\ to C:\WINDOWS\COMMAND\ and a DCONFIG.SYS file should be created containing for example SHELL=C:\DRDOS\COMMAND.COM instead. If a MS-DOS CONFIG.SYS file exists, it should contain a SHELL=C:\WINDOWS\COMMAND\COMMAND.COM directive. (If no shell can be found at all, DR-DOS IBMBIO.COM would display a prompt to enter the proper path to COMMAND.COM). The DR-OpenDOS 7.02+ COMMAND.COM is designed to also run on 3rd party operating systems like MS-DOS/PC DOS 3.31+, Windows 9x, and in DOS boxes of OS/2, Windows NT and 2000, and will for example also take advantage of long filenames. SeeAlso: AX=5501h