This repository has been archived on 2024-06-25. You can view files and clone it, but cannot push or open issues or pull requests.
rockOS/README.md

52 lines
1.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Deprecated, see continuation project [Asagiri](https://git.homd.xyz/asagiri/asagiri)
# 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
- Paging and Kheap
## 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
### Dependencies for compiling toolchain
- wget/curl
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
- James Molloy for his paging and kheap tutorial
- Free Software Foundation for multiboot specification
## License
This project is licensed under GPLv3.0 or later.