.cpu arm1176jzf-s .section ".text.boot" .global _start _start: // 1. Set up the stack pointer // The Pi 1 has 512MB RAM (usually), stack grows down from a safe high address. // We'll set it to 0x8000 (where the kernel starts) and let it grow down. mov sp, #0x8000 // 2. Clear BSS (Uninitialized variables) - Skipped for minimal "Stupid" version // but good practice usually. // 3. Jump to C code bl kernel_main // 4. Halt if main returns halt: wfe b halt