Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

GrimMethos

macrumors newbie
Apr 2, 2020
24
52
Just created a new patch that fixes the virtual background issue! If you patched Zoom already, re-install it, then apply the new patch script attached.
Thank you for this. It worked without issue.

Could you explain what exactly it is doing? I get that it is replacing some characters, but I am not sure what ones and kinda what to know how you figured out what ones...
 

laxster

macrumors newbie
May 12, 2020
2
2
I'm paging through here, but at 431 pages this thread is daunting and jumps a lot. Like others, I have been having issues with the Photos app. At someone's suggestion, I tried ResXtreme, which helped with some issues. However, when I attempt to import new photos from my camera's SD card, they look like this. Also, when I try to edit old photos taken with my camera (not my iPhone), they also go from looking normal in display mode to like this in edit mode.

Any ideas what's going on? Did I miss something on the other pages?

EDIT: I am on a late 2009 iMac. This issue seems to happen with RAW images.
 

Attachments

  • Screen Shot 2020-05-12 at 5.42.12 PM.png
    Screen Shot 2020-05-12 at 5.42.12 PM.png
    2.6 MB · Views: 120
Last edited:

K two

macrumors 68020
Dec 6, 2018
2,313
3,186
North America
I'm paging through here, but at 431 pages this thread is daunting and jumps a lot. Like others, I have been having issues with the Photos app. At someone's suggestion, I tried ResXtreme, which helped with some issues. However, when I attempt to import new photos from my camera's SD card, they look like this. Also, when I try to edit old photos taken with my camera (not my iPhone), they also go from looking normal in display mode to like this in edit mode.

Any ideas what's going on? Did I miss something on the other pages?

It is always useful to know specifically which Mac and if a MP or hackintosh which GPU the issue exists?
 
  • Like
Reactions: TimothyR734

dosdude1

macrumors 68030
Feb 16, 2012
2,779
7,412
Thank you for this. It worked without issue.

Could you explain what exactly it is doing? I get that it is replacing some characters, but I am not sure what ones and kinda what to know how you figured out what ones...
It's done by reverse-engineering the program using a disassembler, and modifying the assembly code to do what you want. It can be a bit tricky sometimes, as you cannot add anything/change the file size in any way. In the case of the Zoom patch, it simply patches the "getSystemVersion" function of the program (located in the ZCommonUI framework binary) to always return a "13", signifying macOS 10.13 High Sierra. This is accomplished by replacing unneeded instructions with a single MOV instruction to simply place 13 (or 0x0D) into the RAX register before the function returns. The instruction to place 13 in RAX with a MOV is as follows: 0x48 prefix (to signify a 64-bit operation), 0xB8 (the x86 opcode for the MOV to AX instruction, or RAX with 0x48 prefix), followed by the constant (13, or 0x0D in hex). Then you must pad it out with 0s to fill the 64 bits. The last thing that the patch does is removes anything that could divert the program's control flow from returning after my modified instruction is executed. NOP's opcode is 0x90 in x86, so replacing any desired instruction with 0x90s essentially just makes it do nothing instead. This may also have to be accomplished by changing conditional JMPs to unconditional JMPs. This is done once by the patch, changing one JLE short (jump on less than or equal to) opcode (0x7E) to an conditional JMP short opcode (0xEB). Attached is a picture of the current control flow, annotated. Hopefully that answers your questions, despite how hard it may be to understand if you've never worked with x86 assembly before.

Screen Shot 2020-05-12 at 9.06.33 PM.png
 
Last edited:

vinaypundith

macrumors member
Apr 10, 2020
76
48
I really need some help using the MacOS Catalina Patcher tool, on my 2008 model Mac Pro 3,1.

I think my main question is: is an EFI flashed XFX double fan Radeon HD 7950 GPU compatible with the patcher or not?
That same GPU works great in OS X El Capitan and somewhat in Mojave (installed with Mojave Patcher).
I flashed the card using this guide: https://forums.macrumors.com/thread...-7950-black-edition-card-for-mac-pro.1893886/
I haven't done the resistor removal modification to get 5GT/s PCI-E bus speed on this card yet. Could that be a problem?

