A while back (as in, a couple of years) I started trying to reverse engineer Konami's Dance Dance Revolution titles for the Playstation2 (MAX, MAX2, EXTREME, Party Collection, etc), with the intent of figuring out how the game works. I've learned, from the help of others of course, about the DWARF format for debugging information, on top of the fact that the data remains tacked onto the end of the game's executable. I wonder, however, if I can actually make use of this information in identifying functions, variables, etc - and if so, how can I best go about it? (It'd be a shame if I couldn't, as it would accelerate my understanding of the game engine manyfold).
Announcement
Collapse
No announcement yet.
Playstation2 ELF DWARF debugging data... what can I actually do with it?
Collapse
X
-
Originally posted by gamemasterplc View Posthow do you know its DWARF data
Here is a direct link to a dump of the data I am looking at, from the end of the ELF executable
Here is a piece of our back and forth messages (don't kill me, root!)
Well upon investigating the symbol table, it looks like a weird variant of DWARF debugging info. It seems to combine characteristics of the 1.1 and 2.0 DWARF standards, which you should read up on here: http://dwarfstd.org/Download.php. Here's what I could figure out from the beginning of the debug table for MAX2:
Code:
Code:[length]DW_TAG_compile_unit] [DW_AT_high_pc]0xEA [DW_AT_calling_convention](DW_FORM_addr) -> [DW_CC_program] [DW_AT_producer] -> MW MIPS C Compiler [DW_AT_name] -> C:\work\ddr7\src\sys\sys_scf.c
Code:[length][DW_TAG_member] [DW_AT_high_pc]0xBD [AT_fund_type] [FT_signed_integer] [AT_location]0x06 (length of block) [OP_CONST] -> 0x00000000 (address) [OP_ADD][DW_AT_NAME] -> date_notation
Last edited by travelsonic; 08-27-2017, 07:07:45 PM.
Comment
Comment