From zero to main(): Bootstrapping libc with Newlib | Interrupt

This is the third post in our zero to main() series, where we worked methodically to demystify what happens to firmware before the main() function is called. So far, we bootstrapped a C environment, wrote a linker script from scratch, and implemented our own bootloader.

This is a companion discussion topic for the original entry at