Page 164 of 262

Re: What does your OS look like? (Screen Shots..)

Posted: Thu Sep 08, 2016 3:12 pm
by Ch4ozz
octacone wrote:@omarx024
Assembly... I was talking about this: wiki page full of C code
There are many port calls.
90% of the port calls are done already in your PCI driver.
You only need the code he posted to read from the passed LBA.

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 1:17 am
by Sik
*blinks*
Lukand wrote:Let's refresh this topic by adding more screenshots.
Um, here's some pics from an old project... It wasn't really ever functional though. (and as you can guess, no it's not PC)

Image

Image

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 5:54 am
by BrightLight
Sik wrote:Um, here's some pics from an old project... It wasn't really ever functional though. (and as you can guess, no it's not PC)
Always nice to see something different. What computer architecture is this?

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 8:00 am
by Sik
It's a Mega Drive, not even a computer.

The system is quite weak for heavy multitasking like we're accustomed so the idea was to make it entirely event driven. An application that's doing nothing could have very well not be running any code for a long while (unless e.g. it set up a timer callback to be run every so often or something like that), although even then the vertical blank interrupt is run every 1/60th of a second so I could still use that to help when something gets stuck. The tiny amount of RAM is still a problem though (a game would spend most of its memory in graphics and such which can happily reside in ROM and 64KB for storing just game state actually feels plentiful, but an application will be spending most memory in user data instead). Also lack of a keyboard, best option so far is to take a Saturn keyboard then pass it through an adapter (since it has the same electrical signals, just the port has a different shape due to Atari suing everybody -_-').

Not sure what I'll do next. I honestly don't like PCs at all at this point, been thinking on just making my own machine instead (even if notoriously weaker)... I already got some simple drawing software rendering library though (so far it can draw points, lines, rectangles and triangles (the latter two either outline or filled), also translucency and clipping windows).

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 9:40 am
by jojo
That.

Is.

Sick.

I've screwed with writing for GBA, the original XBox, the Dreamcast and a little bit with the original PS years and years ago, so I think about doing something like this with a console every great now and then, but of course have never done anything about it. And I grew up with a Genesis, so this gets right to the cockles of my heart.

I never finish anything, but now I must get back to playing with consoles.

EDIT: Was highly influenced by DC Linux/NetBSD and this dude's adventures in hacking his dreamcast and wanted to do a VGA mod, a piggybacked alternate BIOS, and an IDE adapter so that I could turn a dreamcast into a workstation that could boot directly from the hard drive. Only ever got as far as the VGA mod and the piggybacked BIOSes, never finished the IDE adapter. Now I want to revive that project.

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 11:18 am
by snijj
Image

So this is my latest incarnation and attempt, Veracyon OS. It is the culmination of a lot of work so far and is the furthest I've progressed and OS so far. The idea of the OS is that it will not be a UNIX clone or UNIX like system. It might take ideas here and there, but it will be my own creation and design. A design that will no doubt crash and burn! :D

It currently has the following implemented:
  • VGA Text Mode "Device Driver"
  • Virtual Terminal which periodically flushes to the VGA device driver. The idea is to be able to have multiple buffers or to merge multiple buffers/streams together in time.
  • GDT, IDT and all those basics.
  • Physical Memory Manager
  • Paging/Virtual Memory Manager
The memory management parts are the big ones for me as I've not gotten past that hurdle before! Now I'm on to setting up a heap and processes.

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Sep 09, 2016 5:29 pm
by Schol-R-LEA
Sik wrote:Not sure what I'll do next. I honestly don't like PCs at all at this point, been thinking on just making my own machine instead (even if notoriously weaker)... I already got some simple drawing software rendering library though (so far it can draw points, lines, rectangles and triangles (the latter two either outline or filled), also translucency and clipping windows).
Have you considered any of the common SBCs such as Raspberry Pi, Arduino, Beagleboard, or, if you prefer MIPS, the Imagine Creator ci20?

You might also see about importing one of the Loongson-based notebooks or mobos, such as the Lemote Foolong; Loongson is licensed implementation of MIPS64, so if your main beef is with x86, and aren't happy with ARM either, that might make a good choice. They aren't easy to get outside of the PRC, though.

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 11:15 am
by Octacone
Now, don't you tell me this isn't original! :D
BSOD-Security.png
Also doing random stuff like this:
TerminalGUI.png

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 1:59 pm
by BrightLight
octacone: how are you drawing the linear gradient? I'd really like to add that to my graphics library. :)

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 2:26 pm
by Octacone
omarrx024 wrote:octacone: how are you drawing the linear gradient? I'd really like to add that to my graphics library. :)
Who said it was a gradient? :D :D
It is a real deal bitmap picture. If you want I can show you how to make this exact thing using standard drawing methods. ;)

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 2:39 pm
by BrightLight
octacone wrote:Who said it was a gradient? :D :D
It is a real deal bitmap picture. If you want I can show you how to make this exact thing using standard drawing methods. ;)
Lol, OK. :mrgreen:
I'll get back to my filesystem and implementing open(), close() and read() so I can use a picture file as my background. :P It's 10:39 PM now, and hopefully I can finish this before tomorrow morning.

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 2:42 pm
by Ch4ozz
omarrx024 wrote:
octacone wrote:Who said it was a gradient? :D :D
It is a real deal bitmap picture. If you want I can show you how to make this exact thing using standard drawing methods. ;)
Lol, OK. :mrgreen:
I'll get back to my filesystem and implementing open(), close() and read() so I can use a picture file as my background. :P It's 10:39 PM now, and hopefully I can finish this before tomorrow morning.
Here you go:

