macOS 10.15 Catalina on Unsupported Macs

Status
The first post in this thread is a WikiPost, and can be edited by anyone with the appropriate permissions.

TimothyR734

macrumors 68000
Apr 10, 2018
1,891
1,602
Logsden Oregon
Does anyone have issues with the home app ? On Catalina no switches show, they are all blank.
Microsoft Word, highlighting has some major graphical glitches, any workaround would be great.
My Home app just bounces in the dock and doesn't open so it must have got the metal treatment to :(
 

The Spirit

macrumors member
Jun 23, 2010
55
12
Germany
i am running Catalina Beta 3 on a MacPro 5.1 with a Metal GPU.
Everything seems to run fine except Mail.
During opening mail, i see my content. But as soon as i click on an e-mail, Mail crashes.
Any tips?
Thanks
 

Flacko

macrumors regular
Oct 3, 2018
237
304
UK
FYI, I can confirm on my MacPro 3,1 that booting from the patched DP3 Catalina installer, copying the IOATAFamily.kext from a Mojave volume with 'cp -R', fixing its ownership with 'chmod -R 0:0' and permissions with 'chmod -R 755' followed by reinstalling the patches to force a cache rebuild restores a functional Superdrive.

I do wonder if could use the Catalina IOATAFamily.kext with just adding the missing AppleIntelPIIXATA.kext to its Plugins instead of using the Mojave copy?
Thanks for looking into this. My preference would be to add the missing kext to the plugins but that would be beyond my skills. I always try to have the minimum changes to the OS but it is still early days with Catalina. Should have noticed this before but only just noticed the DVD was absent!
 

jhowarth

macrumors 6502a
Jan 13, 2017
725
820
Thanks for looking into this. My preference would be to add the missing kext to the plugins but that would be beyond my skills. I always try to have the minimum changes to the OS but it is still early days with Catalina. Should have noticed this before but only just noticed the DVD was absent!
FYI, Collin will be adding this in the next patcher release. I also confirmed his solution of just copying over the missing Mojave AppleIntelPIIXATA.kext into the Plugins directory of the Catalina IOATAFamily.kext works fine.
 

ASentientBot

macrumors 6502a
Jun 27, 2018
643
2,190
SkyLight.framework
Stocks and Voice Memo's also crashing no wave with Siri its gone again :(
Stocks, Home, and Voice Memos don't crash on my system (can't really test Home properly though). Can you upload the crash reports?
Screen Shot 2019-07-04 at 4.45.53 PM.png

You're right about Siri, I assume that it's trying to draw something with Metal. I'll see if a binary patch is possible.

Edit: got Siri mostly working.
 
Last edited:
  • Like
Reactions: jackluke and avz

gt2416

macrumors newbie
Jun 26, 2018
19
17
You're right about Siri, I assume that it's trying to draw something with Metal. I'll see if a binary patch is possible.
Do you hav any idea why Microsoft word is acting strange when highlighting text ? That doesn't use metal right ..
 

ASentientBot

macrumors 6502a
Jun 27, 2018
643
2,190
SkyLight.framework
Do you hav any idea why Microsoft word is acting strange when highlighting text ? That doesn't use metal right ..
I'm not sure about Word, I'll download a copy and give it a try sometime soon-ish.

As for Siri, I got it working with a three byte patch to the following file:
Code:
/System/Library/PrivateFrameworks/SiriUI.framework/Versions/A/SiriUI
However, the pretty Siri animation does not work.

If anyone wants to try it, the replacement is attached. Make a backup copy first.

All I did was change one line of assembler:
Code:
0x5512: jmp 0x5607
This effectively jumps over the entire initialization of the "flames view", part of which was causing a crash. A better patch, that only removes some of this, is likely possible. I'll investigate further soon.

Screen Shot 2019-07-04 at 4.58.15 PM.png
 

Attachments

Starplayr

