Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

away8907

macrumors newbie
Nov 23, 2011
22
0
'murrca!
My guess is the the Apple provided Runtime DXE will NOT convert the pointers on my Runtime Table, it will only convert them on the original Runtime Table. So I'm converting all the pointers in my RS table.

My original problem was that the DXE was unloaded on ExitBootServices since the USB Handle from which the DXE was loaded disappeared. I wrote a new loader that loads the DXE to memory and executes it straight from there. It does not free the memory pool before exiting so the memory buffer containing the DXE remains allocated. It's also allocated as EfiRuntimeCode, so that the OS doesn't mess it up.

You have 3 posts left!

24 hour wait period, but if you go to my profile I put my email up for you.

Hmm. Something about that makes me think to check SMBIOS, I've gotta do some more reading.
 

away8907

macrumors newbie
Nov 23, 2011
22
0
'murrca!
I've been staring at the efi shell too long, beer is helping me along.... I've been trying to one by one, start having the BT's we don't need convert to basically garbage, something that still goes to memory, but is unable to be called, therefore doesnt conflict. So far it's pretty messy, and I'm not a huge fan of intentionally coding in memory leaks before we even boot a kernel, but I took a step outside the box this time!

I'll keep plugging away :(
 

komoornik

macrumors regular
Jul 29, 2011
135
0
I think I've read most of the posts.

You're mainly talking about dual GPU macbook's - and the problems HD 3000 is making.

What about the 2011 MBA's with just the HD 3000 under the hood? Will it still have all those GPU problems as of now ?
 

d3vi1

macrumors member
May 18, 2011
68
10
Frankfurt am Main, Germany
I think I've read most of the posts.

You're mainly talking about dual GPU macbook's - and the problems HD 3000 is making.

What about the 2011 MBA's with just the HD 3000 under the hood? Will it still have all those GPU problems as of now ?

Not really... At this stage, the application works like a charm regardless of the number of GPUs. It's able to identify all of them. It's able to identify the currently active one. It can load the VGA Option ROM of any VGA card from the firmware, the PCI BAR or from the filesystem. The only two problems that I'm still trying to solve are the VGA emulation (required for Windows Vista SP1+ and Windows 7 GA/SP1, but not Windows 7 SP2 or Windows 8) and the RS->QueryVariableInfo implementation (required for all Windows releases for BCD editing).

For the VGA emulation, POST-ing the OptionROM with the CSM doesn't work for some odd reason, so I'm trying to POST it using x86-emu from Scitech.
For the RS-QueryVariableInfo, my implementation works before SetVirtualMap is requested, but afterwards (during the OS runtime) it doesn't yet work. For some reason, I'm not using RS->ConvertPointer properly. I'm either using it on pointers that have already been converted, or not using it on some other pointers that are needed by my implementation at runtime. Unfortunately, I don't know how to debug it yet.

Once these problems are solved, the application will be released as version 1.0.

For version 2, I'll add support for selecting the VGA card to be used by Windows (instead of using the same one the EFI is using), the ability to shutdown any VGA card (in multi-GPU setups), a configurable boot loader to chain load, configurable SATA/IDE, and a nice setup screen for all of these.

Optionally, I'm planning to embed my application as a DXE driver straight in the Flash of the Macs, so that it runs automatically before the boot-picker, regardless of the OS being used.

This should also make all UEFI compliant Linux distributions work like a charm.
 

away8907

macrumors newbie
Nov 23, 2011
22
0
'murrca!
For the VGA emulation, POST-ing the OptionROM with the CSM doesn't work for some odd reason, so I'm trying to POST it using x86-emu from Scitech.
For the RS-QueryVariableInfo, my implementation works before SetVirtualMap is requested, but afterwards (during the OS runtime) it doesn't yet work. For some reason, I'm not using RS->ConvertPointer properly. I'm either using it on pointers that have already been converted, or not using it on some other pointers that are needed by my implementation at runtime. Unfortunately, I don't know how to debug it yet.

