- disabled rombios32 call until the critical bugs are fixed
- more accurate delay loop using the port 0x61 refresh clock bit - fixed capabilties reported in BIOS banner
This commit is contained in:
parent
aacc148f7c
commit
518c64b64f
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
// $Id: rombios.c,v 1.167 2006-09-28 18:56:20 vruppert Exp $
|
// $Id: rombios.c,v 1.168 2006-09-29 12:23:34 vruppert Exp $
|
||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// Copyright (C) 2002 MandrakeSoft S.A.
|
// Copyright (C) 2002 MandrakeSoft S.A.
|
||||||
@ -143,7 +143,7 @@
|
|||||||
#define BX_FLOPPY_ON_CNT 37 /* 2 seconds */
|
#define BX_FLOPPY_ON_CNT 37 /* 2 seconds */
|
||||||
#define BX_PCIBIOS 1
|
#define BX_PCIBIOS 1
|
||||||
#define BX_APM 1
|
#define BX_APM 1
|
||||||
#define BX_ROMBIOS32 1
|
#define BX_ROMBIOS32 0
|
||||||
|
|
||||||
#define BX_USE_ATADRV 1
|
#define BX_USE_ATADRV 1
|
||||||
#define BX_ELTORITO_BOOT 1
|
#define BX_ELTORITO_BOOT 1
|
||||||
@ -938,7 +938,7 @@ Bit16u cdrom_boot();
|
|||||||
|
|
||||||
#endif // BX_ELTORITO_BOOT
|
#endif // BX_ELTORITO_BOOT
|
||||||
|
|
||||||
static char bios_cvs_version_string[] = "$Revision: 1.167 $ $Date: 2006-09-28 18:56:20 $";
|
static char bios_cvs_version_string[] = "$Revision: 1.168 $ $Date: 2006-09-29 12:23:34 $";
|
||||||
|
|
||||||
#define BIOS_COPYRIGHT_STRING "(c) 2002 MandrakeSoft S.A. Written by Kevin Lawton & the Bochs team."
|
#define BIOS_COPYRIGHT_STRING "(c) 2002 MandrakeSoft S.A. Written by Kevin Lawton & the Bochs team."
|
||||||
|
|
||||||
@ -1823,16 +1823,16 @@ print_bios_banner()
|
|||||||
printf(BX_APPNAME" BIOS - build: %s\n%s\nOptions: ",
|
printf(BX_APPNAME" BIOS - build: %s\n%s\nOptions: ",
|
||||||
BIOS_BUILD_DATE, bios_cvs_version_string);
|
BIOS_BUILD_DATE, bios_cvs_version_string);
|
||||||
printf(
|
printf(
|
||||||
#ifdef BX_APM
|
#if BX_APM
|
||||||
"apmbios "
|
"apmbios "
|
||||||
#endif
|
#endif
|
||||||
#ifdef BX_PCIBIOS
|
#if BX_PCIBIOS
|
||||||
"pcibios "
|
"pcibios "
|
||||||
#endif
|
#endif
|
||||||
#ifdef BX_ELTORITO_BOOT
|
#if BX_ELTORITO_BOOT
|
||||||
"eltorito "
|
"eltorito "
|
||||||
#endif
|
#endif
|
||||||
#ifdef BX_ROMBIOS32
|
#if BX_ROMBIOS32
|
||||||
"rombios32 "
|
"rombios32 "
|
||||||
#endif
|
#endif
|
||||||
"\n\n");
|
"\n\n");
|
||||||
@ -9211,6 +9211,7 @@ pci_routing_table_structure_start:
|
|||||||
db 0 ;; reserved
|
db 0 ;; reserved
|
||||||
pci_routing_table_structure_end:
|
pci_routing_table_structure_end:
|
||||||
|
|
||||||
|
#if !BX_ROMBIOS32
|
||||||
pci_irq_list:
|
pci_irq_list:
|
||||||
db 11, 10, 9, 5;
|
db 11, 10, 9, 5;
|
||||||
|
|
||||||
@ -9431,6 +9432,7 @@ pci_init_end:
|
|||||||
pop bp
|
pop bp
|
||||||
pop ds
|
pop ds
|
||||||
ret
|
ret
|
||||||
|
#endif // BX_ROMBIOS32
|
||||||
#endif // BX_PCIBIOS
|
#endif // BX_PCIBIOS
|
||||||
|
|
||||||
#if BX_ROMBIOS32
|
#if BX_ROMBIOS32
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
// $Id: rombios32.c,v 1.1 2006-09-28 18:56:20 vruppert Exp $
|
// $Id: rombios32.c,v 1.2 2006-09-29 12:23:34 vruppert Exp $
|
||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// 32 bit Bochs BIOS init code
|
// 32 bit Bochs BIOS init code
|
||||||
@ -360,9 +360,21 @@ void bios_printf(int flags, const char *fmt, ...)
|
|||||||
/* approximative ! */
|
/* approximative ! */
|
||||||
void delay_ms(int n)
|
void delay_ms(int n)
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j, r1, r2;
|
||||||
for(i = 0; i < n; i++) {
|
for(i = 0; i < n; i++) {
|
||||||
|
#if BX_QEMU
|
||||||
for(j = 0; j < 1000000; j++);
|
for(j = 0; j < 1000000; j++);
|
||||||
|
#else
|
||||||
|
j = 66;
|
||||||
|
r1 = inb(0x61) & 0x10;
|
||||||
|
do {
|
||||||
|
r2 = inb(0x61) & 0x10;
|
||||||
|
if (r1 != r2) {
|
||||||
|
j--;
|
||||||
|
r1 = r2;
|
||||||
|
}
|
||||||
|
} while (j > 0);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -436,7 +448,7 @@ void smp_probe(void)
|
|||||||
|
|
||||||
smp_cpus = readw((void *)CPU_COUNT_ADDR);
|
smp_cpus = readw((void *)CPU_COUNT_ADDR);
|
||||||
}
|
}
|
||||||
BX_INFO("Found %d cpus\n", smp_cpus);
|
BX_INFO("Found %d cpu(s)\n", smp_cpus);
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************/
|
/****************************************************/
|
||||||
|
Loading…
Reference in New Issue
Block a user