Add basic vga kernel module

This commit is contained in:
2025-11-19 21:23:25 +01:00
parent 5ac82c308d
commit f87b00b46f
14 changed files with 108 additions and 52 deletions

View File

@@ -26,16 +26,19 @@ mkdir -p "$OUT_DIR"
# Build TypeScript to JavaScript
cd src/os
echo "Compiling TypeScript to JavaScript..."
bun build --outdir ../../build --target node --bundle kernel/index.ts
bun build --outdir ../../build --target node --bundle src/index.ts
cd ../../
# Generate embedded JavaScript header
echo "Generating embedded JavaScript..."
bun scripts/build_js.js
python3 scripts/embed_js.py build/index.js > "$BUILD_DIR/embedded_js.h"
# Compiler flags
CFLAGS="-m32 -march=i686 -ffreestanding -nostdlib -fno-builtin"
CFLAGS="$CFLAGS -I$PICOLIBC_INSTALL/include"
CFLAGS="$CFLAGS -I./lib/duktape/src"
CFLAGS="$CFLAGS -I./src/lib"
CFLAGS="$CFLAGS -I./src"
CFLAGS="$CFLAGS -I$BUILD_DIR"

9
scripts/build_js.js Executable file
View File

@@ -0,0 +1,9 @@
#! /usr/bin/env bun
import { readFileSync, writeFileSync } from "fs";
writeFileSync(
"build/index.js",
readFileSync("build/index.js", "utf-8")
.replaceAll("let ", "var ")
.replaceAll("const ", "var ")
);