Volker Ruppert
a21f26bd5f
- corrected image size (biossums added 512 bytes with checksum after fixing the
...
timestamp manually from German to English)
2008-06-01 10:01:34 +00:00
Volker Ruppert
493f99d9b7
- LGPL'd VGABIOS updated to version 0.6b (see VGABIOS-lgpl-README for details)
2008-05-30 16:55:56 +00:00
Volker Ruppert
02ba8c791f
- set the compatible pci interrupt router back to PIIX (SF patch #1956843 by Sebastian)
2008-05-18 11:38:24 +00:00
Stanislav Shwartsman
f5135b4860
Precompiled Bochs BIOS binaries
2008-05-02 19:45:41 +00:00
Stanislav Shwartsman
da7684bc06
bios patch: kvm: bios: don't advertise ACPI C2 or C3 support
2008-05-02 18:37:47 +00:00
Stanislav Shwartsman
a67d149dd6
Merged patches from @SF tracker for BIOS
2008-05-02 08:41:46 +00:00
Stanislav Shwartsman
024b3eece7
Merged LBA48 patch from @SF tracker
2008-04-21 14:22:01 +00:00
Stanislav Shwartsman
ae82e981c0
Updated BIOS binaries
2008-04-10 20:30:20 +00:00
Stanislav Shwartsman
dcb392311f
Merged BIOS patches from @SF tracker
2008-04-08 16:41:18 +00:00
Stanislav Shwartsman
127be5b793
Fixed race condition in QEMU - can't happen in Bochs because in Bochs all RMW are atomic (for now)
2008-03-28 09:02:57 +00:00
Stanislav Shwartsman
a5544a693a
indent changes
2008-03-26 16:21:46 +00:00
Stanislav Shwartsman
b45b8f20c5
Update precompiled BIOS images
2008-03-21 19:30:16 +00:00
Stanislav Shwartsman
9ebfede83b
Merged patch from @SF tracker
2008-03-21 19:06:31 +00:00
Stanislav Shwartsman
ee43b33af9
Merge SF patch
2008-03-19 22:48:55 +00:00
Stanislav Shwartsman
f1f505cfab
Patch from @SF tracker
2008-03-07 21:26:52 +00:00
Stanislav Shwartsman
76f1254e2e
Applied patch from @SF tracker
2008-03-06 20:18:20 +00:00
Volker Ruppert
85a8f7993a
- BIOS boot menu support added (SF patch #1901027 by Sebastian)
2008-03-02 19:25:34 +00:00
Stanislav Shwartsman
5813db0bad
Merged PCI IDs patch by Sebastian
2008-02-27 01:41:01 +00:00
Volker Ruppert
08d7c76e09
- applied rombios boot message improvements by Sebastian
...
* shorten the boot failure message (removed redundant part) and added some
indentation
* print BEV product string
* changed put_str to accept segment and offset as parameters. It allows
printing strings from memory != get_CS(), e.g. option roms.
* introduced a custom format specifier %S to bios_printf
2008-02-17 16:38:17 +00:00
Stanislav Shwartsman
2730fa9583
Fixed comment - patch from @sf tracker
2008-02-07 20:46:08 +00:00
Stanislav Shwartsman
3cb5a781e8
Merged BIOS @SF patches by Sebastian
...
1878558 SMBIOS fixes
1880471 SMBIOS fix type 0
2008-01-27 17:57:26 +00:00
Stanislav Shwartsman
947c7581fe
whitespace cleanup
2008-01-26 09:15:27 +00:00
Stanislav Shwartsman
4634e2cd4d
BIOS whitespace cleanup
2008-01-24 21:57:22 +00:00
Volker Ruppert
ec3415a7eb
- applied patch from the Qemu-devel list by Filip Navara
...
* added generation of SSDT ACPI table that contains definitions for available
processors
* added basic implementation of SMBIOS
* Added querying of BIOS UUID using VMware backdoor I/O port (enable only if
BX_QEMU is defined)
* Added RTC device to ACPI DSDT table
2008-01-21 21:44:29 +00:00
Stanislav Shwartsman
abe7373657
Merged some BIOS patches from @SF tracker
2008-01-21 15:06:29 +00:00
Volker Ruppert
0a8105e95e
- implemented LBA48 support (since BIOS functions are limited to 32 bit, the
...
max. disk size is now 2 TB)
2008-01-14 19:11:15 +00:00
Stanislav Shwartsman
3b53e234da
Merge SF tracker BIOS patches
2008-01-06 21:00:18 +00:00
Stanislav Shwartsman
c9299c7a3d
Save CPUID signature BIOS patch from @SF tracker
2008-01-06 20:57:24 +00:00
Stanislav Shwartsman
c796f7fffa
Define IPL values patch from #SF tracker
2007-12-23 19:46:27 +00:00
Volker Ruppert
46b3ec2397
- don't abort ATA reset for not existing slave drive. The reset bit must
...
always be cleared to avoid blocking existing master drive.
2007-12-20 18:12:35 +00:00
Volker Ruppert
688cb87e98
- skip SMM init if already done at first boot time (fixes reboot failure)
2007-12-09 15:38:41 +00:00
Stanislav Shwartsman
216f4f2f4f
Fixed my BIOS optimization
2007-12-06 16:56:32 +00:00
Volker Ruppert
147633c460
- inline asm optimizations by Stanislav
...
- initialize PAM register for ROM-to-RAM copy even after reboot
2007-12-01 19:27:28 +00:00
Volker Ruppert
570e87733c
- updated after latest changes
2007-11-18 10:21:51 +00:00
Stanislav Shwartsman
90721b75f6
Merge patch from #SF patches tracker:
...
1830658 Fix >32GB disk banner
2007-11-12 20:58:37 +00:00
Volker Ruppert
cd0e516962
- applied rombios patches from SF patches section by Sebastian
...
* save PnP Option ROM Product Name string in IPL Boot Table
* move the #define IPL_* lines to top of the file and change
struct ipl_entry to ipl_entry_t by using typedef
2007-11-04 15:40:20 +00:00
Stanislav Shwartsman
14b4f66d4e
Fixed comments for bios_printf (patch from #SF tracker)
2007-10-19 10:26:49 +00:00
Volker Ruppert
834904f49b
- improved HD recognition and CD boot (patches by Myles Watson)
...
* fixed minor error from printf patch confusion (negation based on wrong word)
* added helper function await_ide
* changed lba calculation to not corrupt lba (for debugging and clarity)
* added support for partial completions of ata_cmd_packet (never happens in
the simulator, but happens all the time in hardware)
* update atapi_request_sense and atapi_is_ready - based on FILO
* correct an int 15 call that should have been int 0x15
* trivial fix when BX_PCIBIOS and BX_ROMBIOS32 not defined
- implemented %X in bios_printf (patch by Sebastian)
2007-10-14 08:11:35 +00:00
Volker Ruppert
ed3fdad74d
- reverted removal of one DPTE checksum bugfix
...
- fixed %ld and %lu padding (now only using it for %lx)
2007-10-10 17:12:07 +00:00
Volker Ruppert
fc6693001c
- rombios patches by Myles Watson <mylesgw@gmail.com>
...
* corrects a spelling error and removes the lba_capable comment
* moves dpte_segment after dpte_offset (endian problem) in the struct
* changes int13 0x15 to use the logical geometry instead of physical to
return sectors
* clips cylinders in Int13DPT
* fixes bit shift problem in options (parens in the wrong place)
* returns the correct offset for dpte.iobase2
* fixes a pointer arithmetic error in calculating the checksum of the dpte
* moves #if BX_SUPPORT_FLOPPY to include more floppy code
* added support for %lx %ld and %lu for bios_printf()
2007-10-09 16:49:53 +00:00
Stanislav Shwartsman
9326aa151f
Merge checksum patch from mailing list -> need to recompile BIOS
2007-10-07 21:09:15 +00:00
Stanislav Shwartsman
aaf2077bf7
Enable BIOS compilation on amd64 host (patch from developers mailing list + SF tracker)
2007-09-27 20:17:05 +00:00
Stanislav Shwartsman
f562eed497
Applied patch
...
[ 1799877 ] Fix for parallel build (make -j2)
2007-09-22 13:02:42 +00:00
Volker Ruppert
31cf899020
- fixed the memory allocation for the ACPI tables in situations when less than
...
16MB are present (patch by Bernhard Kauer)
2007-09-15 07:24:37 +00:00
Volker Ruppert
471e89dc84
- INT 15h AH=86h was reading the wrong stack frame (SF patch #1791000 )
2007-09-10 20:01:07 +00:00
Volker Ruppert
2346acca98
- regerated after latest updates
2007-09-10 19:25:51 +00:00
Stanislav Shwartsman
7ae653d09c
Added missed param to BX_INFO
2007-09-10 15:10:39 +00:00
Stanislav Shwartsman
14e3dcca08
patch for ACPI header - ability to have different rev number for different ACPI tables
2007-08-30 21:05:22 +00:00
Volker Ruppert
04d6440551
- clear out RSDT memory on init (patch by Bernhard Kauer from the ML)
2007-08-19 07:51:31 +00:00
Volker Ruppert
1332f905ae
- change ACPI table revision number to 1
2007-08-03 13:56:52 +00:00
Volker Ruppert
6ea536f95c
- fixed floppy boot signature check switch
...
- added network boot ROM support in the main Bochs code (already present in BIOS)
2007-08-01 17:10:24 +00:00
Volker Ruppert
feb2f45a3e
- added expansion-ROM boot support to the ROMBIOS (SF patch #1741153 ported from
...
the XenSource project)
2007-06-30 07:15:30 +00:00
Volker Ruppert
8f7e6ac2ad
- implemented INT15h, fn 0xC2 (mouse), subfn 3, set resolution (SF patch #1734159 )
...
- support for large PCI memory regions (>=64Mb) added (patch by Paul Brook)
2007-06-17 07:38:58 +00:00
Volker Ruppert
fd0ca2b479
- support for large PCI memory regions (>=64Mb) added (patch by Paul Brook)
2007-06-17 07:37:11 +00:00
Volker Ruppert
216fdf36c6
- implemented INT15h, fn 0xC2 (mouse), subfn 3, set resolution (SF patch #1734159 )
2007-06-17 07:36:34 +00:00
Volker Ruppert
570ce953a6
*** empty log message ***
2007-05-28 08:09:13 +00:00
Volker Ruppert
45bd4ab269
- bios_printf() fix for %s format (from VirtualBox)
...
- removed lots of trailing spaces
2007-05-28 08:01:56 +00:00
Volker Ruppert
3dad77a4b5
- bios_printf() fix for %s format (from VirtualBox)
...
- removed lots of trailing spaces
2007-05-28 07:54:03 +00:00
Volker Ruppert
9478cd9164
- INT 13h: sector number 0 is invalid
2007-04-02 20:35:52 +00:00
Volker Ruppert
252946be66
- initial ACPI SMBus support added (ported from Qemu, TODO: register devices,
...
bus transactions)
2007-02-20 09:39:06 +00:00
Volker Ruppert
691465ffa6
- reset the memory after 32 bit protected mode init (patch from the Qemu project
...
by Fabrice Bellard)
2007-02-10 17:05:38 +00:00
Volker Ruppert
0837438f7f
- the int13_harddisk() function modifies the high word of EAX in EDD read/write
...
functions, but it shouldn't, so it must be saved on stack
2006-12-30 17:13:44 +00:00
Volker Ruppert
18a66befd0
- PCI BIOS function 'find class code' implemented for real and protected mode
2006-11-04 18:07:24 +00:00
Volker Ruppert
b9a70fb502
- added stub for real mode PCIBIOS function 'find class code'
...
- improved real mode PCIBIOS error reporting
2006-10-17 16:48:41 +00:00
Volker Ruppert
4df1ef8af5
- clear registers using the XOR instruction
2006-10-04 19:00:19 +00:00
Volker Ruppert
bc9a192668
- clear upper 16 bit of the stack pointer when returning to real mode (fixes
...
booting of Ubuntu 6.06)
2006-10-03 21:04:44 +00:00
Volker Ruppert
9d0f111995
- build an additional BIOS image without the new 32-bit extensions. It can be
...
used when the new BIOS fails
- use wbinvd instruction in the 32-bit init code
2006-10-03 20:30:09 +00:00
Volker Ruppert
7d80118503
- SMRAME bit must be always set for SMRAM access
2006-10-02 20:29:50 +00:00
Volker Ruppert
c9d8c75a23
- improved SMM init (Fabrice Bellard)
2006-10-02 06:30:36 +00:00
Volker Ruppert
6276cae023
- applied patch from the Qemu project (Fabrice Bellard)
...
* use 32 bit pushf/popf in 32 bit PCI bios
* moved some useful defines in rombios
- minor cleanups
2006-10-01 16:40:30 +00:00
Volker Ruppert
fdc1b75115
- fixed number of MP table entries (caused FreeBSD 5.3 boot failure)
...
- moved shared defines to new file rombios.h (could be used to show features
on the screen after detection by rombios32)
2006-09-30 11:23:49 +00:00
Volker Ruppert
5ba61b49c8
- always generate MP tables (WinXP guest needs this)
...
- new code is now enabled again
2006-09-29 17:37:31 +00:00
Volker Ruppert
518c64b64f
- 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
2006-09-29 12:24:05 +00:00
Volker Ruppert
aacc148f7c
- initial revision of the 32-bit init code for the Bochs BIOS
...
* CPU, PCI, ACPI and SMM init
* MP and ACPI table generation
- MP table generation hack in the Bochs memory code disabled (should be removed)
- don't test the checksum of large BIOS images (for now)
- existing 16-bit PCIBIOS init disabled for now
2006-09-28 19:01:04 +00:00
Volker Ruppert
b2468a39fd
- biossums now supports padding binary files to 64k. This is useful for BIOS
...
extensions at 0xE0000 to be concatenated with the Bochs BIOS core.
- CR/LF to LF conversion, license and CVS id added
2006-09-28 17:39:25 +00:00
Volker Ruppert
99862ba2f5
- LGPL'd VGABIOS updated to version 0.6a (see VGABIOS-lgpl-README for details)
2006-08-19 16:58:38 +00:00
Volker Ruppert
ba049136a9
- INT 15 AH=88h now returns max. 63M extended memory (Ralf Brown's interrupt
...
list says the limit should be 15M, but real machines are reporting more)
2006-08-11 17:34:43 +00:00
Volker Ruppert
0ae9f5670e
- INT 09h: fixed handling of extended keys (asciicode = 0xe0)
...
- left backslash key added in keycode table
2006-08-07 20:26:58 +00:00
Volker Ruppert
7a5ccec5f7
- fixed keyboard LED flag handling and added setting of LEDs (makes keyboard
...
indicators work in Win 3.x, Win 9x and at the boot prompt)
2006-07-30 09:38:02 +00:00
Volker Ruppert
d9be51128b
- fixed ATA device detection in case of one drive only connected to controller
...
- applied patch from the qemu project (Fabrice Bellard)
* improved INT 15h function AX=E820h
* real mode PCI BIOS now returns IRQ routing information (function 0Eh)
2006-07-07 16:11:06 +00:00
Volker Ruppert
aeaff883b7
- enable interrupts before executing INT 19h and revert previous change
2006-07-06 07:28:08 +00:00
Volker Ruppert
4a5d4ad80a
- enable interrupts before executing boot sector code (untested)
2006-07-05 09:20:31 +00:00
Stanislav Shwartsman
8a925c1522
Removed file until permission from ASUS (again)
2006-05-14 17:42:06 +00:00
Volker Ruppert
96463c44d4
- APM cpu idle function fixed (from qemu)
2006-05-07 10:40:53 +00:00
Stanislav Shwartsman
dc8652b958
Added real i440FX BIOS image working well with Bochs
2006-04-29 09:34:26 +00:00
Volker Ruppert
458e128240
- PCI BIOS: improved error message for function 'find PCI device'
2006-01-25 17:53:37 +00:00
Volker Ruppert
0f363841dd
- removed obsolete SMP BIOS images
2006-01-14 08:30:18 +00:00
Volker Ruppert
480fbb29d1
- removed static MP tables from rombios.c and MP bios images from Makefile
2006-01-13 17:36:27 +00:00
Volker Ruppert
990fdd3ec9
- LGPL'd VGABIOS updated to version 0.5d (minor bugfixes)
2005-12-29 09:37:12 +00:00
Volker Ruppert
b2e19d7e09
- APM function 0x05 (cpu idle) implemented (tested with Win98)
...
- unused commented stuff removed
2005-12-26 10:36:52 +00:00
Volker Ruppert
ae37bb9815
- fixed disk size reporting > 64 GB (SF patch #1389776 )
2005-12-25 09:11:59 +00:00
Volker Ruppert
c92fd65c65
- enabled support for harddisks with up to 127 GB in Bochs and bximage
...
- BIOS harddisk detection message is now okay if size is < 64 GB
2005-11-06 16:50:30 +00:00
Volker Ruppert
7b8ed58815
- end-of-track (EOT) condition implemented
...
- set valid EOT value in BIOS floppy read/write functions
- added hack to make older Bochs BIOS version work with EOT feature
2005-10-27 07:38:20 +00:00
Volker Ruppert
d232d245f4
- APM function 0x10 (get capabilities) implemented
...
- stubs for APM functions 0x08 and 0x0f added
- rebuild bios images if apmbios.S is modified
2005-10-24 11:14:37 +00:00
Volker Ruppert
50a0de2746
- disable i/o and memory space access while initializing PCI base address registers
2005-09-24 08:10:10 +00:00
Volker Ruppert
8d883ec645
- fixed PCI i/o base address initialization
2005-09-19 21:09:42 +00:00
Volker Ruppert
fb5b86b11c
- PCI i/o and memory base address initialization added
2005-09-18 21:45:05 +00:00
Volker Ruppert
62f28d8f79
- pause key detection implemented
...
- preparing PCI i/o and memory init function
2005-09-17 17:43:45 +00:00
Volker Ruppert
9121053af9
- keyboard interrupt handler fixes (patch by japheth)
...
* pass all keycodes received by INT 09h to keyboard intercept
* don't wait for second keycode if an extended keycode is detected (set flag only)
2005-09-16 16:05:14 +00:00
Volker Ruppert
8851f2523a
- fixed enhanced keycode flag for key releases
...
- modified bios startup messages
2005-09-15 18:07:32 +00:00