.

Have you had any luck differentiating the needed pointers vs unneeded with OPTIONAL_PTR? My goal last night was to basically have everything convert, and have the unneeded pieces flagged. I managed to figure that out for the most part, but I couldn't find a way to get rid of the extra values before it bugged out on me.
 

d3vi1

macrumors member
May 18, 2011
68
10
Frankfurt am Main, Germany
Have you had any luck differentiating the needed pointers vs unneeded with OPTIONAL_PTR? My goal last night was to basically have everything convert, and have the unneeded pieces flagged. I managed to figure that out for the most part, but I couldn't find a way to get rid of the extra values before it bugged out on me.
There are 4 clusters that make sense. So we have 16 combinations. MacOS is an excellent candidate for testing because it crashes without a functional GetVariable.

I tested 3 combinations until now and I'll test the rest after the weekend.
 
Last edited:

gotofbi

macrumors newbie
Nov 28, 2011
23
0
So, what I've tried:
Hooking to the virtual address change event:
Code:
Status = BS->CreateEvent ( EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE, TPL_NOTIFY, VariableClassAddressChangeEvent, NULL, &mVirtualAddressChangeEvent);
Status = BS->CreateEvent ( EVT_SIGNAL_EXIT_BOOT_SERVICES, TPL_NOTIFY, ExitBootServicesEvent, NULL, &mRuntimeServicesEvent);

My attempt to create a new RS table with the QueryVariableInfo added.
Code:
EFI_RUNTIME_SERVICES     *NewRS;
ST->Hdr.Revision=((revision << 16) | version);
Status=BS->AllocatePool(EfiRuntimeServicesCode, sizeof(EFI_RUNTIME_SERVICES), &NewRS);
NewRS->Hdr.Signature             = RS->Hdr.Signature;
NewRS->Hdr.Revision              = ((revision << 16) | version);
NewRS->Hdr.HeaderSize            = sizeof(EFI_RUNTIME_SERVICES);
NewRS->Hdr.CRC32                 = 0;
NewRS->Hdr.Reserved              = RS->Hdr.Reserved;
NewRS->GetTime                   = RS->GetTime;
NewRS->SetTime                   = RS->SetTime;
NewRS->GetWakeupTime             = RS->GetWakeupTime;
NewRS->SetWakeupTime             = RS->SetWakeupTime;
NewRS->SetVirtualAddressMap      = RS->SetVirtualAddressMap;
NewRS->ConvertPointer            = RS->ConvertPointer;
NewRS->GetVariable               = RS->GetVariable;
NewRS->GetNextVariableName       = RS->GetNextVariableName;
NewRS->SetVariable               = RS->SetVariable;
NewRS->GetNextHighMonotonicCount = RS->GetNextHighMonotonicCount;
NewRS->ResetSystem               = RS->ResetSystem;
NewRS->UpdateCapsule             = RS->UpdateCapsule;
NewRS->QueryCapsuleCapabilities  = RS->QueryCapsuleCapabilities;
NewRS->QueryVariableInfo         = QueryVariableInfo;
ST->RuntimeServices=NewRS;
ST->Hdr.Revision=((revision << 16) | version);
ST->Hdr.CRC32=0;
RS->Hdr.CRC32=0;
Status=BS->CalculateCrc32 (ST, ST->Hdr.HeaderSize, (VOID *) &ST->Hdr.CRC32);
Status=BS->CalculateCrc32 (RS, RS->Hdr.HeaderSize, (VOID *) &RS->Hdr.CRC32);

