59 lines
2.5 KiB
Plaintext
59 lines
2.5 KiB
Plaintext
COM Format
|
|
Intel byte order
|
|
|
|
Information from File Format List 2.0 by Max Maischein.
|
|
|
|
--------!-CONTACT_INFO----------------------
|
|
If you notice any mistakes or omissions, please let me know! It is only
|
|
with YOUR help that the list can continue to grow. Please send
|
|
all changes to me rather than distributing a modified version of the list.
|
|
|
|
This file has been authored in the style of the INTERxxy.* file list
|
|
by Ralf Brown, and uses almost the same format.
|
|
|
|
Please read the file FILEFMTS.1ST before asking me any questions. You may find
|
|
that they have already been addressed.
|
|
|
|
Max Maischein
|
|
|
|
Max Maischein, 2:244/1106.17
|
|
Max_Maischein@spam.fido.de
|
|
corion@informatik.uni-frankfurt.de
|
|
Corion on #coders@IRC
|
|
--------!-DISCLAIMER------------------------
|
|
DISCLAIMER: THIS MATERIAL IS PROVIDED "AS IS". I verify the information
|
|
contained in this list to the best of my ability, but I cannot be held
|
|
responsible for any problems caused by use or misuse of the information,
|
|
especially for those file formats foreign to the PC, like AMIGA or SUN file
|
|
formats. If an information it is marked "guesswork" or undocumented, you
|
|
should check it carefully to make sure your program will not break with
|
|
an unexpected value (and please let me know whether or not it works
|
|
the same way).
|
|
|
|
Information marked with "???" is known to be incomplete or guesswork.
|
|
|
|
Some file formats were not released by their creators, others are regarded
|
|
as proprietary, which means that if your programs deal with them, you might
|
|
be looking for trouble. I don't care about this.
|
|
--------------------------------------------
|
|
|
|
The COM files are raw binary executables and are a leftover from the old CP/M
|
|
machines with 64K RAM. A COM program can only have a size of less than one
|
|
segment (64K), including code and static data since no fixups for segment
|
|
relocation or anything else is included. One method to check for a COM file is
|
|
to check if the first byte in the file could be a valid jump or call opcode, but
|
|
this is a very weak test since a COM file is not required to start with a jump
|
|
or a call. In principle, a COM file is just loaded at offset 100h in the segment
|
|
and then executed.
|
|
|
|
OFFSET Count TYPE Description
|
|
0000h 1 byte ID=0E9h
|
|
ID=0EBh
|
|
Those are not safe ways to determine wether a
|
|
file is a COM file or not, but most COM files
|
|
start with a jump.
|
|
Further information not available.
|
|
EXTENSION:COM
|
|
OCCURENCES:PC
|
|
SEE ALSO:EXE,MZ EXE,NE EXE
|