The problem is that when I try to use the patcher to create a bootable installer, it gives me the Apple logo progress bar screen, the progress bar moves to about 60% and then the screen just goes blank.
I have tried with and without the "Auto-Apply Post Install Patches" option.
Since I have installed the APFS support BootROM patch, I am selecting "Disable APFS Booter". But it doesn't work even if I do leave that option unchecked. If I leave Disable APFS Booter unchecked, the Apple logo progress bar will eventually reach 100%, but then just stay there forever without changing to any other screen.

I know it isn't a USB driver problem, because I am using a 2.5" laptop hard drive on a SATA to USB adapter, and have tried connecting the hard drive directly to the Mac Pro's SATA port hard drive bays. No luck with that either.

I'm out of ideas. Can someone here please help?

I have used the Catalina Patcher to successfully install it on 2 other MacBooks (a white 2010 Macbook 7,1 and a white 2009 Macbook 5,2). Both of those machines are running flawlessly, but for some reason the Mac Pro isn't cooperating.

I'm not afraid of dealing with system files or program code if I have to.
Are you trying to make an installer on the USB attached 2.5” HD? You should only be using a USB thumb-drive for the installer.
It will work. My R9 280X, which is more or less the same hardware, didn't even need the resistor modification, it fired up in 5GT/s in Catalina right away.

Makes zero difference.
I tried using the USB flash drive for the installer, but still no luck (same blank screen issue).

Has anyone else had this issue?

Also, if I try to use the patcher and do "Install to This Machine", the Catalina installer simply doesn't launch. The Catalina installer icon shows up in the lower taskbar, but it says Application Not Responding and doesn't show the window on the screen.

It sure seems like the patcher is having an issue with some piece of hardware in my Mac Pro 3,1.