Virtaddresschange Event Handler
Code:
RS->ConvertPointer (0x0, (VOID **) &RS->GetTime);
RS->ConvertPointer (0x0, (VOID **) &RS->SetTime);
RS->ConvertPointer (0x0, (VOID **) &RS->GetWakeupTime);
RS->ConvertPointer (0x0, (VOID **) &RS->SetWakeupTime);
RS->ConvertPointer (0x0, (VOID **) &RS->ResetSystem);
RS->ConvertPointer (0x0, (VOID **) &RS->GetNextHighMonotonicCount);
RS->ConvertPointer (0x0, (VOID **) &RS->GetVariable);
RS->ConvertPointer (0x0, (VOID **) &RS->SetVariable);
RS->ConvertPointer (0x0, (VOID **) &RS->GetNextVariableName);
RS->ConvertPointer (0x0, (VOID **) &RS->QueryVariableInfo);
RS->ConvertPointer (0x0, (VOID **) &RS->UpdateCapsule);
RS->ConvertPointer (0x0, (VOID **) &RS->QueryCapsuleCapabilities);

My guess is the the Apple provided Runtime DXE will NOT convert the pointers on my Runtime Table, it will only convert them on the original Runtime Table. So I'm converting all the pointers in my RS table.

My original problem was that the DXE was unloaded on ExitBootServices since the USB Handle from which the DXE was loaded disappeared. I wrote a new loader that loads the DXE to memory and executes it straight from there. It does not free the memory pool before exiting so the memory buffer containing the DXE remains allocated. It's also allocated as EfiRuntimeCode, so that the OS doesn't mess it up.

You have 3 posts left!


Awesome work!!!

I have Macbook 5,2 with Intel 320 SSD.

I cant wait to see your final work but I will be very happy to be one of beta tester if you allow.

Please let me know if I can participate your project.


Thanks
 

gotofbi

macrumors newbie
Nov 28, 2011
23
0
OK, I read entire thread couple times and decided to try without d3vi1 program.

However, I ended up few questions regarding further test

1. Is there anyway to boot up to EFI from Windows7 install device?(USB)
before I proceed wiping everything, I couldnt find usb device from efi sheel(tried with refit fs0~fs4) Without support of USB, I have to burn DVD to do it and I am pretty sure I will struggle with Autounattend.xml

SelfAnswer - I wasnt able to do this because my USB was formatted as NTFS. If I do it as FAT32, I can boot it from refit.

2. Is it possible to partition from Disk Manager(OSX) and force from Autounattend.xml to install?
When I read about EFI and Autounattend.xml, I realize I have to make couple partitions to proceed instsallation and to do so, I guess I have to wipeout entire disk drive. I dont mind removing Current Windows (MBR) But, If I have to wipe entire drive, I would not even have OSX and If I fail this test, I will have to start back from installing OSX first.

3. Do I have to merge any drivers even if I going to use Autounattend.xml?
I have Macbook 5,2 (Core 2 Duo, MCP79, Geforce 9400M) and confusing whether that I have to integrate geforce driver or not.
Based on my understanding(tell me if Im wrong), All these problems are because of VGA mode ETC ETC. And with help of Autounattend.xml, we dont really need to look up the screen since it will automatically install everything. Isnt that mean that I dont really need to integrate drivers anyway?

Sorry that asking many question but I want to be sure before I process any stuff :)

Thanks
 
Last edited:

gotofbi

macrumors newbie
Nov 28, 2011
23
0
OK, I read entire thread couple times and decided to try without d3vi1 program.

However, I ended up few questions regarding further test

1. Is there anyway to boot up to EFI from Windows7 install device?(USB)
before I proceed wiping everything, I couldnt find usb device from efi sheel(tried with refit fs0~fs4) Without support of USB, I have to burn DVD to do it and I am pretty sure I will struggle with Autounattend.xml

SelfAnswer - I wasnt able to do this because my USB was formatted as NTFS. If I do it as FAT32, I can boot it from refit.

2. Is it possible to partition from Disk Manager(OSX) and force from Autounattend.xml to install?
When I read about EFI and Autounattend.xml, I realize I have to make couple partitions to proceed instsallation and to do so, I guess I have to wipeout entire disk drive. I dont mind removing Current Windows (MBR) But, If I have to wipe entire drive, I would not even have OSX and If I fail this test, I will have to start back from installing OSX first.

