Luminadevapps Posted July 20 Share Posted July 20 (edited) Hi all — Kernel Inspector just got a big update (1.1.0). It still opens a .kext bundle or any Mach-O binary and lets you dig through it (think a lightweight Hopper), but the Hackintosh side has grown a lot: it now generates SSDTs, derives OpenCore patches from your own machine, and maps USB ports — on top of the install/maintenance chores it already did. Download: https://github.com/luminadevapps/KernelInspector/releases Source: https://github.com/luminadevapps/KernelInspector NEW IN 1.1.0 - SSDT Generator — pick your hardware, generate the maintenance SSDTs (AWAC, PMC, USBX, EC, PNLF, GPRW, RHUB, ALS0…), compile DSL → AML with iasl, then install the .aml straight into a mounted OpenCore EFI and register it under config.plist → ACPI → Add. It even adds the required renames (EC→EC0, _GPRW→XGPW) for you. - USB Ports — live view of your USB controllers from IOKit. Toggle which ports to keep, set each connector type, and auto-trim to the 15-port cap. - XCPM / CPU — the verified CPU power-management + topology patch set (AppleXcpmExtraMsrs, AppleCpuPmCfgLock, core-count fixes). Copy any entry as a config.plist patch, or verify it against your live Kernel Collection after a macOS update. - Port-Limit Patch — derives the XHCI port-limit patch from real bytes (a loaded binary or your live Kernel Collection) instead of a hard-coded pattern that only matches one build, with an optional universal (masked) variant. - Install Kexts now also targets a mounted OpenCore EFI and can restore AppleHDA on Tahoe via a KDK root patch; Maintenance gained per-volume config.plist access. WHAT IT DOES Analyze - Info.plist — kext identifier, version, UUID, linked libs, full searchable Info.plist - Hex Editor — byte view with hex find & replace and patch-to-file - Symbols — full nlist_64 table with global/local/undefined/debug filters - Disassembly — ARM64 / x86-64 of __text, colour-coded by branch/call/return - Control Flow — per-function basic-block graph - Pseudocode — heuristic pseudo-C (readability aid, not a decompiler) - Port-Limit Patch — derive an XHCI port-limit OpenCore patch from real bytes System (Hackintosh) - Install Kexts — readiness dashboard (SIP / macOS build / target / cache tool), install a .kext to /Library/Extensions or into your OpenCore EFI (auto-adds Kernel→Add + plugins to config.plist, backs it up first), rebuild caches, restore AppleHDA (Tahoe/KDK), uninstall - Maintenance — ESP-mounter style EFI partition mount/unmount, Kernel Debug Kit manager, per-volume config.plist viewer, APFS snapshot cleanup - USB Ports — live IOKit port map with keep/trim and the 15-port cap check - XCPM / CPU — verified CPU/XCPM patch set, checked against your live kernel - SSDT Generator — generate, compile and install OpenCore SSDTs from your hardware All privileged steps use the standard macOS admin prompt — the app never sees your password. INSTALL 1. Download KernelInspector-1.1.0.dmg from the Releases page 2. Drag Kernel Inspector into Applications 3. First launch only: right-click → Open → Open (it's ad-hoc signed, not notarized) Needs macOS 13+ and the Xcode Command Line Tools (xcode-select --install) — the disassembler shells out to otool/llvm-objdump. The SSDT Generator's compile step needs iasl (e.g. brew install acpica). NOTES Pseudocode/CFG are heuristic. Parser targets 64-bit Mach-O. The XCPM/CPU patches are verified on a specific machine (i9-13900K, macOS 26.x) — always re-verify against your own kernel after an update. The port-limit patch is a temporary aid for USB mapping; drop it once you've built a proper USBMap. It's a study/RE + Hackintosh aid for hardware you own. Feedback and bug reports welcome — cheers! NEW IN 1.1.1 - Disassembly — new "Go to" box: jump to any address (0x…) or a function by name (Return or ⌘G); the line you land on is highlighted. - Disassembly — Symbols are now clickable: click one to jump straight to it in the disassembly. - Disassembly — Filter and Go-to are now separate fields, and an empty filter explains itself instead of showing a blank list. - USB Ports — exported USBPorts.kext now uses AppleUSBXHCIPCI matching, kUSBMuxEnabled, and the full port/type keys, so maps attach correctly. "Ports per controller" now sets the exported port-count. - USB Ports — new "Import from kext…": load the full port set from an existing USBMap.kext / USBPorts.kext, enable what you need, and export. Download: https://github.com/luminadevapps/KernelInspector/releases/download/v1.1.1/KernelInspector-1.1.1.dmg Edited 47 minutes ago by Luminadevapps 3 Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/ Share on other sites More sharing options...
Slice Posted Tuesday at 06:29 AM Share Posted Tuesday at 06:29 AM Great work! Will be nice to have a column with a hex value of the instruction before disassemble. address | hex | instruction 0x1234 0x0bfe BR .-2 It was in HopperD version 3 but escaped in new versions. 2 Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852084 Share on other sites More sharing options...
Luminadevapps Posted Thursday at 12:43 PM Author Share Posted Thursday at 12:43 PM (edited) Hi all 👋 Started as a simple kext / Mach-O analyzer (Info.plist, hex, symbols, disassembly, control flow, pseudocode) and grew into a full toolbox: Mount EFI + install kexts and auto-register them in config.plist SSDT generator (compiles to .aml with iasl) XHCI port-limit patch — reads your live kernel and spits out the exact Find/Replace + config.plist entry for yourbuild. Optional masked mode so it survives macOS updates. USB port viewer + map exporter XCPM / CPU patch verifier — one click tells you if your CPU patches still match after an update The whole idea: stop hunting for byte patterns that break on every macOS update — derive them from your own kernel and verify them in seconds. Running great here on Z790 + i9-13900K, macOS 26.5. Still improving it — what would you want added? Edited Thursday at 12:57 PM by Luminadevapps Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852132 Share on other sites More sharing options...
Luminadevapps Posted Thursday at 01:17 PM Author Share Posted Thursday at 01:17 PM On 7/21/2026 at 2:29 AM, Slice said: Great work! Will be nice to have a column with a hex value of the instruction before disassemble. address | hex | instruction 0x1234 0x0bfe BR .-2 It was in HopperD version 3 but escaped in new versions. Thanks! 🙏 Great suggestion — just added it. New Hex column in the Disassembly view (Address | Hex | Instruction), Hopper-v3 style. You can even filter by the hex bytes now to jump straight to an instruction. Screenshot below 👇 2 1 Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852133 Share on other sites More sharing options...
Luminadevapps Posted Saturday at 01:12 PM Author Share Posted Saturday at 01:12 PM Hi all — Kernel Inspector just got a big update (1.1.0). It still opens a .kext bundle or any Mach-O binary and lets you dig through it (think a lightweight Hopper), but the Hackintosh side has grown a lot: it now generates SSDTs, derives OpenCore patches from your own machine, and maps USB ports — on top of the install/maintenance chores it already did. Download: https://github.com/luminadevapps/KernelInspector/releases Source: https://github.com/luminadevapps/KernelInspector NEW IN 1.1.0 - SSDT Generator — pick your hardware, generate the maintenance SSDTs (AWAC, PMC, USBX, EC, PNLF, GPRW, RHUB, ALS0…), compile DSL → AML with iasl, then install the .aml straight into a mounted OpenCore EFI and register it under config.plist → ACPI → Add. It even adds the required renames (EC→EC0, _GPRW→XGPW) for you. - USB Ports — live view of your USB controllers from IOKit. Toggle which ports to keep, set each connector type, and auto-trim to the 15-port cap. - XCPM / CPU — the verified CPU power-management + topology patch set (AppleXcpmExtraMsrs, AppleCpuPmCfgLock, core-count fixes). Copy any entry as a config.plist patch, or verify it against your live Kernel Collection after a macOS update. - Port-Limit Patch — derives the XHCI port-limit patch from real bytes (a loaded binary or your live Kernel Collection) instead of a hard-coded pattern that only matches one build, with an optional universal (masked) variant. - Install Kexts now also targets a mounted OpenCore EFI and can restore AppleHDA on Tahoe via a KDK root patch; Maintenance gained per-volume config.plist access. WHAT IT DOES Analyze - Info.plist — kext identifier, version, UUID, linked libs, full searchable Info.plist - Hex Editor — byte view with hex find & replace and patch-to-file - Symbols — full nlist_64 table with global/local/undefined/debug filters - Disassembly — ARM64 / x86-64 of __text, colour-coded by branch/call/return - Control Flow — per-function basic-block graph - Pseudocode — heuristic pseudo-C (readability aid, not a decompiler) - Port-Limit Patch — derive an XHCI port-limit OpenCore patch from real bytes System (Hackintosh) - Install Kexts — readiness dashboard (SIP / macOS build / target / cache tool), install a .kext to /Library/Extensions or into your OpenCore EFI (auto-adds Kernel→Add + plugins to config.plist, backs it up first), rebuild caches, restore AppleHDA (Tahoe/KDK), uninstall - Maintenance — ESP-mounter style EFI partition mount/unmount, Kernel Debug Kit manager, per-volume config.plist viewer, APFS snapshot cleanup - USB Ports — live IOKit port map with keep/trim and the 15-port cap check - XCPM / CPU — verified CPU/XCPM patch set, checked against your live kernel - SSDT Generator — generate, compile and install OpenCore SSDTs from your hardware All privileged steps use the standard macOS admin prompt — the app never sees your password. INSTALL 1. Download KernelInspector-1.1.0.dmg from the Releases page 2. Drag Kernel Inspector into Applications 3. First launch only: right-click → Open → Open (it's ad-hoc signed, not notarized) Needs macOS 13+ and the Xcode Command Line Tools (xcode-select --install) — the disassembler shells out to otool/llvm-objdump. The SSDT Generator's compile step needs iasl (e.g. brew install acpica). NOTES Pseudocode/CFG are heuristic. Parser targets 64-bit Mach-O. The XCPM/CPU patches are verified on a specific machine (i9-13900K, macOS 26.x) — always re-verify against your own kernel after an update. The port-limit patch is a temporary aid for USB mapping; drop it once you've built a proper USBMap. It's a study/RE + Hackintosh aid for hardware you own. Feedback and bug reports welcome — cheers! Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852167 Share on other sites More sharing options...
Slice Posted 9 hours ago Share Posted 9 hours ago On 7/25/2026 at 4:12 PM, Luminadevapps said: Hi all — Kernel Inspector just got a big update (1.1.0). It still opens a .kext bundle or any Mach-O binary and lets you dig through it (think a lightweight Hopper), but the Hackintosh side has grown a lot: it now generates SSDTs, derives OpenCore patches from your own machine, and maps USB ports — on top of the install/maintenance chores it already did. Download: https://github.com/luminadevapps/KernelInspector/releases Source: https://github.com/luminadevapps/KernelInspector NEW IN 1.1.0 - SSDT Generator — pick your hardware, generate the maintenance SSDTs (AWAC, PMC, USBX, EC, PNLF, GPRW, RHUB, ALS0…), compile DSL → AML with iasl, then install the .aml straight into a mounted OpenCore EFI and register it under config.plist → ACPI → Add. It even adds the required renames (EC→EC0, _GPRW→XGPW) for you. - USB Ports — live view of your USB controllers from IOKit. Toggle which ports to keep, set each connector type, and auto-trim to the 15-port cap. - XCPM / CPU — the verified CPU power-management + topology patch set (AppleXcpmExtraMsrs, AppleCpuPmCfgLock, core-count fixes). Copy any entry as a config.plist patch, or verify it against your live Kernel Collection after a macOS update. - Port-Limit Patch — derives the XHCI port-limit patch from real bytes (a loaded binary or your live Kernel Collection) instead of a hard-coded pattern that only matches one build, with an optional universal (masked) variant. - Install Kexts now also targets a mounted OpenCore EFI and can restore AppleHDA on Tahoe via a KDK root patch; Maintenance gained per-volume config.plist access. WHAT IT DOES Analyze - Info.plist — kext identifier, version, UUID, linked libs, full searchable Info.plist - Hex Editor — byte view with hex find & replace and patch-to-file - Symbols — full nlist_64 table with global/local/undefined/debug filters - Disassembly — ARM64 / x86-64 of __text, colour-coded by branch/call/return - Control Flow — per-function basic-block graph - Pseudocode — heuristic pseudo-C (readability aid, not a decompiler) - Port-Limit Patch — derive an XHCI port-limit OpenCore patch from real bytes System (Hackintosh) - Install Kexts — readiness dashboard (SIP / macOS build / target / cache tool), install a .kext to /Library/Extensions or into your OpenCore EFI (auto-adds Kernel→Add + plugins to config.plist, backs it up first), rebuild caches, restore AppleHDA (Tahoe/KDK), uninstall - Maintenance — ESP-mounter style EFI partition mount/unmount, Kernel Debug Kit manager, per-volume config.plist viewer, APFS snapshot cleanup - USB Ports — live IOKit port map with keep/trim and the 15-port cap check - XCPM / CPU — verified CPU/XCPM patch set, checked against your live kernel - SSDT Generator — generate, compile and install OpenCore SSDTs from your hardware All privileged steps use the standard macOS admin prompt — the app never sees your password. INSTALL 1. Download KernelInspector-1.1.0.dmg from the Releases page 2. Drag Kernel Inspector into Applications 3. First launch only: right-click → Open → Open (it's ad-hoc signed, not notarized) Needs macOS 13+ and the Xcode Command Line Tools (xcode-select --install) — the disassembler shells out to otool/llvm-objdump. The SSDT Generator's compile step needs iasl (e.g. brew install acpica). NOTES Pseudocode/CFG are heuristic. Parser targets 64-bit Mach-O. The XCPM/CPU patches are verified on a specific machine (i9-13900K, macOS 26.x) — always re-verify against your own kernel after an update. The port-limit patch is a temporary aid for USB mapping; drop it once you've built a proper USBMap. It's a study/RE + Hackintosh aid for hardware you own. Feedback and bug reports welcome — cheers! I tested. How to go to an address? Or to a function begin? 1 Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852183 Share on other sites More sharing options...
Luminadevapps Posted 1 hour ago Author Share Posted 1 hour ago 8 hours ago, Slice said: I tested. How to go to an address? Or to a function begin? Good suggestion — I've added this in the latest build. There are now two ways to jump around in the Disassembly view: Go to box — there's a field in the Disassembly toolbar (the one with the ⇥ arrow and a "Go" button). Type a hex address like 0x3EB0 (the 0x is optional) and it jumps straight there. Type a function name instead — e.g. _decode — and it jumps to that function's first instruction. Exact name matches win, otherwise it takes the first partial match. Press Return or ⌘G to trigger it, and it highlights the line it lands on. Click a symbol — open the Symbols tab and just click any function in the list. It switches to Disassembly and jumps right to that function's start. If the exact address falls inside an instruction it snaps to the next one, so a mid-function address still lands somewhere sensible. Let me know if that covers what you were after. https://github.com/luminadevapps/KernelInspector/releases/download/v1.1.1/KernelInspector-1.1.1.dmg Link to comment https://www.insanelymac.com/forum/topic/362987-kernel-inspector-%E2%80%94-all-in-one-kext-mach-o-viewer-hackintosh-tools/#findComment-2852194 Share on other sites More sharing options...
Recommended Posts