BetaArchive
https://www.betaarchive.com/forum/

Does Windows XP have EFI?
https://www.betaarchive.com/forum/viewtopic.php?f=61&t=20327
Page 6 of 6

Author:  zde [ Wed Dec 04, 2019 10:17 pm ]
Post subject:  Re: Does Windows XP have EFI?

Beta12 wrote:
I found interesting information about running Ubuntu in UEFI mode on Apple Mac computers: I wanted to check if maybe these commands will help in running WinXP x64 but even without it I can't start bootx64.efi from grub - that is, it starts but there is error 0xc000000f:
Note that old Mac Pro computers have 32bit EFI (even if they have 64bit CPU). Maybe you could install Vista Beta 2 Build 5384 on then.

And then you could try trick people are using with Vmware ESXi: https://communities.vmware.com/thread/327538

But I don't think you could use bootx64.efi from WinXP x86 directly...

Author:  Beta12 [ Thu Dec 05, 2019 8:52 am ]
Post subject:  Re: Does Windows XP have EFI?

zde wrote:
Note that old Mac Pro computers have 32bit EFI (even if they have 64bit CPU).

It depends on which Mac models. Santa Rosa models - "Late 2008" have firmware EFI 64-bit 1.x mixed with UEFI 2.x - A Brief History of Apple and EFI. Anyway, it doesn't matter.
I'm interested in what is loading the video bios vbios.bin and the INT10 int10.bin vector from a file?

Author:  zde [ Thu Dec 05, 2019 11:52 am ]
Post subject:  Re: Does Windows XP have EFI?

Beta12 wrote:
I'm interested in what is loading the video bios vbios.bin and the INT10 int10.bin vector from a file?
What do you mean? Document which you have refered explains things in very precise detauls: you boot in BIOS mode, dump contents of $00040:$00043 and $C0000:$CFFFF regions of memory, then, in EFI mode, put them back in proper place. This works since on Macs, apparently, these regions of memory are shadowed and not used in EFI mode.

Note: since you are only grabbing address of INT10 and Video BIOS (but not other BIOS-provided vectors and not other BIOSes) and said BIOS is never initialized in that scenario... it wouldn't work as BIOS!

But that doesn't matter because it's only needed to trick certain Ubuntu drivers into thinking that BIOS is there - they would then scan that ROM image in a search for DDC tables in EBDA.

That's most definitely not a full-blown BIOS emulation (since only INT10 is provided, nothing else), but enough to make old Linux video drivers happy.

It should be possible to make full-blown BIOS emulation using similar "fakebios" technique, probably, but that would be quite an undertaking, most likely year or two of work. Heck, you would be basiclly making loadable CSM module!

Not impossible, but hard... (could start from SeaBIOS CSM and then think about how to turn it into a separate loadable EFI module) and what grub does is very far from it.

Author:  Beta12 [ Thu Dec 05, 2019 3:00 pm ]
Post subject:  Re: Does Windows XP have EFI?

zde wrote:
Not impossible, but hard... (could start from SeaBIOS CSM and then think about how to turn it into a separate loadable EFI module) and what grub does is very far from it.

But for me it is not needed because as I have CSM in every bios UEFI. I just want to start WinXP x64 in UEFI + CSM mode with a graphics driver.
Do you know this topic or have you read only the last few posts?

Author:  zde [ Thu Dec 05, 2019 3:09 pm ]
Post subject:  Re: Does Windows XP have EFI?

Beta12 wrote:
Do you know this topic or have you read only the last few posts?
Depends on which topic exactly. I know quite well how video drivers work in Linux, but not in Windows, unfortunately. Linux drivers are happy with just [nonfunctional] INT10 vector and tables in ROM, but who knows what Windows drivers actually need? Maybe they try to actually call certain BIOS functions - and not necessarily only INT10...

To guarantee that they would work you need full BIOS provided by CSM module - and many manufacturers only provide just enough to make Windows 7 happy... if they provide anything at all.

Author:  Beta12 [ Thu Dec 05, 2019 5:06 pm ]
Post subject:  Re: Does Windows XP have EFI?

zde wrote:
Depends on which topic exactly.

Of course, this topic: Does Windows XP have EFI? It looks like you haven't read the whole topic.

OK, let me remind you briefly what's going on:

zde wrote:
To guarantee that they would work you need full BIOS provided by CSM module

It's obvious, but there is a universal VGA driver - VBEMP (AnaPa) with which WinXP SP2 x64 boots in UEFI + CSM from MBR or GPT partition style.
The only problem is that this driver does not support 3D acceleration.
The original WinXP graphics driver of the manufacturer does not want to work in UEFI + CSM

