diff options
author | Liming Gao <liming.gao@intel.com> | 2016-06-14 16:39:51 +0800 |
---|---|---|
committer | Liming Gao <liming.gao@intel.com> | 2016-06-28 09:52:20 +0800 |
commit | e4404f8be140f411847c4c62089afc83c8385e3e (patch) | |
tree | cf41833960c8a13b50fb07eacfc4a102523614f8 /IntelFrameworkModulePkg/Csm | |
parent | 0199f24fd151ddaf449fab7b696da8b1e329ac04 (diff) | |
download | edk2-e4404f8be140f411847c4c62089afc83c8385e3e.tar.gz edk2-e4404f8be140f411847c4c62089afc83c8385e3e.tar.bz2 edk2-e4404f8be140f411847c4c62089afc83c8385e3e.zip |
IntelFrameworkModulePkg LegacyBiosDxe: Convert X64/InterruptTable.asm to NASM
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
X64/InterruptTable.asm to X64/InterruptTable.nasm.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'IntelFrameworkModulePkg/Csm')
-rw-r--r-- | IntelFrameworkModulePkg/Csm/LegacyBiosDxe/X64/InterruptTable.nasm | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/X64/InterruptTable.nasm b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/X64/InterruptTable.nasm new file mode 100644 index 0000000000..38d18608e8 --- /dev/null +++ b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/X64/InterruptTable.nasm @@ -0,0 +1,71 @@ +;; @file
+; Interrupt Redirection Template
+;
+; Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
+;
+; This program and the accompanying materials
+; are licensed and made available under the terms and conditions
+; of the BSD License which accompanies this distribution. The
+; full text of the license may be found at
+; http://opensource.org/licenses/bsd-license.php
+;
+; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+;
+;;
+
+ DEFAULT REL
+ SECTION .text
+
+;----------------------------------------------------------------------------
+; Procedure: InterruptRedirectionTemplate: Redirects interrupts 0x68-0x6F
+;
+; Input: None
+;
+; Output: None
+;
+; Prototype: VOID
+; InterruptRedirectionTemplate (
+; VOID
+; );
+;
+; Saves: None
+;
+; Modified: None
+;
+; Description: Contains the code that is copied into low memory (below 640K).
+; This code reflects interrupts 0x68-0x6f to interrupts 0x08-0x0f.
+; This template must be copied into low memory, and the IDT entries
+; 0x68-0x6F must be point to the low memory copy of this code. Each
+; entry is 4 bytes long, so IDT entries 0x68-0x6F can be easily
+; computed.
+;
+;----------------------------------------------------------------------------
+
+global ASM_PFX(InterruptRedirectionTemplate)
+ASM_PFX(InterruptRedirectionTemplate):
+ int 0x8
+ DB 0xcf ; IRET
+ nop
+ int 0x9
+ DB 0xcf ; IRET
+ nop
+ int 0xa
+ DB 0xcf ; IRET
+ nop
+ int 0xb
+ DB 0xcf ; IRET
+ nop
+ int 0xc
+ DB 0xcf ; IRET
+ nop
+ int 0xd
+ DB 0xcf ; IRET
+ nop
+ int 0xe
+ DB 0xcf ; IRET
+ nop
+ int 0xf
+ DB 0xcf ; IRET
+ nop
+
|