43 lines
		
	
	
		
			824 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			824 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
| Copyright (C) 2015-2019 The University of Notre Dame
 | |
| This software is distributed under the GNU General Public License.
 | |
| See the file LICENSE for details.
 | |
| */
 | |
| 
 | |
| #ifndef INTERRUPT_H
 | |
| #define INTERRUPT_H
 | |
| 
 | |
| typedef void (*interrupt_handler_t) (int intr, int code);
 | |
| 
 | |
| void interrupt_init();
 | |
| void interrupt_register(int i, interrupt_handler_t handler);
 | |
| void interrupt_enable(int i);
 | |
| void interrupt_disable(int i);
 | |
| void interrupt_block();
 | |
| void interrupt_unblock();
 | |
| void interrupt_wait();
 | |
| 
 | |
| /*
 | |
| PC Interrupts:
 | |
| IRQ	Interrupt
 | |
| 0	32	System Timer
 | |
| 1	33	Keyboard
 | |
| 2	34	Cascade
 | |
| 3	35	Serial Port 2
 | |
| 4	36	Serial Port 1
 | |
| 5	37	Parallel Port 2 or Sound Card
 | |
| 6	38	Floppy
 | |
| 7	39	Parallel Port 1
 | |
| 8	40	Real Time Clock
 | |
| 9	41	Network (or ATA 3)
 | |
| 10	42	Network/Sound/SCSI
 | |
| 11	43	SCSI Other (or ATA 2)
 | |
| 12	44	PS/2 Mouse
 | |
| 13	45	FPU
 | |
| 14	46	ATA 0
 | |
| 15	47	ATA 1
 | |
| */
 | |
| 
 | |
| 
 | |
| #endif
 |