Repository navigation
Releases: luuumi-dev/nullarc
Release list
nullarc 0.3.0-alpha
First release under the nullarc name: Metal on the AMD Radeon 780M for macOS Tahoe 26, with WindowServer
compositing on the GPU at the panel's 120 Hz. Alpha software — read the install guide and keep a way back.
English · Русский ниже
What's new since 0.2.1
- An installer that sets up a working system. 0.2.1 shipped the kexts and the plugin but not the boot-time GPU
bring-up, its firmware or the Vulkan loader, and its kernel-collection step was wrong, so it could not bring the GPU
up on a clean machine.install.sh(with--checkand--windowserver) anduninstall.shnow reproduce the
reference machine's setup; docs/INSTALL.md
walks through OpenCore, the checks, the fail-safes, updating and removal. - Desktop: dragging a window 64–69 → 116 fps (CoreAnimation re-wrapped IOSurfaces were re-imported every frame);
Liquid Glass, Metal for every app including sandboxed WebKit/Chromium GPU processes. - Display wake no longer freezes after hours (512 MB VRAM pool instead of per-allocation contiguous memory).
- Fixes: Chess and other GL apps crashing on depth reads (RADV PS epilogs need extended dynamic state), CoreImage
blurs and Tahoe's layered icons (RADV mutable-descriptor ordering), mipmapped CoreAnimation images, tiled images at
the end of a buffer. - Shader stalls: RADV unrolls nested loops without a full optimisation round per level (Mesa patch 0006): the
slow compositor shader variants compile in ~1 s instead of ~2 s, with identical code. - Safety: background neural-network work (Photos analysis, Spotlight) stays on the CPU after its convolution kernels
hung the GPU in testing; if the GPU still hangs later in a session, phxboot reboots instead of leaving a black screen,
and puts WindowServer back on the firmware framebuffer after three such hangs within an hour. - Licensing cleaned up: full license texts in
LICENSES/,THIRD_PARTY_NOTICES.md, NullMoth's actual Required
Notice, AMD notices; the reference laptop's VBIOS image is no longer in the tree; nothing from Apple is shipped.
Assets
| File | What |
|---|---|
nullarc-0.3.0-alpha.zip |
Everything: PhxBringup.kext for OpenCore, PhxAccel.kext, the Metal plugin, Mesa RADV and the Vulkan loader, the boot-time bring-up with AMD firmware, install.sh / uninstall.sh, the install guide, licenses. |
PhxBringup.kext-0.3.0-alpha.zip |
The OpenCore kext alone (build 32). |
nvmtl-translator-source.tar.gz |
Source of the shader translator libnvmtl_translate.dylib shipped in the plugin (LGPL-3.0-or-later, NullMoth 2.4.1, based on metal2vulkan). |
SHA256SUMS |
Checksums. |
Tested on a Firebat U6C (Ryzen 7 H 255, Radeon 780M) with macOS Tahoe 26.6.2 (25G83). Other machines are untested.
Known limits: a new kind of visual effect pauses 1–3 s the first time (then cached); no external displays,
hardware video decode or backlight control yet; amfi=0x80 disables FairPlay playback. Parts derived from NullMoth's
driver are licensed for noncommercial use only (PolyForm Noncommercial 1.0.0).
Русский
Первый релиз под именем nullarc: Metal на AMD Radeon 780M в macOS Tahoe 26, рабочий стол WindowServer рисует GPU на
120 Гц панели. Это альфа-версия: прочитайте инструкцию
и оставьте себе путь назад.
- Установщик, который действительно ставит рабочую систему. В 0.2.1 не было запуска GPU при загрузке, прошивок и
загрузчика Vulkan, а сборка коллекции кекстов была неверной, поэтому на чистой системе GPU не поднимался.
Теперьinstall.sh(с--checkи--windowserver) иuninstall.shповторяют установку эталонной машины. - Рабочий стол: перетаскивание окна 64–69 → 116 к/с, Liquid Glass, Metal во всех приложениях.
- Пробуждение экрана больше не зависает через несколько часов работы.
- Исправления: вылеты Chess и GL-приложений, размытия CoreImage и слоистые иконки Tahoe, mip-уровни картинок
CoreAnimation. - Паузы на шейдерах: медленные варианты шейдеров композитора компилируются ~1 с вместо ~2 с (патч Mesa 0006).
- Защита: фоновые нейросети (анализ Фото, Spotlight) работают на процессоре — на GPU их ядра вешали видеокарту; если GPU
всё же зависнет, phxboot перезагрузит Мак вместо чёрного экрана. - Лицензии приведены в порядок, программы Apple не распространяются.
Части, производные от драйвера NullMoth, — только для некоммерческого использования (PolyForm Noncommercial 1.0.0).
AMD RDNA 3 Radeon 780M macOS Driver v0.2.1-alpha (F32 v1.0, Build 29 & NVMTL)
AMD RDNA 3 (Radeon 780M) macOS Driver v0.2.1-alpha
Second alpha release providing Metal 3D Acceleration, Metal Compute, and WindowServer Desktop Compositing for AMD RDNA 3 integrated graphics (Radeon 780M / Phoenix & Hawk Point APUs) on macOS Sonoma (14.x) and macOS Tahoe (Darwin 25.x).
🌟 What's New in v0.2.1-alpha
- Phoenix F32 (v1.0) CP Microcode Support: Extractor now supports genuine Phoenix firmware payloads (
gc_11_0_1_{pfp,me,mec}.bin), allowing seamless ring initialization across official linux-firmware releases. - Multi-App Metal Contexts (Build 29): Per-client GPUVM page tables across lent VMIDs (8..15), breaking the previous single-app constraint.
- NVMTL Shader & Sampler Improvements: Full support for
lodMinClampandlodMaxClampon normalized samplers, point/line drawing primitives on AMD, and fragment sampler slot tracing. - Full Sanitization & Architecture Cleanup: Pure repository focus on AMD RDNA 3 graphics (all Realtek network/crypto code removed). Zero sensitive SMBIOS data.
- Sanitized Reference Configuration: Bundled
Sample.plistandREQUIRED_KEXTS.mddocumentation guide for OpenCore. - Automated Unit Testing & CI: Complete unit test testsuite (
make test) with dynamic upstream linux-firmware mirror fallback.
📦 Release Assets
-
AMD-RDNA3-Radeon-780M-macOS-Full-Package-v0.2.1-alpha.zip(Recommended)
Complete driver stack for full desktop acceleration:EFI/OC/Kexts/PhxBringup.kext(for OpenCore EFI)EFI/OC/Sample.plist(sanitized reference OpenCore configuration)EFI/OC/REQUIRED_KEXTS.md(third-party kext list and links)Library/Extensions/PhxAccel.kext(system accelerator & framebuffer)Library/GPUBundles/NVMTLDriver.bundle(Metal-over-Vulkan translation runtime)Library/GPUBundles/nvmtl/(Darwin Mesa RADV 1.4 driver)
-
PhxBringup.kext-v0.2.1-alpha.zip
Standalone OpenCore EFI kext for low-level silicon, PSP, and compute testing.
🚀 Quick Installation Guide
1. OpenCore boot-args
Add the following to your OpenCore config.plist (NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> boot-args):
keepsyms=1 revpatch=cpuname,sbvmm ipc_control_port_options=0 -amfipassbeta amfi_get_out_of_my_way=0x1 amfi=0x80 phxdebug=1
2. Install Kexts & Bundles
- Copy
PhxBringup.kexttoEFI/OC/Kexts/and add toconfig.plist. - Copy
PhxAccel.kextto/Library/Extensions/:sudo cp -R PhxAccel.kext /Library/Extensions/ sudo chown -R root:wheel /Library/Extensions/PhxAccel.kext sudo kmutil install --volume-root / --repository /Library/Extensions
- Copy
NVMTLDriver.bundleandnvmtlfolder to/Library/GPUBundles/:sudo mkdir -p /Library/GPUBundles sudo cp -R Library/GPUBundles/* /Library/GPUBundles/ sudo chown -R root:wheel /Library/GPUBundles/
Полная документация на русском языке доступна в файле README_RU.md.
AMD RDNA 3 Radeon 780M macOS Driver v0.2.0-alpha (Metal 3D & WindowServer M2)
AMD RDNA 3 (Radeon 780M) macOS Driver v0.2.0-alpha
World's first public release providing Metal 3D Acceleration, Metal Compute, and WindowServer Desktop Compositing for AMD RDNA 3 integrated graphics (Radeon 780M / Phoenix & Hawk Point APUs) on macOS Tahoe (Darwin 25.x) and macOS Sonoma.
🌟 Highlights & Included Features
- Metal Compute: 4096/4096 parallel workgroups verified on 780M hardware (
mtlprobe compute). - Metal 3D Pipeline: Real geometry rasterization into pixel textures on GPU (
mtlprobe render). - WindowServer Compositing (Milestone M2): Entire macOS desktop rendered by
WindowServerthroughCompositorMetalon the 780M. WindowServer CPU overhead dropped from 100% (software rasterizer) to ~0%. - High-Speed Display Stream:
movnti + sfencestreaming frame copy into display scanout (~1.5 ms per frame), achieving up to 41+ FPS UI. - Native GPU Recognition: Build 28 kext reports
AMD Radeon 780Mand dedicated VRAM directly to IORegistry and About This Mac. - Custom Display Architecture:
PhxAMDFBnative framebuffer driver (replacingIONDRV) andPhxAGDC(AppleGraphicsDeviceControl) display timing controller.
📦 Release Assets
-
AMD-RDNA3-Radeon-780M-macOS-Full-Package-v0.2.0-alpha.zip(Recommended)
Complete driver stack for full desktop acceleration:EFI/OC/Kexts/PhxBringup.kext(for your OpenCore EFI)Library/Extensions/PhxAccel.kext(system accelerator & framebuffer)Library/GPUBundles/NVMTLDriver.bundle(Metal translation runtime + Mesa RADV)
-
PhxBringup.kext-v0.2.0-alpha.zip
Standalone OpenCore EFI kext (Build 28) for low-level silicon, PSP, and compute testing.
🚀 Quick Installation Guide
1. OpenCore boot-args
Add the following to your OpenCore config.plist (NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> boot-args):
keepsyms=1 revpatch=cpuname,sbvmm ipc_control_port_options=0 -amfipassbeta amfi_get_out_of_my_way=0x1 amfi=0x80 phxdebug=1
2. Install Kexts & Bundles
- Copy
PhxBringup.kexttoEFI/OC/Kexts/and add toconfig.plist. - Copy
PhxAccel.kextto/Library/Extensions/:sudo cp -R PhxAccel.kext /Library/Extensions/ sudo chown -R root:wheel /Library/Extensions/PhxAccel.kext sudo kmutil install --volume-root / --repository /Library/Extensions
- Copy
NVMTLDriver.bundleandnvmtlfolder to/Library/GPUBundles/:sudo cp -R Library/GPUBundles/* /Library/GPUBundles/ sudo chown -R root:wheel /Library/GPUBundles/
Полная документация на русском языке доступна в файле README_RU.md.