📄 vm86.h
字号:
/* * vm86.h: vm86 emulator definitions. * * Leendert van Doorn, leendert@watson.ibm.com * Copyright (c) 2005, International Business Machines Corporation. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, * version 2, as published by the Free Software Foundation. * * This program is distributed in the hope it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 59 Temple * Place - Suite 330, Boston, MA 02111-1307 USA. */#ifndef __VM86_H__#define __VM86_H__#ifndef __ASSEMBLY__#include <stdint.h>#endif#include <xen/hvm/vmx_assist.h>#ifndef __ASSEMBLY__struct regs { unsigned edi, esi, ebp, esp, ebx, edx, ecx, eax; unsigned trapno, errno; unsigned eip, cs, eflags, uesp, uss; unsigned ves, vds, vfs, vgs;};enum vm86_mode { VM86_REAL = 0, VM86_REAL_TO_PROTECTED, VM86_PROTECTED_TO_REAL, VM86_PROTECTED};#ifdef DEBUG#define TRACE(a) trace a#else#define TRACE(a)#endifextern enum vm86_mode prevmode, mode;extern struct vmx_assist_context oldctx;extern void emulate(struct regs *);extern void dump_regs(struct regs *);extern void trace(struct regs *, int, char *, ...);extern void set_mode(struct regs *, enum vm86_mode);extern void switch_to_real_mode(void);extern void switch_to_protected_mode(void);#endif /* __ASSEMBLY__ */#endif /* __VM86_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -