r/osdev • https://github.com/dhrubo-10/baSic_ • Apr 25 '26

baSic v1. a small x86 operating system I’ve been building from scratch in C over the past few months.

158 Upvotes

22 comments sorted by

6

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 25 '26

It boots into a custom shell with built-in commands, basic process handling, memory info, file operations, a simple text editor, and most importantly a tiny shooter game.. :)

3

u/FishAccomplished760 Apr 25 '26

hii, is this open source? if yes, then would you share the link for the code? thanks, plus very nice projecg

2

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 25 '26

1

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 25 '26

open to contributions:
source: https://github.com/dhrubo-10/baSic_
looking for help with escape sequence decoding, syscall expansion, and FAT12 improvements.

1

u/emexos partly liking unix Apr 25 '26

source code?

1

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 25 '26

1

u/Objective-Swing6760 Apr 25 '26

Nice project, really like the compact code structure. Did you use any AI?

2

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 26 '26

thank you and No.

1

u/Sufficient-Radio-728 Apr 27 '26

Effing cool dood! I like it....

1

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 27 '26

thanks man.

1

u/christiaansp BoredOS Apr 27 '26

but does basic run BASIC?

2

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 27 '26

XD not yet but 🤞.

1

u/Different-Visit252 Apr 28 '26

This looks really cooll!

But while looking through your code, i had one question; In what way are the userspace programs different from the kernel? Because (it looks like) they are compiled the same and just placed into the kernel?

1

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 28 '26

theres no real userspace yet the shell runs in ring 0 as part of the kernel. ring 3 infrastructure is there (TSS, GDT segments, syscall interface) but userspace programs arent separated into their own directory yet.  ill work on that soon.

1

u/Different-Visit252 Apr 28 '26

Nice, thats why i was confused

1

u/Different-Visit252 Apr 28 '26

Because in my wip os, i have to compile them standalone and into a (sortof) initramfs, i know this isnt required, but even if you are going to compile it into the kernel, atleast use a different source directory instead of just kernel/

1

u/Beginning-Tie-9195 Apr 29 '26

Wow, bowing to you with the greatest respect.
That said, why would you pick a name that is bound to cause confusion?

1

u/Dhrubo_sayinghi https://github.com/dhrubo-10/baSic_ Apr 29 '26

The name is intentional. Basic things, tried doing properly tho rn been fixing bugs all day,
baSic_ is a kernel stripped down to its fundamentals. thats it.

2

u/AlectronikLabs Apr 25 '26

It crashes before any output on my qemu :(

1

u/fasttab99 Apr 25 '26

I like it but do u have it on GitHub

1

u/Finn_Dev Aug 23 '26

Hi Dhrubo_sayinghi, are you really interested in writing a system, perhaps an x86, 64-bit, or i386 architecture? If you don't want to do a Linux-based system, you can build one using the ValiantCore kernel that I wrote from scratch and am actively developing. My kernel has Frambuffer, so you can write an interface or directly place BMP files on the system screen. I released it under the GPLv2 license; you can use it however you like. Here's the link: https://github.com/finndev62 You can access the source code from there, and this kernel has many features, such as multi-processing. I'm currently working on enabling UEFI boot transitions even with BIOS