vinaypundith / bettercamp

A super simple script to automate hardware drivers setup for Microsoft Windows on older Apple Macintosh computers
14 stars 3 forks source link

MacbookPro5,3 - Macbook Pro 15” Mid 2009 with GF9400M only without Legacy Bios Boot #6

Open catchthewind opened 3 months ago

catchthewind commented 3 months ago

I have got MacbookPro5,3 - Macbook Pro 15” Mid 2009 with GF9400M only without Legacy Bios Boot. I tried over 15 different iso and dvd but this Macbook boots only in EFI mode and while trying to boot legacy bios WINDOWS installer it aleays goes straight to black screen and showing no screen (caps lock) working after few minutes.

something is blocking legacy boot of win 7,8,10,11 and any other bootable os.

I also tried using working legacy bios mode windows installed on other mac or over usb but it legacy version always goes into black screen and do not work on this Mac.

Unless you have some idea how to try boot and use legacy bios version of windows I will have to install Efi version and try to use your script later..

In the readme you say:

If installing Windows 11 using a USB drive, add Autounattend.xml from this repository to the root of the USB drive

  1. I Couldnt find Autounattend.xml in your repository :( Can you add it ?
  2. Which version of Python should you tested with the script? Can you give exact version number you are using?
  3. My Macbook 15 Mid 2009 has gf9400m ONLY and bootcamp 4.4033 - which steps should I take for this machine to make efi mode install as easy as possible?
  4. Any idea why legacy bios windows installation mode always goes into black screen and maybe some way of fixing it and adding working gf9400m driver to windows installer?

Best and thank you for your help.

Michal

vinaypundith commented 3 months ago

1) Hmph. I didn't realize that the repo didn't have Autounattend.xml. I'll find the file on my computer and upload it, probably tomorrow. Sorry about that. (All that script did was add 2 registry keys to bypass Windows 11's TPM and secure boot checks - if you use Rufus or something to make the installer, with the TPM patch, the effect will be the same)

2) I used Python 3.10, though I think any 3.x should work?

3) Procedure for that should be the same as the 13" 2009 Macbook Pro 5,5 that I used while writing this. Only difference might be the PCI ID of the GPU - I'm not sure if the 15" has the same or not. Here's how to find the GPU's PCI bus ID: https://askubuntu.com/questions/264247/proprietary-nvidia-drivers-with-efi-on-mac-to-prevent-overheating/613573#613573 Compare it with what's in the script (file in fix9400M_EFI/startup.nsh - the format is different, but compare the non-zero numbers). If it's different. I can show you the 2 lines (in startup.nsh) that need to be edited to work. I never had a 15" MacBook, nor know anyone with a 15" of that year, so don't know what it has. Sorry about that.

4) Not sure about the legacy boot fail. Macs can't boot USB drives in legacy mode, but the DVD should have worked. Haven't seen the issue you describe before. sorry :-(

catchthewind commented 3 months ago

Thank you for super fast and detailed reply!!!

  1. If its only that I already have that covered so dont worry about the upload.
  2. Thanks I am getting Python 3.10 to give it another go.
  3. Thanks for pointing that out. I will try to edit startup.nsh myself after running the script if it doesnt work on default pci settings.
  4. I tried many DVDs with different windows 7,8,10, 11 where legacy boot is available and used on other Macbooks but this one goes straight to BLACK SCREEN while choosing legacy Bios boot and stays like that... Caps lock light working but no screen. IT feels like LEGACY BIOS boot cannot use graphics and screen at all on this 15" Mid 2009.
  5. It probably needs adding GF8400M driver into the installer but not sure how to do it?
catchthewind commented 3 months ago

Hello Again,

I installed Windows 11 PRO Version: 10.0.19041.3636 and then Python 3.10 Tried BootCamp folder in bettercamp-main as well as in root of USB I have Bootcamp 4.0.4033

Every time I run your script I get first step done and then error :( Can you tell me what could be wrong with it?

OUtput and error below:

Python 3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 19:00:18) [MSC v.1929 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license()" for more information.

=================== RESTART: D:\bettercamp-main\bettercamp.py ================== MacBookPro5,3 EFI boot mode detected Installing Chainloader to patch nVidia graphics driver bootloop/blank screen when booting in EFI mode Traceback (most recent call last): File "D:\bettercamp-main\bettercamp.py", line 109, in run_boot_camp_installer() File "D:\bettercamp-main\bettercamp.py", line 39, in run_boot_camp_installer bcversion = float(bcversionstring[bcversionstring.find('')+16:bcversionstring.find('CC1222222222222222222222222222222222222222222222222222222222222222222222222222222222222222P')+19]) ValueError: could not convert string to float: ''

catchthewind commented 3 months ago

Hello Again,

I installed Windows 11 PRO Version: 10.0.19041.3636 and then Python 3.10 Tried BootCamp folder in bettercamp-main as well as in root of USB I have Bootcamp 4.0.4033

Every time I run your script I get first step done and then error :( Can you tell me what could be wrong with it?

OUtput and error below:

Python 3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 19:00:18) [MSC v.1929 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license()" for more information.

=================== RESTART: D:\bettercamp-main\bettercamp.py ================== MacBookPro5,3 EFI boot mode detected Installing Chainloader to patch nVidia graphics driver bootloop/blank screen when booting in EFI mode Traceback (most recent call last): File "D:\bettercamp-main\bettercamp.py", line 109, in run_boot_camp_installer() File "D:\bettercamp-main\bettercamp.py", line 39, in run_boot_camp_installer bcversion = float(bcversionstring[bcversionstring.find('')+16:bcversionstring.find('CC1222222222222222222222222222222222222222222222222222222222222222222222222222222222222222P')+19]) ValueError: could not convert string to float: ''