File format
Contents
File formats
File formats describe the content of a file.
This page is not about:
- File systems which organize files on a partition
- Disk images which save a (disk) file system within one file
- Tape file formats, as they have a higher overhead usually
IBM PC
COM
System: MS-DOS
Header: 0 bytes see here
Native size unit: Bytes
Loads to: 0100h
Starts at:
File extension: .com
EXE
System: Windows
Header: 200+
Native size unit: Bytes
Loads to:
Starts at:
File extension: .exe
Linux
System: Linux
Header: ca. 100
Native size unit: Bytes
Loads to:
Starts at:
File extension: none
Atari ST
TOS
System: Atari ST
Header: 32 Bytes
Native size unit: ???
Loads to:
Starts at:
File extension:
Amiga
...
System: Amiga
Header:
Native size unit: ???
Loads to:
Starts at:
File extension:
Commodore 64
PRG
System: CBM-DOS (Commodore, e.g. C64)
Header: 2 bytes (= start address)
Native size unit: Blocks (256 bytes including 2 bytes linking to next block)
Loads to: given address in header
Starts at: given address in header
File extension: .prg
P00
System: CBM-DOS / PC64 Emulator
Header: extended 26 bytes; also includes the name; see here
Native size unit: Blocks
Loads to: given address in header
Starts at: given address in header
File extension: .p00
Atari 8bit
XEX, EXE, COM
System: Atari
Header: 6 bytes or more (FF FF <start address> <end address>); see also here
Native size unit: ???
Loads to: given start address in header
Starts at: given end address in header
File extension: .exe .com .xex (any ending possible)
Amstrad
BIN
System: AMSDOS (Amstrad CPC)
Header: 128 bytes (includes filename, start address, end address, etc.; 95 unused bytes; see also AMSDOS-Header
Native size unit: kb
Loads to: given start address in header
Starts at: given end address in header
File extension: .bin (on PC)
Spectrum
Binary
System: ZX Spectrum
Header: none
Native size unit: ???
Loads to: special loader required; usually a BASIC program
Starts at: see above
File extension: ??? usually delivered within a disk image (.trd)