VM86(2)

NAME
vm86, vm86old - enter virtual 8086 mode

SYNOPSIS
#include <sys/vm86.h>

int vm86(unsigned long fn, struct vm86plus_struct * v86);

int vm86old(struct vm86_struct * info);

DESCRIPTION
The system call vm86 was introduced in Linux 0.97p2. In Linux 2.1.15 and 2.0.28 it was renamed to vm86old, and a new vm86 was introduced. The definition of `struct vm86_struct' was changed in 1.1.8 and 1.1.9.

These calls cause the process to enter VM86 mode, and are used by dosemu (dos(1)).

RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.

ERRORS
(for vm86old)

EPERM
    Saved kernel stack exists. (This is a kernel sanity check; the saved stack should only exist within vm86 mode itself.)

CONFORMING TO
This call is specific to Linux on Intel processors, and should not be used in programs intended to be portable.