- I was dismayed to find that stack_return_from_v86 was terribly incomplete.

It did an exception, and then the real code seemed to be commented out
  with an #if 0...#endif.  I put a panic there, asking people to please
  report how they arrived at that condition, and enabled the #if 0 code.
  This was pointed out by luca abeni <l_abeni@hotmail.com>.
This commit is contained in:
Bryce Denney 2001-10-09 12:23:15 +00:00
parent db6df716d3
commit 75a1d092f6
1 changed files with 6 additions and 5 deletions

View File

@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////
// $Id: vm8086.cc,v 1.6 2001-10-03 13:10:37 bdenney Exp $ // $Id: vm8086.cc,v 1.7 2001-10-09 12:23:15 bdenney Exp $
///////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////
// //
// Copyright (C) 2001 MandrakeSoft S.A. // Copyright (C) 2001 MandrakeSoft S.A.
@ -125,10 +125,11 @@ BX_CPU_C::stack_return_to_v86(Bit32u new_eip, Bit32u raw_cs_selector,
void void
BX_CPU_C::stack_return_from_v86(BxInstruction_t *i) BX_CPU_C::stack_return_from_v86(BxInstruction_t *i)
{ {
//BX_INFO(("stack_return_from_v86:")); BX_ERROR(("stack_return_from_v86 may not be implemented right!"));
exception(BX_GP_EXCEPTION, 0, 0); BX_PANIC(("Please report that you have found a test case for stack_return_from_v86"));
//exception(BX_GP_EXCEPTION, 0, 0);
#if 0
#if 1
if (IOPL != 3) { if (IOPL != 3) {
// trap to virtual 8086 monitor // trap to virtual 8086 monitor
BX_INFO(("stack_return_from_v86: IOPL != 3")); BX_INFO(("stack_return_from_v86: IOPL != 3"));