VirtualBox

Changeset 100456 in vbox for trunk/include


Ignore:
Timestamp:
Jul 10, 2023 1:46:21 PM (17 months ago)
Author:
vboxsync
Message:

BIOS: Added a way for the APM BIOS to halt the virtual CPU through port I/O instead of HLT to solve problems with obstinate guests (see bugref:6549).

Location:
trunk/include/VBox
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/bios.h

    r98103 r100456  
    4242#endif
    4343
    44 /** The BIOS shutdown port.
    45  * You write "Shutdown" byte by byte to shutdown the VM.
     44/** The BIOS control port.
     45 * Write "Shutdown" byte by byte to shutdown the VM.
     46 * Write "Bootfail" to indicate no bootable device.
     47 * Write "Prochalt" to execute alternative CPU halt.
    4648 * @sa VBOX_BIOS_OLD_SHUTDOWN_PORT  */
    4749#define VBOX_BIOS_SHUTDOWN_PORT                 0x040f
    4850
     51/** Write this value to shut down VM. */
     52#define VBOX_BIOS_CTL_SHUTDOWN                  0x8001
     53/** Write this value to report boot failure. */
     54#define VBOX_BIOS_CTL_BOOTFAIL                  0x8002
     55/** Write this value to halt CPU. */
     56#define VBOX_BIOS_CTL_PROCHALT                  0x8003
     57
    4958/** The old shutdown port number.
    5059 * Older versions of VirtualBox uses this as does Bochs.
    51  * @sa VBOX_BIOS_SHUTDOWN_PORT  */
     60 * @sa VBOX_BIOS_CONTROL_PORT  */
    5261#define VBOX_BIOS_OLD_SHUTDOWN_PORT             0x8900
    5362
  • trunk/include/VBox/bios.mac

    r98103 r100456  
    4141%endif
    4242%define VBOX_BIOS_SHUTDOWN_PORT                 0x040f
     43%define VBOX_BIOS_CTL_SHUTDOWN                  0x8001
     44%define VBOX_BIOS_CTL_BOOTFAIL                  0x8002
     45%define VBOX_BIOS_CTL_PROCHALT                  0x8003
    4346%define VBOX_BIOS_OLD_SHUTDOWN_PORT             0x8900
    4447%endif
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette