Gamestudio Links
Zorro Links
Newest Posts
Help with plotting multiple ZigZag
by degenerate_762. 04/30/24 23:23
M1 Oversampling
by 11honza11. 04/30/24 08:16
Trading Journey
by howardR. 04/28/24 09:55
Zorro Trader GPT
by TipmyPip. 04/27/24 13:50
Data from CSV not parsed correctly
by jcl. 04/26/24 11:18
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (AndrewAMD, 7th_zorro), 923 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Newest Members
firatv, wandaluciaia, Mega_Rod, EternallyCurious, howardR
19050 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 16 of 26 1 2 14 15 16 17 18 25 26
Re: What are you working on? [Re: WretchedSid] #412551
11/28/12 22:52
11/28/12 22:52
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Sometimes I'd really like to understand what exactly you're doing there and why. Just for me ego.


Always learn from history, to be sure you make the same mistakes again...
Re: What are you working on? [Re: Uhrwerk] #412552
11/28/12 23:22
11/28/12 23:22
Joined: Apr 2007
Posts: 3,751
Canada
WretchedSid Offline
Expert
WretchedSid  Offline
Expert

Joined: Apr 2007
Posts: 3,751
Canada
Writing an open source kernel for the i486 architecture. Why? Because I can, that's why!

But it's still very limited, especially when it comes to userland stuff (the only thing working there are statically linked binaries, the runtime dynamic link editor works only inside the kernel). Maybe one day it'll be able to do something useful, but as of now it's just a bit of code to bootstrap the most basic things.

Last edited by JustSid; 11/28/12 23:27.

Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com
Re: What are you working on? [Re: WretchedSid] #412553
11/28/12 23:27
11/28/12 23:27
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
That's how far I already got it. But you're also doing stuff to control hardware etc. ? And I don't get why you run that in a console atop an operating system. Shouldn't this become the actual os? Sorry for my ignorance. I have no understanding of these low level things...


Always learn from history, to be sure you make the same mistakes again...
Re: What are you working on? [Re: Uhrwerk] #412554
11/28/12 23:45
11/28/12 23:45
Joined: Apr 2007
Posts: 3,751
Canada
WretchedSid Offline
Expert
WretchedSid  Offline
Expert

Joined: Apr 2007
Posts: 3,751
Canada
It's actually running inside of an emulator. The "console" is just the basic BIOS text output.
It does run on real hardware though, but it's a bit harder to make screenshot there and really annoying to reboot the system after making some small changes. QEMU also has a nice feature to log all interrupts which is really really nice for debugging.

And yes, the latest thing I was working on was hardware controller. Well, actually I've been working on two things there; The first thing is an in-kernel dynamic runtime editor which is able to load dynamic libraries into the kernel space and then link/relocate them in there and the second thing are two libraries called libkernel and libio.so which export and abstract part of the kernel functionality.
libio is written in C++ and provides some more abstraction including some basic container classes and a way to create services and service providers and then have the runtime match them (to give an actual example; There is a PCI library, libPCI, which provides a class called PCIDevice which basically abstracts one PCI device and makes access to it easier. And there is a class called PCIProvider which scans the PCI bus and looks for devices there, then it creates a PCIDevice for each found device and the PCIDevice tells the libio runtime that it is looking for a service that matches the properties of the PCI card and if the runtime finds such a service, it will create an instance of it and connect the PCIDevice with the service which then acts as a controller for the device.)

So in theory it's possible to write pretty high level device drivers, because the driver for the actual PCI devices doesn't have to care about finding the correct device on the bus and it doesn't have to re-implement the actual handling of the PCI device. It just needs to implement the functionality specific to the device.
And obviously this isn't only for PCI devices but for arbitrary hardware, but as of now there is only an abstraction library for PCI, because I'm lazy and stuff. The next thing I want to add is support for USB, but that won't make it into 0.3.0 (and 0.4.0 is going to have a VFS as main feature, so it can take some time before I'll actually work on USB stuff)


Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com
Re: What are you working on? [Re: WretchedSid] #412555
11/28/12 23:55
11/28/12 23:55
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
I think that all this stuff is pretty cool and sexy but somehow I'm missing a practical application for it. What do you intend to do with it. Or are you doing it just for the fun of creating it? Did you totally start from scratch or did you use some code as a basis? Where did you learn all these concepts and how? Question over questions... ^^