Code: Select all

void DrawGradientA(int x, int y, int w, int h, unsigned int color_start, unsigned int color_end, bool draw_horizontal)
{
	int off_a = (int)((color_end & 0xFF000000) >> 24) - (int)((color_start & 0xFF000000) >> 24);
	int off_r = (int)((color_end & 0x00FF0000) >> 16) - (int)((color_start & 0x00FF0000) >> 16);
	int off_g = (int)((color_end & 0x0000FF00) >> 8) - (int)((color_start & 0x0000FF00) >> 8);
	int off_b = (int)((color_end & 0x000000FF)) - (int)((color_start & 0x000000FF));
	
	int base_a = (int)((color_start & 0xFF000000) >> 24);
	int base_r = (int)((color_start & 0x00FF0000) >> 16);
	int base_g = (int)((color_start & 0x0000FF00) >> 8);
	int base_b = (int)((color_start & 0x000000FF));
	
	if(draw_horizontal)
	{
		int i, j;
		for(i = y; i < y+h; i++)
		{
			for(j = x; j < x+w; j++)
			{
				float fhStep = (j - x) / (float)w;
				uint32_t col_gradient = ((base_a + (int)(off_a*fhStep)) << 24) | ((base_r + (int)(off_r*fhStep)) << 16) | ((base_g + (int)(off_g*fhStep)) << 8) | (base_b + (int)(off_b*fhStep));
				
				DrawPixelA(j, i, col_gradient);
			}
		}
	}
	else
	{
		int i, j;
		for(i = y; i < y+h; i++)
		{
			float fhStep = (i - y) / (float)h;
			uint32_t col_gradient = ((base_a + (int)(off_a*fhStep)) << 24) | ((base_r + (int)(off_r*fhStep)) << 16) | ((base_g + (int)(off_g*fhStep)) << 8) | (base_b + (int)(off_b*fhStep));
			
			for(j = x; j < x+w; j++)
				DrawPixelA(j, i, col_gradient);
		}
	}
}

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 2:57 pm
by BrightLight
Thanks! I'll try to implement this soon. :)

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Sep 10, 2016 5:09 pm
by f2
After many crashes and bugs that affects stability of my OS, I dropped the GUI from the kernel and renamed my OS "f2/OS".
So, here is what "f2/OS" looks like at this time:
f2/OS
f2/OS
I know it's less beautiful and impressive than before, but I really need something fast and stable.
64-bit version is under active development, and it helps me to fix some encoding bugs in my assembler.

Re: What does your OS look like? (Screen Shots..)

Posted: Sun Sep 11, 2016 12:44 am
by brunexgeek
This time a screenshot showing some allocations made with the new kernel dynamic memory manager. This is a very simple manager which deals with blocks of various sizes (reducing the memory waste) and keep track of them using buckets.