mirror of
https://github.com/XunilGroup/XunilOS.git
synced 2026-04-25 11:49:03 +02:00
Make Doom run by improving and fixing libc stubs, adding proper heap
allocation, adding a timer, a framebuffer swap, rectangle and buffer draw syscall, moving the header files to the correct directory, disabling stack protection, AVX and MMX, while enabling SSE, fix interrupt handler popping in the wrong order, improve load_segment_to_memory alignment, add load_from_ptr to framebuffer for very quick drawing, serial_print as well as render font in consolewriter, zero the memory in sbrk, add a fake file system and methods to libxunil for DOOM, add correct printf, vsnprintf add _start which calls the main function in libxunil, mark all registers as used inside syscalls for no memory corruption, add build_helloworld.sh script
This commit is contained in:
24
user/libxunil/include/stdlib.h
Normal file
24
user/libxunil/include/stdlib.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
#include <inttypes.h>
|
||||
#include <stddef.h>
|
||||
|
||||
void *malloc(size_t size);
|
||||
void *calloc(size_t nmemb, size_t size);
|
||||
void *realloc(void *ptr, size_t size);
|
||||
void free(void *ptr);
|
||||
|
||||
void exit(int status);
|
||||
void abort(void);
|
||||
|
||||
int atoi(const char *s);
|
||||
long atol(const char *s);
|
||||
double atof(const char *s);
|
||||
long strtol(const char *s, char **endptr, int base);
|
||||
double strtod(const char *s, char **endptr);
|
||||
|
||||
char *getenv(const char *name);
|
||||
void qsort(void *base, size_t nmemb, size_t size, int (*cmp)(const void *, const void *));
|
||||
int abs(int x);
|
||||
int system(const char *cmd);
|
||||
int draw_pixel(uint32_t x, uint32_t y, uint32_t color);
|
||||
int framebuffer_swap();
|
||||
Reference in New Issue
Block a user