38 lines
		
	
	
		
			921 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			921 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| #include "../types.h"
 | |
| 
 | |
| #define DEFINE_GDB_PY_SCRIPT(name) \
 | |
| 	asm("\
 | |
| 		.pushsection \".debug_gdb_scripts\", \"MS\", @progbits, 1\n\
 | |
| 			.byte 1\n\
 | |
| 			.asciz \""name"\"\n\
 | |
| 		.popsection \n\
 | |
| 	");
 | |
| 
 | |
| /// Fixed data block placed at the address 0x100000
 | |
| /// Please update the initialization code in /lcrash/setup/compressed/main.c when this is changed
 | |
| struct GdbDataBlock {
 | |
| 	/// Update tick thing stored at the beginning of the fixed data block for debuggers
 | |
| 	/// TODO: Optimization may break this, should this be volatile?
 | |
| 	u64 Update;
 | |
| 	
 | |
| 	/// Base of the cmake build directory. This is needed for lwdbg to configure itself
 | |
| 	c8* BuildDirectory;
 | |
| 
 | |
| 	/// cckernel is present
 | |
| 	bool CCKernelLoaded;
 | |
| 
 | |
| 	/// Base address of the cckernel
 | |
| 	void* CCKernelBase;
 | |
| 
 | |
| 	/// Full kernel is present
 | |
| 	bool KernelLoaded;
 | |
| 
 | |
| 	/// Base address of the kernel
 | |
| 	void* KernelBase;
 | |
| 
 | |
| 	/// Pointer to Extended Debug Information Block
 | |
| 	void* EDIB;
 | |
| };
 |