| 
				
			 | 
			
			
				
				@@ -391,24 +391,20 @@ static void hook_int13 ( void ) { 
			 | 
		
		
	
		
			
			| 
				391
			 | 
			
				391
			 | 
			
			
				
				 	 * should not chain to the previous handler.  (The wrapper 
			 | 
		
		
	
		
			
			| 
				392
			 | 
			
				392
			 | 
			
			
				
				 	 * clears CF and OF before calling int13()). 
			 | 
		
		
	
		
			
			| 
				393
			 | 
			
				393
			 | 
			
			
				
				 	 */ 
			 | 
		
		
	
		
			
			| 
				394
			 | 
			
				
			 | 
			
			
				
				-	__asm__  __volatile__ ( ".section \".text16\", \"ax\", @progbits\n\t" 
			 | 
		
		
	
		
			
			| 
				395
			 | 
			
				
			 | 
			
			
				
				-				".code16\n\t" 
			 | 
		
		
	
		
			
			| 
				396
			 | 
			
				
			 | 
			
			
				
				-				"\nint13_wrapper:\n\t" 
			 | 
		
		
	
		
			
			| 
				397
			 | 
			
				
			 | 
			
			
				
				-				"orb $0, %%al\n\t" /* clear CF and OF */ 
			 | 
		
		
	
		
			
			| 
				398
			 | 
			
				
			 | 
			
			
				
				-				"pushl %0\n\t" /* call int13() */ 
			 | 
		
		
	
		
			
			| 
				399
			 | 
			
				
			 | 
			
			
				
				-				"pushw %%cs\n\t" 
			 | 
		
		
	
		
			
			| 
				400
			 | 
			
				
			 | 
			
			
				
				-				"call prot_call\n\t" 
			 | 
		
		
	
		
			
			| 
				401
			 | 
			
				
			 | 
			
			
				
				-				"jo 1f\n\t" /* chain if OF not set */ 
			 | 
		
		
	
		
			
			| 
				402
			 | 
			
				
			 | 
			
			
				
				-				"pushfw\n\t" 
			 | 
		
		
	
		
			
			| 
				403
			 | 
			
				
			 | 
			
			
				
				-				"lcall *%%cs:int13_vector\n\t" 
			 | 
		
		
	
		
			
			| 
				404
			 | 
			
				
			 | 
			
			
				
				-				"\n1:\n\t" 
			 | 
		
		
	
		
			
			| 
				405
			 | 
			
				
			 | 
			
			
				
				-				"call 2f\n\t" /* return with flags intact */ 
			 | 
		
		
	
		
			
			| 
				406
			 | 
			
				
			 | 
			
			
				
				-				"lret $2\n\t" 
			 | 
		
		
	
		
			
			| 
				407
			 | 
			
				
			 | 
			
			
				
				-				"\n2:\n\t" 
			 | 
		
		
	
		
			
			| 
				408
			 | 
			
				
			 | 
			
			
				
				-				"ret $4\n\t" 
			 | 
		
		
	
		
			
			| 
				409
			 | 
			
				
			 | 
			
			
				
				-				".previous\n\t" 
			 | 
		
		
	
		
			
			| 
				410
			 | 
			
				
			 | 
			
			
				
				-				".code32\n\t" : : 
			 | 
		
		
	
		
			
			| 
				411
			 | 
			
				
			 | 
			
			
				
				-				"i" ( int13 ) ); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				394
			 | 
			
			
				
				+	__asm__  __volatile__ ( 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				395
			 | 
			
			
				
				+	       TEXT16_CODE ( "\nint13_wrapper:\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				396
			 | 
			
			
				
				+			     "orb $0, %%al\n\t" /* clear CF and OF */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				397
			 | 
			
			
				
				+			     "pushl %0\n\t" /* call int13() */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				398
			 | 
			
			
				
				+			     "pushw %%cs\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				399
			 | 
			
			
				
				+			     "call prot_call\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				400
			 | 
			
			
				
				+			     "jo 1f\n\t" /* chain if OF not set */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				401
			 | 
			
			
				
				+			     "pushfw\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				402
			 | 
			
			
				
				+			     "lcall *%%cs:int13_vector\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				403
			 | 
			
			
				
				+			     "\n1:\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				404
			 | 
			
			
				
				+			     "call 2f\n\t" /* return with flags intact */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				405
			 | 
			
			
				
				+			     "lret $2\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				406
			 | 
			
			
				
				+			     "\n2:\n\t" 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				407
			 | 
			
			
				
				+			     "ret $4\n\t" ) : : "i" ( int13 ) ); 
			 | 
		
		
	
		
			
			| 
				412
			 | 
			
				408
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				413
			 | 
			
				409
			 | 
			
			
				
				 	hook_bios_interrupt ( 0x13, ( unsigned int ) int13_wrapper, 
			 | 
		
		
	
		
			
			| 
				414
			 | 
			
				410
			 | 
			
			
				
				 			      &int13_vector ); 
			 |