Jump to content

Windows XP x86 on modern 2-in-1


HyperbolicEllipsoid

Recommended Posts

I want to try and get the late-2000s Windows XP netbook feel on a modern 2-in-1 (ASUS TP200SA). I disabled secure boot, enabled CSM, and disabled fast boot in the BIOS. I then tried installing from an unmodified DVD. The install failed with an ACPI error, so I tried again, hitting F7 on the first screen. I then got the “hard disk not recognized” F6 error, so I tried slipstreaming the DriverPacks mass storage drivers with the same result. This led me to believe that it was because the storage was eMMC-based that the installation wasn’t working. I tried installing Windows 10, copying the generic disk.inf driver from there, and slipstreaming that into the ISO. That time, however, I put the ISO in a flash drive running Easy2Boot. I was able to get to the “Welcome to Setup” page, but it the page was frozen and I couldn’t do anything. I’m starting to think that it’s impossible. Any thoughts as to what I might be doing wrong, assuming that this is even possible?

Link to comment
Share on other sites


As a start, don't just shove Win10 drivers into XP.

Use the 10 install to check precisely what devices you have, then look for suitable XP drivers.

Check what bus the eMMC uses. Is it connected through USB, SATA, SPI, or by some other way?

Edited by RainyShadow
Link to comment
Share on other sites

38 minutes ago, RainyShadow said:

As a start, don't just shove Win10 drivers into XP.

Use the 10 install to check precisely what devices you have, then look for suitable XP drivers.

Check what bus the eMMC uses. Is it connected through USB, SATA, SPI, or by some other way?

Thanks for the reply. I figured it would be OK to use the driver since it was from 2006. As for the eMMC bus, I’m a bit of a noob so I’m not quite sure. Do you know how I can check?

Link to comment
Share on other sites

40 minutes ago, HyperbolicEllipsoid said:

Thanks for the reply. I figured it would be OK to use the driver since it was from 2006. As for the eMMC bus, I’m a bit of a noob so I’m not quite sure. Do you know how I can check?

Open Device Manager, select View > Devices by connection, find the eMMC and check what is its parent device.

Link to comment
Share on other sites

1 hour ago, RainyShadow said:

Open Device Manager, select View > Devices by connection, find the eMMC and check what is its parent device.

It's connected to the SD Host Controller, which is connected to the PCI Express Root Complex. So I'm guessing the bus for the eMMC is PCIe. So which drivers would I need to slipstream into the installer to get it to recognize the eMMC?

Link to comment
Share on other sites

You cant use XP x86(not even x64) with CSM , you need Legacy booting , CSM will only work with Vista and 7

Edited by burd
Link to comment
Share on other sites

3 hours ago, burd said:

You cant use XP x86(not even x64) with CSM , you need Legacy booting , CSM will only work with Vista and 7

Really? I remembered hearing that Windows XP works with CSM since CSM boots in the same way as BIOS systems.

From Wikipedia:

Quote

To ensure backward compatibility, most UEFI firmware implementations on PC-class machines also support booting in legacy BIOS mode from MBR-partitioned disks, through the Compatibility Support Module (CSM) that provides legacy BIOS compatibility. In this scenario, booting is performed in the same way as on legacy BIOS-based systems, by ignoring the partition table and relying on the content of a boot sector.

If Windows XP doesn't work on CSM, is there any way to deploy it using the EFI files from Vista so that it works on UEFI?

Edit: Also curious as to why exactly XP would work on legacy BIOS and not CSM if CSM replicates legacy BIOS. What exactly is the difference?

Edited by HyperbolicEllipsoid
Additional questions
Link to comment
Share on other sites

33 minutes ago, HyperbolicEllipsoid said:

Really? I remembered hearing that Windows XP works with CSM since CSM boots in the same way as BIOS systems.

From Wikipedia:

If Windows XP doesn't work on CSM, is there any way to deploy it using the EFI files from Vista so that it works on UEFI?

Edit: Also curious as to why exactly XP would work on legacy BIOS and not CSM if CSM replicates legacy BIOS. What exactly is the difference?

Afaik , it would still not work i could be wrong though , i doubt the efi files can be used as well , although for vista and 7 a pure uefi boot can be achieved using w10 files , for xp I don't think its just possible , i don't specifically remember the inns and outs of bios/uefi so im just saying based on experience.

Edited by burd
Link to comment
Share on other sites

2 hours ago, jaclaz said:

CSM (Compatibility Support Mode) is BIOS on EFI firmware.

XP will work on both BIOS and CSM  (they are the same thing).

XP booted from EFI is also possible on MBR disks using some obscure Longhorn/Vista beta boot files:

https://www.win-raid.com/t5438f45-Boot-WinXP-bit-bit-on-UEFI-bit-bit.html

jaclaz

OK, so installing XP on this device should be possible, right? Can anyone point me to a driver that will get XP to recognize the eMMC as the internal hard disk?

Link to comment
Share on other sites

On 7/30/2020 at 12:20 PM, HyperbolicEllipsoid said:

OK, so installing XP on this device should be possible, right? Can anyone point me to a driver that will get XP to recognize the eMMC as the internal hard disk?

Not necessarily.

One thing is booting to XP (or to it setup) and another one is running it.

All NT systems have a bootloader that loosely is made of two parts:
1) a "Real Mode" one (that needs BIOS services, provided by the CSM in your case)
2) a "Protected mode" one (that re-enumerates devices and starts the appropriate drivers)

If a needed driver is missing you may be able to boot (and also to complete setup) but then the actual OS won't boot (or won't complete boot) and run.

This ASUS TP200SA, what OS is it running now?

You need to provide the Hardware ID of the controller PCI VEN & DEV, but if it is not in the driver pack it might be very difficult if not impossible to find a working one.

I don't understand the reference you made to the Windows 10 disk.inf, the .inf is just a file needed to install a driver, not a driver.

jaclaz

Link to comment
Share on other sites

On 7/30/2020 at 1:28 PM, jaclaz said:

Not necessarily.

One thing is booting to XP (or to it setup) and another one is running it.

All NT systems have a bootloader that loosely is made of two parts:
1) a "Real Mode" one (that needs BIOS services, provided by the CSM in your case)
2) a "Protected mode" one (that re-enumerates devices and starts the appropriate drivers)

If a needed driver is missing you may be able to boot (and also to complete setup) but then the actual OS won't boot (or won't complete boot) and run.

This ASUS TP200SA, what OS is it running now?

You need to provide the Hardware ID of the controller PCI VEN & DEV, but if it is not in the driver pack it might be very difficult if not impossible to find a working one.

I don't understand the reference you made to the Windows 10 disk.inf, the .inf is just a file needed to install a driver, not a driver.

jaclaz

I'm currently running a minimal version of Windows 8.1 x64 since it doesn't work very well on 10.

The hardware ID for PCI Express Root Complex is ACPI\VEN_PNP&DEV_0A08.

When I mentioned disk.inf, I meant to say that I copied all the driver files referenced by device manager as well as disk.inf.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...