What's your OSDev AWWWW YEAH! moment?

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
ker2x
Posts: 4
Joined: Mon Jun 23, 2014 2:35 pm

Re: What's your OSDev AWWWW YEAH! moment?

Post by ker2x »

i'm in a permanent state of AWWWWW YEAH!

- wrote the first byte of my MBR : AWWWWW YEAH!
- loaded it in BOCHS : AWWWWW YEAH!
- understood how the BOCHS debugger works : AWWWWW YEAH!
- called my first INT to clear the screen and write something : AWWWWW YEAH!
- understood the boot sequence : AWWWWW YEAH!
- RELOCATING THE MBR : AWWWWW YEAH! <- that was a big one :mrgreen:
- reading the disk #-o to load the first stage of the bootloader [-o< : AWWWWW YEAH!
- jumping to the 1st stage of the bootloader : AWWWWW YEAH!

More to come, hopefully...

my development process :
0x00) ok, what's next ?
0x01) OMGWTF!?
0x02) read documentation
0x03) OMGWTF!?
0x04) BBQ? :(
0x05) read documentation
0x06) OMGWTF!?
0x07) read documentation
0x08) Haaaaaaaaa :oops:
0x09) write some code
0x0A) OMGWTF!?
0x0B) read documentation
0x0C) write some code
0x0D) Mmmm....
0x0E) write some code
0x0F) Doh !
0x10) write some code
0x11) AWWWWW YEAH! =D>
0x12) GOTO 0x00
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: What's your OSDev AWWWW YEAH! moment?

Post by Muazzam »

My very exciting moments were:
1. When i successfully booted my hello,World OS on VirtualBox. My first step toward Operating system development.
2. When i booted my code on "real" hardware. From USB stick.
3. When i switched to 13h graphics mode.
4. When i discovered that "Hard disk" programming is simpler than floppy programming.
5. When i was switch to high resolution video mode (VESA).
6. When i found video mode of my desired resolution. (1366x786, mode#:162h)

In future my very exciting moments will be:
1. When i shall successfully port my real mode mouse driver to protected mode.
2. When i shall create floppy disk controller driver.
3. When i will create Wifi drivers.
4. When i will create laptop camera drivers.
User avatar
SpyderTL
Member
Member
Posts: 1074
Joined: Sun Sep 19, 2010 10:05 pm

Re: What's your OSDev AWWWW YEAH! moment?

Post by SpyderTL »

Booting from floppy image
Booting from real floppy disk
Booting from CD image
Booting from real CD
Booting from Hard Disk image
Booting from USB device
Booting from PXE network
Booting from C64 cartridge image (yeah, seriously)

Booting a Raspberry Pi and turning on an LED

Programmatically powering off a PC
Programmatically ejecting a CD

Hello world in 32-bit (probably the most difficult item on the list)

Pretty much any time the machine does what the documentation says that it is supposed to do...
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
shikhin
Member
Member
Posts: 274
Joined: Sat Oct 09, 2010 3:35 am
Libera.chat IRC: shikhin
Contact:

Re: What's your OSDev AWWWW YEAH! moment?

Post by shikhin »

I thought the better "aww, yeah!" moments were when the machine did something it wasn't documented to do, and you figured it out.

Cheers,
Shikhin
http://shikhin.in/

Current status: Gandr.
User avatar
zhiayang
Member
Member
Posts: 368
Joined: Tue Dec 27, 2011 7:57 am
Libera.chat IRC: zhiayang

Re: What's your OSDev AWWWW YEAH! moment?

Post by zhiayang »

Just managed to get an ICMP reply from google.com (still manually resolving IP addresses, DNS support not in yet), I think this covers it:
Image
Antti
Member
Member
Posts: 923
Joined: Thu Jul 05, 2012 5:12 am
Location: Finland

Re: What's your OSDev AWWWW YEAH! moment?

Post by Antti »

What's your OSDev AWWWW YEAH! moment?"
It was when I realised that there is no point in trying to use traditional programming languages, toolchains, file formats, etc. There are a lot of people who can do it better anyway. If I tried to follow the traditional path, I would not ever be best at it. It is also practically impossible that I came up with new innovations. If I create everything from scratch, it is at least theoretically possible. Very unlikely but possible.

The "AWWWW YEAH" moment was actually when I realised that it is possible to do this. All the tutorials and people are very much saying that I need some existing tools to be able to do anything. All I need is a small kickstarter, "an image builder", that I can write in C (for example). That tool is a temporary thing that is used only at the early stage. All the cross-compiler things, header files, programming language hacks, command line switches, linker scripts, and makefiles are very common for the followers of the traditional path. Those things are very irrelevant for me. Of course, I am reinventing the wheel very often...
User avatar
Bender
Member
Member
Posts: 449
Joined: Wed Aug 21, 2013 3:53 am
Libera.chat IRC: bender|
Location: Asia, Singapore

Re: What's your OSDev AWWWW YEAH! moment?

Post by Bender »

Antti wrote:
What's your OSDev AWWWW YEAH! moment?"
It was when I realised that there is no point in trying to use traditional programming languages, toolchains, file formats, etc. There are a lot of people who can do it better anyway. If I tried to follow the traditional path, I would not ever be best at it. It is also practically impossible that I came up with new innovations. If I create everything from scratch, it is at least theoretically possible. Very unlikely but possible.

The "AWWWW YEAH" moment was actually when I realised that it is possible to do this. All the tutorials and people are very much saying that I need some existing tools to be able to do anything. All I need is a small kickstarter, "an image builder", that I can write in C (for example). That tool is a temporary thing that is used only at the early stage. All the cross-compiler things, header files, programming language hacks, command line switches, linker scripts, and makefiles are very common for the followers of the traditional path. Those things are very irrelevant for me. Of course, I am reinventing the wheel very often...
:)
This reminds me of a guy who wrote an entire compiler without using a single tool. Just writing machine code in hexadecimal if I recall correctly.
Here's the link if anyone bothers: http://homepage.ntlworld.com/edmund.gri ... piler.html
"In a time of universal deceit - telling the truth is a revolutionary act." -- George Orwell
(R3X Runtime VM)(CHIP8 Interpreter OS)
User avatar
Primis
Member
Member
Posts: 62
Joined: Fri May 14, 2010 3:46 pm
Libera.chat IRC: Primis
Location: New York, NY
Contact:

