KallistiOS
KallistiOS copied to clipboard
A homebrew SDK/pseudo-operating system for the Sega Dreamcast. This repository is a mirror of the official SourceForge repository for KOS.
Adding support for standard C signal types and API: `signal()`, `kill()`, `raise()`. Support is optional (although enabled by default) via the new `INIT_SIGNALS` `KOS_INIT_FLAG`. To do this, I've had to...
- New macro for C23 compliance of the file - Macros were redone to check for existence of C and C++ macros before "dereferencing" - New C23 time base types...
A watchdog timer is a timer that will trigger an action (through a pre-registered callback) after a timeout expires. The code using a watchdog timer will typically reset it periodically...
- Use irq_disable() / irq_restore() to emulate atomicity instead of spinlocks; - Compile atomics.c without LTO to fix link issues. Fix #367.
Guys, I'm sorry to say, but I have long thought `pvr.h` is probably the single worst source code file in all of KOS for a variety of offenses: - It's...
Yes, this is quite an opinionated change, but enough people have brought it up and have talked about wanting to do it, that I thought now might be a good...
The example /dreamcast/basic/breaking fails to build due to using c2x language features that just don't seem to be implemented in 9.3.0. Should be able to slightly rewrite it to have...
- LTO without `-fno-builtins` in the `environ.sh` has been broken for awhile. - A slew of unresolved symbol errors are reported at linker time for every example. - Had to...
Instead of building all the examples sequentially in a single thread, build all of them in parallel. The Makefile will first generate a list of all the sub-folders that contain...
I've confirmed that this started happening once I bumped my host compiler to GCC-14, but when rebuilding with Clang, the issue goes away... Anyway, building the KGL VQ example now...