OSDev.org

The Place to Start for Operating System Developers
It is currently Thu Mar 28, 2024 6:11 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 24 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 11:39 am 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
Hey guys!
After more than 5 months since my last release, I finally make another alpha release of xOS. A lot can happen in 5 months, and a lot has happened. New things:
  • Rewrote AHCI driver - boots from SATA on QEMU, VirtualBox and real HW.
  • Reworked GUI - wallpaper, transparency, and shell.
  • Graphical toolkit and applications to demonstrate, including calculator.
  • Loading programs from disk.
  • Performance improvements everywhere.
  • (Incomplete) ACPI AML interpreter.
  • Other small things I can't think of now.
I've also moved to the MIT license instead of the GPL. Here's the GitHub release. Your feedback is greatly appreciated!

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 12:08 pm 
Offline

Joined: Wed Jan 25, 2017 8:16 am
Posts: 23
It reminds me of KolibriOS. Great operating system! I would love to see you have a file manager and to be able to install it on hard disk with ISO. Did you use jmp word 0xffff:0000 for reboot? By the way, where's the shell?

_________________
One day in the future... computers will be holograms...


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 12:22 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
stevej150 wrote:
It reminds me of KolibriOS. Great operating system! I would love to see you have a file manager and to be able to install it on hard disk with ISO. Did you use jmp word 0xffff:0000 for reboot? By the way, where's the shell?

Thanks! A file manager is coming soon, but ISO and CD/DVD support is rather far down in my to-do list. For reboot, I use the PS/2 controller (writing 0xFE to port 0x64) but ACPI reset will be implemented in the coming time, for better real hardware compatibility. The shell doesn't mean a traditional "terminal"; I have a graphical shell. The start menu and taskbar are parts of the graphical shell.

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 1:27 pm 
Offline
Member
Member

Joined: Sun Sep 18, 2011 10:18 am
Posts: 46
A neat GUI.

However, mouse behavior is weird while dragging.

It does not seem to track the active window properly when a mouse button is depressed. When a window is dragged too fast, or the mouse pointer is too close to the title bar border, the GUI tends to stop updating the window position (and mouse input is delivered to the window under the mouse pointer instead).

Also, it's possible do move a window when the mouse pointer is completely outside that window. To reproduce: open a window. Start moving the window by dragging it's title bar. Rapidly move the mouse pointer upwards. The GUI stops updating the window position despite the mouse button is not released. Move the mouse pointer to the left or right of the window. The GUI suddenly resumes to update the window position even though the mouse pointer is outside the window.

Finally, when the left mouse button is depressed and the mouse pointer is moved over a button in the calculator app, the app responds as if the button was clicked each time the mouse pointer is moved inside a button. This leads to inadvertent entry of digits when trying to quickly enter numbers into the calculator.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 1:49 pm 
Offline
Member
Member
User avatar

Joined: Thu Aug 06, 2015 6:41 am
Posts: 97
Location: Netherlands
I noticed the same things in the GUI, and also crashed the graphical shell by opening many applications, I left the serial outputs in an issue on your github release.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:06 pm 
Offline

Joined: Wed Jan 25, 2017 8:16 am
Posts: 23
omarrx024 wrote:
stevej150 wrote:
It reminds me of KolibriOS. Great operating system! I would love to see you have a file manager and to be able to install it on hard disk with ISO. Did you use jmp word 0xffff:0000 for reboot? By the way, where's the shell?

Thanks! A file manager is coming soon, but ISO and CD/DVD support is rather far down in my to-do list. For reboot, I use the PS/2 controller (writing 0xFE to port 0x64) but ACPI reset will be implemented in the coming time, for better real hardware compatibility. The shell doesn't mean a traditional "terminal"; I have a graphical shell. The start menu and taskbar are parts of the graphical shell.


You mean - in 0x64, 0xFE?!
How did you learn to do all this OS development? Where did you learn? It's amazing.

_________________
One day in the future... computers will be holograms...


Last edited by stevej150 on Sat Jan 28, 2017 2:10 pm, edited 3 times in total.

Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:08 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
Thanks for testing!
pdurlej: I know about the window manager problems. I'm going to rewrite the window manager event handler soon, and these issues should be gone.
sleephacker: I've commented on your GitHub issue, explaining why the problems you mentioned happened. I'll be sure to fix that soon, too.

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:10 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
stevej150 wrote:
You mean - in 0x64, 0xFE?!

To reset the PC:
Code:
outb(0x64, 0xFE);


stevej150 wrote:
By the way, I will make applications for you, ok?

Feel free to experiment as you like; however, there is still no real documentation for the kernel API, and the source code is as close as you can get to documentation. I wouldn't encourage you to write actual applications yet, though, as the APIs are still under early development and change often and other things are just plain missing (e.g. textbox component, hierarchy support, etc...)

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:11 pm 
Offline

