Date: Sun, 27 Apr 2003 04:27:00 +0000 From: "Raunchy McSmutbag" <int0x80@hotmail.com> To: freebsd-hackers@freebsd.org Subject: int's and bus error Message-ID: <Law11-F35h0UyvzrBLz00009247@hotmail.com>
next in thread | raw e-mail | index | archive | help
Hey =) What im trying to do is run vm86 interrupts from a userland process
(int 10h in particular). So ive tried doing..
int switch_mode(void)
{
struct vm86_init_args vm;
/* use all interrupts */
memset(&vm, 0, sizeof(struct vm86_init_args));
return(i386_vm86(VM86_INIT, &vm));
}
to switch to vm86 mode. This works fine. Then i do the actual int 10h
void mode_13h(void)
{
__asm("xorl %eax, %eax\n"
"movl $0x13, %eax\n"
"int $0x10\n");
}
I get a bus error an int $0x10. I posted on comp.unix.programmer and was
informed that i wasnt really running in virtual mode.
http://groups.google.ca/groups?q=comp.unix.programmer+jack+hammer&hl=en&lr=&ie=UTF-8&oe=UTF-8&scoring=d&selm=20030426085538.GB2997%40iv.nn.kiev.ua&rnum=1
What is it that i need to do to go to vm86 and execute that code?
_________________________________________________________________
The new MSN 8: smart spam protection and 2 months FREE*
http://join.msn.com/?page=features/junkmail
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Law11-F35h0UyvzrBLz00009247>
