More info in README.md
This commit is contained in:
parent
2177fa1bc9
commit
2bbd40acf6
1 changed files with 17 additions and 0 deletions
17
README.md
17
README.md
|
@ -2,6 +2,17 @@
|
||||||
|
|
||||||
My attempt at making a bootloader and kernel.
|
My attempt at making a bootloader and kernel.
|
||||||
|
|
||||||
|
## How to use
|
||||||
|
|
||||||
|
To compile, you need:
|
||||||
|
|
||||||
|
- `i686-elf-gcc` for cross-compiling the kernel
|
||||||
|
- A system `gcc` for compiling the host-helpers
|
||||||
|
- `nasm` for compiling the bootloader
|
||||||
|
- `qemu-system-i386` for emulating (`qemu-system-x86_64` will probably work too, but that is not directly supported)
|
||||||
|
|
||||||
|
If you run `make bin`, it will generate `target/boot.bin`, this is a binary file layed out as described in [the docs](docs/bootloader.md). To burn it on a USB drive, simply `dd if=target/boot.bin of=/dev/sdb` and the drive is bootable and contains an SFS filesystem with the files in `filesystem/`.
|
||||||
|
|
||||||
## Bootloader
|
## Bootloader
|
||||||
|
|
||||||
The bootloader is self-written, based on articles on [the OSDev wiki](https://wiki.osdev.org/). It's a single stage, ELF-loading bootloader in the most basic way possible.
|
The bootloader is self-written, based on articles on [the OSDev wiki](https://wiki.osdev.org/). It's a single stage, ELF-loading bootloader in the most basic way possible.
|
||||||
|
@ -19,6 +30,12 @@ The kernel is based on [the bare bones kernel from the OSDev wiki](https://wiki.
|
||||||
- [x] Interrupt handling
|
- [x] Interrupt handling
|
||||||
- [x] Keyboard input
|
- [x] Keyboard input
|
||||||
- [ ] Filesystem interaction
|
- [ ] Filesystem interaction
|
||||||
|
- [ ] Show files in directory
|
||||||
|
- [ ] Read files in directory
|
||||||
|
- [ ] Write files in directory
|
||||||
|
- [ ] Exception handling
|
||||||
|
- [ ] Tests
|
||||||
|
- [ ] Running executables from filesystem
|
||||||
- [ ] Better memory management
|
- [ ] Better memory management
|
||||||
|
|
||||||
As a test, I've implemented day 1 of [advent of code](https://adventofcode.com/) on the [AoC branch](https://github.com/Robbe7730/RoBoot/tree/AoC).
|
As a test, I've implemented day 1 of [advent of code](https://adventofcode.com/) on the [AoC branch](https://github.com/Robbe7730/RoBoot/tree/AoC).
|
||||||
|
|
Loading…
Reference in a new issue