Re: What's your OSDev AWWWW YEAH! moment?

Post by Primis »

When my VGA driver worked for the first time in 640x480x8, I directly manipulated The VGA registers and didnt resort to klunking into v86 mode. I had managed to do it completely from just reading refrence manuals. It was the first bit of "clean code" I'd written for my Kernel; that is, there was no tutorial, there was no example code.
The main reason it was "AWW YEAH!!!" Had to do with the accomplishment of finally being competent enough to read a datasheet and manual amd get useful information out of it. But it must have took another few weeks before I managed to do a proper putpixel() and primitiaves out of it.

I had to recently scrap that code when I did my rewrite though. It was spaghetti, and I didn't comment well enough. My current project is to make sure I keep the functions small in size, and scope.
Last edited by Primis on Tue Aug 12, 2014 3:42 pm, edited 1 time in total.
"On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."
Image
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: What's your OSDev AWWWW YEAH! moment?

Post by Combuster »

640x480x8
Are you sure it wasn't 640x480x4 or 320x240x8?
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
onlyonemac
Member
Member
Posts: 1146
Joined: Sat Mar 01, 2014 2:59 pm

Re: What's your OSDev AWWWW YEAH! moment?

Post by onlyonemac »

Antti wrote:
What's your OSDev AWWWW YEAH! moment?"
It was when I realised that there is no point in trying to use traditional programming languages, toolchains, file formats, etc. There are a lot of people who can do it better anyway. If I tried to follow the traditional path, I would not ever be best at it. It is also practically impossible that I came up with new innovations. If I create everything from scratch, it is at least theoretically possible. Very unlikely but possible.

The "AWWWW YEAH" moment was actually when I realised that it is possible to do this. All the tutorials and people are very much saying that I need some existing tools to be able to do anything. All I need is a small kickstarter, "an image builder", that I can write in C (for example). That tool is a temporary thing that is used only at the early stage. All the cross-compiler things, header files, programming language hacks, command line switches, linker scripts, and makefiles are very common for the followers of the traditional path. Those things are very irrelevant for me. Of course, I am reinventing the wheel very often...
That's kind of how I am, but not in terms of my toolchain but in the design of my operating system. I have not followed any tutorials beyond the point of gaining information. I have not copied and pasted any code. I have not read any references on OS design, only on the way the hardware works. My goal is to write an operating system completely from scratch without being influenced by previous designs (already it's too bad that nobody can break free of the traditional window-based GUI concepts).
Primis wrote:I had managed to do it completely from just reading refrence manuals. It was the first bit of "clean code" I'd written for my Kerenl; that is, there was no tutorial, there was no example code.
That's how my entire operating system is.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.

Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
User avatar
AndrewAPrice
Member
Member
Posts: 2297
Joined: Mon Jun 05, 2006 11:00 pm
Location: USA (and Australia)

