FrostWing
A lightweight raw-control operating system.
Loading...
Searching...
No Matches
basics.h
Go to the documentation of this file.
1
11#include <stdint.h>
12#include <stddef.h>
13
14typedef uintptr_t int_pointer;
15typedef uint64_t int64;
16typedef uint32_t int32;
17typedef uint16_t int16;
18typedef uint8_t int8;
19
20#define null NULL
21
22typedef const char* cstring;
23typedef char* string;
24
25#define GiB *1024*1024*1024ULL
26#define MiB *1024*1024ULL
27#define KiB *1024ULL
28
29#define yes true
30#define no false
31
32#define attribute __attribute__
33
34#define Ghz *1000000000ULL
35#define Mhz *1000000ULL
36
37#define OS_NAME "FrostWing OS"
38
39#define EOF (-1)
40
41#ifdef __GNUC__
42#define deprecated_message(msg) attribute((deprecated(msg)))
43#elif defined(_MSC_VER)
44#define deprecated_message(msg) __declspec(deprecated(msg))
45#else
46#define deprecated_message(msg)
47#endif
48
53#define assert(expression, file, line) if(!(expression)){printf("\x1b[31mAssert Failed! at \x1b[36m%s:%d\x1b[0m => \x1b[32m%s\x1b[0m", file, line, #expression);}