Drop your file to analyze it

COM File

What are COM files and how to open them

Are you having problems opening a COM file or are you simply curious about its contents? We're here to explain the properties of these files and provide you with software that can open or handle your COM files.

What is a COM file?

COM files have multiple uses, and MS-DOS Executable is one of them. Read more about the other uses further down the page.

MS-DOS Executable File

Contrary to popular belief, files with the .com extension have no relation to the .com top-level Internet domain names. Files that contain the .com file extension hold executable program files.

These COM files are executable files that contain commands used by MS-DOS - very similar to the .exe files used by the Windows operating system.

How to open COM files

Important: Different programs may use files with the COM file extension for different purposes, so unless you are sure which format your COM file is, you may need to try a few different programs.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

Last updated: September 2, 2026

8bit CP/M BasicZ Compiled

8bit CP/M BasicZ Compiled files are native machine-code executables produced by the BASIC/Z compiler (a precursor to PowerBASIC) for 8-bit CP/M systems. These files contain fully compiled code rather than interpreted or tokenized BASIC, so they run directly under CP/M's BDOS and BIOS without needing the BASIC/Z compiler present. They support in-line assembly, structured programming features, user-defined functions, multi-file chaining, multi-user record locking, and allow up to 30 files open simultaneously.

These executables are typically created by writing a program in BASIC/Z and then using BASIC/Z's compile facility to produce a COM file. Once compiled, the resulting machine code runs under CP/M like any other transient command or utility. BASIC/Z v1.11 appears in historical CP/M software discussions; users report finding version 1.11 in CP/M-compatible archives.

The file is identified by several internal error-message strings such as "INVALID FILE NUMBE", "NUMERIC RANGE ERRO", "MEMORY OVERFLO", "USER FUNCTION ERRO" and version markers like "1.11 - SERIAL". A characteristic byte signature begins near the file start (offset 0) with a sequence including C3A55ABC5A… and another large signature block occurs at offset ~739 including human-readable error strings.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

Com2txt 16bit DOS Executable

We know that one COM format is Com2txt 16bit DOS Executable. We have not yet analyzed in detail what these files contain and what they are used for. We're working on it.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

Cosmopolitan APE Binary Loader

Cosmopolitan APE Binary Loader is a special multi-platform executable format designed to package native code for several operating systems and architectures into a single file, so the same file runs without modification on e.g. Windows, Linux, macOS or FreeBSD. It is built primarily by Cosmopolitan Libc, using the Actually Portable Executable (APE) specification, to enable one binary to be copied and executed across different OS/CPU combinations with no separate builds.

The format is created when compiling code with Cosmopolitan's build tools and using APE-enabled linker scripts. It embeds code or headers for various native executable formats (PE for Windows, ELF for Linux/BSD, Mach-O for macOS) as well as a shell-script prologue that serves as fallback for systems without native support. During execution, depending on the OS and configuration, one of several dispatch paths is followed: direct kernel loading of the native image, interpreting via a loader program that scans for embedded format headers, or running the shell script portion which may extract and invoke the appropriate loader or convert the file's header.

Internally the file begins with a magic sequence that is valid simultaneously as a Windows "MZ" header, valid x86 machine instructions, and a valid shell assignment - typically the bytes "MZqFpD='". Various embedded strings appear elsewhere in the file, such as "COSMOPOLITAN", "EXECUTABLE", "VERSION", "TEXT", "DATA", "_PAGES", and "FLAGS".

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

CP/M Executable File

An executable file of this kind is the standard format used by CP/M operating systems for machine-language programs. It contains the actual instructions and initialized data that a program needs to run. Such programs are created by assemblers or compilers and become what CP/M calls "transient" commands, meaning they are loaded into memory and executed, rather than permanently resident in the operating system.

When such a program is launched, the CP/M command processor (CCP) loads the entire file into a special area of writable memory known as the Transient Program Area (TPA). Execution begins at the fixed address 0100h (hexadecimal), immediately after a small amount of reserved memory (Page Zero or Base Page) that the operating system uses to store command-line parameters and support data such as file control blocks. This load-and-start process allows all code and data in the program to reside in a single continuous segment of memory.

Because this format contains no header, relocation data, or metadata, the program must occupy less than the full segment size; in CP/M-80 systems, that means under 65,536 bytes minus the reserved 256-byte base region. All references in the code must assume fixed offsets and cannot depend on loader relocation or external symbol resolution.

Optionally, in later versions of CP/M (such as CP/M-3), if the first byte of the file is C9h (the 8080 RET instruction), that signals the presence of a 256-byte header, which older systems will interpret as RET and immediately exit, maintaining compatibility.

Technical details: The reserved prefix (Page Zero) occupies address space from 0000h through 00FFh. The program file's contents are loaded starting at address 0100h. There is no internal identifier string; the file is recognised by its filetype being COM and executed via the CCP jump to 0100h.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

CP/M Kaypro S-BASIC Compiled

CP/M Kaypro S-BASIC Compiled files are executables produced when Kaypro's S-BASIC compiler turns a BASIC program into machine code under the CP/M operating system. S-BASIC is a structured variant of BASIC written by Topaz Programming and distributed with Kaypro computers; instead of interpreting code or using p-code, it compiles source into a stand-alone executable that CP/M can run directly.

These compiled files are created by invoking the SBASIC compiler (for example via "SBASIC filename.BBX") from the CP/M command prompt; upon successful compilation the compiler outputs an executable program in the target directory, often named with the same root name but an executable file type Intended for CP/M command processor to load and run. Such files execute directly without the need for an interpreter once built.

These files begin with a distinctive binary signature that distinguishes them from other types of CP/M executables of the same extension. The first few bytes (for example bytes 0xC3 13 01 00 00 8C 14 8B 02 at offset 0) match the compiler's output pattern. They often contain embedded identifying plaintext such as "FROM HERE ON PROTECTED BY END USER LICENSE.", "BY TOPAZ PROGRAMMING.", "ALL RIGHTS RESERVED.", as well as copyright marks like "COPYRIGHT (C) 1979" and fragments like "%BAD CHANNEL NUMBE", "INPUT FILE REA", or "WARNING ONL".

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

EICAR Antivirus Test File

The EICAR Antivirus Test File is a harmless executable program designed by the European Institute for Computer Antivirus Research in cooperation with the Computer Antivirus Research Organization. It exists for the sole purpose of testing antivirus software: when antivirus defenses are working properly, they will flag this file as if it were a virus despite its absence of malicious code.

Created in DOS-executable format, this file is short, simple, and entirely composed of printable ASCII characters so it can be generated with any text editor. When run under a compatible DOS or Windows system, it prints the message EICAR-STANDARD-ANTIVIRUS-TEST-FILE! to the console and then terminates. Antivirus engines conforming to EICAR's specification will detect the file if it begins exactly with a 68-character test string and meets certain length constraints: the file must be exactly 68 bytes long or, if followed by only whitespace up to a total of 128 bytes, still valid.

Technical identifier details: the file begins at offset 0 with the bytes representing the ASCII characters "X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*". Its byte sequence is reproducible and distinctive, enabling antivirus tools to identify it unambiguously.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

MIDIPAK Audio Driver

MIDIPAK Audio Driver files are DOS sound driver modules written by John W. Ratcliff for the MIDPAK system, part of THE Audio Solution suite. They enable MIDI music or instrument patch playback by mapping MIDI instructions through various sound cards under DOS, translating those instructions into audible output during gameplay or in applications. These drivers serve as the low-level bridge between software or game engines and hardware or emulated MIDI/OPL-FM/General MIDI sound synthesis.

These drivers are created using the MIDPAK suite, which designers or developers use to build game audio engines around the XMI format (an internal format derived from MIDI) and to supply instrument patches and driver files for different sound cards. Once built, the MIDIPAK Audio Driver is loaded by applications or games using the MIDPAK system to handle hardware initialization, interrupt vector setup, music buffer configuration, and instrument bank loading. Usage includes error checks such as ensuring only valid music buffer sizes (between 1 K and 64 K), handling "driver already resident" conditions, or failing when hardware cannot be initialized.

Identification of these driver files comes from characteristic byte signatures: the file begins with opcode E9 at offset 0, followed at offset 3 by an ASCII header string including "MIDPAK…MIDI Sound Package…The Audio Solution … Written by John W. Ratcliff" among other phrases. Internal messages embedded in the binary include strings such as "MUSIC BUFFER VALID BETWEEN 1 AND 64K ONLY.", "THE SOUND DRIVER IS ALREADY RESIDENT.", and "DEFAULT TIMBRE FILE" which serve as unique markers.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

OPTIKS Quick View / Self Scrolling COM

We know that one COM format is OPTIKS Quick View / Self Scrolling COM. We have not yet analyzed in detail what these files contain and what they are used for. We're working on it.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

P-Screen COM Screen

We know that one COM format is P-Screen COM Screen. We have not yet analyzed in detail what these files contain and what they are used for. We're working on it.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

PMexe CP/M Compressed Executable

PMexe CP/M Compressed Executable is a variant of executable compressor for CP/M-80 (and MSX-DOS) systems, designed by Yoshihiko Mino in about 1990. It combines PMARC ("archive") utilities with a PMEXE module to produce a compressed version of a COM executable that still runs directly under CP/M without needing a separate unpacking step. It is used when disk space or memory is constrained, to shrink program size while preserving standard loading behavior.

The format is produced by first compressing a normal CP/M‐80 transient program into a PMARC archive, then using the PMEXE2 module to bind that archive into a self-contained executable COM file. When run, the PMEXE stub decompresses the archive in memory and transfers control to the original program code. The format requires enough transient program area (TPA) free to hold both compressed archive and the fully expanded executable. The resulting file is still a valid CP/M COM program and launches from the standard load address. PMARC archives (.PMA) are separate unless transformed via PMEXE into this compressed executable form.

