diff --git a/bochs/.bochsrc b/bochs/.bochsrc index 9e5941691..8b283f3d2 100644 --- a/bochs/.bochsrc +++ b/bochs/.bochsrc @@ -371,16 +371,17 @@ memory: guest=512, host=256 # boot menu delay. #======================================================================= romimage: file=$BXSHARE/BIOS-bochs-latest, options=fastboot -#romimage: file=$BXSHARE/bios.bin-1.7.5 # http://www.seabios.org/SeaBIOS +#romimage: file=$BXSHARE/bios.bin-1.13.0 # http://www.seabios.org/SeaBIOS #romimage: file=mybios.bin, address=0xfff80000 # 512k at memory top #======================================================================= # VGAROMIMAGE # You now need to load a VGA ROM BIOS into C0000. #======================================================================= -#vgaromimage: file=bios/VGABIOS-elpin-2.40 vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest #vgaromimage: file=bios/VGABIOS-lgpl-latest-cirrus +#vgaromimage: file=$BXSHARE/vgabios-cirrus.bin-1.13.0 # http://www.seabios.org/SeaVGABIOS +#vgaromimage: file=bios/VGABIOS-elpin-2.40 #======================================================================= # OPTROMIMAGE[1-4]: diff --git a/bochs/CHANGES b/bochs/CHANGES index 71c1cce6b..964a74d44 100644 --- a/bochs/CHANGES +++ b/bochs/CHANGES @@ -2,6 +2,7 @@ Changes after 2.6.10 release: - General - Added 64-bit support to the NSIS installer script. + - Some fixes in the build system found by Debian. - CPU / CPUDB - Bugfixes for CPU emulation correctness @@ -11,8 +12,11 @@ Changes after 2.6.10 release: - I/O Devices - Some fixes in HPET emulation (patch by Oleg) -- LGPL'd VGABIOS updated from CVS (Fixed VESA extension 'read EDID' for Bochs - VBE and Cirrus). +- BIOS / VGABIOS + - LGPL'd VGABIOS updated from CVS (Fixed VESA extension 'read EDID' for Bochs + VBE and Cirrus). + - Updated SeaBIOS ROM image to current version 1.13.0. + - Added SeaVGABIOS ROM image for the Cirrus adapter. ------------------------------------------------------------------------- Changes in 2.6.10 (December 1, 2019): diff --git a/bochs/Makefile.in b/bochs/Makefile.in index 2e6e946eb..0a4279fd0 100644 --- a/bochs/Makefile.in +++ b/bochs/Makefile.in @@ -41,14 +41,14 @@ VERSION=@VERSION@ REL_STRING=@REL_STRING@ MAN_PAGE_1_LIST=bochs bximage bochs-dlx MAN_PAGE_5_LIST=bochsrc -INSTALL_LIST_SHARE=bios/BIOS-bochs-* bios/VGABIOS* bios/SeaBIOS* bios/bios.bin-* @INSTALL_LIST_FOR_PLATFORM@ +INSTALL_LIST_SHARE=bios/BIOS-bochs-* bios/VGABIOS* bios/SeaBIOS* bios/bios.bin-* bios/vgabios-cirrus.bin-* @INSTALL_LIST_FOR_PLATFORM@ INSTALL_LIST_DOC=CHANGES COPYING LICENSE README TODO misc/slirp.conf INSTALL_LIST_BIN=bochs@EXE@ bximage@EXE@ INSTALL_LIST_BIN_OPTIONAL=bochsdbg@EXE@ @OPTIONAL_TARGET@ INSTALL_LIST_WIN32=$(INSTALL_LIST_SHARE) $(INSTALL_LIST_DOC) $(INSTALL_LIST_BIN) $(INSTALL_LIST_BIN_OPTIONAL) INSTALL_LIST_MACOSX=$(INSTALL_LIST_SHARE) $(INSTALL_LIST_DOC) bochs.scpt # for win32 and macosx, these files get renamed to *.txt in install process -TEXT_FILE_LIST=README CHANGES COPYING LICENSE TODO VGABIOS-elpin-LICENSE VGABIOS-lgpl-README SeaBIOS-README +TEXT_FILE_LIST=README CHANGES COPYING LICENSE TODO VGABIOS-elpin-LICENSE VGABIOS-lgpl-README SeaBIOS-README SeaVGABIOS-README CP=cp CAT=cat RM=rm diff --git a/bochs/bios/SeaBIOS-README b/bochs/bios/SeaBIOS-README index fcfed50df..66103c4cf 100644 --- a/bochs/bios/SeaBIOS-README +++ b/bochs/bios/SeaBIOS-README @@ -1,35 +1,16 @@ --------------------------------------------- -| SeaBIOS (http://www.seabios.org/SeaBIOS) | --------------------------------------------- +SeaBIOS is an open source implementation of a 16bit X86 BIOS. SeaBIOS +can run in an emulator or it can run natively on X86 hardware with the +use of coreboot (http://www.coreboot.org/). -SeaBIOS is an open source implementation of a 16bit X86 BIOS. +SeaBIOS is the default BIOS for qemu (http://www.qemu.org/) and +kvm (http://www.linux-kvm.org/). -SeaBIOS can run in an emulator or it can run natively on X86 hardware with -the use of coreboot (http://www.coreboot.org). +The coreboot SeaBIOS (http://www.coreboot.org/SeaBIOS) page has +information on using SeaBIOS in coreboot. Please see the +releases page for information on recent releases. See the +download page to obtain SeaBIOS. -SeaBIOS is the default BIOS for qemu and kvm. +SeaVGABIOS is a sub-project of SeaBIOS. -SeaBIOS may be distributed under the terms of the GNU LGPLv3 license. -Both source code and binaries are available. - - --------------------------------------------- -| coreboot (http://www.coreboot.org) | --------------------------------------------- - -coreboot is a Free Software project aimed at replacing the proprietary BIOS -(firmware) found in most computers. coreboot performs a little bit of -hardware initialization and then executes additional boot logic, called a -payload. - -With the separation of hardware initialization and later boot logic, -coreboot can scale from specialized applications that run directly from -firmware, run operating systems in flash, load custom bootloaders, or -implement firmware standards, like PC BIOS services or UEFI. This allows -for systems to only include the features necessary in the target -application, reducing the amount of code and flash space required. - -coreboot currently supports over 230 different mainboards. Check the -Support page to see if your system is supported. - -coreboot was formerly known as LinuxBIOS. +Please join the mailing list to contribute to SeaBIOS. Information on +the internals of SeaBIOS is available on the Developer Documentation page. diff --git a/bochs/bios/SeaVGABIOS-README b/bochs/bios/SeaVGABIOS-README new file mode 100644 index 000000000..bbf0d2837 --- /dev/null +++ b/bochs/bios/SeaVGABIOS-README @@ -0,0 +1,35 @@ +SeaVGABIOS is a sub-project of the SeaBIOS project - it is an open +source implementation of a 16bit X86 VGA BIOS +(http://en.wikipedia.org/wiki/Video_BIOS). SeaVGABIOS is the +default VGA BIOS on QEMU (http://www.qemu.org/). SeaVGABIOS can also +run natively on some X86 VGA hardware with coreboot (http://www.coreboot.org/). + +Building SeaVGABIOS +=================== + +To build SeaVGABIOS, obtain the code, run `make +menuconfig` and select the type of VGA BIOS to build in the "VGA ROM" +menu. Once selected, run `make` and the final VGA BIOS binary will be +located in "out/vgabios.bin". + +The choice of available VGA BIOSes within "make menuconfig" is +dependent on whether CONFIG_QEMU, CONFIG_COREBOOT, or CONFIG_CSM is +selected. Also, the debug options under the "Debugging" menu apply to +SeaVGABIOS. All other options found in "make menuconfig" apply only to +SeaBIOS and will not impact the SeaVGABIOS build. + +If SeaVGABIOS is needed for multiple different devices (eg, QEMU's +cirrus emulation and QEMU's "dispi" emulation), then one must compile +SeaVGABIOS multiple times with the appropriate config for each build. + +SeaVGABIOS code +=============== + +The source code for SeaVGABIOS is located in the SeaBIOS +git repository. The main VGA BIOS code is located in the "vgasrc/" +directory. The VGA BIOS code is always compiled in 16bit mode. + +The SeaVGABIOS builds to a separate binary from the main SeaBIOS +binary, and much of the VGA BIOS code is separate from the main BIOS +code. However, much of the SeaBIOS developer documentation applies to +SeaVGABIOS. To contribute, please join the SeaBIOS mailing list. diff --git a/bochs/bios/bios.bin-1.13.0 b/bochs/bios/bios.bin-1.13.0 new file mode 100644 index 000000000..f7bb4f409 Binary files /dev/null and b/bochs/bios/bios.bin-1.13.0 differ diff --git a/bochs/bios/bios.bin-1.7.5 b/bochs/bios/bios.bin-1.7.5 deleted file mode 100644 index 01aedaaf0..000000000 Binary files a/bochs/bios/bios.bin-1.7.5 and /dev/null differ diff --git a/bochs/bios/vgabios-cirrus.bin-1.13.0 b/bochs/bios/vgabios-cirrus.bin-1.13.0 new file mode 100644 index 000000000..c1a720664 Binary files /dev/null and b/bochs/bios/vgabios-cirrus.bin-1.13.0 differ diff --git a/bochs/build/win32/nsis/bochs.nsi.in b/bochs/build/win32/nsis/bochs.nsi.in index ac28eaeff..caa58a3f1 100644 --- a/bochs/build/win32/nsis/bochs.nsi.in +++ b/bochs/build/win32/nsis/bochs.nsi.in @@ -154,7 +154,9 @@ Section "ROM Images (required)" SecROMs File "${SRCDIR}\BIOS-bochs-*" File "${SRCDIR}\VGABIOS-*" File "${SRCDIR}\bios.bin-*" + File "${SRCDIR}\vgabios-cirrus.bin-*" File "${SRCDIR}\SeaBIOS-README.txt" + File "${SRCDIR}\SeaVGABIOS-README.txt" SectionEnd Section "Documentation in HTML" SecDocs @@ -323,7 +325,9 @@ Section "Uninstall" Delete "$INSTDIR\BIOS-bochs-*" Delete "$INSTDIR\VGABIOS-*" Delete "$INSTDIR\bios.bin-*" + Delete "$INSTDIR\vgabios-cirrus.bin-*" Delete "$INSTDIR\SeaBIOS-README.txt" + Delete "$INSTDIR\SeaVGABIOS-README.txt" Delete "$INSTDIR\dlxlinux\*" Delete "$INSTDIR\docs\index.html" Delete "$INSTDIR\docs\user\*" diff --git a/bochs/doc/docbook/user/user.dbk b/bochs/doc/docbook/user/user.dbk index d5a56d7e6..d6f6c2c04 100644 --- a/bochs/doc/docbook/user/user.dbk +++ b/bochs/doc/docbook/user/user.dbk @@ -1422,7 +1422,7 @@ DLX Linux screenshot.
-