Doom port #21
@@ -6,6 +6,19 @@ Honestly I have no idea. Maybe you have too much free time.
|
||||
Keep in mind that the Pepper kernel is a personal project and it's full of bugs, inconsistencies, weird ways of doing things (and I don't care because it's my toy).
|
||||
Now if you still want to write something for this OS, thank you. Follow along.
|
||||
|
||||
## Headers available in userspace
|
||||
|
||||
Of course, all of the freestanding headers are available:
|
||||
- `<float.h>`: macros for floating-point types
|
||||
- `<limits.h>`: macros for integer types
|
||||
- `<iso646.h>`: macros for bitwise and logical operators
|
||||
- `<stdarg.h>`: variadic function support
|
||||
- `<stddef.h>`: definitions for `size_t`, `ptrdiff_t`, and others
|
||||
- `<stdbool.h>`: definitions for boolean types
|
||||
- `<stdint.h>`: definitions for `int_t` and `uint_t` types
|
||||
|
||||
Also available is the `<syscall.h>` header that gives access to low-level system call interface, notably the `syscallX` function family, X being the amount of arguments to use.
|
||||
|
||||
## 1. Write the source code
|
||||
|
||||
PepperOS is able to run programs written in x86 assembly, and C programs.
|
||||
|
||||
Reference in New Issue
Block a user