DOL (File Format)

From Wexos's Wiki
Revision as of 15:23, 14 July 2025 by Wexos (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

DOL (DOLphin) is the file format containing the executable game code used on GameCube and Wii. The format contains statically linked code and thus does not support relocation or symbol information, which is instead supported by REL and RSO.

File Format

The DOL file format is very simple and only consists of a header followed by section data.

Header

The file starts with the following header:

Offset Type Description
0x00 UInt32[18] Section offsets. Offset to each section data, relative the start of the file. Set to 0 for unused sections.
0x48 UInt32[18] Section addresses. Virtual memory address of each section, where the section data should be copied to. Set oto 0 for unused sections.
0x90 UInt32[18] Section sizes. Size of each section data in bytes.
0xD8 UInt32 BSS address. Virtual memory address of the BSS section.
0xDC UInt32 BSS size. Size of the BSS section in bytes.
0xE0 UInt32 Entry point. Virtual memory address of the program entry point.

The 18 different sections allow for up to 7 text segments (executable code) and 11 data segments (generic data).

Section

Following the header the section data is stored, indicated by each section offset.

Tools

The following tools can handle DOL files:

  • (none)