What's your OSDev AWWWW YEAH! moment?
Re: What's your OSDev AWWWW YEAH! moment?
the very first thing that got me into it is when i booted a floppy with a drivers that initalized audio card and modulated a sinus on keyboard input, in 100% asm with a short pci scan , on real hardware with a via integrated sound card
then when i got it to run on virtual machine, it make development so much easier
then when i implemented my abi, and was able to convert .dll and .so to this format with the dynamic linking and relocation to load binaries 'in place' and resolve import/export at load time, to run binaries compiled from C code
then when implemented the whole base memory system with the allocation, memory pointer reference and tree/node system on which everything else is based
then when i implemented usb, it was the only thing that i was very fearful about, because it's something i was totally unfamiliar with unlike video and audio and multimedia things, and it took me hell of time to figure it out, but now it works well
then when i got the font and image system to work
now i just finished multi tasking, and i have to finish the windows event management
the next big wow will be when i'll have networking operational, and able to stream an audio or video file =) and implement all server functionalities =)
then when i got it to run on virtual machine, it make development so much easier
then when i implemented my abi, and was able to convert .dll and .so to this format with the dynamic linking and relocation to load binaries 'in place' and resolve import/export at load time, to run binaries compiled from C code
then when implemented the whole base memory system with the allocation, memory pointer reference and tree/node system on which everything else is based
then when i implemented usb, it was the only thing that i was very fearful about, because it's something i was totally unfamiliar with unlike video and audio and multimedia things, and it took me hell of time to figure it out, but now it works well
then when i got the font and image system to work
now i just finished multi tasking, and i have to finish the windows event management
the next big wow will be when i'll have networking operational, and able to stream an audio or video file =) and implement all server functionalities =)
Re: What's your OSDev AWWWW YEAH! moment?
Oh, man that is awesome. I have not done a lot of work with USB or PCI, only very little. Yes, will be awesome when you can stream audio or video file across the network! Yea, when I found out there existed emulators it was a great moment because it did make it so much easier to test.h0bby1 wrote:...then when i implemented usb, it was the only thing that i was very fearful about, because it's something i was totally unfamiliar with unlike video and audio and multimedia things, and it took me hell of time to figure it out, but now it works well.....
.....the next big wow will be when i'll have networking operational, and able to stream an audio or video file =) and implement all server functionalities =)...
Re: What's your OSDev AWWWW YEAH! moment?
and as i use the ndis system of windows, i can just pick up network drivers for any pci or usb network device that has windows drivers, like the ndiswrapper of linux, just need to parse a .ini file and do a little work, but then it can load up any windows drivers with the ndis layer emulation
as i already have code to decode and playback video, and handling also streaming over networking, same for audio, and icecast things, i just wonder about camera how that work, or if maybe directshow driver can be loaded, vlc can load and use directshow codec, but i'm not sure how it works for webcam or firewire video aquisition device, that could be plugged into an icecast like thing, to have live video streaming
also one of next step is to work out with X11 ddx drivers for having yuv conversion, overlay, hardware resize, and that sort of things, it will be the next big piece of things
after that i can start coding some serious apps =)
as i already have code to decode and playback video, and handling also streaming over networking, same for audio, and icecast things, i just wonder about camera how that work, or if maybe directshow driver can be loaded, vlc can load and use directshow codec, but i'm not sure how it works for webcam or firewire video aquisition device, that could be plugged into an icecast like thing, to have live video streaming
also one of next step is to work out with X11 ddx drivers for having yuv conversion, overlay, hardware resize, and that sort of things, it will be the next big piece of things
after that i can start coding some serious apps =)
-
- Member
- Posts: 41
- Joined: Thu Aug 09, 2012 5:10 am
Re: What's your OSDev AWWWW YEAH! moment?
My greatest "AWWWW YEAH! moment" was when I successfully managed to boot the second CPU in my dual core laptop.
<PixelToast> but i cant mouse
Porting is good if you want to port, not if you want maximum quality. -- sortie
Porting is good if you want to port, not if you want maximum quality. -- sortie
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: What's your OSDev AWWWW YEAH! moment?
I think I was pretty impressed with myself when I managed to crash my PC into an infinite loop of displaying green smiley faces (just a coincidence, honest!) from the boot sector of a floppy disk. And it wasn't supposed to be an infinite loop anyway.
Then there was the time I got my real CPU into protected mode. I had spent weeks battling through incomplete online tutorials and muddled reference information (half of which made reference to DOS) before even drafting up my GDT, then I finally got to the stage where I got executable code out of the thing and got Bochs to display an "A" (this time without infinite loop) without triple-faulting. Then I booted my real PC from it.
Now my next milestone is to get the kernel to load a user program and run it... (actually not too far off, relatively speaking)
Then there was the time I got my real CPU into protected mode. I had spent weeks battling through incomplete online tutorials and muddled reference information (half of which made reference to DOS) before even drafting up my GDT, then I finally got to the stage where I got executable code out of the thing and got Bochs to display an "A" (this time without infinite loop) without triple-faulting. Then I booted my real PC from it.
Now my next milestone is to get the kernel to load a user program and run it... (actually not too far off, relatively speaking)
You're also into old Macs? I've got a Performa 475 (coincidentally the home version of the Quadra 605), but I haven't done any low-level work on it. I enjoy the Macintosh for what it is: unsurpassable, in my opinion. Anyway, are you on the 68kMLA forums? (I am.)Octocontrabass wrote:My most recent? Writing to video memory from the boot sector of a floppy disk.
...on a Macintosh Quadra 605.
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
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
-
- Member
- Posts: 5486
- Joined: Mon Mar 25, 2013 7:01 pm
Re: What's your OSDev AWWWW YEAH! moment?
I wouldn't say I'm into old Macs so much as old computers in general. I'm not on any Mac-related forums.onlyonemac wrote:You're also into old Macs? I've got a Performa 475 (coincidentally the home version of the Quadra 605), but I haven't done any low-level work on it. I enjoy the Macintosh for what it is: unsurpassable, in my opinion. Anyway, are you on the 68kMLA forums? (I am.)
As far as design goes, I'm thinking System 7 could have really benefited from proper user/supervisor separation. I've barely used it and already managed to crash it a few times!
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: What's your OSDev AWWWW YEAH! moment?
I'd say as a user I find it pretty stable, but maybe not so much as a programmer...
Apple did stress in their programmer's reference documentation that it is OUR responsibility to check for NULL pointers, and to be honest with you I think that encourages better coding practice, as otherwise people rely on protection systems and we just get a bunch of GPFs (which is my experience with Windows 3.1).
Apple did stress in their programmer's reference documentation that it is OUR responsibility to check for NULL pointers, and to be honest with you I think that encourages better coding practice, as otherwise people rely on protection systems and we just get a bunch of GPFs (which is my experience with Windows 3.1).
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
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: What's your OSDev AWWWW YEAH! moment?
Recently I remapped the PIC without realising that I had just reached my second milestone in my development process! I figured it out one evening when I was messing around with interrupts.
P.S. It seems that it's not actually necessary to remap the PIC if you aren't trying to catch processor exceptions. At least that's how it goes in Bochs.
P.S. It seems that it's not actually necessary to remap the PIC if you aren't trying to catch processor exceptions. At least that's how it goes in Bochs.
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
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Re: What's your OSDev AWWWW YEAH! moment?
Yeah but why wouldnt you want to be able to do that?
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
http://github.com/Jezze/fudge/
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: What's your OSDev AWWWW YEAH! moment?
Because I'm too lazy to write exception handlers at present . I'd rather spend my time actually making it do stuff, rather than writing a pile of exception handlers which I can't exactly test very well in any case.
If I find I'm getting a lot of triple-faults then I might go back and add the exception handlers.
If I find I'm getting a lot of triple-faults then I might go back and add the exception handlers.
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
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- Bender
- 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?
Good luck then, at least with debugging.onlyonemac wrote:Because I'm too lazy to write exception handlers at present . I'd rather spend my time actually making it do stuff, rather than writing a pile of exception handlers which I can't exactly test very well in any case.
If I find I'm getting a lot of triple-faults then I might go back and add the exception handlers.
It doesn't take much time for writing exception handlers, there are just 31 and out of that you have some reserved ones. In my OS (for now) I just print some characters ('G' for GPF, 'D' for DF, etc.) and do the appropriate operations. You may wish to add an infinite loop.
"In a time of universal deceit - telling the truth is a revolutionary act." -- George Orwell
(R3X Runtime VM)(CHIP8 Interpreter OS)
(R3X Runtime VM)(CHIP8 Interpreter OS)
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: What's your OSDev AWWWW YEAH! moment?
As I said, if I feel that exception handlers are necessary then I'll go back and add them. But for now the PICs out of the exception handlers' way.
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
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Re: What's your OSDev AWWWW YEAH! moment?
You can't be bothered to write exception handlers? Are you serious? I suspect that you are substituting "can't be bothered to" for "don't understand how to". I see little chance of you having any success in OS development. And I do hope you are not going to come back here asking questions that arise as a consequence.
- DavidCooper
- Member
- Posts: 1150
- Joined: Wed Oct 27, 2010 4:53 pm
- Location: Scotland
Re: What's your OSDev AWWWW YEAH! moment?
What he probably means is that he hasn't needed any thus far because he's still able to spot his mistakes easily whenever there's a tripple fault. I have never bothered to write exception handlers for the same reason, but if random crashes start to happen and I can't find them easily, I'll maybe do something about it then.
Help the people of Laos by liking - https://www.facebook.com/TheSBInitiative/?ref=py_c
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
Re: What's your OSDev AWWWW YEAH! moment?
I'd agree with that but for the fact that the same poster has asked in the past how he can know which instruction is causing a GPF. That's the sort of question that I hope won't be asked again by someone who can't be bothered with exception handlers.