KDebug: Difference between revisions

No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 37: Line 37:
| 0x1C
| 0x1C
| u8
| u8
| Indicates a PROCESS event has been signaled to this object
| Indicates an ATTACH PROCESS event has been signaled to this object
|-
|-
| 0x1D
| 0x1D
| u8
| u8
| Debug string length >> 31
| Debug string length >> 31, always 0
|-
|-
| 0x1E
| 0x1E
Line 76: Line 76:
| 0x34
| 0x34
| u32
| u32
| Count of KEventInfo object nodes associated with this KDebug object
| Count of KEventInfo object nodes to be fetched with svcGetProcessDebugEvent (associated with this KDebug object)
|-
|-
| 0x38
| 0x38
| [[KLinkedListNode]]*
| [[KLinkedListNode]]*
| Pointer to first KLinkedListNode in linked list of KEventInfo objects
| Pointer to first KLinkedListNode in linked list of KEventInfo objects to be fetched with svcGetProcessDebugEvent
|-
|-
| 0x3C
| 0x3C
| [[KLinkedListNode]]*
| [[KLinkedListNode]]*
| Pointer to last KLinkedListNode in linked list of KEventInfo objects
| Pointer to last KLinkedListNode in linked list of KEventInfo objects to be fetched with svcGetProcessDebugEvent
|-
|-
| 0x40
| 0x40
Line 116: Line 116:
| 0x5C
| 0x5C
| u32
| u32
| Count of KThread object nodes associated with this KDebug object (threads linked to [[KDebugThread]]* instances)
| Count of KDebugThread object nodes associated with this KDebug object
|-
|-
| 0x60
| 0x60
| KLinkedListNode*
| KLinkedListNode*
| Pointer to first KLinkedListNode in linked list of KThread objects
| Pointer to first KLinkedListNode in linked list of KDebugThread objects
|-
|-
| 0x64
| 0x64
| KLinkedListNode*
| KLinkedListNode*
| Pointer to last KLinkedListNode in linked list of KThread objects
| Pointer to last KLinkedListNode in linked list of KDebugThread objects
|-
|-
| 0x68
| 0x68
Line 157: Line 157:
| 0x82
| 0x82
| u8
| u8
| Indicates that all threads should be unlocked from debug features
| Indicates that all threads should be unlocked
|-
|-
| 0x83
| 0x83
Line 177: Line 177:
| 0x87
| 0x87
| u8
| u8
| Indicates that svcBreak was used and not yet handled by svcContinueDebugEvent
| Indicates that svcBreak was used and not yet handled by svcContinueDebugEvent, with type != (UN)LOAD_RO
|-
|-
| 0x88
| 0x88
Line 211: Line 211:
| Debug string length
| Debug string length
|}
|}
"Locked from debug features": this is done by setting bit7 of the thread's scheduling mask, which is checked by debug SVCs afterwards