Last change
on this file since 48674 was 48674, checked in by vboxsync, 11 years ago |
EFI: Export newly imported tinaocore UEFI sources to OSE.
|
-
Property svn:eol-style
set to
native
|
File size:
1.5 KB
|
Line | |
---|
1 | TITLE IvtAsm.asm:
|
---|
2 | ;------------------------------------------------------------------------------
|
---|
3 | ;*
|
---|
4 | ;* Copyright (c) 2008 - 2009, Intel Corporation. All rights reserved.<BR>
|
---|
5 | ;* This program and the accompanying materials
|
---|
6 | ;* are licensed and made available under the terms and conditions of the BSD License
|
---|
7 | ;* which accompanies this distribution. The full text of the license may be found at
|
---|
8 | ;* http://opensource.org/licenses/bsd-license.php
|
---|
9 | ;*
|
---|
10 | ;* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
---|
11 | ;* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
---|
12 | ;*
|
---|
13 | ;* IvtAsm.asm
|
---|
14 | ;*
|
---|
15 | ;* Abstract:
|
---|
16 | ;*
|
---|
17 | ;------------------------------------------------------------------------------
|
---|
18 |
|
---|
19 | #include <Base.h>
|
---|
20 |
|
---|
21 | #ifdef MDE_CPU_IA32
|
---|
22 | .686
|
---|
23 | .model flat,C
|
---|
24 | #endif
|
---|
25 | .code
|
---|
26 |
|
---|
27 | ;------------------------------------------------------------------------------
|
---|
28 | ; Generic IDT Vector Handlers for the Host. They are all the same so they
|
---|
29 | ; will compress really well.
|
---|
30 | ;
|
---|
31 | ; By knowing the return address for Vector 00 you can can calculate the
|
---|
32 | ; vector number by looking at the call CommonInterruptEntry return address.
|
---|
33 | ; (return address - (AsmIdtVector00 + 5))/8 == IDT index
|
---|
34 | ;
|
---|
35 | ;------------------------------------------------------------------------------
|
---|
36 |
|
---|
37 | EXTRN CommonInterruptEntry:PROC
|
---|
38 |
|
---|
39 | ALIGN 8
|
---|
40 |
|
---|
41 | PUBLIC AsmIdtVector00
|
---|
42 |
|
---|
43 | AsmIdtVector00 LABEL BYTE
|
---|
44 | REPEAT 256
|
---|
45 | call CommonInterruptEntry
|
---|
46 | dw ($ - AsmIdtVector00 - 5) / 8 ; vector number
|
---|
47 | nop
|
---|
48 | ENDM
|
---|
49 |
|
---|
50 | END
|
---|
51 |
|
---|
Note:
See
TracBrowser
for help on using the repository browser.