]>
Commit | Line | Data |
---|---|---|
fea681da MK |
1 | .\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu) |
2 | .\" Copyright 1997 Andries E. Brouwer (aeb@cwi.nl) | |
3 | .\" | |
93015253 | 4 | .\" %%%LICENSE_START(VERBATIM) |
fea681da MK |
5 | .\" Permission is granted to make and distribute verbatim copies of this |
6 | .\" manual provided the copyright notice and this permission notice are | |
7 | .\" preserved on all copies. | |
8 | .\" | |
9 | .\" Permission is granted to copy and distribute modified versions of this | |
10 | .\" manual under the conditions for verbatim copying, provided that the | |
11 | .\" entire resulting derived work is distributed under the terms of a | |
12 | .\" permission notice identical to this one. | |
c13182ef | 13 | .\" |
fea681da MK |
14 | .\" Since the Linux kernel and libraries are constantly changing, this |
15 | .\" manual page may be incorrect or out-of-date. The author(s) assume no | |
16 | .\" responsibility for errors or omissions, or for damages resulting from | |
17 | .\" the use of the information contained herein. The author(s) may not | |
18 | .\" have taken the same level of care in the production of this manual, | |
19 | .\" which is licensed free of charge, as they might when working | |
20 | .\" professionally. | |
c13182ef | 21 | .\" |
fea681da MK |
22 | .\" Formatted or processed versions of this manual, if unaccompanied by |
23 | .\" the source, must acknowledge the copyright and authors of this work. | |
4b72fb64 | 24 | .\" %%%LICENSE_END |
fea681da | 25 | .\" |
6dd57cb4 | 26 | .TH VM86 2 2009-02-20 "Linux" "Linux Programmer's Manual" |
fea681da MK |
27 | .SH NAME |
28 | vm86old, vm86 \- enter virtual 8086 mode | |
29 | .SH SYNOPSIS | |
511bb71b | 30 | .nf |
fea681da | 31 | .B #include <sys/vm86.h> |
68e4db0a | 32 | .PP |
fea681da | 33 | .BI "int vm86old(struct vm86_struct *" info ); |
fea681da | 34 | .BI "int vm86(unsigned long " fn ", struct vm86plus_struct *" v86 ); |
511bb71b | 35 | .fi |
fea681da MK |
36 | .SH DESCRIPTION |
37 | The system call | |
e511ffb6 | 38 | .BR vm86 () |
c13182ef | 39 | was introduced in Linux 0.97p2. |
11b520ed | 40 | In Linux 2.1.15 and 2.0.28, it was renamed to |
e511ffb6 | 41 | .BR vm86old (), |
fea681da | 42 | and a new |
e511ffb6 | 43 | .BR vm86 () |
c13182ef | 44 | was introduced. |
c9942389 MK |
45 | The definition of |
46 | .IR "struct vm86_struct" | |
47 | was changed | |
fea681da | 48 | in 1.1.8 and 1.1.9. |
dd3568a1 | 49 | .PP |
fea681da | 50 | These calls cause the process to enter VM86 mode (virtual-8086 in Intel |
c13182ef | 51 | literature), and are used by |
fea681da MK |
52 | .BR dosemu . |
53 | .PP | |
54 | VM86 mode is an emulation of real mode within a protected mode task. | |
47297adb | 55 | .SH RETURN VALUE |
c13182ef MK |
56 | On success, zero is returned. |
57 | On error, \-1 is returned, and | |
fea681da MK |
58 | .I errno |
59 | is set appropriately. | |
60 | .SH ERRORS | |
61 | .TP | |
62 | .B EFAULT | |
63 | This return value is specific to i386 and indicates a problem with getting | |
7fac88a9 | 64 | user-space data. |
fea681da MK |
65 | .TP |
66 | .B ENOSYS | |
67 | This return value indicates the call is not implemented on the present | |
68 | architecture. | |
69 | .TP | |
70 | .B EPERM | |
c13182ef MK |
71 | Saved kernel stack exists. |
72 | (This is a kernel sanity check; the saved | |
33a0ccb2 | 73 | stack should exist only within vm86 mode itself.) |
47297adb | 74 | .SH CONFORMING TO |
6dd57cb4 PW |
75 | This call is specific to Linux on 32-bit Intel processors, |
76 | and should not be used in programs intended to be portable. |