- int 15 / ah=87h should not clear cr0 when setting bit 0 (SF patch #969967

by Ben Lunt)
This commit is contained in:
Volker Ruppert 2004-09-13 17:54:53 +00:00
parent ff1c5578a5
commit b3d0c18838
5 changed files with 10 additions and 8 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////
// $Id: rombios.c,v 1.116 2004-09-05 17:55:12 vruppert Exp $
// $Id: rombios.c,v 1.117 2004-09-13 17:53:09 vruppert Exp $
/////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2002 MandrakeSoft S.A.
@ -916,10 +916,10 @@ Bit16u cdrom_boot();
#endif // BX_ELTORITO_BOOT
static char bios_cvs_version_string[] = "$Revision: 1.116 $";
static char bios_date_string[] = "$Date: 2004-09-05 17:55:12 $";
static char bios_cvs_version_string[] = "$Revision: 1.117 $";
static char bios_date_string[] = "$Date: 2004-09-13 17:53:09 $";
static char CVSID[] = "$Id: rombios.c,v 1.116 2004-09-05 17:55:12 vruppert Exp $";
static char CVSID[] = "$Id: rombios.c,v 1.117 2004-09-13 17:53:09 vruppert Exp $";
/* Offset to skip the CVS $Id: prefix */
#define bios_version_string (CVSID + 4)
@ -3477,7 +3477,8 @@ ASM_START
;; perhaps do something with IDT here
;; set PE bit in CR0
mov ax, #0x0001
mov eax, cr0
or al, #0x01
mov cr0, eax
;; far jump to flush CPU queue after transition to protected mode
JMP_AP(0x0020, protected_mode)
@ -3501,9 +3502,10 @@ protected_mode:
mov ds, ax
mov es, ax
;; clear CR3 and reset PG bit in CR0 ???
xor eax, eax
mov cr0, eax
;; reset PG bit in CR0 ???
mov eax, cr0
and al, #0xFE
mov cr0, eax
;; far jump to flush CPU queue after transition to real mode
JMP_AP(0xf000, real_mode)