Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
I rewrote the terminal driver so that it now uses VT100 for output. With this it is now possible that applications can control their terminal window by sending escaped commands.
This also allowed me to finally separate the shell implementation from the terminal itself (it was basically a "built-in shell" before). The shell is now found in gosh - the Ghost shell. This shell is still work-in-progress but will soon be enriched with various features.
And what you see in the screenshot is just a little playing around - I ported the Duktape JavaScript interpreter and let it execute a little script. I have some plans on using this as a replacement for what bash etc. usually do, but this is just an idea for now.
Last edited by max on Sat Jan 14, 2017 10:43 am, edited 1 time in total.
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Through until getting to his stage there is nothing hard until ACPI, HPET, implementing Cairo and VM86. Except if it has implementation of USB; then I will be jealous . I don't see anything USB on his repository btw.
klange wrote:
New file browser, and with it a new menu widget based on the stuff I built for the panel's application menu. I also added a menu bar to the help browser I showed off previously, replacing the injected markup-based navigation.
Nice!
Why do some .py files have blue pad icon and some of them paper icon?
Does it support multiple filesystems (for example FAT16 hard drive partitions next to EXT2 hard drive partitions)?
Lukand wrote:Through until getting to his stage there is nothing hard until ACPI, HPET, implementing Cairo and VM86. Except if it has implementation of USB; then I will be jealous . I don't see anything USB on his repository btw.
Nothing hard... I'm waiting to see your OS with multicore support, an advanced window server, a proper filesystem, a whole lot of self-written libc, a proper custom GCC, a shell, a GUI terminal driver that actually works as such and is not just implemented in the window server, etc.. It is not just about writing a kernel, it's about designing an entire system and also implementing it.
It's considerably harder to design a good userspace system than just implementing drivers for things that usually have very good specifications and for which you have many many sources that already implement it/had problems with implementing it/found solutions.
Through until getting to his stage there is nothing hard until ACPI, HPET, implementing Cairo and VM86. Except if it has implementation of USB; then I will be jealous . I don't see anything USB on his repository btw.
You clearly have no idea.
If a trainstation is where trains stop, what is a workstation ?
Lukand wrote:Why do some .py files have blue pad icon and some of them paper icon?
I guess these files have the "executable" permission ("chmod +x file.py")? Is it right, klange?
Yep. A handful of modules in the Python standard library are meant to be usable directly, and I took the naïve approach when selecting an icon.
While I'm here: I made a new drawing app to replace the old one in my OS. I spent far too much time building the color selector using mesh patterns in Cairo. It's based on the GTK+ color picker that I'm used to using in Inkscape.
(Click to enlarge.)
I tested my OS on one of my old test PCs (single Pentium 4, ~2 GHz I'm not exactly sure how fast) and I concluded I need major performance improvements for older CPUs as I got used to testing on my laptop only.
Meanwhile, on my other test PC, it doesn't even boot.
You know your OS is advanced when you stop using the Intel programming guide as a reference.