Replies: 6 comments 9 replies
-
Hi @0nelight I`ve tried the method above. The .nsh-file is read but automatically kicks me out to the shell terminal and neither commands on the file are read by the shell. I`ve recorded what happened in Slo-Mo, just so it could be read in time. Here are some prints: I`ve ajusted the script to the correct paths: And, here`s the rEFInd.config menuentry: Any ideas why the script didn`t worked? Thanks again, |
Beta Was this translation helpful? Give feedback.
-
So the following nsh-file works for me - but only with the compiled version with the hard-coded ram-areas. Here the Content of launch_macoswithdefectiveram.nsh:
here the menuentry at the End of refind.conf:
Please note the first argument under options "dummyarg" you could write anything here - it is necessary for the way the EFI-Shell takes in the arguments. It throws aways the first one. Also note we have to use backslashes in the options-line. Please note that fs0: fs5: and so on could be different in your system. Best to navigate through them interactively to get an overview. Simply enter Shell_Full.efi via rEFInd Boot Manager and type in "help" - you will see all the commands. Edit 1:Added Command Line Options within the NSH File |
Beta Was this translation helpful? Give feedback.
-
Hi. Good work. It helped me to isolate away 32MB of bad memory from the OS. There seem to be a way to permanently reserve the memory for firmware instead of re-setting it on every reboot by changing following: This change tells UEFI to allocate the memory as EfiRuntimeServicesData, a type that can persist after the OS takes control, giving you a better chance of keeping this memory reserved during the macOS boot. However, it’s not guaranteed that macOS will respect this memory reservation unless further configuration is done at the OS or bootloader level. I will try it and let you know if this works for me (MacBook Pro 16" 2019). |
Beta Was this translation helpful? Give feedback.
-
It seems that the change of code did not persist after reboot. Not only macOS did not respect it, but also Memtest86 keep on hitting into bad memory segments. |
Beta Was this translation helpful? Give feedback.
-
Happy this works for you too 😃 AllocatePages is not persistent across reboots. It is possible to write something to NVRAM area, but this doesn't help us regarding telling macOs on every boot: "hey don't touch Ram Area X to Y". |
Beta Was this translation helpful? Give feedback.
-
THIS IS WORK-IN-PROGRESS - PLEASE FOLLOW DISCUSSION TO SEE WHAT IS WORKING TILL NOW
In case you successfully tested a manual startup of a Mac with the this EFI-Utility you may be intererested to automate booting this on every boot.
What you ask for is an so called "NSH-Script" - it is a Textfile which EFI-Shell commands in it that gets interpreted line-by-line by an EFI-Shell.
Here is how you do it:
Make sure you have a working EFI-Shell which you can access through rEFInd
An EFI-Shell is a small program like the Windows cmd or powershell but for the EFI-Environment. You can download one here.
Create an Textfile with an .nsh extension
Regarding the possible commands - you can refer to (Shell Command Reference Manual).
Regarding creating Manual Boot Stanzas.
in loader you put the path for your downloaded efi-shell
in options you put the path for your NSH script
With the "default_selection" Token.
Beta Was this translation helpful? Give feedback.
All reactions