macrumors 6502a
Jun 13, 2018
553
1,044
Charlotte
If it's an xcode project you could "link your CloneToolX binary with libraries" removing from your linked libraries the Appkit.framework and adding for example your Appkit renamed as AppkitCloneToolX.framework (maybe also its internal exec in AppkitCloneToolX) so you could have 2 Appkit (one stock for BaseSystem and the other linked with your app) to avoid conflicts, even if from pictures seems your tool uses automatically the right framework to define that function.
Not sure if that will work in this case. Apple has Application Swift libraries that link to the System's Swift libraries. They started doing this with Swift 4.2 and Swift 5 and it will always use the System Swift Libraries. And the System Swift Libraries link to the actual System frameworks and the paths in those libraries are hard encoded. I ran into this with the Quartz framework that a System Swift library was looking for and the path had to be exact on the system.

I could try added the libraries its looking for and make them static and see if it will override. However I think they way the Swift libraries are setup and when they link to other libraries, on its second hop it will still look for the System Libraries from the System Swift library.

I'll fool around with it some more once I get a few other things with the App in place.

For libraries that I write myself, this would be much easier to control. It's clear the Base System was never meant to run Swift and the fact that I was able to get it work is a miracle. It look a good block of time running my app in the command line seeing what was missing and the trickiest part was the Quartz library because the full blown Catalina lib's structure as different than the thinned down Base System one. It took a couple of tries to get just what it needs without blowing up the display. So yeah, if I can get it to use a Quartz lib. that local the app, that would be best.

The conflict with NSDataAsset was already there in the Base System. I did not create it. Apple has two libraries that calling the same class. One is probably a newer framework and may guess the UI labeled one is for SwiftUI. I'm not using SwiftUI, so it's strange to have a new library fire up. This overlap happens quite frequently on macOS and most of time it's hidden in the console.
[doublepost=1562276024][/doublepost]
I'm sure it will have no problem with external DVD drives. The issue is that the AppleIntelPIIXATA.kext plugin in IOATAFamily.kext has been dropped in Catalina.
My DVD is partially working and I haven't put in the Kext yet. I think it only working the way it is because I booted my system with a DOS CD inserted. Many of my own CDs are not reading upon insert. Going to get the one from Mojave as suggested.
 

TimothyR734

macrumors 68000
Apr 10, 2018
1,891
1,602
Logsden Oregon
Stocks, Home, and Voice Memos don't crash on my system (can't really test Home properly though). Can you upload the crash reports?
View attachment 846712

You're right about Siri, I assume that it's trying to draw something with Metal. I'll see if a binary patch is possible.

Edit: got Siri mostly working.
I don't see any crash logs for them Home, stocks and voice memo's just bounce in the dock then stops no crash message appears but have to force quit them
 

TimothyR734

