From 4470a47bb86ed025c5501971e5b7557a2ffd5d85 Mon Sep 17 00:00:00 2001 From: Aren Elchinyan Date: Sun, 29 Oct 2023 18:41:54 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=BD=D0=B8=D1=86=D0=B8=D0=B0=D0=BB?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BE=D0=BA=D1=80=D1=83?= =?UTF-8?q?=D0=B6=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=B0=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- configs/limine.cfg | 3 +++ modlib/system.h | 2 ++ modules/helloworld/main.c | 6 ++++-- modules/music/main.c | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/configs/limine.cfg b/configs/limine.cfg index 50bb845..2dbcb6c 100644 --- a/configs/limine.cfg +++ b/configs/limine.cfg @@ -18,6 +18,9 @@ BACKGROUND_PATH=boot:///boot.tga MODULE_PATH=boot:///boot.tga MODULE_CMDLINE=[BOOTIMG] + MODULE_PATH=boot:///mod/simd.ko + MODULE_CMDLINE=[MOD]simd.ko + MODULE_PATH=boot:///mod/hello.ko MODULE_CMDLINE=[MOD]hello.ko diff --git a/modlib/system.h b/modlib/system.h index 20bdf44..6881241 100644 --- a/modlib/system.h +++ b/modlib/system.h @@ -60,9 +60,11 @@ typedef struct { } env_t; extern module_info_t static_info; +static void (*fb_printf)(char *str, ...); static inline void init_env(env_t *loader_env) { loader_env->info = (module_info_t *)&static_info + loader_env->offset; + fb_printf = loader_env->fb_printf; } #endif // system.h diff --git a/modules/helloworld/main.c b/modules/helloworld/main.c index 583ce2c..ee7ceab 100644 --- a/modules/helloworld/main.c +++ b/modules/helloworld/main.c @@ -1,9 +1,11 @@ #include -const char name[] = "Привет мир!"; -const char message[] = "Привет из модуля!"; +static const char name[] = "Привет мир!"; +static const char message[] = "Привет из модуля!"; module_info_t init(env_t *env) { + init_env(env); + fb_printf("[%s]\n", message); return (module_info_t){ .name = (char *)&name, .message = (char *)&message, .err_code = 2023, diff --git a/modules/music/main.c b/modules/music/main.c index 427c239..9daa374 100644 --- a/modules/music/main.c +++ b/modules/music/main.c @@ -37,7 +37,7 @@ static void nosound( ) { module_info_t init(env_t *env) { init_env(env); - env->fb_printf("Программа инициализирована!\n"); + fb_printf("Программа инициализирована!\n"); return (module_info_t){ .name = (char *)"Мелодия", .message = (char *)"Надеюсь скоро тут будет тетрис!",