c108d4a822
Fixed opcode/address retrievial addr= (val0 & 0x01FFFFFF) | 0x80000000 ... |
||
---|---|---|
.. | ||
doltest.py | ||
doltool.py | ||
README.md |
doltool.py
Tests for --patch-action-replay command has to be done so this command is experimental for now.
Python3 script for manipuling dol file format. This tool can stats with all informations from dol header and patch dol .text and .data using a list of write Action Replay code in an formated .ini file. MIT License.
User manual
Translate a virtual address into a dol offset if this was originaly mapped from data or text. virtual_address has to be in hexadecimal: 80003100
doltool.py --virtual2image virtual_address
Translate a dol offset to a virtual address mapped from data or text. dol_offset has to be in hexadecimal: 2000
doltool.py --image2virtual dol_offset
Extract a section_index between 0 to 17 from the dol file source.dol with the name source.dol_sectiontypeN. sectiontype = data or text and N is the index from 0 to 17.
doltool.py --extract source.dol section_index
Print stats about the dol file. This stats contains informations about full header information formated (with sections used or not), empty spaces informations splited .bss and entry point.
doltool.py --stats source.dol
experimental Patch the dol data and text section using an action_replay.ini file containing write instructions (02/04 implemented yet). If the virtual address of the ARCode doesn't match existing mapped data or text sections it raise an Exception.
doltool.py --patch-action-replay source.dol action_replay_list.ini
Action Replay ini file format
All ARCodes present in the ini will be enabled without taking care of [ActionReplay_Enabled] section Raise an Exception if lines are in invalid format:
- empty lines are removed
- lines beginning with $ are considered as comments and are removed
- lines beginning with [ are considered as comments and are removed
- others lines have to be in format: "0AXXXXXX XXXXXXXX" with (A=2 or A=4) and X in [0-9a-fA-F]