Draft:Setting BIOS date

Back to Draft:Windows build FAQ

This page lists instructions on how to set the BIOS date for each virtualization software. Setting the BIOS date is necessary for builds that include a timebomb (specifically Windows 95 build 216 and Windows 2000 build 1627 and above), as they more often than not will not boot or install on the current date.

86Box[edit source]

Setting the BIOS date on 86Box will vary depending the system board that is used. However, before you set the BIOS date, you must ensure the "Time synchronization" setting on the machine configuration is set to "Disabled".

For most systems that have a BIOS installed on the system board, simply boot into the system setup during the power-on self-test (most BIOS utilize either the Del, F1 or F2 keys for entering setup) and there should be an option to change the system time in the BIOS. If there isn't a proper BIOS and a system reference/diagnostics disk must be used instead, then the disk should provide an option to change the system time on the board. Be sure to save the settings to the BIOS to set the time. Otherwise, boot into a DOS/Windows 9x boot disk and set the date with date MM-DD-YYYY.

VirtualBox[edit source]

Setting the BIOS date in VirtualBox requires calculating the amount of milliseconds between the current date and the compilation date of the build you want to install.[1] The virtual machine should be turned off and VirtualBox should be closed before changing the BIOS date to avoid settings conflicts.

  1. Open a command prompt and make the VirtualBox installation directory the current directory (usually, run cd C:\Program Files\Oracle\VirtualBox).
  2. Run VBoxManage setextradata "name of virtual machine" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1. Be sure to set the name of the virtual machine that will have the time sync disabled between the first set of quotation marks.
  3. Calculate the offset between the desired BIOS date and the current date. You can use the date calculator on the Windows Calculator and convert the amount of days to milliseconds (days * 86400000), but the faster way to do so is via the PowerShell command ([datetime]"MM/DD/YYYY" - [datetime]::Now) and using the integer value in TotalMilliseconds (ignoring the values after the decimal).
  4. Run VBoxManage modifyvm "name of virtual machine" --biossystemtimeoffset <TotalMilliseconds>. Use the same name of the virtual machine from step 2 and use the milliseconds value obtained from step 3.

On Windows 10 builds from 9833 until 14964, you must also disable the network adapter until you are able to disable the internet time sync in the Time and Date settings, otherwise setup will still sync the time to current date and activate the timebomb before you reach the desktop, instantly bricking the build.

VMware[edit source]

VMware comes with its own BIOS/UEFI firmware that can be booted into, much like 86Box. However, installing VMware Tools or performing specific actions such as resuming from a saved state will cause the time to sync back to the current date. To fully disable the time sync, you need to add the following lines into the .vmx file of the virtual machine:

tools.syncTime = "FALSE"
time.synchronize.continue = "FALSE"
time.synchronize.restore = "FALSE"
time.synchronize.resume.disk = "FALSE"
time.synchronize.shrink = "FALSE"
time.synchronize.tools.startup = "FALSE"
time.synchronize.tools.enable = "FALSE"
time.synchronize.resume.host = "FALSE"

To set the BIOS date, power onto the firmware (VM > Power > "Power On to Firmware" or press the F2 key during POST if using VMware Player) and set the BIOS date as you would in a normal BIOS. Be sure to save the settings to the BIOS to set the time.

On Windows 10 builds from 9833 until 14964, you must also disable the network adapter until you are able to disable the internet time sync in the Time and Date settings, otherwise setup will still sync the time to current date and activate the timebomb before you reach the desktop, instantly bricking the build.

QEMU[edit source]

To set a BIOS date on QEMU, add the settings line -rtc base="YYYY-MM-DD",clock=vm to the command to run QEMU.

On Windows 10 builds from 9833 until 14964 and Mac OS X Public Beta, you must also disable the network adapter (via -net none) until you are able to disable the network time sync, otherwise setup will still sync the time to current date and activate the timebomb before you reach the desktop, instantly bricking the build.

References[edit source]