Ciro Santilli d217b180be Split up README
2015-09-14 16:51:29 +02:00
2015-09-14 07:14:09 +02:00
2015-09-11 10:17:17 +02:00
2015-09-12 11:37:30 +02:00
2015-09-14 16:51:29 +02:00
2015-09-12 11:37:30 +02:00
2015-09-06 16:22:10 +02:00
2015-09-11 10:17:17 +02:00
2015-09-14 16:51:29 +02:00
2015-09-12 11:37:30 +02:00
2015-09-14 16:51:29 +02:00
2015-09-11 12:12:31 +02:00
2015-09-11 12:12:31 +02:00
2015-09-14 16:51:29 +02:00
2015-09-11 10:17:17 +02:00
2015-09-14 16:51:29 +02:00
2015-09-12 11:37:30 +02:00
2015-09-14 07:14:09 +02:00

x86 Bare Metal Examples

Hello world programs that run without an operating system.

  1. Examples
    1. printf
    2. min
    3. No ld script
    4. NASM
    5. BIOS one char
    6. BIOS hello world
    7. APM shutdown
    8. APM shutdown 2
    9. Multiboot
    10. TODO not working
      1. UEFI
    11. Misc
      1. hajji
  2. Theory
    1. Formats
      1. MBR
    2. IO
      1. BIOS
    3. Bibliography
  3. TODO

Getting started

sudo apt-get install build-essential gnu-efi qemu nasm xorriso

Run the default program on QEMU:

make run

Run a given program:

make run RUN=min
make run RUN=bios_one_char

Tested on Ubuntu 14.04 AMD64.

To run on real hardware, insert an USB, determine its device (/dev/sdX) with:

sudo lsblk
sudo fdisk -l

Pick the .img file that you wan to run and:

sudo dd if=bios_hello_world.img of=/dev/sdX

Then:

  • insert the USB in a computer
  • during boot, hit some special hardware dependant key, usually F12, Esc
  • choose to boot from the USB

Tested on: ThinkPad T400.

Description
No description provided
Readme 1.1 MiB
Languages
Assembly 64.3%
C 27.6%
Makefile 6.8%
Shell 1.2%