summaryrefslogtreecommitdiffstats
path: root/man2/vm86.2
diff options
context:
space:
mode:
Diffstat (limited to 'man2/vm86.2')
-rw-r--r--man2/vm86.269
1 files changed, 69 insertions, 0 deletions
diff --git a/man2/vm86.2 b/man2/vm86.2
new file mode 100644
index 000000000..6709d5467
--- /dev/null
+++ b/man2/vm86.2
@@ -0,0 +1,69 @@
+.\" Hey Emacs! This file is -*- nroff -*- source.
+.\"
+.\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu)
+.\" Copyright 1997 Andries E. Brouwer (aeb@cwi.nl)
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.TH VM86 2 1997-07-17 "Linux 2.1.15" "Linux Programmer's Manual"
+.SH NAME
+vm86old, vm86 \- enter virtual 8086 mode
+.SH SYNOPSIS
+.B #include <sys/vm86.h>
+.sp
+.BI "int vm86old(struct vm86_struct *" info );
+.sp
+.BI "int vm86(unsigned long " fn ", struct vm86plus_struct *" v86 );
+.SH DESCRIPTION
+The system call
+.B 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
+.B vm86
+was introduced. The definition of `struct vm86_struct' was changed
+in 1.1.8 and 1.1.9.
+.LP
+These calls cause the process to enter VM86 mode (virtual-8086 in Intel
+literature), and are used by
+.BR dosemu .
+.PP
+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 appropriately.
+.SH ERRORS
+.TP
+.B EFAULT
+This return value is specific to i386 and indicates a problem with getting
+userspace 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 only exist within vm86 mode itself.)
+.SH "CONFORMING TO"
+This call is specific to Linux on Intel processors, and should not be
+used in programs intended to be portable.