Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Aug 4th, 2006, 8:48 PM   #21
Harakim
Hobbyist Programmer
 
Join Date: May 2006
Location: West Jordan, Utah, United States
Posts: 176
Rep Power: 3 Harakim is on a distinguished road
Why can't SkyOS and Menuet count?
Harakim is offline   Reply With Quote
Old Aug 5th, 2006, 7:39 AM   #22
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
Count for what?
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Aug 6th, 2006, 1:57 AM   #23
Harakim
Hobbyist Programmer
 
Join Date: May 2006
Location: West Jordan, Utah, United States
Posts: 176
Rep Power: 3 Harakim is on a distinguished road
Why can't SkyOS and Menuet count as evidence one person can write a decent operating system.
Harakim is offline   Reply With Quote
Old Aug 6th, 2006, 2:49 AM   #24
Arevos
Programming Guru
 
Arevos's Avatar
 
Join Date: Aug 2005
Location: England
Posts: 1,499
Rep Power: 5 Arevos is on a distinguished road
Quote:
Originally Posted by Harakim
Why can't SkyOS and Menuet count as evidence one person can write a decent operating system.
Because Menuet was made by more than one person, and SkyOS is in beta and not widely used. That said, my definition of a decent OS was too narrow. When I wrote my first comment, I was imagining a rather elabourate affair. When Narue replied, I assumed she too was talking about the same thing. lectricpharaoh set me straight, and pointed out I was arguing over nothing. As such, I withdraw my earlier statements; they were ill thought out and just plain dumb :p
Arevos is offline   Reply With Quote
Old Aug 6th, 2006, 5:38 AM   #25
Thrasivoulas
Newbie
 
Join Date: Aug 2006
Posts: 5
Rep Power: 0 Thrasivoulas is on a distinguished road
Hey, too many replies, bad internet connection..
I just saw about 23 replies!
Give me some time to read it all and understand all this conversation..
.....
Thrasivoulas is offline   Reply With Quote
Old Aug 6th, 2006, 5:51 AM   #26
Thrasivoulas
Newbie
 
Join Date: Aug 2006
Posts: 5
Rep Power: 0 Thrasivoulas is on a distinguished road
Well, first of all, I am going to handle up only the gl ( the other group the rest os). First of all I'm going to try to make it on windows.
I'm going to make a simple 3d graphics library, so don't imagine that I'm going to make something like opengl or directX 3d. Once (and if) its ready then we are going to start thing of how to combine it with the os. The idea of starting with a simple text os sounds good (a bit). I'm going to suggest it to the other groop. But as I said before 1. we are going to TRY and 2. I'm going to make the gl (on windows first).

I m going off for now. see you in 1 or 2 days (the most)..
Thrasivoulas is offline   Reply With Quote
Old Aug 6th, 2006, 6:23 AM   #27
lectricpharaoh
Caffeinated Neural Net
 
lectricpharaoh's Avatar
 
Join Date: Jun 2005
Location: Dry west coast of Canada
Posts: 1,011
Rep Power: 5 lectricpharaoh will become famous soon enough
What you might want to do instead is start off with a 2D graphics library. While different brands and models of video cards will likely differ in how the mode is set, vertical pitch (byte offset between the start of neighboring horizontal scanlines; used to allow padding for faster addressing and/or logical screen widths greater than the physical screen width), ordering of RGB elements within each pixel, and so on, in many respects, they are much the same. Aside from the code to jump into different video modes (which is only needed to initialize a mode, not actually draw in it), much of the logic can be separated. The vertical pitch can just be added in (even when it is zero); all this means is that you can only copy a single scanline at a time, rather than the whole block. Since you could only copy it all at once if it was the width of the logical screen anyways, this is not a big restriction. Ordering of the RGB triplets can, like setting the video mode, be done at load time rather than on each drawing operation; if you stick to a standard graphics file format, you can adjust the pixel formats as needed whenever you load graphics.

When you get into acceleration, though, is when you will probably see the most difference between hardware. This is where it will become extremely difficult to use the full capabilities of even a handful of video cards, as you will not be able to rely on driver-level support (such drivers having been written for OSs besides yours).

You might consider also building your GUI on top of another OS, like DOS, rather than writing an OS from scratch (yet). Why DOS? Because it's very simple (in comparison to things like Linux and Windows), has some versions with available source, and- most importantly- doesn't implement memory protection or hardware virtualization, meaning you can do pretty much anything you like. Just be sure all your data is backed up. If the 640k barrier is an issue, as it most likely will be, there are tricks to get around this, such as using 'flat real mode' to allow addressing all memory locations, or DPMI (which is much safer, though it means memory protection and hardware virtualization will be in place).
__________________
And once again, Probability proves itself willing to sneak into a back alley and service Drama as would a copper-piece harlot.
- Vaarsuvius, Order of the Stick
lectricpharaoh is offline   Reply With Quote
Old Aug 7th, 2006, 3:28 PM   #28
Thrasivoulas
Newbie
 
Join Date: Aug 2006
Posts: 5
Rep Power: 0 Thrasivoulas is on a distinguished road
Hi all!

First, lets forget about the os, and focus on the gl.
Any suggestions?
Perhaps some books to read and start?
I thing that there must be some books about this; (except opengl or dirextx 3d books)l
Thrasivoulas is offline   Reply With Quote
Old Aug 7th, 2006, 3:44 PM   #29
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
Why resort to books? Isn't that cheating?
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Aug 7th, 2006, 3:50 PM   #30
Harakim
Hobbyist Programmer
 
Join Date: May 2006
Location: West Jordan, Utah, United States
Posts: 176
Rep Power: 3 Harakim is on a distinguished road
I would still suggest learning about OpenGL. I am not suggesting you learn the OpenGL library. I am talking about the OpenGL standard implemented by video card makers. I will admit I don't know much about video cards. I would imagine that video card vendors follow some standard in implementing OpenGL though. This will let you use the cards rather than using the CPU.

If you find out that vendors don't follow a standard (very possible), learn about drivers. Figure out how you can let developers make a simple system call (maybe putting information in a queue?). Then you will have to write a different driver for each card you plan to support, but that will be better than writing the world's largest graphics subsystem.

If you still want to write it from scratch, you should probably consider reading a lot of books about matrix mathematics or linear algebra to begin with.

If you are considering lectricpharaoh's suggestion about using DOS. There is an operating system called FreeDOS that I believe is open source. That would save you a lot of time/headaches and let you have more freedom.

As a side note, I am interested in writing an operating system, so I would like it if you would keep me up to date. My email is <my forum username>@gmail.com.
Harakim is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 9:59 AM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC