Skip to content

Latest commit

 

History

History
50 lines (35 loc) · 1.68 KB

README.md

File metadata and controls

50 lines (35 loc) · 1.68 KB

Programming language, compiler, and operating system for bare-metal ARM

Quickstart

To run the main baremetal Raspberry Pi kernel,

$ git clone git://github.com/tonyg/pi-nothing.git
$ make link all
$ cp baremetal/raspberrypi.img /PATH/TO/YOUR/RASPBERRY/PI/SDCARD/kernel.img

Boot the Raspberry Pi.

There is also a simpler kernel for the QEMU-emulated versatilepb machine that can be run in emulation from the host:

$ cd baremetal
$ make versatilepb.img
$ ./run-kernel

A graphical variant also exists.

When running a versatilepb kernel in emulation, you're interacting with the kernel via the emulated board's serial UART. Type characters at it, and it will echo them. When you get bored of this, press C-a x to quit qemu.

Third-party software

This package makes use of a number of programs and resources generously developed and released as free software by other authors:

  • disarm, a disassembler for ARM instructions, developed by and copyright to Gareth McCaughan.

  • udis, a disassembler for x86 and x86-64, written by and copyright to Vivek Thampi.

  • font0, a very simple monospace bitmapped font developed by and copyright to Bitstream, Inc.

  • raspbootin, a boot-over-serial bootloader for the Raspberry Pi, developed by and copyright to Goswin von Brederlow.

and, of course, QEMU and Racket themselves.