Menu

refind boot from CD on MacPro 5,1 always goes straight to Windows 10 legacy installation

2021-02-17
2021-02-19
  • Ken Cunningham

    Ken Cunningham - 2021-02-17

    Hello, all.

    I plan to upgrade my video card in my MacPro 5,1 to a card that has no Apple UEFI and therefore no boot screen and no "option-boot" to select the active disc to boot. This works at present with various additional EFI software, which I have installed at the moment on a USB key in the EFI folder.

    However, in so doing, I lose the ability to "option-boot" and select the active disk to use for an EFI boot (as there is no video until the system boots). Therefore, if there are any problems that might arise, I could find myself in an unbootable state and have to start reassembling the hardware.

    I was hoping that ReFind might fill in there, by burning the ReFind iso CD and then forcing it to boot using the "C" key during bootup. I hope to basically replicate what you see "option-booting" using ReFind.

    This does in fact work, to a degree -- the ReFind 0.13 iso, burned to a CD, boots the system. But I don't see the usual list of drives that I might select to boot from at that point, and it seems to always just go straight to loading my Windows 10 partition that is installed (at present) in "Legacy Mode" on one of the drives.

    I was wondering why I'm not seeing the usual menu of systems to select from after ReFind boots. The configuration file was untouched when I burned the iso.

    And -- any thoughts you might have on a better method.

    Best,

    Ken

    My setup:

    MacPro 5,1
    currently an Apple supported Sapphire 7950 card, soon to hopefully be an unflashed RX 580
    Five drives:
    Mojave on one drive
    Copy of Mojave on another
    Windows 10 on another
    BigSur 11.2 on another
    One with no OS
    USB drive with EFI folder with support software for BigSur and RX 580 (works now)
    CD/DVD drive

    a selection (10 or so) USB spinning disk drives for backup, etc

     

    Last edit: Ken Cunningham 2021-02-17
  • Roderick W. Smith

    Any video card, on any computer, requires firmware to work with the computer's firmware in order to create pre-boot displays. All Intel-based Macs use EFI firmware, and older PC video cards only supported BIOS firmware, so they won't normally work with Macs. Newer PC video cards are designed to work with UEFI-based PCs, so they normally include EFI/UEFI firmware, but I gather that a lot of these still don't work with Macs, since Apple does things a bit differently than others when it comes to EFI implementations. (Most Macs still use EFI version 1.x, whereas the vast majority of EFI-based PCs use EFI version 2.x, aka UEFI. There may be other issues, too.) You may want to ask about this on a Mac forum, since this is really a Mac-specific issue, and other Mac users try to do what you're attempting and may be able to offer some advice.

    Where this intersects with rEFInd is that rEFInd is an EFI program that relies on video support in the firmware. If the computer's EFI can't "talk" to the video card's firmware, then rEFInd won't be able to produce a display. It sounds to me like this is what's happening in your early attempts. There's nothing that rEFInd by itself can do to overcome this problem.

    There is one potential/theoretical workaround that involves rEFInd, though: rEFInd supports loading EFI drivers. This is mostly used for loading filesystem drivers so that rEFInd can read Linux kernels from Linux-native filesystems; however, it could theoretically enable rEFInd to load a video driver for a video card. You would need to obtain a driver that's compatible with your video card, though. There's also no guarantee that rEFInd's driver-loading code would work with the combination of that video driver and Apple's EFI. As I said, rEFInd's driver-loading features are intended for, and tested mainly with, filesystem drivers. I have heard of some other drivers (like for NVMe devices) working, but I don't recall hearing of anybody successfully loading a video driver this way. I also don't have pointers on relevant drivers.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-17

    Thanks for response. The new video card works, that's not a problem. Just mentioned that so you'd see the "why". It's not even installed yet.

    I'm currently trying to get ReFind cd-boot working on an established, Apple-supported, properly EFI'd Sapphire 7950 that works normally now with option boot.

    But -- booting from the Refind CD just shows a flashing cursor in the upper left of the screen for a few seconds -- then boots Windows 10 from it's fdisk drive. No guid discs, no icons, no options. It's like it's not scanning at all.

    So I'm trying to understand why the cd boot doesn't show me anything at all.

     
  • Roderick W. Smith

    The video card working in macOS (or Windows or Linux or any other OS) is not the issue. My point is that rEFInd relies on the EFI for video support in a way that OSes don't. That's why you're seeing neither a rEFInd menu nor Apple's own boot manager menu -- Apple's EFI is not working with the video card's firmware.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-18

    I'm starting to regret ever mentioning the RX 580, which I don't have installed.

    I do have installed a perfectly working 7950, with an Apple EFI that shows the proper screen on option-boot.

    I apologize if mentioning the RX580 steered you wrongly.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-18

    I'll try the CD in a different computer.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-18

    That CD does the same thing in a different computer. And then, after a while, comes up the message "No bootable device." Well now I wonder if I made the CD incorrectly... I will try some other methods of making it.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-18

    Here's an interesting find.

    If I "Option-Boot" with the CD in the CD drive, it shows the CD has two different boot options available. "Windows" and "EFI".

    If I select the "EFI" version of the CD, it brings up ReFind as expected.

     
  • joevt

    joevt - 2021-02-18

    Flashing underline cursor means legacy BIOS has already started - boot is out of your control at that point except if there's a legacy booter from Windows or Linux with a menu to select other legacy booters - there's no EFI after legacy BIOS starts unless you're booting DUET but that would be really weird: EFI -> CSM (BIOS on EFI) -> DUET (EFI on BIOS). You didn't show that the rEFInd 0.13 iso boots the system because you didn't see the rEFInd menu appear (actually you said it doesn't show the usual list of items - but you didn't say it showed any items so I don't know if rEFInd booted at all).

    GPUs with GOP driver can be used with EFI 1.1 Macs with some work. RefindPlus has code that can load and use GOP to display its menu. Some GOP drivers require some modifications to Boot Services (add CreateEventEx) and the System Table (version number changed from 1.1 to 2.3). RefindPlus can make those changes.

    The changes to enable GOP can be executed before the Startup Manger starts (hold Option key at boot) using the Driver#### and DriverOrder EFI NVRAM variables. The Startup Manager probably requires UGA driver to draw its menu so a UGA on GOP driver will also be required (rEFInd can use GOP or UGA to draw its menus). It seems to me that it may be useful to have a version of RefindPlus (call it RefindEarly) that can be loaded by Driver#### to do all the EFI modification stuff (load drivers and patches) so that the RefindPlus app only needs to do it's menu and boot loader stuff. This way the Startup Manger can benefit from RefindEarly and RefindPlus can be bypassed when not needed.

    What is the format of the CD? If you have a 7950 then Option Boot should work. When you see the Startup Manager, insert the CD. It should appear in the Startup Manager. What does it look like? What's it called in the Startup Manager menu? I guess it should have a CD icon and say "EFI Boot" unless there's a .VolumeIcon.icns file and/or it's an HFS+ partition with a blessed folder and blessed file and a .disk_label. A USB would be easier to create, but I understand the point of the CD is to be able to press the C key without a working GPU. But I wonder if the C key works without a working GPU? Instead of trying the CD in a different computer, try a different CD in the same computer (make a macOS installer DVD?)

    Back to the Driver#### idea. Even if it worked, it will stop working if you zap the PRAM. So that CD idea is a good fallback if it can work. But if the Driver#### idea can work then there won't be a reason to zap the PRAM.

     
  • joevt

    joevt - 2021-02-18

    Ok, you need to get rid of the legacy boot ability of the CD because I think it's defaulting to that. I think you should be able to create a HFS+ disk image with rEFInd (use the --ownhfs install option), use bless --info on the volume to see if it's blessed properly. If not, use the sudo bless --folder .... -file ... option to bless it properly. eject and burn the CD and try the C key again. If that works then try with the non-Mac GPU.

     
  • Ken Cunningham

    Ken Cunningham - 2021-02-19

    Thanks for taking the time. I will try that.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.