Turns out that AppleCore99PE.kext is the one that only kickstarts 4 CPUs on Tiger and 2 for Leopard/SL PPC.There's this: https://developer.apple.com/library...Conceptual/KernelProgramming/build/build.html
but I haven't tried it. It might be missing some steps or it might not work with the latest 10.4 source or the latest 10.4 source might be missing something.
AppleCore99PE has an Xcode project file. You just open it and build. Unless you're saying that some source files are missing or have errors?So a recompile of the kernel is not necessary, sadly tho there is less documentation on how to build Core99PE than there is the kernel.
grep "AppleCore99PE" $(find /Volumes/Work/Darwin/DarwinNew/opensource.apple.com -maxdepth 2 -type f -name 'tarballs.txt') | perl -pE 's|.*opensource.apple.com/(.*)/tarballs.*/(\w+\-.*).tar.gz|\1 \2|' | sort -V 10.0 AppleCore99PE-1.0d11 10.0.4 AppleCore99PE-1.0d11 10.1 AppleCore99PE-1_1d7 10.1.1 AppleCore99PE-1_1d7 10.1.2 AppleCore99PE-1_1d7 10.1.3 AppleCore99PE-1_1d7 10.1.4 AppleCore99PE-1_1d7 10.1.5 AppleCore99PE-1_1d7 10.2 AppleCore99PE-120.0.2 10.2.1 AppleCore99PE-120.0.2 10.2.2 AppleCore99PE-120.0.2 10.2.3 AppleCore99PE-120.0.2 10.2.4 AppleCore99PE-120.0.2 10.2.5 AppleCore99PE-120.0.2 10.2.6 AppleCore99PE-120.0.2 10.2.7 AppleCore99PE-120.0.2 10.2.8 AppleCore99PE-120.0.2 10.2.8.G5 AppleCore99PE-120.0.2 10.3 AppleCore99PE-121.0.2 10.3.1 AppleCore99PE-121.0.2 10.3.2 AppleCore99PE-121.0.2 10.3.3 AppleCore99PE-121.0.2 10.3.4 AppleCore99PE-121.0.2 10.3.5 AppleCore99PE-121.0.2 10.3.6 AppleCore99PE-121.0.2 10.3.7 AppleCore99PE-121.0.2 10.3.8 AppleCore99PE-121.0.2 10.3.9 AppleCore99PE-121.0.2 10.4 AppleCore99PE-122.0.1 10.4.1 AppleCore99PE-122.0.1 10.4.2 AppleCore99PE-122.0.1 10.4.3 AppleCore99PE-122.0.1 10.4.4.ppc AppleCore99PE-122.0.1 10.4.4.x86 AppleCore99PE-131.0.1 10.4.5.ppc AppleCore99PE-122.0.1 10.4.5.x86 AppleCore99PE-131.0.1 10.4.6.ppc AppleCore99PE-122.0.1 10.4.6.x86 AppleCore99PE-131.0.1 10.4.7.ppc AppleCore99PE-122.0.1 10.4.7.x86 AppleCore99PE-131.0.1 10.4.8.ppc AppleCore99PE-122.0.1 10.4.8.x86 AppleCore99PE-131.0.1 10.4.9.ppc AppleCore99PE-122.0.1 10.4.9.x86 AppleCore99PE-131.0.1 10.4.10.ppc AppleCore99PE-122.0.1 10.4.10.x86 AppleCore99PE-131.0.1 10.4.11.ppc AppleCore99PE-122.0.1 10.4.11.x86 AppleCore99PE-131.0.1 bbdiff /Volumes/Work/Darwin/DarwinNew/opensource.apple.com/tarballs/AppleCore99PE/AppleCore99PE-122.0.1 /Volumes/Work/Darwin/DarwinNew/opensource.apple.com/tarballs/AppleCore99PE/AppleCore99PE-131.0.1
IOPMPagingPlexus
)numCPUs
Yes, Core99PE requires some external headers, mostly from xnu, but who knows what versions, because the ones from the corresponding xnu releases don't work.AppleCore99PE has an Xcode project file. You just open it and build. Unless you're saying that some source files are missing or have errors?
AppleCore99PE only has source code up to MacOS X 10.4.11.Code:grep "AppleCore99PE" $(find /Volumes/Work/Darwin/DarwinNew/opensource.apple.com -maxdepth 2 -type f -name 'tarballs.txt') | perl -pE 's|.*opensource.apple.com/(.*)/tarballs.*/(\w+\-.*).tar.gz|\1 \2|' | sort -V 10.0 AppleCore99PE-1.0d11 10.0.4 AppleCore99PE-1.0d11 10.1 AppleCore99PE-1_1d7 10.1.1 AppleCore99PE-1_1d7 10.1.2 AppleCore99PE-1_1d7 10.1.3 AppleCore99PE-1_1d7 10.1.4 AppleCore99PE-1_1d7 10.1.5 AppleCore99PE-1_1d7 10.2 AppleCore99PE-120.0.2 10.2.1 AppleCore99PE-120.0.2 10.2.2 AppleCore99PE-120.0.2 10.2.3 AppleCore99PE-120.0.2 10.2.4 AppleCore99PE-120.0.2 10.2.5 AppleCore99PE-120.0.2 10.2.6 AppleCore99PE-120.0.2 10.2.7 AppleCore99PE-120.0.2 10.2.8 AppleCore99PE-120.0.2 10.2.8.G5 AppleCore99PE-120.0.2 10.3 AppleCore99PE-121.0.2 10.3.1 AppleCore99PE-121.0.2 10.3.2 AppleCore99PE-121.0.2 10.3.3 AppleCore99PE-121.0.2 10.3.4 AppleCore99PE-121.0.2 10.3.5 AppleCore99PE-121.0.2 10.3.6 AppleCore99PE-121.0.2 10.3.7 AppleCore99PE-121.0.2 10.3.8 AppleCore99PE-121.0.2 10.3.9 AppleCore99PE-121.0.2 10.4 AppleCore99PE-122.0.1 10.4.1 AppleCore99PE-122.0.1 10.4.2 AppleCore99PE-122.0.1 10.4.3 AppleCore99PE-122.0.1 10.4.4.ppc AppleCore99PE-122.0.1 10.4.4.x86 AppleCore99PE-131.0.1 10.4.5.ppc AppleCore99PE-122.0.1 10.4.5.x86 AppleCore99PE-131.0.1 10.4.6.ppc AppleCore99PE-122.0.1 10.4.6.x86 AppleCore99PE-131.0.1 10.4.7.ppc AppleCore99PE-122.0.1 10.4.7.x86 AppleCore99PE-131.0.1 10.4.8.ppc AppleCore99PE-122.0.1 10.4.8.x86 AppleCore99PE-131.0.1 10.4.9.ppc AppleCore99PE-122.0.1 10.4.9.x86 AppleCore99PE-131.0.1 10.4.10.ppc AppleCore99PE-122.0.1 10.4.10.x86 AppleCore99PE-131.0.1 10.4.11.ppc AppleCore99PE-122.0.1 10.4.11.x86 AppleCore99PE-131.0.1 bbdiff /Volumes/Work/Darwin/DarwinNew/opensource.apple.com/tarballs/AppleCore99PE/AppleCore99PE-122.0.1 /Volumes/Work/Darwin/DarwinNew/opensource.apple.com/tarballs/AppleCore99PE/AppleCore99PE-131.0.1
Even though 131.0.1 is for Intel, it has updates compared to 122.0.1 (it removes references toIOPMPagingPlexus
)
The version string in the plist for 131.0.1 is 1.2.3.
Core99 limits the number of CPUs to 1 if uniNVersion < kUniNVersion107.
The number of CPUs can be limited by the MPIC registers. See AppleMPIC.cpp where it setsnumCPUs
IOCPU
class is used by:I'm having trouble finding step by step on how to build the xnu kernel for PPC on Tiger 10.4.11 PPC.
Can anyone point me to a dummies guide to building the mach_kernel?
I have darwinbuild installed, but as you say, it can't download anything, and I can't really find any current guides on how to sue it, or how to use it to build Core99PE or MacRISC2PE?Did you try darwinbuild? You may need to fix download links or fetch sources manually (since Apple moved them to GitHub), but other than that it is supposed to work, since it did before. I think PureDarwin folks even had bootable images based on open sourced part of Tiger.
I have darwinbuild installed, but as you say, it can't download anything, and I can't really find any current guides on how to sue it, or how to use it to build Core99PE or MacRISC2PE?
Basically these projects are useless unless you are just trying to figure out how the hardware works. They can not be built without Apple's internal frameworks and they did not release them that I am aware.AppleCore99PE has an Xcode project file. You just open it and build. Unless you're saying that some source files are missing or have errors?
You may need to disassemble the kext to fill in the missing parts of the code.They can not be built.