]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkModulePkg/Csm/LegacyBiosDxe/IA32/InterruptTable.nasm
IntelFrameworkModulePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / IntelFrameworkModulePkg / Csm / LegacyBiosDxe / IA32 / InterruptTable.nasm
CommitLineData
0199f24f
LG
1;; @file\r
2; Interrupt Redirection Template\r
3;\r
4; Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
5;\r
c0a00b14 6; SPDX-License-Identifier: BSD-2-Clause-Patent\r
0199f24f
LG
7;\r
8;;\r
9\r
10SECTION .text\r
11\r
12;----------------------------------------------------------------------------\r
13; Procedure: InterruptRedirectionTemplate: Redirects interrupts 0x68-0x6F\r
14;\r
15; Input: None\r
16;\r
17; Output: None\r
18;\r
19; Prototype: VOID\r
20; InterruptRedirectionTemplate (\r
21; VOID\r
22; );\r
23;\r
24; Saves: None\r
25;\r
26; Modified: None\r
27;\r
28; Description: Contains the code that is copied into low memory (below 640K).\r
29; This code reflects interrupts 0x68-0x6f to interrupts 0x08-0x0f.\r
30; This template must be copied into low memory, and the IDT entries\r
31; 0x68-0x6F must be point to the low memory copy of this code. Each\r
32; entry is 4 bytes long, so IDT entries 0x68-0x6F can be easily\r
33; computed.\r
34;\r
35;----------------------------------------------------------------------------\r
36\r
37global ASM_PFX(InterruptRedirectionTemplate)\r
38ASM_PFX(InterruptRedirectionTemplate):\r
39 int 0x8\r
40 DB 0xcf ; IRET\r
41 nop\r
42 int 0x9\r
43 DB 0xcf ; IRET\r
44 nop\r
45 int 0xa\r
46 DB 0xcf ; IRET\r
47 nop\r
48 int 0xb\r
49 DB 0xcf ; IRET\r
50 nop\r
51 int 0xc\r
52 DB 0xcf ; IRET\r
53 nop\r
54 int 0xd\r
55 DB 0xcf ; IRET\r
56 nop\r
57 int 0xe\r
58 DB 0xcf ; IRET\r
59 nop\r
60 int 0xf\r
61 DB 0xcf ; IRET\r
62 nop\r
63\r