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>