Here is a list of the hardware in my computer. Which of these might be problematic?
- GPU: EFI-flashed PC model XFX double fan Radeon HD 7950 (Not a reference model card. Works great in El Capitan, but in Mojave has issues on the application launchpad screen [extremely bad performance on that screen].
(Also, how do I tell if this card is Metal compatible or not?)
It shows as 2.5GT/s link speed, as I haven't yet done the R17 mod. It does show boot screens.)
- RAM: 1 riser full of 2 GB PC2-5300F 667MHz RAM sticks, and the other riser with 2 4GB PC2-5300F sticks and 2 4GB PC2-6400F 800MHz sticks. I am aware that the Mac Pro (with its 1600MHz FSB Xeon CPUs, which I have) usually uses all 800MHz RAM sticks. Could my mixed 667MHz RAM configuration be an issue?
- it has an Apple AirPort Extreme WiFi card salvaged out of a 2008 model MacBook 4,1. (Works great in El Capitan, but doesn't in Mojave installed with Mojave Patcher)
- it has the PSU of a 2007 model Mac Pro 2,1 (My computer was originally a Mac Pro 2,1, but I rebuilt the whole thing with a new 3,1 motherboard, CPUs and memory riser cards).
- the computer has some issue for which the CPU_MEM and Exhaust fans always run at full speed. Could that be messing with the Catalina Patcher?
 

ASentientBot

macrumors 6502a
Jun 27, 2018
863
3,421
SkyLight.framework
It's done by reverse-engineering the program using a disassembler, and modifying the assembly code to do what you want. It can be a bit tricky sometimes, as you cannot add anything/change the file size in any way. In the case of the Zoom patch, it simply patches the "getSystemVersion" function of the program (located in the ZCommonUI framework binary) to always return a "13", signifying macOS 10.13 High Sierra. This is accomplished by replacing unneeded instructions with a single MOV instruction to simply place 13 (or 0x0D) into the RAX register before the function returns. The instruction to place 13 in RAX with a MOV is as follows: 0x48 prefix (to signify a 64-bit operation), 0xB8 (the x86 opcode for the MOV to AX instruction, or RAX with 0x48 prefix), followed by the constant (13, or 0x0D in hex). Then you must pad it out with 0s to fill the 64 bits. The last thing that the patch does is removes anything that could divert the program's control flow from returning after my modified instruction is executed. NOP's opcode is 0x90 in x86, so replacing any desired instruction with 0x90s essentially just makes it do nothing instead. This may also have to be accomplished by changing conditional JMPs to unconditional JMPs. This is done once by the patch, changing one JLE short (jump on less than or equal to) opcode (0x7E) to an conditional JMP short opcode (0xEB). Attached is a picture of the current control flow, annotated. Hopefully that answers your questions, despite how hard it may be to understand if you've never worked with x86 assembly before.

View attachment 914586
Great explanation. But why you don't just set the value and return immediately? In other words overwrite the start of the procedure with
mov rax,0xd ret
I might be missing something since I'm a total noob with assembly, but I've done this in quite a few cases and it seems to work just fine. Is there a reason why you like to leave most of the original flow in place? It seems like a lot more work (and chances for unintended consequences).
 

dosdude1

macrumors 68030
Feb 16, 2012
2,779
7,412
Great explanation. But why you don't just set the value and return immediately? In other words overwrite the start of the procedure with
mov rax,0xd ret
I might be missing something since I'm a total noob with assembly, but I've done this in quite a few cases and it seems to work just fine. Is there a reason why you like to leave most of the original flow in place? It seems like a lot more work (and chances for unintended consequences).
I tried that initially, but for some reason every time I attempted to add the MOV instruction to the entrypoint of the function, it would change offsets of the rest of the function, and screw the whole thing up. Not really sure why (of course, I kept careful check of offsets when patching). Putting it at the end of the function worked just fine, so that's what I went with.
 

GrimMethos

macrumors newbie
Apr 2, 2020
24
52
It's done by reverse-engineering the program using a disassembler, and modifying the assembly code to do what you want. It can be a bit tricky sometimes, as you cannot add anything/change the file size in any way. In the case of the Zoom patch, it simply patches the "getSystemVersion" function of the program (located in the ZCommonUI framework binary) to always return a "13", signifying macOS 10.13 High Sierra. This is accomplished by replacing unneeded instructions with a single MOV instruction to simply place 13 (or 0x0D) into the RAX register before the function returns. The instruction to place 13 in RAX with a MOV is as follows: 0x48 prefix (to signify a 64-bit operation), 0xB8 (the x86 opcode for the MOV to AX instruction, or RAX with 0x48 prefix), followed by the constant (13, or 0x0D in hex). Then you must pad it out with 0s to fill the 64 bits. The last thing that the patch does is removes anything that could divert the program's control flow from returning after my modified instruction is executed. NOP's opcode is 0x90 in x86, so replacing any desired instruction with 0x90s essentially just makes it do nothing instead. This may also have to be accomplished by changing conditional JMPs to unconditional JMPs. This is done once by the patch, changing one JLE short (jump on less than or equal to) opcode (0x7E) to an conditional JMP short opcode (0xEB). Attached is a picture of the current control flow, annotated. Hopefully that answers your questions, despite how hard it may be to understand if you've never worked with x86 assembly before.

View attachment 914586
Thank you very much for the explanation.
So they are just looking at the system version instead of doing feature detection, and because the newer versions of macOS are supposed to have that feature it should work. But because we dont, it doesnt. Thank you again.
 

kunthawat

macrumors newbie
Jul 19, 2011
1
0
Hi dosdude1, First I must thank you for the Catalina patcher for unsupport MAC. You are my hero...

Now I have a problem with Apple note app... The sketch is not show on my MAC both in the app and safari...

I use Mac mini 5,1 with Graphics Intel HD 3000

I try to google the solution but not found anywhere.... T.T

Is there anyway to fix this?
 

Attachments

  • On my iPad.png
    On my iPad.png
    815.2 KB · Views: 107
  • On Mac mini.png
    On Mac mini.png
    95 KB · Views: 151

Lucky736

macrumors 65816
Jan 18, 2004
1,004
679
US
So this does not occur on the non patched 5.0.2-24030.0508 version of zoom either. (obviously video does not work)

Once the patch is applied, the error shows up. (and video still works as it did with 5.0.1)

I have gotten it to "work" by clicking on the greenscreen icon, but that just makes things look MUCH MUCH worse, and then makes the greenscreen button unable to be clicked off and you have to select non for virtual background

I wonder if we as a community could flood zoom support with a request to fix this (https://support.zoom.us/hc/en-us/requests/new )?
I guess it couldnt hurt to submit a request, would be better if @dosdude could explain a bit more about what his patch does other than switch out a few characters in the code...

Having the same issue even after the latest patch. 9400M GPU.
 
  • Like
Reactions: TimothyR734

vinaypundith

macrumors member
Apr 10, 2020
76
48
It will work. My R9 280X, which is more or less the same hardware, didn't even need the resistor modification, it fired up in 5GT/s in Catalina right away.

Makes zero difference.
What model Mac Pro are you using? 3,1, 4,1 or 5,1?

This thread seems to imply that the Radeon 7xxx series cards aren't compatible with the Mac Pro 3,1:
 
  • Like
Reactions: TimothyR734

Lucky736

macrumors 65816
Jan 18, 2004
1,004
679
US
Well, the feature is only supposed to work on Core i5 CPUs and better. That check could be patched out too, but it is not with the current patch.

Sorry. I think there was confusion. Didn't turn on Virtual Backgrounds. Are you referring to video in general still needing an i5? Interesting if so.
 
  • Like
Reactions: TimothyR734

Surenmunoo

macrumors member
Oct 13, 2019
77
52
New Zealand
Hey Guys. On my early 2011 Macbook running the patched Catalina, my SD Card reader does not seem to be reading anymore, used to work on High Sierra but not anymore, also although Airdrop shows on my side bar in Finder, it does not work. I have a late 2012 running Catalina as well and it does not detect each other, both machines are set to discoverable for everyone.
Any help with the above??
 

DanielMacPro5.1

macrumors newbie
May 14, 2020
4
4
Hello and thank you :D!

I have a MacPro 5.1 with a "Radeon RX 580 8 GB", I been waiting all I could before do the change to Catalina, it seems there are two ways for me:



-DosDude ?, the way i'll go, of course I'll need to change my Radeon for my old Gefore Metal Compatible with only 2GB.

-And the OpenCore way, temping because I could use my Radeon card, but a lot of work, and a lot of things that could fail o_O...



My question if is possible, that some future day, I could use my Radeon card with a fix in the macOS Catalina Patcher tool, or it simply is something that will never hapen ??
 
  • Like
Reactions: TimothyR734

eVasilis

macrumors 6502
Jan 13, 2010
426
182
Hello and thank you :D!

I have a MacPro 5.1 with a "Radeon RX 580 8 GB", I been waiting all I could before do the change to Catalina, it seems there are two ways for me:



-DosDude ?, the way i'll go, of course I'll need to change my Radeon for my old Gefore Metal Compatible with only 2GB.

-And the OpenCore way, temping because I could use my Radeon card, but a lot of work, and a lot of things that could fail o_O...



My question if is possible, that some future day, I could use my Radeon card with a fix in the macOS Catalina Patcher tool, or it simply is something that will never hapen ??
I have a similar configuration to yours, a 5.1 macpro with a sapphire rx 580 pulse in. I do not have to change the card to install ctalina. What I do is this: I have two USB bootable installers, one with Mojave and one with dos dude's catalina. I start by booting from the mojave usb so as to disable SIP (csrutil disable) as I am not allowed to do that from the catalina usb installer. Then, before I restart, I open start up disk from the apple menu and chose the catalina usb. Once it boots I can install macos catalina. Bear in mind that starting from either usb sticks (mojave or catalina) takes a lot of time, most of it staring at a black screen. Make sure your macpro has the latest firmware (144.0.0.0.0). Also, a wired mouse and keyboard may come in handy.
 
Last edited:

DanielMacPro5.1

macrumors newbie
May 14, 2020
4
4
I have a similar configuration to yours, a 5.1 macpro with a sapphire rx 580 pulse in. I do not have to change the card to install ctalina. What I do is this: I have two USB bootable installers, one with Mojave and one with dos dude's catalina. I start by booting from the mojave usb so as to disable SIP (csrutil disable) as I am not allowed to do that from the catalina usb installer. Then, before I restart, I open start up disk from the apple menu and chose the catalina usb. Once it boots I can install macos catalina. Bear in mind that starting from either usb stick (mojave or catalina) takes a lot of time, most of it staring at a black screen. Make sure your macpro has the latest firmware (144.0.0.0.0). Also, a wired mouse and keyboard may come in handy.

eVasilis!! ? I did like you did...all perfect!!! IM SO HAPPY!!

And no problem at all with my Radeon :)

Thanks to all that make this possible ?
 
  • Like
Reactions: TimothyR734

lailailai

macrumors newbie
Oct 10, 2018
2
0
macpro3,1 no issue on Mojave, problem develops in bootup and wakeup in Catalina in 10.15.2... upgrading to 10.15.4, the SSD seems die on me after so many abnormal manual reboots. Disk Util just shows the SSD controller or some sort.

got new crucial mx500 SSD to install Catalina.
no go as it boots up to recovery again.
Installed to Mojave no problem.
I did the APFS patch both from the Catalina page using a pkg file, and another booting up by pressing the power button till rapid flashing then flash the ROM. I think both are supposed to allow APFS boot support.
Tried to install Catalina again, again up to 5 min or so it reboots back to recovery again.
Tried a couple of times.
Good thing these few times, Mojave is still intact as I am running from it now.

I redid the thumb drive today with the patched Catalina, still same result. It reboots at the 5 min remaining mark. Anyone has any idea. Thank you.

my boot rom is MP31.006C.B05
smc is 1.25f4
 

KeithJohn

macrumors member
Aug 18, 2015
87
65
Glasgow
Hi Guys, I have a Asus Strix GTX 970 4GB GPU I was wondering if it would work in my Mac Pro 3.1 running Catalina and if so how would I go about setting it up to work? It's spare at the minute as I really don't want to build a PC around it, I have a Nvidia Geforce GTX 680 2GB in at the moment, which is great, but I'm just curious if the 970 would work and I guess I'm bored because of the lockdown.

Regards to all from lockdown Glasgow
 
  • Like
Reactions: TimothyR734

Lucky736

macrumors 65816
Jan 18, 2004
1,004
679
US
I have just re-implemented "catalinaswufix5amfi.command" with a GUI to allow, download and install the Catalina Beta Software Update (and public too) on any Catalina unsupported Mac, I have tested it and seems to work enough good.

I used the @Czo SUVMMFaker.dylib , @Pinarek method of OTA .dist editing for machines whitelisting, and @ASentientBot disablelibraryvalidation with AMFI disabling methods .

In case someone resets the PRAM you still should use "csrutil disable" (from an USB Catalina Installer or Recovery environment terminal) before apply the post-install patches.


I release it now, before the 10.15.5 beta 1 , the app should allow also "OTA Combo updates", for example from 10.15.0 to 10.15.4 . While usually the Delta Updates are from 10.15.3 to 10.15.4 .

After you apply the OTA update fix, these are the four apple Catalina OTA update automatic phases:

1) apple logo short loading bar followed by auto reboot OTA packages preparing the "APFS macOS Installer" temporary volume (it may take up to 10 minutes, but on average about 5 minutes)

2) apple logo long loading bar followed by Catalina logo installing (OTA pre-scripts verifying on your APFS volume) (it may take up to 15 minutes, but on average about 10 minutes)

