d
  • C 89.4%
  • C3 5.9%
  • Linker Script 2.4%
  • Shell 1.8%
  • Assembly 0.5%
Find a file
2026-08-25 21:22:02 +02:00
linker-scripts Add scripts to VCS 2026-08-07 08:10:18 +02:00
scripts Working on IDT INIT... OK 2026-08-25 21:22:02 +02:00
src Working on IDT INIT... OK 2026-08-25 21:22:02 +02:00
.gitignore Get printf functioning 2026-08-24 16:28:44 +02:00
bochsrc Working on IDT INIT... OK 2026-08-25 21:22:02 +02:00
LICENSE Initial commit 2026-08-05 14:06:40 +02:00
limine.conf Fix relative stuff with scripts 2026-08-07 10:05:40 +02:00
project.json Working on IDT INIT... OK 2026-08-25 21:22:02 +02:00
README.md Working on IDT INIT... OK 2026-08-25 21:22:02 +02:00

Nsics

Nsics is a kernel targeting aarch64 and x86_64 targets written in C3.

Compiling

Dependencies

To compile you need to have c3c installed. This repository was made and tested for c3c version 0.8.3

Run c3c build deps to get the required dependencies to build this project (Limine and OVMF)


To compile only a binary run: c3c build <arch>

Supported architectures are aarch64 and amd64.

A binary will plop out at build/kernel

Running

To package the binary into an ISO and run it with QEMU run c3c build <arch>-run

So to build, package and run the aarch64 version, for example, you can do c3c build aarch64-run

Third-party projects

Thanks to all the contributors of:

  • Limine: for the bootloader
  • Flanterm: for the terminal interface
  • OVMF: for the UEFI implementation used with QEMU