46 lines
1.2 KiB
Markdown
46 lines
1.2 KiB
Markdown
# rockOS
|
||
Welcome to rockOS project, a hobby OS that aims to run rogue and nethack.
|
||
|
||
## Currently implemented
|
||
- GDT
|
||
- IDT
|
||
- PIC initialization
|
||
- PIT timer
|
||
- Keyboard driver
|
||
- a thing that is supposed to be paging
|
||
|
||
|
||
## Usage
|
||
Just grab the latest ISO from the releases and run it on a virtual machine
|
||
such as QEMU or Virtualbox, bare-metal not tested.
|
||
|
||
## Build
|
||
### Dependencies
|
||
- a decent compiler such as gcc or clang
|
||
- grub2 (if under GNU/Linux)
|
||
- xorriso
|
||
- make
|
||
- tar (for compiling the toolchain)
|
||
- wget/curl (for compiling the toolchain)
|
||
|
||
If it is your first time building, you need to compile the toolchain first.
|
||
For that, you just need to run build-toolchain.sh, which will download binutils,
|
||
gcc, grub if youre on macOS, and then compile them to $HOME/opt/cross-i686 by default
|
||
which can be changed from the prompt.
|
||
|
||
After you compiled the toolchain and added $PREFIX/bin to your PATH as instructed by the script,
|
||
you can run qemu.sh to compile and open the OS on QEMU or iso.sh to just generate the ISO.
|
||
|
||
|
||
## Credits
|
||
- Furkan Mudanyalı
|
||
- Uko Kokņevičs
|
||
|
||
|
||
## Acknowledgements
|
||
- osdev.org community for huge documentation on OS Development
|
||
- musl for libc implementation
|
||
|
||
|
||
## License
|
||
This project is licensed under GPLv3.0 or later. |