blob: d954b4a4ea42f59b9c742ea2b0b3db7c4c473c71 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
.\" Copyright, the authors of the Linux man-pages project
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.TH vm86 2 (date) "Linux man-pages (unreleased)"
.SH NAME
vm86old, vm86 \- enter virtual 8086 mode
.SH LIBRARY
Standard C library
.RI ( libc ,\~ \-lc )
.SH SYNOPSIS
.nf
.B #include <sys/vm86.h>
.P
.BI "int vm86old(struct vm86_struct *" info );
.BI "int vm86(unsigned long " fn ", struct vm86plus_struct *" v86 );
.fi
.SH DESCRIPTION
The system call
.BR vm86 ()
was introduced in Linux 0.97p2.
In Linux 2.1.15 and 2.0.28, it was renamed to
.BR vm86old (),
and a new
.BR vm86 ()
was introduced.
The definition of
.I struct vm86_struct
was changed
in 1.1.8 and 1.1.9.
.P
These calls cause the process to enter VM86 mode (virtual-8086 in Intel
literature), and are used by
.BR dosemu .
.P
VM86 mode is an emulation of real mode within a protected mode task.
.SH RETURN VALUE
On success, zero is returned.
On error, \-1 is returned, and
.I errno
is set to indicate the error.
.SH ERRORS
.TP
.B EFAULT
This return value is specific to i386 and indicates a problem with getting
user-space data.
.TP
.B ENOSYS
This return value indicates the call is not implemented on the present
architecture.
.TP
.B EPERM
Saved kernel stack exists.
(This is a kernel sanity check;
the saved stack
should exist only within vm86 mode itself.)
.SH STANDARDS
Linux on 32-bit Intel processors.
|