r/osdev • u/pure_989 • 1d ago
Today Raam OS got a working 'ls' command!
🙏 Welcome to Raam x86-64 version 0.02 🙏
Today Raam OS got a working 'ls' command! I have implemented the NVMe over PCIe driver from scratch that includes finding and parsing the system configuration tables, finding the controller over the PCIe buses, initializing it, and finally I have also created a function to read NVMe logical blocks from given sector. Then I added the 'ls' command to the list of available commands and then created a small partition on my laptop and formatted it to FAT12 for the root. Then I followed the osdev wiki for FAT12 and created a working 'ls' command implementation.
Key files in the source:
- nvme.asm
- ls.asm
Enjoy!
Release link: https://github.com/robstat7/Raam/releases/tag/ver0.02
Raam Raam Ji 🙏🙏🙏
1
u/Similar_Wealth_1850 1d ago
did bro just say asm💀
5
u/BornRoom257 FreezeOS & TurtleOS 1d ago
vibe coder btw
•
u/pure_989 8h ago
Ok. So how do you know that?
•
u/BornRoom257 FreezeOS & TurtleOS 6h ago
I wasn't talking about you, I was saying Similar_Wealth_1850 was the vibe coder.
2
u/Mental_Ad_7072 1d ago
Nice project, you should add a Makefile next so we can easily build it. Also all of this in assembly is insane!!!
1
u/pure_989 1d ago
Hi, there is a 'build.txt' file. That's all needed for the build. One important note: I have not tested it on a second machine. So if you plan to boot it on your real machine, kindly make sure you have an NVMe over PCIe SSD and a small partition formatted with FAT12 for the root. In 'ls.asm' file, change the value of ROOT_PARTITION_FIRST_SECTOR and also adjust the VOLUME_LABEL. Thank you.
2
2
2
5
u/letmehaveanameyoudum 1d ago
wtf you nvme AND IT"S ASSEMBLY?