Draft:Setting BIOS date

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. The BIOS date should be before the timebomb date, but it is recommended to set the date close to the date of the build's compilation.

On Windows 10 builds 9833 through 14964 and the Mac OS X Public Beta, you must also disable the network adapter until you are able to disable the internet time sync in the Time and Date settings, otherwise the operating system will attempt to synchronize the system's time during installation and in turn activate the timebomb before you are able to reach the desktop, instantly bricking the build.

86Box
Setting the BIOS date on 86Box will vary depending on the system board that is used. Before you set the BIOS date, ensure that 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 or a key combination like Ctrl 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.

VirtualBox
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. 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  ).
 * 2) Run  . 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   and using the integer value in TotalMilliseconds (ignoring the values after the decimal).
 * 4) Run  . Use the same name of the virtual machine from step 2 and use the milliseconds value obtained from step 3.

VMware
VMware comes with its own BIOS/EFI 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 date on a BIOS system, power onto the firmware (VM > Power > "Power On to Firmware" (only available in VMware Workstation) or press the F2 key during POST) 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.

To set the date on an EFI system, ensure that Secure Boot is disabled then power onto the firmware (VM > Power > "Power On to Firmware") and select "EFI Internal Shell (unsupported option)". Run the  command to set the date, then exit the shell and boot into the CD-ROM entry or restart the system.

QEMU
To set a BIOS date on QEMU, pass the  argument to your launch configuration.

Removing the network adapter (by passing  to your launch configuration) is also required until you are able to disable network time synchronization from within the system.