3) Catalina circle logo with installing progress bar (OTA stage2 installation on your APFS volume) (it may take up to 60 minutes, but on average about 45 minutes)

4) apple logo full loading bar OTA post-scripts followed by direct boot to Catalina or a bootloop (because post-install patches are required) (it may take up to 15 minutes, but on average about 10 minutes)

View attachment 902487 View attachment 902793 View attachment 902490 View attachment 902486

The CatalinaOTAswufix.app source code is viewable simply browsing the Show packages Contents.

My app is totally harmless and safe for any mac.

To run properly the app don't rename it and move it to Catalina Desktop , or Applications or Downloads paths.


edit (some tips):
To receive only non-beta updates after the "Software Update fix", simply from Software Update prefpane click "Details" and "Restore Defaults" (OTA update fix will still continue work correctly):
View attachment 902307
Moreover I'd advise to set the "Advanced" menu this way, in order to have more control on how updates are downloaded and installed (to give extended time to make a backup or to build a new USB Catalina Patcher for example):
View attachment 902283
Example downloading a non-beta update (from a beta updated machine):

View attachment 902280

Any thoughts on why with 10.15.4, installed and downloaded 10.5.5 b4, upon restart it would boot back into 10.15.4 rather than begin the update/install process? I have confirmed csrutil disable. Curious, seemed to install and download fine, and did do both parts of the process including OTA fix 2-3% into it.

Still stuck here. Tried every way I can think of. Any thoughts?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.