Re: What's your OSDev AWWWW YEAH! moment?

Post by AndrewAPrice »

onlyonemac wrote:My goal is to write an operating system completely from scratch without being influenced by previous designs (already it's too bad that nobody can break free of the traditional window-based GUI concepts).
That's what I want to do to. I like to think that we live in the past/future/alternative steam-punk universe - and that I've never used a computer before, but we have this mysterious machine with a screen that has the ability of doing calculations, simulating virtual worlds, manipulating media. These mysterious machines are all connected together to form a global sharing network.

Now, imagine with your eyes closed - how would that machine work? How is the crazy steam-punk mathematician running his algorithms on it, and sharing his results with his colleges? How would the school child do his homework or the parent access the news on this fantastical device?
My OS is Perception.
Peterbjornx
Member
Member
Posts: 116
Joined: Thu May 06, 2010 4:34 am
Libera.chat IRC: peterbjornx
Location: Leiden, The Netherlands
Contact:

Re: What's your OSDev AWWWW YEAH! moment?

Post by Peterbjornx »

Image
first bits of ext2 support on my os :) (just readdir atm, but it was also the first real test of my block device layer, ata driver and partition support)
Peterbjornx
Member
Member
Posts: 116
Joined: Thu May 06, 2010 4:34 am
Libera.chat IRC: peterbjornx
Location: Leiden, The Netherlands
Contact:

Re: What's your OSDev AWWWW YEAH! moment?

Post by Peterbjornx »

Framebuffer device working in my os:
Image
kutkloon7
Member
Member
Posts: 98
Joined: Fri Jan 04, 2013 6:56 pm

Re: What's your OSDev AWWWW YEAH! moment?

Post by kutkloon7 »

MessiahAndrw wrote:
onlyonemac wrote:My goal is to write an operating system completely from scratch without being influenced by previous designs (already it's too bad that nobody can break free of the traditional window-based GUI concepts).
That's what I want to do to. I like to think that we live in the past/future/alternative steam-punk universe - and that I've never used a computer before, but we have this mysterious machine with a screen that has the ability of doing calculations, simulating virtual worlds, manipulating media. These mysterious machines are all connected together to form a global sharing network.

Now, imagine with your eyes closed - how would that machine work? How is the crazy steam-punk mathematician running his algorithms on it, and sharing his results with his colleges? How would the school child do his homework or the parent access the news on this fantastical device?
Sounds cool :)

I don't exactly remember where I read this, but there was this guy (I think it was in a book or maybe in a presentation about starting a bussiness), which noted that this approach doesn't really work well. People are often unconsiously influenced by implicit assumptions they are not fully aware of. Instead he/she propsed the exercise to think about something, then think of all the normal practices or assumptions you can make about it, and then try to come up with something that does it different. As an example the Apple store was compared against normal technology stores.

My (fairly standard) example: of a cafe:
- There are waiter which take orders
- There is a bar where you can go to to make orders
- There are tables to sit, or you can sit at the bar

Or even more implicit assumptions:
- People can choose what they drink, but not how much they pay
- People sit down whenever there is place and leave whenever they want (I mean this as opposed to using a bowling lane, where you reserve the lane in front)
- People pay in money
- People only buy drink and/or food
- You usually don't go alone to a cafe
- You sit with friends on one table
- There is not a lot of interaction going between different tables/groups of people

(I think you get the picture by now, I just wanted to show there are a lot of things you can change if you want!)

Now that you're aware of all the assumptions, you can more easily discard them (of course, you don't have to, but now you can, at least for the assumptions you noticed). I absolutely LOVE this exercise, as it kind of reduces something people would call creativity (coming up with a twist on something or a new creative idea) to analytical thinking (noticing properties associated with something, which I tend to be better at). If I actually wanted to start a cafe, I would have 5 or 6 interesting alternatives to your everyday-standard cafe (please don't get the illusion that they would all be succesful, but I think at least some of them would).

Basically the same thing can be done for OSes :) (although I doubt it works as well as for a cafe, as OSes are complicated and the different parts have to work together)
Post Reply