Joined: Wed Jan 25, 2017 8:16 am
Posts: 23
I might make applications. By the way, how did you learn all the OS development? I might join you and help you develop! We can work on parts.

_________________
One day in the future... computers will be holograms...


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:22 pm 
Offline
Member
Member
User avatar

Joined: Mon Jun 15, 2009 10:01 am
Posts: 311
Location: France
I noticed the same bugs too. However, the GUI is pretty fast, at least on VirtualBox.
One suggestion: you should add a border around your windows :)

_________________
"Open source seems to embrace the dark side of human nature." - Ville Turjanmaa


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sat Jan 28, 2017 2:58 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
stevej150 wrote:
I might make applications. By the way, how did you learn all the OS development? I might join you and help you develop! We can work on parts.

I learnt mostly from the OSDev Wiki, and reading documentation when the OSDev Wiki was insufficient, and posting here as a final resort.

f2 wrote:
I noticed the same bugs too. However, the GUI is pretty fast, at least on VirtualBox.
One suggestion: you should add a border around your windows :)

Thanks! The window theme can be configured. At the moment, the OS doesn't load a configuration file from the disk, but you can change the values at the top of kernel/gui/wm.asm to suit your liking and add a border. Most of them are self-explanatory.
Code:
; Window Theme!
; TO-DO: Set these values from a theme file from the disk (i.e. make the gui customizable)
align 4
wm_color         dd 0x808080
;wm_color         dd 0x004288
window_title         dd 0xFFFFFF
window_inactive_title      dd 0xC0C0C0
window_border         dd 0x383838
window_active_border      dd 0x383838
window_active_outline      dd 0x00A2E8
window_close_color      dd 0xD80000
window_background      dd 0xD0D0D0
window_opacity         db 1      ; valid values are 0 to 4, 0 = opaque, 1 = less transparent, 4 = most transparent.

align 4
window_border_x_min      dw 0      ; min x pos for a 0 width window
window_border_y_min      dw 24      ; min y pos for a 0 height window
window_close_position      db 0      ; 0 = left, 1 = right, for now this has no effect

align 4
window_close_x         dw 4
window_close_y         dw 4
window_close_width      dw 16
window_close_height      dw 16

window_title_x         dw 24
window_title_y         dw 4
window_canvas_x         dw 0
window_canvas_y         dw 24

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sun Jan 29, 2017 12:35 pm 
Offline
Member
Member
User avatar

Joined: Sun Apr 05, 2015 3:15 pm
Posts: 31
Works great, aside from the issue with fast window dragging (which was mentioned earlier), works neat.
An issue I experienced in the calculator is when dividing with zero, it just closes instead of giving an error.
I see you currently have a bitmap font, are you planning on implementing TTF font rendering or something along those lines later?
Also, I suggest you to not include binary files in your github repository (disk.hdd).
Great work, keep going :)

_________________
osdev project, goal is to run wasm as userspace: https://github.com/kwast-os/kwast


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sun Jan 29, 2017 1:11 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
ndke wrote:
Works great, aside from the issue with fast window dragging (which was mentioned earlier), works neat.
An issue I experienced in the calculator is when dividing with zero, it just closes instead of giving an error.
I see you currently have a bitmap font, are you planning on implementing TTF font rendering or something along those lines later?
Also, I suggest you to not include binary files in your github repository (disk.hdd).
Great work, keep going :)

Thanks for your feedback!
The issue with window dragging will be fixed soon; some other WM bugfixes have been done today. The calculator issue is also fixed now; it didn't use to check for divide by zero, and so it would cause an exception and the kernel would terminate the faulting application. :)
About TTF, I would probably implement this later in userspace, but it's far down in my to-do list.
The disk image in my GitHub repository is there to be the "latest nightly build." or the binary of each commit I push because I don't really commit every night. :)

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sun Jan 29, 2017 1:14 pm 
Offline
Member
Member

Joined: Wed Jan 25, 2017 3:37 pm
Posts: 71
Looks nice :)

Is checkbox/combobox/multiline textbox controls implemented, or it's only showcase?


Top
 Profile  
 
 Post subject: Re: xOS v0.07 -- testing needed!
PostPosted: Sun Jan 29, 2017 1:32 pm 
Offline
Member
Member
User avatar

Joined: Sat Dec 27, 2014 9:11 am
Posts: 901
Location: Maadi, Cairo, Egypt
monobogdan wrote:
Looks nice :)

Is checkbox/combobox/multiline textbox controls implemented, or it's only showcase?

Thanks!
No, the only components implemented at the moment are label, button and gbutton (which is basically a button whose look can be enhanced). The text box is my next coming priority, and then the list box, as both are needed for the file manager I have in mind, and the text box is the main thing in a text editor as well. :)

_________________
You know your OS is advanced when you stop using the Intel programming guide as a reference.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 24 posts ]  Go to page 1, 2  Next

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 21 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group