3. Do I have to merge any drivers even if I going to use Autounattend.xml?
I have Macbook 5,2 (Core 2 Duo, MCP79, Geforce 9400M) and confusing whether that I have to integrate geforce driver or not.
Based on my understanding(tell me if Im wrong), All these problems are because of VGA mode ETC ETC. And with help of Autounattend.xml, we dont really need to look up the screen since it will automatically install everything. Isnt that mean that I dont really need to integrate drivers anyway?

Sorry that asking many question but I want to be sure before I process any stuff :)

Thanks

Last few hours, I was having fun with AutoUnattend.xml and failed to isntall windows 7 in efi mode.

Please tell me what I am missing.

Code:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
        <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SetupUILanguage>
                <UILanguage>en-US</UILanguage>
            </SetupUILanguage>
            <SystemLocale>en-US</SystemLocale>
            <UILanguage>en-US </UILanguage>
            <UserLocale>en-US </UserLocale>
            <InputLocale>en-US</InputLocale>
            <UILanguageFallback>en-US</UILanguageFallback>
        </component>
        <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<DiskConfiguration>
			   <WillShowUI>OnError</WillShowUI>
			   <Disk>
				  <DiskID>0</DiskID>
				  <WillWipeDisk>true</WillWipeDisk>
				  <CreatePartitions>
					 <CreatePartition wcm:action="add">
						<Order>1</Order>
						<Type>EFI</Type>
						<Size>100</Size>
					 </CreatePartition>
					 <CreatePartition wcm:action="add">
						<Order>2</Order>
						<Type>MSR</Type>
						<Size>128</Size>
					 </CreatePartition>
					 <CreatePartition wcm:action="add">
						<Order>3</Order>
						<Type>Primary</Type>
						<Extend>true</Extend>
					 </CreatePartition>
				  </CreatePartitions>
				  <ModifyPartitions>
					 <ModifyPartition>
						<Order>1</Order>
						<PartitionID>1</PartitionID>
						<Label>System</Label>
					 </ModifyPartition>
					 <ModifyPartition>
						<Order>2</Order>
						<PartitionID>2</PartitionID>
					 </ModifyPartition>
					 <ModifyPartition>
						<Order>3</Order>
						<PartitionID>3</PartitionID>
						<Format>NTFS</Format>
						<Label>Windows</Label>
					 </ModifyPartition>
				  </ModifyPartitions>
			   </Disk>
			</DiskConfiguration>
            <ImageInstall>
                <OSImage>
                    <InstallFrom>
                        <MetaData wcm:action="add">
                            <Key>/IMAGE/INDEX</Key>
                            <Value>4</Value>
                        </MetaData>
                    </InstallFrom>
					<InstallTo>
						<DiskID>0</DiskID> 
						<PartitionID>3</PartitionID> 
					</InstallTo>
                </OSImage>
            </ImageInstall>
            <UserData>
                <AcceptEula>true</AcceptEula>
            </UserData>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <AutoLogon>
                <Enabled>true</Enabled>
                <LogonCount>1</LogonCount>
                <Username>Administrator</Username>
            </AutoLogon>
            <OOBE>
                <SkipMachineOOBE>true</SkipMachineOOBE>
            </OOBE>
        </component>
    </settings>
    <cpi:offlineImage cpi:source="catalog:i:/sources/install_windows 7 ultimatek.clg" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>

I tried to wipeout entire drive by <WillWipeDisk>true</WillWipeDisk> but it failed to do that.

I tried adding partition as well but not successful:
Code:
				  <ModifyPartitions>
					 <ModifyPartition>
						<Order>1</Order>
						<PartitionID>4</PartitionID>
						<Label>System</Label>
					 </ModifyPartition>
					 <ModifyPartition>
						<Order>2</Order>
						<PartitionID>5</PartitionID>
					 </ModifyPartition>
					 <ModifyPartition>
						<Order>3</Order>
						<PartitionID>6</PartitionID>
						<Format>NTFS</Format>
						<Label>Windows</Label>
					 </ModifyPartition>
				  </ModifyPartitions>

