The 3DSX format is an executable file-format designed for homebrew applications on the 3DS.
The file is structured like this:
- Header
- Code segment
- Rodata segment
- Data segment
- Relocation Header for code
- Relocation Header for rodata
- Relocation Header for data
Offset
|
Size
|
Description
|
0x0
|
4
|
Magic (3DSX)
|
0x4
|
2
|
Header size
|
0x6
|
2
|
Relocation Header size
|
0x8
|
4
|
Format version
|
0xC
|
4
|
Flags
|
0x10
|
4
|
Code segment size
|
0x14
|
4
|
Rodata segment size
|
0x18
|
4
|
Data segment size (including bss)
|
0x1C
|
4
|
Bss segment size
|
Offset
|
Size
|
Description
|
0x0
|
4
|
Number of absolute relocations
|
0x4
|
4
|
Number of relative relocations
|
Relocation
Offset
|
Size
|
Description
|
0x0
|
2
|
Number of words to skip
|
0x2
|
2
|
Number of words to patch
|