2 * (c) 2009 Torsten Frenzel <frenzel@os.inf.tu-dresden.de>
3 * economic rights: Technische Universität Dresden (Germany)
5 * This file is part of TUD:OS and distributed under the terms of the
6 * GNU General Public License 2.
7 * Please see the COPYING-GPL-2 file for details.
10 #define GATE_INITTAB_BEGIN(name) \
16 #define GATE_ENTRY(n,entry,type) \
23 #define GATE_INITTAB_END \
28 #define EXCEPTION(n,name) \
29 GATE_ENTRY(n,name,0x0e) ;\
35 #define EXCEP_USR(n,name) \
36 GATE_ENTRY(n,name,0x6e) ;\
42 #define EXCEP_ERR(n,name) \
43 GATE_ENTRY(n,name,0x0e) ;\
49 GATE_INITTAB_BEGIN(boot_idt_inittab)
51 EXCEPTION(0x00,t_zero_div)
52 EXCEPTION(0x01,t_debug)
54 EXCEP_USR(0x03,t_int3)
55 EXCEP_USR(0x04,t_into)
56 EXCEP_USR(0x05,t_bounds)
57 EXCEPTION(0x06,t_invop)
58 EXCEPTION(0x07,t_nofpu)
59 GATE_ENTRY(0x08,0x20,0x05)
60 EXCEPTION(0x09,a_fpu_over)
61 EXCEP_ERR(0x0a,a_inv_tss)
62 EXCEP_ERR(0x0b,t_segnp)
63 EXCEP_ERR(0x0c,t_stack_fault)
64 EXCEP_ERR(0x0d,t_gen_prot)
65 EXCEP_ERR(0x0e,t_page_fault)
66 EXCEPTION(0x0f,t_trap_0f)
67 EXCEPTION(0x10,t_fpu_err)
68 EXCEPTION(0x11,t_trap_11)
69 EXCEPTION(0x12,t_trap_12)
70 EXCEPTION(0x13,t_trap_13)
71 EXCEPTION(0x14,t_trap_14)
72 EXCEPTION(0x15,t_trap_15)
73 EXCEPTION(0x16,t_trap_16)
74 EXCEPTION(0x17,t_trap_17)
75 EXCEPTION(0x18,t_trap_18)
76 EXCEPTION(0x19,t_trap_19)
77 EXCEPTION(0x1a,t_trap_1a)
78 EXCEPTION(0x1b,t_trap_1b)
79 EXCEPTION(0x1c,t_trap_1c)
80 EXCEPTION(0x1d,t_trap_1d)
81 EXCEPTION(0x1e,t_trap_1e)
82 EXCEPTION(0x1f,t_trap_1f)