Always learn from history, to be sure you make the same mistakes again...
Re: What are you working on? [Re: Uhrwerk] #412556
11/29/12 00:09
11/29/12 00:09
Joined: Apr 2007
Posts: 3,751
Canada
WretchedSid Offline
Expert
WretchedSid  Offline
Expert

Joined: Apr 2007
Posts: 3,751
Canada
There is no practical application... It's just a pet project I like toying around with because it's so completely different from normal application development. I'm by no means a kernel developer and probably made more than one wrong design decision. Firedrake is never ever going to be something that can be used as an alternative OS (or just a s a functional kernel for that matter), but it's fun working on this.
And it did start completely from scratch, apart from the bootloader (for which I use GRUB), everything is written by and from scratch. I got some inspiration on how to design some of the parts from various other kernel projects (NetBSD, Dragonfly BSD and Darwin), but there is no code from other projects (except of the ELF hashing function... I probably go to hell for copying it and putting an MIT license header on-top of it. Well, it's probably going to be jail instead of hell tongue ).

About learning... well, it's a mix of trial and error, google, the Intel manuals and digging through other kernels. But it's mostly trial and error, my first kernel project from two years ago (https://github.com/JustSid/NANOS) was heavily influenced by the fact that I had no fucking idea what I was doing there. In retrospect it's surprising that this thing worked, and I'm pretty sure that I'm going to say this about Firedrake in a year.


Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com
Re: What are you working on? [Re: WretchedSid] #412587
11/29/12 16:49
11/29/12 16:49
Joined: Mar 2006
Posts: 1,993
Karlsruhe
PadMalcom Offline
Serious User
PadMalcom  Offline
Serious User

Joined: Mar 2006
Posts: 1,993
Karlsruhe
Actually what Sid did is awesome! I really hope he'll write a tutorial/book(?? laugh ) on the topic since there is no good stuff on the market except the old Tanenbaum. He'd make me really happy! wink But if he'd only start implementing a file system and an gui server... grin

Re: What are you working on? [Re: PadMalcom] #412596
11/29/12 18:07
11/29/12 18:07
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
@JustSid: To use a Quake 3 quote: "I tip my hat to you, JustSid!"


Always learn from history, to be sure you make the same mistakes again...
Re: What are you working on? [Re: Uhrwerk] #412704
12/01/12 18:18
12/01/12 18:18
Joined: Oct 2004
Posts: 4,134
Netherlands
Joozey Offline
Expert
Joozey  Offline
Expert

Joined: Oct 2004
Posts: 4,134
Netherlands

The little building icons are dummies and from ferion, just to add to the mood of the game.

It's tough displaying the right amount of information on a tiny screen and making the information as self-explaining as possible.

@HeelX: You develop a civilisation towards interstellar colonisation by building structures that give you money, material and defense points. By choosing one building you can't (simultaneously) choose another of the same type (e.g. either a clone facility or droid factory), so your choice of buildings determines what kind of civilisation you will grow to. When you reached interstellar travel, you can colonise a new star system and start over again, perhaps to take a different development path.

Last edited by Joozey; 12/01/12 18:25.

Click and join the 3dgs irc community!
Room: #3dgs
Re: What are you working on? [Re: Joozey] #412841
12/03/12 22:59
12/03/12 22:59
Joined: Apr 2007
Posts: 3,751
Canada
WretchedSid Offline
Expert
WretchedSid  Offline
Expert

Joined: Apr 2007
Posts: 3,751
Canada
@Jonas: Let's see about a book. A tutorial maybe sometimes, but as of now, Firedrake is really really tiny and nothing special. It's only at the very beginning and I'm not yet in a position to really write about this stuff!

@Uhrwerk: Thanks, I didn't know they used my nickname in Quake3 tongue

@Joozey: Nice, I like it. Reminds me a bit of ogame (if you know that game). Do you plan to release it on iOS as well, or just Android?

Btw, guys, guys, guys, Firedrake 0.3.0 is done!!!
I wrote a blogpost about it: http://widerwille.com/blog/articles/2012-01-03-firedrake-0-3-release
And here is the tag: https://github.com/JustSid/Firedrake/commits/release-0.3.0

Also, two pictures, because fuck yeah pictures!



Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com
Page 16 of 26 1 2 14 15 16 17 18 25 26

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1