CeDOS - Commit ab3509d6

Update Readme Signed-off-by: Celina Sophie Kalus <hello@celinakalus.de>
Celina Sophie Kalus
Fri, 25 Jul 2025 22:58:14 +0200
1 files changed, 35 insertions(+), 21 deletions(-)

jump to
M README.mdREADME.md

@@ -1,37 +1,51 @@

# CeDOS + Simple x86 operating system written in assembly and C. ## Software Requirements -* GNU make -* [https://wiki.osdev.org/GCC_Cross-Compiler](GCC Cross Compiler + matching binutils), tailored for freestanding i686-elf-targets + +* CMake + Ninja +* [GCC Cross Compiler + matching binutils](https://wiki.osdev.org/GCC_Cross-Compiler), tailored for freestanding i686-elf-targets * Doxygen: If you want to build the documentation * QEMU: To emulate an x86 system. More specifically, `qemu-system-i386`, available via apt. +Easiest way to get these is to use the nix development shell: + +```shell +nix develop +``` + ## Make commands -Release builds are the default. For debug builds, use `make DEBUG=1 [...]`. You will need to add `DEBUG=1` to all commands, including `run`, otherwise, the release version is run. ### Build -```make build``` -### Run (in an emulator) -```make run``` +```shell +mkdir -p build/ +cd build/ +cmake -GNinja .. +ninja +``` + +The image is put into `build/images/cedos.img` and can be flashed onto a +bootable storage device or run in QEMU. + +### Run (in QEMU) + +```shell +./run.sh build/images/cedos.img +``` ### Clear output directories -```make clean``` -### Build documentation: -```make docs``` +```shell +cd build/ +ninja clean +``` -## Tested build environment versions -### 2023-03-01 -* GCC 12.2.0 -* binutils 2.40 -* QEMU 4.2.1 +### Run tests -## Roadmap -[ ] Implement FAT12 support in bootloader -[ ] Add FAT12 kernel driver with syscall interface -[ ] Allow execution of ELF files by file system path -[ ] Implement proper POSIX file interface -[ ] Add a basic shell -[ ] Add functions for VGA graphics+```shell +cd build/ +../test.sh +``` +