36 lines
		
	
	
		
			819 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			819 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "pde.h"
 | |
| 
 | |
| void pd_entry_add_attrib (pd_entry* entry, unsigned mask) {
 | |
|       *entry |= mask;
 | |
| }
 | |
| 
 | |
| void pd_entry_del_attrib (pd_entry* entry, unsigned mask) {
 | |
|       *entry &= ~mask;
 | |
| }
 | |
| 
 | |
| void pd_entry_set_frame (pd_entry* entry, unsigned address) {
 | |
|       *entry = (*entry & ~_I86_PDE_FRAME) | address;
 | |
| }
 | |
|  
 | |
| unsigned pd_entry_get_frame (pd_entry entry) {
 | |
|       return entry&_I86_PDE_FRAME;
 | |
| }
 | |
| 
 | |
| unsigned char pd_entry_is_present (pd_entry entry) {
 | |
|       return (entry & _I86_PDE_PRESENT);
 | |
| }
 | |
| 
 | |
| unsigned char pd_entry_is_user (pd_entry entry) {
 | |
|       return (entry & _I86_PDE_USER);
 | |
| }
 | |
|  
 | |
| unsigned char pd_entry_is_4mb (pd_entry entry) {
 | |
|       return (entry & _I86_PDE_4MB);
 | |
| }
 | |
|  
 | |
| unsigned char pd_entry_is_writable (pd_entry entry) {
 | |
|       return (entry & _I86_PDE_WRITABLE);
 | |
| }
 | |
| 
 | |
| void pd_entry_enable_global (pd_entry entry) {
 | |
| } |