macrumors 68000
Apr 10, 2018
1,891
1,602
Logsden Oregon
my screenshot is not uploading with Safari 13 :(
[doublepost=1562279453][/doublepost]Thank goodness for my MacBook I tried Cat on my 5,2 but its like waiting for paint to dry getting to the desktop with 4gb ram it takes about 9 mins to get to the desktop on my iMac 9,1 with 8gb but this what Home, Stocks and voice memo's do on my iMac
 

Attachments

Starplayr

macrumors 6502a
Jun 13, 2018
553
1,044
Charlotte
I have two 3,1s. One still has its DVD drive connected, but it’s not running Catalina at the moment. I’ll plug a disk in and see what it does.
This is actually good timing, I'll be testing CloneToolX burned to a CD.

------

Looks like Catalina dropped support for "Mac OS Standard" CDs aka HFS too. As they are seen in diskutil and DiskUtility but do not mount.

Catalina does have HFS kexts, and those are loading. Going to try Mojave's unless I can find something else. Mojave had no issues reading in my HFS CDs.

Catalina B2 had IOATA Kext with PATA stuff inside, I'll Mojave's to see if HFS volumes loaded (not yet).

Guess PATA was dropped in B3. I haven't installed B3 yet.

---

Update: I see that AppleATAPIStorage.kext is not loading on B2. (Doesn't seem to be it.)

---

Not sure what's up with my HFS CDs not reading on Cat B2. Gonna start fresh with B3.

Update: I got plain HFS to work, look farther down this thread.
 
Last edited:
  • Like
Reactions: TimothyR734

dosdude1

macrumors 68020
Feb 16, 2012
2,280
5,379
Not sure if that will work in this case. Apple has Application Swift libraries that link to the System's Swift libraries. They started doing this with Swift 4.2 and Swift 5 and it will always use the System Swift Libraries. And the System Swift Libraries link to the actual System frameworks and the paths in those libraries are hard encoded. I ran into this with the Quartz framework that a System Swift library was looking for and the path had to be exact on the system.

I could try added the libraries its looking for and make them static and see if it will override. However I think they way the Swift libraries are setup and when they link to other libraries, on its second hop it will still look for the System Libraries from the System Swift library.

I'll fool around with it some more once I get a few other things with the App in place.

For libraries that I write myself, this would be much easier to control. It's clear the Base System was never meant to run Swift and the fact that I was able to get it work is a miracle. It look a good block of time running my app in the command line seeing what was missing and the trickiest part was the Quartz library because the full blown Catalina lib's structure as different than the thinned down Base System one. It took a couple of tries to get just what it needs without blowing up the display. So yeah, if I can get it to use a Quartz lib. that local the app, that would be best.

The conflict with NSDataAsset was already there in the Base System. I did not create it. Apple has two libraries that calling the same class. One is probably a newer framework and may guess the UI labeled one is for SwiftUI. I'm not using SwiftUI, so it's strange to have a new library fire up. This overlap happens quite frequently on macOS and most of time it's hidden in the console.
[doublepost=1562276024][/doublepost]
My DVD is partially working and I haven't put in the Kext yet. I think it only working the way it is because I booted my system with a DOS CD inserted. Many of my own CDs are not reading upon insert. Going to get the one from Mojave as suggested.
This ridiculous overly-complex "libs linking to libs" thing is one of the main reasons why Swift is so bad. At this point, the only thing Swift is good for are extremely high-level programs, that do nothing more than interface with a REST API (which is EXACTLY what this whole "SwiftUI" stuff is geared towards). I really think using Objective-C would have been a MUCH better route to go for writing a program like this. All Swift is is an overly complex link down to Objective-C/Foundation libs, while trying to "hide" the Objective-C part from the developer. On top of that, it also utilizes a very confusing and honestly extremely counter intuitive syntax. It's almost as bad as Rust syntax.
 
Last edited:

TimothyR734

macrumors 68000
Apr 10, 2018
1,891
1,602
Logsden Oregon
This ridiculous overly-complex "libs linking to libs" thing is one of the main reasons why Swift is so bad. At this point, the only thing Swift is good for are extremely high-level programs, that do nothing more than interface with a REST API (which is EXACTLY what this whole "SwiftUI" stuff is geared towards). I really think using Objective-C would have been a MUCH better route to go for writing a program like this. All Swift is is an overly complex link down to Objective-C/Foundation libs, while trying to "hide" the Objective-C part from the developer. On top of that, it also utilizes a very confusing and honestly extremely counter intuitive syntax. It's almost as bad as Rust syntax.
I truly understand your frustration. I know that its good to have some changes to keep macOS revenant but I truly believe if something isn't broke don't fix it
 

nekton1

macrumors 6502a
Apr 15, 2010
619
473
Asia
Drift screensaver seems to be not working on MP3,1 with GTX680 metal card running Cat3b installed by latest dosdude1 patch. All other screensavers are working and Drift works on supported macs.
 

jasoncarle

macrumors regular
Jan 13, 2006
153
96
Minnesota
I'm not sure about Word, I'll download a copy and give it a try sometime soon-ish.

As for Siri, I got it working with a three byte patch to the following file:
Code:
/System/Library/PrivateFrameworks/SiriUI.framework/Versions/A/SiriUI
However, the pretty Siri animation does not work.

If anyone wants to try it, the replacement is attached. Make a backup copy first.

All I did was change one line of assembler:
Code:
0x5512: jmp 0x5607
This effectively jumps over the entire initialization of the "flames view", part of which was causing a crash. A better patch, that only removes some of this, is likely possible. I'll investigate further soon.

View attachment 846718
How do I replace it? I am looking at the file, I have your patched one downloaded, I can't for the life of me figure out how to replace the file.
 

Starplayr

macrumors 6502a
Jun 13, 2018
553
1,044
Charlotte
I have good news for ATAPI / PATA internal CD player users on MP3,1.

I have MacOS Standard HFS discs mounting properly on Catalina Beta 3.

Here's what you need and don't need.

Catalina Beta 2 has the missing PATA kext inside the IOATAFamily.kext, so you don't need Mojave's and the other Kext's in this set are the same version as Beta 3. You can use the entire IOATAFamily.next from B2.

Next, The HFS and HFSEncodings seem to be foobarred in Beta 3, they will see the Mac OS Standard HFS CD volume, but they will not mount, burn, copy to a dmg or anything. You will get nothing but errors. You may even get kernel panics or Finder relaunches when trying to burn something.

So, from Mojave using the HFS and HFSEncodings.kext's and you'll be back in business with legacy HFS CDs. I do not know what the changes are in the newer HFS Kexts, but my assumption is Apple dropped support for HFS and kept HFS+ in. If they did that shame on them because Apple has kept support for Windows, MBR, NTFS, ExFat, Fat32, DOS, etc. So why on Earth drop one of your native disc formats even if it's old and keep all the PC ones?

I will be updating my CatWoman patch shortly that includes ATAPI/PATA/ATA/HFS Support. If you get operation not permitted, you can ignore the errors, the kexts copy over fine. Could be the system trying to set itself back to read only while in flight, even though the disk is set to read write before the operation starts.

Update: I wrote over my B3 install by mistake when I thought ASR was just replacing the Data volume and it the whole disk and did not honor the slice. Apple remove file copy from ASR. In the future, I'll use rsync or ditto to copy - Data volumes. I'll update the CatWoman patch tomorrow.
 
Last edited:

ASentientBot

macrumors 6502a
Jun 27, 2018
643
2,190
SkyLight.framework
How do I replace it? I am looking at the file, I have your patched one downloaded, I can't for the life of me figure out how to replace the file.
Code:
sudo mount -uw /
# the above command will make an error about "AppleInternal", ignore it
sudo mv /System/Library/PrivateFrameworks/SiriUI.framework/Versions/A/SiriUI /System/Library/PrivateFrameworks/SiriUI.framework/Versions/A/SiriUI.old
sudo cp SiriUI /System/Library/PrivateFrameworks/SiriUI.framework/Versions/A/
Alternately, you can mount the disk writable:
Code:
sudo mount -uw /
killall Finder
And then do it graphically in Finder.
[doublepost=1562290379][/doublepost]
I know you uploaded a copy of the updated file but how do you edit it ? through a hex editor or something else ?
I use Hopper Disassembler trial (the full version costs something north of $100) to understand the code and make modifications, and then open its hex view and mimic the changes in a hex editor. It's a pain, but it works.
 
  • Like
Reactions: avz and TimothyR734

TimothyR734

macrumors 68000
Apr 10, 2018
1,891
1,602
Logsden Oregon
How do I replace it? I am looking at the file, I have your patched one downloaded, I can't for the life of me figure out how to replace the file.
Like this just drop the one you downloaded and click replace then authenticate enter your password but you could also drop the original in your documents folder just in case
 

Attachments

tintelor

macrumors newbie
Jul 31, 2018
14
10
Southeast Asia
Successfully updated to the latest dev beta 3 using @dosdude1's macOS Catalina Patcher 1.0b6

View attachment 846347


Steps followed:
  • Before update, I installed DeveloperBetaAccess Utility thinking OTA SoftwareUpdate will work since the new version is a dev beta. I guess my assumption was wrong.
  • So I used @dosdude1's patcher to download the latest beta version.
  • Re-created my external USB again using the above tool to patch the just downloaded version.
  • Booted to the USB and did a reinstall Mac OS.
  • Rebooted to the USB again and ran the post install patches that were applicable.
  • Rebooted to the SSD partition where beta 3 was installed and patched.
Working well, at least so far so good.

Thanks again to @dosdude1 and others who contributed.
I followed this steps. My MBP 8,1 restart during installation (using usb installer) , made the OS not properly installed. Did I miss some important things to do?
 
  • Like
Reactions: TimothyR734

dosdude1

macrumors 68020
Feb 16, 2012
2,280
5,379
I followed this steps. My MBP 8,1 restart during installation (using usb installer) , made the OS not properly installed. Did I miss some important things to do?
Make sure your system has the latest, APFS-comaptible firmware installed. You can do this by installing this package. Your system must be plugged in in order for the firmware to be flashed.
 

Status
The first post in this thread is a WikiPost, and can be edited by anyone with the appropriate permissions.