News for hackers. Stuff that matters.
Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @05:46AM (#21862802)
Oh wow someone actually posted this! Thanks a lot for the comments and criticisms guys, really means lot to me. Before I go I'll answer some questions, so ask them away!
Re:Lilith: x86-64 OS written in Crystal by nlh on Monday December 23, 2019 @08:39AM (#21863505)
I’ll echo what everyone else said - SUPER IMPRESSIVE and awe-inspiring work. Thanks for sharing it with the world.

I have one question: While I can read and understand each individual line of code you wrote (go Crystal!) and what each method does, etc., I’m at a total loss for how you knew what and how to build - big picture wise. Can you share a bit about your process for building the mental model of this? How do you know where to start, what modules to build, what’s needed / what’s already there, etc? What roadmap (if any) are you using?

I’m just amazed at how something like this comes together and would love to learn a bit more about the process a single dev uses to build it.

Thanks in advance!

Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @09:50AM (#21863901)
You can checkout what I replied to jchw. But tldr, wanted to do DOS => got ambitious => made it multitasking => got more ambitious => added graphics and guis.

Currently it's pretty barren driver-wise, I currently have a FAT16 driver, a keyboard/mouse driver, some basic code to handle core architecture hardware and that's it. I really want to have CDROM support, a network driver (ne2k or e1000), an audio driver (sound blaster?) and an actual file system.

My roadmap is go with the flow. If I want a text editor, I'll focus on building a text editor. If I want to play doom I'll port doom (but I dont so I won't :^)

Re:Lilith: x86-64 OS written in Crystal by martinesko36 on Monday December 23, 2019 @06:09AM (#21862900)
How/when did you get started with coding? How did you learn your skills and how do you stay so productive?
Re:Lilith: x86-64 OS written in Crystal by throwaway77384 on Monday December 23, 2019 @06:21AM (#21862947)
I second this, please, oh lord, tell us!
Re:Lilith: x86-64 OS written in Crystal by GordonS on Monday December 23, 2019 @06:44AM (#21863033)
I just wanted to say, to build such a fully-featured OS on your own, and in such a short time frame, is an incredible achievement!

I very much look forward to reading through the code and learning more about it.

Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @09:55AM (#21863930)
Thanks but the code isn't that clean, there are hacks here and there and it isn't organized as clearly as I wanted to but feel free to look through it.
Re:Lilith: x86-64 OS written in Crystal by yellowapple on Monday December 23, 2019 @05:57PM (#21868236)
> the code isn't that clean

It's cleaner than a solid 90% of the code I've read over the years :)

Re:Lilith: x86-64 OS written in Crystal by ksec on Tuesday December 24, 2019 @03:32PM (#21874704)
I guess Crystal itself deserve some credit as well :)
Re:Lilith: x86-64 OS written in Crystal by GordonS on Monday December 23, 2019 @10:23AM (#21864127)
Hah, come on, to me you seem like a humble Linus Torvalds!
Re:Lilith: x86-64 OS written in Crystal by kburman on Monday December 23, 2019 @06:14AM (#21862916)
- What are the things that you have patched in crystal and libc?

- Any plan to release ISO for us to quickly run it in our local system?

Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @10:17AM (#21864085)
Precise GC information, the crystal compiler prepends a dword/qword value indicating an class' typeid upon allocation. I decided to patch the compiler to generate 2 functions, one that outputs the class' size based on a typeid, another one that outputs the offsets of each pointer in that class as a bitmap, based on a typeid.

The compiler also generates a null-terminated array of pointers pointing to the offsets of global variables.

No iso images yet, I haven't implemented iso9660 filesystem support, but it's coming soon?

Re:Lilith: x86-64 OS written in Crystal by ssivark on Monday December 23, 2019 @10:46AM (#21864311)
1. Would you consider this project "mature", or still rapidly evolving? Any particular aspects you are actively working on?

2. Any other project ideas you are toying around with?

Kudos and cheers!

Re:Lilith: x86-64 OS written in Crystal by lanius on Monday December 23, 2019 @08:56PM (#21869231)
Favorite anime?
Re:Lilith: x86-64 OS written in Crystal by mscasts on Monday December 23, 2019 @06:02AM (#21862870)
How old are you?
Re:Lilith: x86-64 OS written in Crystal by ffwff on Monday December 23, 2019 @06:06AM (#21862886)
shhh.
Re:Lilith: x86-64 OS written in Crystal by ivrrimum on Monday December 23, 2019 @06:55AM (#21863078)
From digging trough his blog, looks like 16-19