
1: Index: rombios.c 2: =================================================================== 3: RCS file: /cvsroot/bochs/bochs/bios/rombios.c,v 4: retrieving revision 1.174 5: diff -u -w -r1.174 rombios.c 6: --- rombios.c 17 Oct 2006 16:48:05 -0000 1.174 7: +++ rombios.c 8 Feb 2007 21:57:48 -0000 8: @@ -9472,6 +9472,14 @@ 9: mov eax, #0x00040000 10: call eax 11: 12: + ;; reset the memory (some boot loaders such as syslinux suppose 13: + ;; that the memory is set to zero) 14: + mov edi, #0x00040000 15: + mov ecx, #0x40000 / 4 16: + xor eax, eax 17: + rep 18: + stosd 19: + 20: ;; return to 16 bit protected mode first 21: db 0xea 22: dd rombios32_10 23: Index: rombios.h 24: =================================================================== 25: RCS file: /cvsroot/bochs/bochs/bios/rombios.h,v 26: retrieving revision 1.3 27: diff -u -w -r1.3 rombios.h 28: --- rombios.h 3 Oct 2006 20:27:30 -0000 1.3 29: +++ rombios.h 8 Feb 2007 21:57:48 -0000 30: @@ -19,7 +19,7 @@ 31: // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 32: 33: /* define it to include QEMU specific code */ 34: -//#define BX_QEMU 35: +#define BX_QEMU 36: 37: #ifndef LEGACY 38: # define BX_ROMBIOS32 1 39: Index: rombios32.c 40: =================================================================== 41: RCS file: /cvsroot/bochs/bochs/bios/rombios32.c,v 42: retrieving revision 1.8 43: diff -u -w -r1.8 rombios32.c 44: --- rombios32.c 3 Oct 2006 20:27:30 -0000 1.8 45: +++ rombios32.c 8 Feb 2007 21:57:48 -0000 46: @@ -852,6 +852,11 @@ 47: int ioapic_id, i, len; 48: int mp_config_table_size; 49: 50: +#ifdef BX_QEMU 51: + if (smp_cpus <= 1) 52: + return; 53: +#endif 54: + 55: #ifdef BX_USE_EBDA_TABLES 56: mp_config_table = (uint8_t *)(ram_size - ACPI_DATA_SIZE - MPTABLE_MAX_SIZE); 57: #else