Author:  Hyoenmadan86 [ Thu Dec 05, 2019 8:54 pm ]
Post subject:  Re: Does Windows XP have EFI?

Do you remember what happened when we tried with PCAT (BIOS) versions of BootMgr/Winload? Even booting in full BIOS mode when you load Win2k3 64bit with bootmgr/winload makes it fail in the same place with 3rdparty and builtin VGAPnP video drivers, which is the HAL x86 emulation code.

I actually don't think anymore it has to do in any way with the environment it runs, BIOS or UEFI... But how BootMGR/Winload sets the memory and port map permissions before transfer control to NTOSKRNL. A proper fix would involve reverse the video initialization procedure with IDA and WinDBG help to patch and fix these HAL VidInitialize* functions.

https://www.geoffchappell.com/studies/w ... s/call.htm

Author:  Beta12 [ Fri Dec 06, 2019 8:45 am ]
Post subject:  Re: Does Windows XP have EFI?

Hyoenmadan86 wrote:
Do you remember what happened when we tried with PCAT (BIOS) versions of BootMgr/Winload? Even booting in full BIOS mode when you load Win2k3 64bit with bootmgr/winload makes it fail in the same place with 3rdparty and builtin VGAPnP video drivers, which is the HAL x86 emulation code.

Yes you are right. Even in full BIOS mode there is a problem with winload.exe

Unfortunately, I do not know how disassembly and use IDA :(

Author:  Beta12 [ Fri Dec 06, 2019 7:48 pm ]
Post subject:  Re: Does Windows XP have EFI?

Recently I tried to install Longhorn Server 16497 x64 on 64-bit computers manufactured in 2010, 2012 with i3, i5, i7 CPU and it can't be done because there is a 7E error - I described it here: Longhorn on real hardware
Now test Longhorn on ThinkPad X61 (Core2Duo) manufactured in the same year 2007 as the Longhorn. X61 has only legacy bios. The installation works without 7E error. After a few reboots, the system boots with BCD/bootmgr/winload.exe and works on standard graphics driver vgapnp.sys and also after install 64-bit driver for Vista: Intel GL960 / GM965 Display Driver for Windows Vista (64-bit) - ThinkPad
Image

Author:  jax [ Mon Feb 03, 2020 4:48 am ]
Post subject:  Re: Does Windows XP have EFI?

Very interesting read!

My question:

Because Windows 7 Doesn't work so well in UEFI When "forced", will WinXP either x64 or x86 in UEFI possibly run even worse (being even older) then Windows 7?

Here is what sparked the question from some info I gathered off a thread from forum.notebookreview.com..

"because the UEFI mode in Win 7 doesn't work as well as in 8.1 and most of the people using win 7 with a 980M or 970M are using legacy mode. that's the only downside of using win 7. ....."
poster: (thegh0sts, Nov 1, 2015)

Reason I'm asking is because I'm doing a dual boot with XP and Win 10 on an older alienware laptop with a (120hz screen + a GTX 980m GPU that requires pure UEFI without CSM).

Thanks,
jax

Author:  Beta12 [ Tue Feb 04, 2020 9:03 pm ]
Post subject:  Re: Does Windows XP have EFI?

I have good news :P :) :mrgreen:

In the end I found a graphics card on which WinXP SP2 x64 starts and works in UEFI+CSM on the ASUS motherboard (bootx64.efi + BCD + winload.efi). This card is AMD Radeon HD 6450 PCIe with legacy video ROM (without GOP) with DisplayPort output. Now I have all the drivers in the Device Manager *hehe* :cool: <:o) (B) :
Image

I tested DirectX hardware acceleration and it works without a problem:
  • dxdiag -> Display -> Test Direct3D (rotating cube)
  • Worms World Party
  • Need For Speed 3 (nfs3_modern_patch_v1.6.1)

Interestingly, the system does not start using winload.exe in legacy mode and is ACPI.sys A5 error related to PCI resources:
Boot over winload.exe (WinDbg log)

Author:  Beta12 [ Fri Feb 14, 2020 8:43 am ]
Post subject:  Re: Does Windows XP have EFI?

Hyoenmadan86 wrote:
Do you remember what happened when we tried with PCAT (BIOS) versions of BootMgr/Winload? Even booting in full BIOS mode when you load Win2k3 64bit with bootmgr/winload makes it fail in the same place with 3rdparty

Now, with the HD6450 card is different:
  • winload.efi - OK
  • winload.exe - BSOD ACPI.sys
It seems that video rom is very important. Video rom date HD6450 is October 2010.

Page 6 of 6 All times are UTC [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/