Internally, the file includes ASCII markers and diagnostic strings identifying it as version 2.00 of PMexe for CP/M, crediting Yoshihiko Mino, plus error messages such as "CRC ERROR DETECTED.", "UNSUPPORTED METHOD." or "OUT OF MEMORY." It also carries the signature "-PMS-" or "-pms-" early in the file (bytes at offset 2-4), followed by version header text "PMexe Version 2.00 for CP/M" around offset 12, which allow tools to detect the format.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

PMsfx CP/M Self-extracting Archive

PMsfx CP/M Self-extracting Archive is a CP/M executable module that bundles compressed files into one runnable program which, when started under a CP/M system, extracts its own contents. Built by Yoshihiko Mino as part of the PMARC/PMEXT suite (1990), it turns archives in the PMA format into self-extracting archives for easier distribution and use.

The format is produced using the utility PMSFX2.COM in conjunction with PMARC.COM: PMARC plus PMsfx2 form a COM-file that embeds a PMA archive so that executing this COM-file extracts all archived files. PMsfx can list member files, test integrity, and extract with or without prompt using options similar to PMEXT. It differs from PMexe in that PMexe handles only one file per archive.

Internally the file begins with specific identifiers: starting at byte offset 2, the ASCII string "-pms-" appears; soon after (at offset 12) the header includes "PMsfxVersion 2.00forCP/M". It also embeds strings like "UNSUPPORTED METHOD", "CHECKING EXTRACTING OK", "CRC ERROR DETECTED.", "COPYRIGHT(C)", "BY YOSHIHIKO MINO.", and "OUT OF MEMORY." which help confirm format recognition.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

TheDraw COM Screen Save

TheDraw COM screen save files hold an entire text-mode "screen image" produced by the TheDraw editor for MS-DOS. They preserve both the characters and color/attribute data exactly as shown on a full screen in TheDraw's editing environment. These files serve as an executable snapshot of the screen: TheDraw writes them when saving a work as a binary screen image; TheDraw (or compatible tools) read them back to restore the visual layout.

Creation happens within TheDraw's Save command when the user selects the COM screen save ("type 0" variant). After doing so, TheDraw writes the internal screen buffer - including character codes and display attributes - into a file in COM executable form so that it can later reload or re-display the screen exactly. Common uses include saving finished ANSI or ASCII art scenes and switching between full screen snapshots without losing formatting.

Files begin with a distinctive byte sequence: at offset 0 is EB 3D 90, followed by 00 at offset 6, then the ASCII string "TheDraw COM file Screen Save" (including the 1A end-of-file marker) starting at offset 9. This signature distinguishes them from other file types using the same extension.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

Topologika Adventures 8086 Interpreter

Topologika Adventures 8086 Interpreter files contain a DOS‐based binary interpreter program that runs the adventure games published by Topologika Software Ltd in the mid-1980s. These files are the executable portion of Topologika's interactive fiction titles ported to IBM PC compatibles; they implement the game engine that reads game data (rooms, objects, text) from separate data files or a "disc" resource. Its purpose is to allow users to play those text adventures on 8086/IBM-PC hardware under DOS.

These interpreter files are produced by Topologika as part of the retail DOS versions of their adventure games such as Countdown to Doom, Philosopher's Quest, Spy Snatcher and others. The interpreter is distributed with the game, and the user runs it to load and run the specific adventure data. It is not a data file itself (such as a saved game or resource) but the actual engine that executes the game logic, displaying the text, processing commands, managing game state, error conditions like "STACK UNDERFLOW", and handling disc or file errors.

The format is a plain DOS executable program built for the Intel 8086 processor. It begins with characteristic machine‐code opcodes (for example byte 0xE8 at offset 0, sequences like 0x8926 at offset 3) and contains embedded ASCII strings that identify it as the Topologika 8086 Interpreter, with copyright (1986 Locomotive Software Ltd), contact information (PO BOX 39 Stilton Peterborough), instructions ("INSERT THE ADVENTURE GAME DISC", "PRESS ANY KEY TO CONTINUE"), error messages ("DISC READ ERROR", "STACK OVERFLOW", "BAD MESSAGE TEXT", etc.), and references to internal routines and state ("STATIC RANGE", "DYNAMIC RANGE", "MEMORY SIZE", "NO BUFFERS"). These signatures allow tools to recognize it as the engine, distinct from the adventure data files. (Byte signature and string constants as documented by TRiD.)

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

XEQ Executable Command Library

We know that one COM format is XEQ Executable Command Library. We have not yet analyzed in detail what these files contain and what they are used for. We're working on it.

We have not yet verified any programs for Windows that work with this specific file format. If you know one, please use the 'Suggest a program' link below. Thanks!

Help us help others

File.org helps thousands of users every day, and we would love to hear from you if you have additional information about COM file formats, example files, or compatible programs. Please use the links below or email us at submit@file.org to discuss further.