ref: changed ifndef -> pragma

This commit is contained in:
Karina
2025-12-30 21:28:29 +04:00
parent db9b7cdbd5
commit 9a296e4045
29 changed files with 42 additions and 189 deletions
+1
View File
@@ -37,6 +37,7 @@ if(QEMU_EXE)
-enable-kvm
-bios ${OVMF_PATH}
-drive file=${IMG_FILE},format=raw
-vga std
-net none
-serial stdio
-m 512M
-5
View File
@@ -2,9 +2,6 @@
// Copyright (c) 2025 0xKarinyash
#pragma once
#ifndef GDT_H
#define GDT_H
#include <types.h>
typedef struct {
@@ -41,5 +38,3 @@ typedef struct {
} __attribute__((packed)) TSS;
void gdt_init();
#endif
-4
View File
@@ -1,8 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef IDT_H
#define IDT_H
#pragma once
#include <types.h>
@@ -22,5 +20,3 @@ typedef struct {
} __attribute__((packed)) IDTPtr;
void idt_init();
#endif
+1 -4
View File
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef IO_H
#define IO_H
#pragma once
#define MASTER_COMMAND 0x20
#define MASTER_DATA 0x21
@@ -38,5 +37,3 @@ static inline void outb_wait(unsigned short port, unsigned char val) {
outb(port, val);
io_wait();
}
#endif
+1 -6
View File
@@ -1,11 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef PIC_H
#define PIC_H
#pragma once
#include <types.h>
u16 pic_remap();
#endif
+1 -1
View File
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#pragma once
#include <types.h>
#define MAX(a, b) ({ \
-4
View File
@@ -2,13 +2,9 @@
// Copyright (c) 2025 0xKarinyash
#pragma once
#ifndef PANIC_H
#define PANIC_H
#include <types.h>
__attribute__((noreturn)) void panic_exception(Registers *regs);
__attribute__((noreturn)) void panic(const char* msg);
extern const char* exception_messages[];
#endif
+1 -5
View File
@@ -1,11 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef RAND_H
#define RAND_H
#pragma once
#include <types.h>
u64 shitrand();
#endif
+4
View File
@@ -0,0 +1,4 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#pragma once
+3 -3
View File
@@ -1,8 +1,8 @@
#ifndef SPLASH_H
#define SPLASH_H
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#pragma once
#include <drivers/shitgui.h>
void show_splash(SG_Context *sg_ctx);
#endif
+1 -4
View File
@@ -1,10 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef STRING_H
#define STRING_H
#pragma once
#include <types.h>
i32 strcmp(const char* s1, const char* s2);
#endif
+1 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef CONSOLE_H
#define CONSOLE_H
#pragma once
#include <drivers/shitgui.h>
void console_init(SG_Context *ctx);
@@ -18,5 +16,3 @@ char console_getc();
void kprint(const char *str);
void kprintf(const char *fmt, ...);
void kgets(char* buff, u32 lim);
#endif
+1 -5
View File
@@ -1,8 +1,4 @@
#ifndef FONT_H
#define FONT_H
#pragma once
#include <types.h>
extern u8 font8x16[128][16];
#endif
+1 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef KEYBOARD_H
#define KEYBOARD_H
#pragma once
#include <types.h>
#define KB_BUFF_SIZE 256
@@ -16,5 +14,3 @@ typedef struct {
extern kb_buffer kb_buf;
void kb_handler();
#endif
+1 -4
View File
@@ -1,11 +1,8 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef SERIAL_H
#define SERIAL_H
#pragma once
int serial_init();
void serial_writec(char chr);
void serial_write(const char *str);
#endif
+1 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef SHITGUI_H
#define SHITGUI_H
#pragma once
#include <types.h>
typedef struct {
@@ -31,5 +29,3 @@ typedef struct {
void sg_put_img(SG_Context *ctx, SG_Point *p, SG_Image *img);
void sg_draw_rect(SG_Context *ctx, SG_Point *p, u32 w, u32 h, u32 color);
void sg_draw_char_bitmap(SG_Context *ctx, SG_Point *p, char c, u32 color, SG_Font *font);
#endif
+1 -4
View File
@@ -1,13 +1,10 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef TIMER_H
#define TIMER_H
#pragma once
#include <types.h>
void timer_init(u32 freq);
void timer_handler();
void sleep(u64 ms);
u64 get_uptime();
#endif
+1 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef HEAP_H
#define HEAP_H
#pragma once
#include <types.h>
#define KERNEL_HEAP_START 0xFFFFFFFFC0000000
@@ -24,5 +22,3 @@ void heap_init();
void* malloc(u64 size);
void free(void* ptr);
void* realloc(void* ptr, u64 new_size);
#endif
+1 -5
View File
@@ -1,12 +1,8 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef MEMORY_H
#define MEMORY_H
#pragma once
#include <types.h>
void* memset(void* ptr, int value, usize num);
void* memcpy(void* dest, const void* src, u64 n);
#endif
+1 -6
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef PMM_H
#define PMM_H
#pragma once
#include "bootinfo.h"
#include <types.h>
@@ -22,6 +20,3 @@ u64 pmm_get_total_mem();
void pmm_init(BI_MemoryMap* mmap);
void* pmm_alloc_page();
void pmm_free_page(void* addr);
#endif
+1 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef VMM_H
#define VMM_H
#pragma once
#include "bootinfo.h"
#include <types.h>
@@ -39,5 +37,3 @@
void vmm_init(Bootinfo* info);
u64* vmm_map_page(u64* pml4, u64 phys, u64 virt, u64 flags);
#endif
+1 -4
View File
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef SHELLBUILTINS_H
#define SHELLBUILTINS_H
#pragma once
void cmd_kfetch();
void cmd_meow();
@@ -12,5 +11,3 @@ void print_regs();
void cmd_sleep();
void cmd_debug();
int rectest(int a);
#endif
+3 -5
View File
@@ -1,9 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef DBGCMD_H
#define DBGCMD_H
#pragma once
#include <types.h>
void debug();
#endif
u64 debug();
+1 -4
View File
@@ -1,10 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef KSH_H
#define KSH_H
#pragma once
#include <drivers/shitgui.h>
void ksh();
#endif
+1 -5
View File
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2025 0xKarinyash
#ifndef TYPES_H
#define TYPES_H
#pragma once
typedef unsigned char u8;
typedef unsigned short u16;
@@ -56,6 +55,3 @@ typedef enum {
#define true 1
#define false 0
#endif
#endif
+1
View File
@@ -68,4 +68,5 @@ void kmain(Bootinfo* info) {
ksh();
panic("Kernel main loop exited");
}
+2 -1
View File
@@ -78,6 +78,7 @@ void cmd_sleep() {
}
void cmd_debug() {
debug();
u64 status = debug();
kprintf("\nDebug ended with code %d\n", status);
return;
}
+9 -78
View File
@@ -3,87 +3,18 @@
// contents of this file will be changed CONSTANTLY
// im just testing new stuff here
#include <drivers/timer.h>
#include <drivers/console.h>
#include <types.h>
#include <shell/dbgcmd.h>
#include <mm/heap.h>
#define VECTOR_BUFFER_SIZE 8
typedef struct {
i32* data;
u64 size;
u64 capacity;
} Vector;
void vector_init(Vector* vec) {
vec->data = nullptr;
vec->size = 0;
vec->capacity = 0;
}
u8 vector_append(Vector* vec, const i32 num) {
if (vec->size >= vec->capacity) {
u64 new_cap = (vec->capacity == 0) ? VECTOR_BUFFER_SIZE : vec->capacity * 2;
i32* new_data = realloc(vec->data, new_cap * sizeof(i32));
if (!new_data) return 2; // Out of memory
vec->data = new_data;
vec->capacity = new_cap;
}
vec->data[vec->size] = num;
vec->size++;
u64 debug() {
kprintf("Float test\n");
kprintf("Trying 3.14 + 1.44 in 3 seconds..\n");
sleep(3000);
volatile float a = 3.14;
volatile float b = 1.44;
volatile float c = a + b;
kprintf("%d", (i32)c);
return 0;
}
void vector_reset(Vector* vec) {
vec->size = 0;
}
u8 vector_reserve(Vector* vec, u64 new_cap) {
if (new_cap <= vec->capacity) return 0;
i32* new_data = realloc(vec->data, new_cap * sizeof(i32));
if (!new_data) return 2;
vec->data = new_data;
vec->capacity = new_cap;
return 0;
}
void vector_free(Vector* vec) {
free(vec->data);
vec->data = nullptr;
vec->size = vec->capacity = 0;
}
void render_list(Vector* numbers) {
kprintf("\nNumbers [%d/%d]: [", numbers->size, numbers->capacity);
if (numbers->size == 0) kprintf("]");
for (u64 i = 0; i < numbers->size; i++) {
kprintf("%d", numbers->data[i]);
if (i + 1 >= numbers->size) {
kprintf("]");
break;
}
kprintf(", ");
}
}
void debug() {
Vector nums;
vector_init(&nums);
kprintf("Heap test\n");
kprintf("press any key to add 1 number press 'q' to exit\n");
char c = 'd';
u64 i = 0;
while (c != 'q') {
render_list(&nums);
vector_append(&nums, i);
i++;
c = console_getc();
}
vector_free(&nums);
}
+1 -7
View File
@@ -33,7 +33,6 @@ typedef enum {
TOKEN_PANIC_UD2,
TOKEN_PANIC_PF,
TOKEN_QUIT,
TOKEN_CLEAR
} ksh_token;
@@ -44,9 +43,6 @@ typedef struct {
static const ksh_command_map token_map[] = {
{"", TOKEN_EMPTY},
{"q", TOKEN_QUIT},
{"quit", TOKEN_QUIT},
{"exit", TOKEN_QUIT},
{"cls", TOKEN_CLEAR},
{"clear", TOKEN_CLEAR},
@@ -85,9 +81,7 @@ void ksh() {
kgets(cmdbuff, 256);
switch(char2token(cmdbuff)) {
case TOKEN_EMPTY: continue;
case TOKEN_QUIT: return; // that'll cause panic lol
case TOKEN_SLEEP: cmd_sleep(); break;
case TOKEN_DEBUG: cmd_debug(); break;
case TOKEN_REGS: cmd_regs(); break;