| 
				
			 | 
			
			
				
				@@ -0,0 +1,23 @@ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				1
			 | 
			
			
				
				+#include <stdio.h> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				2
			 | 
			
			
				
				+#include <realmode.h> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				3
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				4
			 | 
			
			
				
				+void __cdecl _dump_regs ( struct i386_all_regs *ix86 ) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				5
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				6
			 | 
			
			
				
				+	__asm__ __volatile__ ( 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				7
			 | 
			
			
				
				+		TEXT16_CODE ( ".globl dump_regs\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				8
			 | 
			
			
				
				+			      "\ndump_regs:\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				9
			 | 
			
			
				
				+			      "pushl $_dump_regs\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				10
			 | 
			
			
				
				+			      "pushw %%cs\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				11
			 | 
			
			
				
				+			      "call prot_call\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				12
			 | 
			
			
				
				+			      "addr32 leal 4(%%esp), %%esp\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				13
			 | 
			
			
				
				+			      "ret\n\t" ) : : ); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				14
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				15
			 | 
			
			
				
				+	printf ( "EAX=%08lx EBX=%08lx ECX=%08lx EDX=%08lx\n" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				16
			 | 
			
			
				
				+		 "ESI=%08lx EDI=%08lx EBP=%08lx ESP=%08lx\n" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				17
			 | 
			
			
				
				+		 "CS=%04x SS=%04x DS=%04x ES=%04x FS=%04x GS=%04x\n", 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				18
			 | 
			
			
				
				+		 ix86->regs.eax, ix86->regs.ebx, ix86->regs.ecx, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				19
			 | 
			
			
				
				+		 ix86->regs.edx, ix86->regs.esi, ix86->regs.edi, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				20
			 | 
			
			
				
				+		 ix86->regs.ebp, ix86->regs.esp, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				21
			 | 
			
			
				
				+		 ix86->segs.cs, ix86->segs.ss, ix86->segs.ds, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				22
			 | 
			
			
				
				+		 ix86->segs.es, ix86->segs.fs, ix86->segs.gs ); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				23
			 | 
			
			
				
				+} 
			 |