BetaArchive Logo
Navigation Home Screenshots Image Uploader Server Info FTP Servers Wiki Forum RSS Feed Rules Please Donate
UP: 28d, 4h, 14m | CPU: 32% | MEM: 5700MB of 11033MB used
{The community for beta collectors}

Post new topic Reply to topic  [ 19 posts ] 
Author Message
 PostPost subject: How detect if WinXP boot in EFI or BIOS?        Posted: Sat Nov 03, 2018 8:50 pm 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
I need an application running on WinXP x86 and/or x64, which will detect if the system started in EFI mode. I tested AIDA64 but this reports that UEFI Boot - No:
Image

msinfo32.exe from WinVista, 7, 8 or 10 not work in XP :(


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 1:55 am 
Reply with quote
FTP Access
Offline

Joined
Tue Aug 08, 2017 2:11 pm

Posts
230
I think only the Intel Itanium version of Windows XP supported EFI out of the box, because EFI wasn't really a thing back in the early 2000s.

EFI wasn't really a thing used in booting Windows until Windows Vista x64 SP1.


Last edited by Windows Thunderstruck on Sun Nov 04, 2018 6:10 am, edited 2 times in total.

Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 5:40 am 
Reply with quote
Online

Joined
Sat Feb 03, 2018 8:08 pm

Posts
64
They got XP working on UEFI somehow, check out the glorious megathread:https://www.betaarchive.com/forum/viewtopic.php?f=61&t=20327&p=435277#p435277
But yeah, because it wasn't supported I don't think any tools would display properly.
HWINFO also shows boot type, you could always give that a try.


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 8:50 am 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
MrBurgerKing wrote:
They got XP working on UEFI somehow, check out the glorious megathread:https://www.betaarchive.com/forum/viewtopic.php?f=61&t=20327&p=435277#p435277

MrBurgerKing - "They got" - It's me got :) *hehe*

Windows Thunderstruck wrote:
I think only the Intel Itanium version of Windows XP supported EFI out of the box, because EFI wasn't really a thing back in the early 2000s.

EFI wasn't really a thing used in booting Windows until Windows Vista x64 SP1.

No, Vista or Server Longhorn 2008 support EFI boot and AIDA64 displays correctly UEFI Boot - Yes regardless of whether the partition is GPT or MBR. I did an EFI test in VMware - I installed Win2008 Longhorn in EFI mode on GPT:
Image

In the second virtual machine I installed WinVista Longhorn in BIOS on MBR, copied EFI files to the appropriate locations, switched the machine to EFI. Now Vista boot and AIDA64 correctly displays the information:
Image

I do not know how AIDA64 detects UEFI but certainly not by checking if the partition is GPT


Last edited by Beta12 on Sun Nov 04, 2018 10:20 am, edited 1 time in total.

Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 9:48 am 
Reply with quote
FTP Access
Offline

Joined
Tue Aug 08, 2017 2:11 pm

Posts
230
I know that booting off EFI on a GPT partition on 64 bit Windows Vista was actually meant for the original release. (before SP1), but it was apparently delayed because of a lack of supported hardware during Vista's beta phase. So actual support was introduced in SP1.

Beta12, I wonder if you can test this EFI and GPT thing on a later build, (eg 5472, 5600, 5744 or 5840?).


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 10:35 am 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
Windows Thunderstruck wrote:
Beta12, I wonder if you can test this EFI and GPT thing on a later build, (eg 5472, 5600, 5744 or 5840?).

Yet Longhorn Server2008 6001.16497 is later build (this is SP1) :|
Image

AIDA64 displays ok UEFI Boot - Yes on GPT - look on my screenshot in previous (edited) post.


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 10:49 am 
Reply with quote
FTP Access
Offline

Joined
Tue Aug 08, 2017 2:11 pm

Posts
230
Beta12 wrote:
Windows Thunderstruck wrote:
Beta12, I wonder if you can test this EFI and GPT thing on a later build, (eg 5472, 5600, 5744 or 5840?).

Yet Longhorn Server2008 6001.16497 is later build :| AIDA64 displays ok UEFI Boot - Yes on GPT - look on my screenshot in previous (edited) post.


I am asking if it is possible with EFI and GPT from the start, as you did on Longhorn Server 6001.16497.

Is this EFI and GPT configuration possible on later client builds, like 5472, 5600, 5744 and 5840 from the start instead of starting with BIOS and MBR?


Last edited by Windows Thunderstruck on Sun Nov 04, 2018 11:17 am, edited 1 time in total.

Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:16 am 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
Windows Thunderstruck wrote:
And I was asking if it was possible with EFI and GPT from the start, as you did on Longhorn Server 6001.16497.

Vista 5384.4 have EFI files but does not start with a DVD in EFI mode.

But it does not matter. The topic is how to detect if the system is running in EFI mode. WinXP x64 system can not be installed in EFI mode (at least for now I do not know how). You must install it in Legacy mode, copy EFI files and switch firmware to EFI.


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:20 am 
Reply with quote
FTP Access
Offline

Joined
Tue Aug 08, 2017 2:11 pm

Posts
230
Hmm, by copying EFI files from a Vista or Server 2008 pre-release to boot up XP x64 on EFI?

Probably not without some heavy modification, as shown on that megathread: viewtopic.php?f=61&t=20327&p=435277#p435277


Last edited by Windows Thunderstruck on Sun Nov 04, 2018 12:08 pm, edited 1 time in total.

Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:27 am 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
Windows Thunderstruck wrote:
Hmm, by copying EFI files from a Vista or Server 2008 pre-release to boot up XP x64 on EFI?

Probably not without some heavy tweaking, as shown on that megathread: viewtopic.php?f=61&t=20327&p=435277#p435277


Oh my God - the next one that refers to my post :x :x :x - more than half of the posts in this megathread is mine *hehe* *hehe* *hehe*

Yes, just copy a few files and create the appropriate BCD file - this is not "heavy tweaking" :D :D

Please read the whole "megathread" carefully.


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:34 am 
Reply with quote
FTP Access
Offline

Joined
Tue Aug 08, 2017 2:11 pm

Posts
230
A particuliar point of interest:

One of the posts in the megathread mentions 5219 32-bit having a winload.efi and it used boot.ini in bootmgr instead of BCD.

And that it worked to actually boot up XP, even with SP3.


Last edited by Windows Thunderstruck on Sun Nov 04, 2018 3:29 pm, edited 3 times in total.

Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:37 am 
Reply with quote
FTP Access
User avatar
Offline

Joined
Sun Feb 12, 2017 12:50 am

Posts
42

Favourite OS
Windows
but there is no Windows XP with UEFI boot
the video posted shows absolutely nothing !!!
they are forced mod with Windows Vista files
Windows support in UEFI mode starts with Windows Vista (Server 2008)
Before UEFI existed only for macOS


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 11:38 am 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
Windows Thunderstruck wrote:
I kinda want to test this out, please give me some clear directions on how to do this in VMWare.

No problem - check PM

condor.07 wrote:
the video posted shows absolutely nothing !!!

Which video?


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Sun Nov 04, 2018 1:33 pm 
Reply with quote
Donator
User avatar
Offline

Joined
Sun Aug 12, 2012 4:33 pm

Posts
1757

Location
Czechia

Favourite OS
MinWin
condor.07 wrote:
but there is no Windows XP with UEFI boot
the video posted shows absolutely nothing !!!
they are forced mod with Windows Vista files
Windows support in UEFI mode starts with Windows Vista (Server 2008)
Before UEFI existed only for macOS

And who even claims that Windows XP supported UEFI? As far as I know, some members of this forum have successfully transplanted the Windows Vista boot manager to XP and used it to boot XP in UEFI mode. There even is a link to that thread in previous posts; you would have seen it if you had read them before posting.

_________________
Image
AlphaBeta, stop brainwashing me immediately!


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Tue Nov 06, 2018 6:37 pm 
Reply with quote
Donator
Offline

Joined
Sat Aug 22, 2009 4:28 pm

Posts
4264
Image

You can try this console-based app that I made: https://cdn.discordapp.com/attachments/ ... isefi2.exe

Will it work?

EDIT: Someone removed the file I uploaded to the BetaArchive Discord. So I reuploaded it to anonfiles instead:
https://anonfiles.com/T3G392kdb6/isefi2_exe

_________________
Longhorn Packet 1.21 - Solves most of the problems with Longhorn Setup
[GUIDE] How to dump clean/untouched images from CD discs
Longhorn Music Album (FLAC) | 523.31 MB | 17 tracks | Donators Discussion Forum


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Tue Nov 06, 2018 10:13 pm 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
Unfortunately, it detects as a BIOS :(

I threw file in the hex editor and it looks like it uses windows files: kernel32.dll, msvcrt.dll and function: GetFirmwareEnvironmentVariableW but WinXP x64 does not support EFI.

The application would have to be able to use EFI Runtime Services directly without using Windows files. I found something like that: Runtime Services function call wrappers:
Code:
   GET_TIME,
   SET_TIME,
   GET_WAKEUP_TIME,
   SET_WAKEUP_TIME,
   GET_VARIABLE,
   GET_NEXT_VARIABLE,
   SET_VARIABLE,
   QUERY_VARIABLE_INFO,
   GET_NEXT_HIGH_MONO_COUNT,
   UPDATE_CAPSULE,
   QUERY_CAPSULE_CAPS,


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Wed Nov 07, 2018 12:22 am 
Reply with quote
Donator
Offline

Joined
Sat Aug 22, 2009 4:28 pm

Posts
4264
Beta12 wrote:
Unfortunately, it detects as a BIOS :(

I threw file in the hex editor and it looks like it uses windows files: kernel32.dll, msvcrt.dll and function: GetFirmwareEnvironmentVariableW but WinXP x64 does not support EFI.

The application would have to be able to use EFI Runtime Services directly without using Windows files. I found something like that: Runtime Services function call wrappers:
Code:
   GET_TIME,
   SET_TIME,
   GET_WAKEUP_TIME,
   SET_WAKEUP_TIME,
   GET_VARIABLE,
   GET_NEXT_VARIABLE,
   SET_VARIABLE,
   QUERY_VARIABLE_INFO,
   GET_NEXT_HIGH_MONO_COUNT,
   UPDATE_CAPSULE,
   QUERY_CAPSULE_CAPS,

I'm not sure if it's possible to do that without using kernel-mode privileges (.sys), but maybe it's possible. I'll try it sometime soon.

_________________
Longhorn Packet 1.21 - Solves most of the problems with Longhorn Setup
[GUIDE] How to dump clean/untouched images from CD discs
Longhorn Music Album (FLAC) | 523.31 MB | 17 tracks | Donators Discussion Forum


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Mon Nov 12, 2018 3:40 pm 
Reply with quote
FTP Access
Offline

Joined
Wed Apr 13, 2011 6:22 pm

Posts
29

Favourite OS
Solaris 10 u8
Pwned wrote:
I'm not sure if it's possible to do that without using kernel-mode privileges (.sys), but maybe it's possible. I'll try it sometime soon.


It shouldn't be possible at all because you're missing the pointers to the runtime services. On Macs booting in CSM based BootCamp, Apple introduced an SMBIOS table with pointers to the RunTime Services table (struct). But that is Mac specific. The only way to do it otherwise is to look for the signature (0x56524553544e5552) in all the memory until you find it, but that is very complicated if you don't have access to the memory maps.

If you have the pointer and are in ring0 (kernel-land), you should be able to run them, otherwise there's no chance. Generally, after you call ExitBootServices and SetVirtualAddressMap you should save a copy of those pointers (converted with ConvertPointer() ) somewhere. In the Windows design it's the HAL that should do that because the HAL is the one that implements HalQueryEnvironmentVariableInfoEx, HalSetEnvironmentVariableEx. In older Windows NT releases that emulated the ARC BIOS you had HalGetEnvironmentVariable and HalSetEnvironmentVariable for the same purpose. The variables used by osloader.exe were created at runtime by the ARC emulator (NTLDR) from boot.ini.


Top  Profile
 PostPost subject: Re: How detect if WinXP boot in EFI or BIOS?        Posted: Tue Nov 13, 2018 7:36 pm 
Reply with quote
FTP Access
Offline

Joined
Sat Sep 21, 2013 11:19 am

Posts
85

Favourite OS
WinXP SP2 x64 5.2.3790
d3vi1 wrote:
.

Maybe you're right, but I'm interested in one thing - why does not the graphics driver work if we run WinXP in EFI mode?

All other drivers work - Ethernet, Wifi, Sound, USB etc.


Top  Profile
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 19 posts ] 




Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  

All views expressed in these forums are those of the author and do not necessarily represent the views of the BetaArchive site owner.

Powered by phpBB® Forum Software © phpBB Group

Copyright © 2006-2018

 

Sitemap | XML | RSS