TRPMInternal.mac revision 6be978fd2ce54197788519ff908427be1c13fc00
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; $Id$
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;; @file
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; TRPM - Internal header file.
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; Copyright (C) 2006 InnoTek Systemberatung GmbH
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; This file is part of VirtualBox Open Source Edition (OSE), as
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; available from http://www.virtualbox.org. This file is free software;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; you can redistribute it and/or modify it under the terms of the GNU
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; General Public License as published by the Free Software Foundation,
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; distribution. VirtualBox OSE is distributed in the hope that it will
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; be useful, but WITHOUT ANY WARRANTY of any kind.
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; If you received this file as part of a commercial VirtualBox
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; distribution, then only the terms of your commercial VirtualBox
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync; license agreement apply instead of the previous paragraph.
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync;
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%include "VBox/stam.mac"
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_OP_MASK 0xffff
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_MOV_GS 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_MOV_FS 2
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_MOV_ES 3
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_MOV_DS 4
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_IRET 5
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_V86 BIT(30)
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync%define TRPM_TRAP_IN_HYPER BIT(31)
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsyncstruc TRPM
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .offVM resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uActiveVector resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .fActiveSoftwareInterrupt resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uActiveErrorCode resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uActiveCR2 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uSavedVector resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .fSavedSoftwareInterrupt resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uSavedErrorCode resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uSavedCR2 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .uPrevVector resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .fDisableMonitoring resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .achPadding1 resb 4
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .aIdt resd 512
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .au32IdtPatched resd 8
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .aTmpTrapHandlers resd 256
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .GCPtrIdt resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .GuestIdtr resb 6
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .au8Padding resb 2
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .aGuestTrapHandler resd 256
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatGCWriteGuestIDT resb STAMCOUNTER_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatSyncIDT resb STAMPROFILE_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .aStatGCTraps resb STAMPROFILEADV_size * 0x14
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardFailNoHandler resb STAMCOUNTER_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardFailPatchAddr resb STAMCOUNTER_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardFailGC resb STAMCOUNTER_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardFailHC resb STAMCOUNTER_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardProfGC resb STAMPROFILEADV_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .StatForwardProfHC resb STAMPROFILEADV_size
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .paStatForwardedIRQR3 RTR3PTR_RES 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .paStatForwardedIRQR0 RTR0PTR_RES 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .paStatForwardedIRQGC RTGCPTR_RES 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsyncendstruc
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsyncstruc VBOXTSS
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .selPrev resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding1 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .esp0 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ss0 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ss0 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .esp1 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ss1 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ss1 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .esp2 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ss2 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ss2 resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .cr3 resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .eip resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .eflags resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .eax resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ecx resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .edx resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ebx resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .esp resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ebp resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .esi resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .edi resd 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .es resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_es resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .cs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_cs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ss resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ss resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .ds resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ds resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .fs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_fs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .gs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_gs resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .selLdt resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .padding_ldt resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .fDebugTrap resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync .offIoBitmap resw 1
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsyncendstruc
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync
a5e7ae69e440f6816420fc99599f044e79e716b6vboxsync