← Blog
KERNEL · 0.6.0

Apple Silicon HAL Batch 19: DMA Controller, SIO, Secure Enclave + PPC VIA Timer, Cuda Microcontroller, G4 UniNorth

June 22, 2026 · sigil-kernel · Sigil-Docs
kernel hal apple-silicon powerpc hardware security 0.6.0

sigil-kernel's nineteenth HAL batch adds 6 more seams. Apple Silicon: M-series DMA controller (8 channels, queue/tick/complete, IOC interrupt per channel); SIO serial I/O hub (4 UARTs, 4 SPI buses, 6 I2C buses, 16-pin GPIO mux, peripheral enable + TX counters); SEP Secure Enclave Processor (8-slot key store, KEYGEN/SIGN/VERIFY/WIPE commands, nonce counter, TRNG via LCG). PowerPC: G3/G4 VIA 6522 timer extension (T1 auto-reload, T2 one-shot, GPIO port A/B, shift register, IFR/IER); Cuda MC68HC05 microcontroller (G3/G4: 32-bit RTC, 16-word PRAM, 8-slot ADB event FIFO, power/reset packets); G4 UniNorth U2 northbridge (chipID=0xC0, PCI-A 66MHz AGP/GPU bus, PCI-B 33MHz FW/USB, 2-DIMM memory controller). All QEMU PASS. ~140 HAL seams total. (sigil-kernel 1289352, 3fef9ab, b43039a)

sigilOS HAL batch 19 QEMU PASS
sigilOS HAL batch 19 — QEMU PASS across all 6 seams

apple_dma.sg — M-series DMA Controller (1289352)

The DMA (Direct Memory Access) controller moves data between memory and peripherals without CPU involvement. The M-series DMA is a unified controller serving all on-chip peripherals (ISP, NVMe, USB4, etc.).

Base address: 0x4AD000. PASS: DMA init=1 xfr=1 irq=1


ppc_via.sg — G3/G4 VIA 6522 Timer Extension (1289352)

This commit extends the G3/G4 VIA 6522 with the full timer implementation. The 6522 has two hardware timers (T1 and T2) that drive the system tick and one-shot delays. Extended from earlier VIA seam at 0x495000.

Base address: 0x4AE000. PASS: VIA init=1 tmr=1 sr=1


apple_sio.sg — M-series Serial I/O Hub (3fef9ab)

The SIO is Apple Silicon's multi-protocol serial hub — it consolidates UART, SPI, and I2C controllers plus GPIO mux into a single programmable block. On real M-series hardware, the SIO serves touch controllers, audio codecs, and other low-speed peripherals.

Base address: 0x4AF000. PASS: SIO init=1 bus=1 gpio=1


ppc_cuda.sg — G3/G4 Cuda Microcontroller (3fef9ab)

The Cuda chip is one of the most important chips on G3/G4 Macs — it's a dedicated microcontroller that runs completely independently of the main CPU. It manages the real-time clock, non-volatile parameter RAM (PRAM), ADB routing, power-on/reset sequencing, and low-power "sleep wake" events. Based on the Motorola MC68HC05.

Base address: 0x4B0000. PASS: CUD init=1 rtc=1 adb=1


apple_sep.sg — Secure Enclave Processor (b43039a)

The SEP is Apple's dedicated security coprocessor — completely isolated from the main application processor. It runs its own secure OS, has its own encrypted memory, and handles all cryptographic key operations. The main CPU never sees private key material — it only sends commands and receives verdicts.

sigilOS connection: Touch ID verification and the biometric match cycle (apple_touchid.sg) gate their match verdict through the SEP. The SEP also backs ID_ELEV_TOKEN issuance — the broker calls the SEP for a signed assertion before elevating a capability.

Base address: 0x4B1000. PASS: SEP init=1 key=1 sig=1


ppc_uninorth.sg — G4 UniNorth U2 Northbridge (b43039a)

UniNorth U2 is the northbridge for the Power Mac G4 (AGP) era. It's the central hub that connects the G4 CPU to memory and the two PCI buses (PCI-A for high-speed and PCI-B for standard).

Base address: 0x4B2000. PASS: UNI init=1 pci=1 mem=1


Batch 19 seam table

Address Seam Arch Commit PASS
0x4AD000 apple_dma.sg Apple Silicon 1289352 init=1 xfr=1 irq=1
0x4AE000 ppc_via.sg (timer ext) PowerPC G3/G4 1289352 init=1 tmr=1 sr=1
0x4AF000 apple_sio.sg Apple Silicon 3fef9ab init=1 bus=1 gpio=1
0x4B0000 ppc_cuda.sg PowerPC G3/G4 3fef9ab init=1 rtc=1 adb=1
0x4B1000 apple_sep.sg Apple Silicon b43039a init=1 key=1 sig=1
0x4B2000 ppc_uninorth.sg PowerPC G4 b43039a init=1 pci=1 mem=1

Batch 19 brings the running total to ~140 HAL seams across Apple Silicon, PowerPC G3/G4, x86, and RISC-V targets. The SEP seam in particular closes a critical security gap: Touch ID and ID_ELEV_TOKEN issuance now have a modeled cryptographic substrate rather than stub returns.