I tried to load up AutoUnattend.xml by two method.

1. refit efi shell (fs3: efi/bootx64.efi)
- This does not display anything since there is no VGA driver.
- Im not sure if there is a way to write log file to USB if installation fails.

2. or just normal USB boot (it gives GPT blabla error which I cant remember)

Is there anything that Im missing?
 

d3vi1

macrumors member
May 18, 2011
68
10
Frankfurt am Main, Germany
I tried to load up AutoUnattend.xml by two method.

1. refit efi shell (fs3: efi/bootx64.efi)
- This does not display anything since there is no VGA driver.
- Im not sure if there is a way to write log file to USB if installation fails.

2. or just normal USB boot (it gives GPT blabla error which I cant remember)

Is there anything that Im missing?

Assuming that the AutoUnattend.xml file is correctly written, the installation would still fail at: EFI_RUNTIME_SERVICES->QueryVariableInformation when it tries to create the BCD.

My application tries to solve 4 issues:
1) Add QueryVariableInformation to the RuntimeServices
2) Set the correct VGA registers so that NVidia and AMD accelerated drivers work
3) Emulate the POST-ing of the VGA ROM so that VGA video works
4) Modify the EDID of the monitor so that 1024x768 and 800x600 modes are also added (required for Windows < Windows 7 SP2) in the GraphicsOutput Protocol.

1,2 and 4 would be incredibly easy for Apple to fix. 3, would take a little more work but it's still doable.
1 is required for all Windows releases.
2 is required for accelerated drivers from the GPU vendor.
3 is required for Windows Safe mode and Installer when an accelerated driver is not available (only for Windows < 7SP2).
4 is required for the waving flag part of the windows experience which sometimes gives important messages. In Windows 7 SP2 and Windows 8 there are no resolution dependencies in the Graphics Output Protocol implementation.

I am also assuming that Windows 7 SP2 will behave like Windows 8, since Microsoft declares that the CSM/VGA will not be needed in Windows 7 SP2.
 

gotofbi

macrumors newbie
Nov 28, 2011
23
0
Assuming that the AutoUnattend.xml file is correctly written, the installation would still fail at: EFI_RUNTIME_SERVICES->QueryVariableInformation when it tries to create the BCD.

My application tries to solve 4 issues:
1) Add QueryVariableInformation to the RuntimeServices
2) Set the correct VGA registers so that NVidia and AMD accelerated drivers work
3) Emulate the POST-ing of the VGA ROM so that VGA video works
4) Modify the EDID of the monitor so that 1024x768 and 800x600 modes are also added (required for Windows < Windows 7 SP2) in the GraphicsOutput Protocol.

1,2 and 4 would be incredibly easy for Apple to fix. 3, would take a little more work but it's still doable.
1 is required for all Windows releases.
2 is required for accelerated drivers from the GPU vendor.
3 is required for Windows Safe mode and Installer when an accelerated driver is not available (only for Windows < 7SP2).
4 is required for the waving flag part of the windows experience which sometimes gives important messages. In Windows 7 SP2 and Windows 8 there are no resolution dependencies in the Graphics Output Protocol implementation.

I am also assuming that Windows 7 SP2 will behave like Windows 8, since Microsoft declares that the CSM/VGA will not be needed in Windows 7 SP2.

Thank you for your reply d3vi1.

I guess there is no way that I can install windows 7 without your application.

Getting Windows 7 SP2 is impossible since its not out :p
and I really do not want to install Windows 8 since its too buggy.

Hopefully I can participate your beta program.

