Created
May 11, 2012 12:08
-
-
Save jdiez17/2659247 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DCPU Debugging Symbols Standard | |
=============================== | |
Version 1.0, by the DCPU Toolchain team. | |
Definitions | |
----------- | |
[uint8_t] -> An unsigned 8-bit word | |
[uint16_t] -> " " 16-bit word. | |
[uint32_t] -> " " 32-bit word. | |
[char] -> A signed 8-bit word. | |
[T*] -> An array of type T elements. T can be any type. | |
[string] -> char*, terminated by a NULL char. | |
File format | |
----------- | |
Byte ordering is LITTLE ENDIAN. | |
Header: | |
struct dbg_sym_file_header { | |
uint32_t magic; | |
uint32_t num_symbols; | |
}; | |
The selected magic number for the debugging symbol format is ```0xc0debeaf```. | |
Debugging symbol: | |
struct dbg_sym { | |
uint16_t length; | |
uint8_t type; | |
uint8_t* payload | |
}; | |
The length field represents the number of bytes in ```payload```. | |
Symbol types: | |
[0x0] -> Basic symbol. | |
[0x1-0xff] -> Reserved for future expansion. | |
Payload per type: | |
[0x0] | |
struct dbg_sym_basic_payload { | |
string path; | |
uint16_t lineno: | |
uint16_t address; | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment