I don't know where the info on dols comes from but this seems like a good place to verify it (that and the dolphin forums seem to be more geared to dolphin-emu, and not general hacking).
Wiibrew has a page on the file format http://wiibrew.org/wiki/DOL there. It hasn't been updated in a while, and I have a couple questions.
EDIT: finished! Here's the source for my own dol2elf converter: https://github.com/shua/dol2elf
Wiibrew has a page on the file format http://wiibrew.org/wiki/DOL there. It hasn't been updated in a while, and I have a couple questions.
EDIT: finished! Here's the source for my own dol2elf converter: https://github.com/shua/dol2elf
- Are there any official dols that use more than 2 text segments or more than 8 data segments, because all the ones I have seem to follow a trend.
- I'm interested as to the boot process. Is it apploader.img which loads boot.bin which loads main.dol, or boot.bin -> apploader -> main.dol?
- The general format seems to be
Code:text 0 : .init text 1 : .text data 0 : extab data 1 : extabindex data 2 : .ctors data 3 : .dtors data 4 : .rodata data 5 : .data data 6 : .sdata data 7 : .sdata2
I don't know how this corresponds to elfs, but the current elf2dol provided with devkitppc outputs only 1 text and 1 data, because it converts based on program headers (segments), which I think is incorrect; the official dols seem to be separated more into sections. - Does anyone have this mysterious doltool from TenofTen? All the links I found point to devkitpro's sourceforge which doesn't have it anymore.
Lastly, are the text sections encrypted? because I haven't managed to disassemble the blocks as binaries. Maybe it's my objdump settings, but I should have something more intelligible, even with ppc: common.
edit: it was the objdump settings (needed --endian=big), the command I used:
Code:powerpc-eabi-objdump -D -b binary -mpowerpc:750 --endian=big binaryfile