If there is a way to install without your program, that would be perfect but based on my knowledge and your answers, its quite impossible :(


Thanks
 

gotofbi

macrumors newbie
Nov 28, 2011
23
0
Thank you for your reply d3vi1.

I guess there is no way that I can install windows 7 without your application.

Getting Windows 7 SP2 is impossible since its not out :p
and I really do not want to install Windows 8 since its too buggy.

Hopefully I can participate your beta program.

If there is a way to install without your program, that would be perfect but based on my knowledge and your answers, its quite impossible :(


Thanks

I tried couple more things but still no good :(

1. I tried installing it from 1024x786 resolution.
As some other mentioned before, I see the glowing windows logo but the logo glows FOREVER

2. I also tried to install windows 7 to fresh hard disk (no partition at all)
In order to do this work, I had to install rEFIt to usb thumb drive.

so usb1 has Windows 7 image with AutoUnattend.xml
usb2 has nothing but rEFIt so I can boot into EFI shell.
BUT still no good :(

I will try windows 8 tomorrow see how it goes.
 

PrimroseGuy

macrumors newbie
Nov 30, 2011
1
0
How about also making USB devices non-bootable?

For version 2, I'll add support for selecting the VGA card to be used by Windows (instead of using the same one the EFI is using), the ability to shutdown any VGA card (in multi-GPU setups), a configurable boot loader to chain load, configurable SATA/IDE, and a nice setup screen for all of these.

Do you think there can be anything done to also take USB devices out of the boot order sequence?

I have one of these WD My Book Essential 2 Tb drives I picked up from Costco (http://www.wdc.com/en/products/products.aspx?id=240). If I try to boot up with Win 7 with it attached it causes my 2011 Mac Mini i7 machine to sit there on a black screen. No problem leaving it attached with OSX.

The standard solution with a conventional BIOS machine would be to to get USB removable devices out of the boot order, but that's not in the cards with this UEFI system. (http://community.wdc.com/t5/Other-E...ug-WD-Elements-from-USB-port/m-p/106268#M1496)

I'm also going to try re-partitioning and re-formatting it to see if that makes a difference.
 

3ll0s

macrumors newbie
Dec 5, 2011
5
0
I really like this progress!!

When you pull this off you have made the mac community a VERY nice tool for helping stupid operating systems to understand a normal EFI machine.

I'm still working on my c++ skills (i can do C#/VB.Net, PHP and Java) so i think i'm no use to you at coding something up, yet.
But I am available as a tester, i have a brand new MBP 15" (1 week old) and i don't really care for my OSX installation :D
If you need extra testers, my e-mail is in my profile!

I can also help you with the technical stuff that doesn't involve programming.
 

ccMSC

macrumors newbie
Oct 4, 2011
8
0
Hey d3vi1, great to see you're making progress! I'm really looking forward to the final product. I don't know if there's anything I could do to help you at this point, but I have a MBP8,2 (15" late-2011) and a MBP5,5 (13" mid-2009) and I'd love to test it on both. Let me know.

When you pull this off you have made the mac community a VERY nice tool for helping stupid operating systems to understand a normal EFI machine.
Seems to me it's more like a very nice tool for helping normal operating systems to understand a stupid EFI machine... but that's just an opinion, of course. :p
 

3ll0s

macrumors newbie
Dec 5, 2011
5
0
Not really, windows is to fault here, asking for ancient bios only functions, real mode, int10h, vga option rom (vga of all things)

there is nothing wrong with apple's efi implementation aside from 1 missing function, msi asus gigabyte etc probably just had to take it, because it is microsoft, and had to emulate it if they were to deliver windows capable machines, just like d3vi1 is doing now.
 

ccMSC

macrumors newbie
Oct 4, 2011
8
0
Not really, windows is to fault here, asking for ancient bios only functions, real mode, int10h, vga option rom (vga of all things)

there is nothing wrong with apple's efi implementation aside from 1 missing function, msi asus gigabyte etc probably just had to take it, because it is microsoft, and had to emulate it if they were to deliver windows capable machines, just like d3vi1 is doing now.
Well, in fairness, they're both to blame. Windows definitely expects things from the EFI that it shouldn't. But at the same time, Apple didn't fully implement their EFI according to standards, and I don't think Windows is the only OS that has trouble booting from it. It's also partly NVidia and AMD's fault for making their drivers expect weird things from the video card (even in Windows 8, which works fine in all other respects, you can't use accelerated graphics because the drivers depend on the VGA registers).

So...the whole thing is a mess of improper design, really. I'm just glad that somebody has the know-how and the willpower to sort it all out. :D
 

624636

Suspended
Oct 10, 2011
103
0
Hi,

May i can test when you are ready, I have a virgin iMac quad-core late 20K9 ready for it.

Since I install Windows 8 in EFI mode I dream about a solution for my ATI accelerated part whose definitely not working. I think I will install Windows 7 x64 in EFI mode.

I've notice that AHCI controler is working without the solution here : http://www.insanelymac.com/forum/index.php?showtopic=126089&st=320

So your program will adress this problem too.

Maybee I don't understand the problem but for me is just Microsoft works with EFI ver 2.x and Apple make computer with EFI ver 1.1 (development stopped in 2K5).

jl's dreaming
 
Last edited:

gotofbi

macrumors newbie
Nov 28, 2011
23
0
Worked

Finally with the information and help from d3vi1, I was able to install Windows 7 under GUID partition (Macbook 5,2).

Nicely enabled AHCI and that was only my reason to do this mess.

Thanks to d3vi1 once again.
 

Attachments

  • efi.jpg
    efi.jpg
    297.5 KB · Views: 676

624636

Suspended
Oct 10, 2011
103
0
... and everything works (graphic card ?).

Couldn't wait for a post of d3vi1 !

Would you like to say the detail of your installation process ?

Is it necessary to modify "iso" of windows ?
 

Sincci

macrumors 6502
Aug 17, 2011
284
65
Finland
Man, I really would like to test this one with my MBP 5.5. d3vi1, if you need another guinea pig for testing, I'm volunteering :D
 

osergios

macrumors newbie
Dec 2, 2011
1
0
Volunteer i'm taking a step forward

I hereby give notice of my intention to volunteer for the testing purposes of the installation method devised by a brilliant person called d3v1l that permits the installation of efi semiware operation system (windows 7 x64 version) in an EFI machine.

I don't think that i can be more formal than that.

My machine is a MakBook Pro 8,2 late 2011

and i have the option of testing with a brand new SSD 120 GB
 

624636

Suspended
Oct 10, 2011
103
0
Is the bootcamp panel works ?

When AHCI mode is activated, the bootcamp panel doesn't work for me and I read that is the 'Start Panel' in it whose doesn't work. Now i'm wodering "is it possible to bypass this 'Start panel' (we just have to press Alt/Option button on startup) and configure the trackpad/magic mouse ?" because it's very annoying.

NB: When AHCI mode is activated you couldn't choose to start on windows partition in the 'pref panel' of Mac OS X because on start up it switch to Bios Mode and it doesn't found the partition ('Windows partition' is still listed).

Thanks
 

archaic

macrumors newbie
Oct 9, 2011
7
0
d3vi1 long time without hearing you, waiting for good news :)

Finally with the information and help from d3vi1, I was able to install Windows 7 under GUID partition (Macbook 5,2).

Nicely enabled AHCI and that was only my reason to do this mess.

Thanks to d3vi1 once again.

gotofbi would u please tell us how you managed to do it or will u die with that secret :)
 

ccMSC

macrumors newbie
Oct 4, 2011
8
0
NB: When AHCI mode is activated you couldn't choose to start on windows partition in the 'pref panel' of Mac OS X because on start up it switch to Bios Mode and it doesn't found the partition ('Windows partition' is still listed).
Interesting, haven't heard this bit before. Is there any way to work around it, or do you need rEFIt to boot Windows by default?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.