Smile is growing... perhaps ;)

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Smile is growing... perhaps ;)

Post by Karlosoft »

Hi! This isn't the first time I post some binaries or images of my operating system. The first version is near and I'd like to post some pictures of my os and in the next days I'll also add a binary image. I would be very pleased if someone has time to spend trying Smile. Your reports could be very important in order to make it better :). This version was born like a debugger of my os. Than I understood that the debugger was better than Smile itself, even if I deleted the gui from here. This is why I could define it a sort of "textual mode edition", even if I'm going to copy&paste the user interface from the other version.

It is programmed in C++, assembly, BASIC and even CSS ;) (my frame class supports CSS)

My project is divided in five different parts: the bootloader, the 16bit legacy layer, the 32bit kernel, the library and the AAA subsystem, a sort of runtime library that I'm developing.
Here there is a list of the main features of Smile 32bit layer.
  • It is able to load drivers and modules from the ramdisk and from a real media.
  • It is able to address up to 64bit of virtual memory loading and writing areas in the computers linked to the main one.
  • It supports up to 255 programmable consoles (some of them are already used from the system for error logging and debugging aims).
  • It supports up to 512 blocks of physical memory in the ring0 level.
  • It has a library of kernel functions enabled just with a header file.
  • It has a small implementation of the stl (but not std functions)
  • It is able to work with the 16bit subsystem
  • Safe variables, pointers and functions.
  • Up to 16 devices linked to an IRQ line.
  • A simple debugger.
  • File subsystem support
The kernel detects the hardware and loads some of the basic drivers from the image loaded by the bootloader. The basic driver are:
  • PIT
  • CMOS
  • Keyboard PS2
  • Mouse PS2
  • VGA Driver
  • VESA BIOS EXTENSION Driver
  • PIC
  • MP support
  • Graphic filters (alpha, antialias, blur and so on)
  • BASIC Interpreter
  • FAT12 FAT16 FAT32 support
What I miss?
  • Multitasking (I'm trying to find the best solution)
  • Ring4 protection (I'm still in the driver space, and I'm not sure I'll implement the syscall)
  • Paging...
  • Many important functions of the library
  • AAA subsystem
  • Dynamic Functions and runtime classes.
  • My own filesystem.
Next steps?
  • PCI
  • AGP
  • INT 3 debug
  • My own exe format
  • ACPI
Attachments
The shell (the code of the bootloader is the same of the 16bit layer)
The shell (the code of the bootloader is the same of the 16bit layer)
bootloadershell.PNG (8.19 KiB) Viewed 13260 times
The credits of the bootloader ;)
The credits of the bootloader ;)
The bootloder.. :)
The bootloder.. :)
booting.PNG (7.76 KiB) Viewed 13260 times
Last edited by Karlosoft on Fri Jan 06, 2012 7:16 pm, edited 4 times in total.
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

Secondo post of screenshots
Attachments
Some tests with the keyboard driver. Like in old commodore machines I can set the color form the keyboard :)
Some tests with the keyboard driver. Like in old commodore machines I can set the color form the keyboard :)
colors.PNG (6.99 KiB) Viewed 13256 times
The main screen of the os loaded with some information about the program loaded and some tests on the screen :)
The main screen of the os loaded with some information about the program loaded and some tests on the screen :)
The full screeen shell of the bootloader
The full screeen shell of the bootloader
bootloadershell2.PNG (11.46 KiB) Viewed 13256 times
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

Some other images...
Graphein isn't part of smile... it is just a program I wrote for a machine which tests the resistance of ropes.
Attachments
My first application based on Smile...
My first application based on Smile...
The error console... When an exception or an error of the library occur it is shown here..
The error console... When an exception or an error of the library occur it is shown here..
error.PNG (6.79 KiB) Viewed 13253 times
The debug console...
The debug console...
debug.PNG (9.2 KiB) Viewed 13253 times
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

With Page up and page down you can scroll the console screen :)
Attachments
docs2.PNG
The documentation of Graphein :)
The documentation of Graphein :)
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: Smile is growing... perhaps ;)

Post by Brynet-Inc »

That font is ridiculous.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

O.O what is the problem of the font?
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: Smile is growing... perhaps ;)

Post by Combuster »

Karlosoft wrote:O.O what is the problem of the font?
It's obviously not troll-proof :wink: and it has a relative large amount of space between individual characters. Any reason against using VGA fonts?
"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 ]
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Smile is growing... perhaps ;)

Post by Owen »

Its generally difficult to read
User avatar
xvedejas
Member
Member
Posts: 168
Joined: Thu Jun 04, 2009 5:01 pm

Re: Smile is growing... perhaps ;)

Post by xvedejas »

The worst bit is that the lowercase 'L' character looks much like a lowercase 'e' character, but there are plenty of other offences to the art of typography.
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

I remember you that the font on a monitor 4/3 has a different look.
It's a bit hard to take the 'l' for a 'e'. The space is so much because the vga adapter add an empty pixel after every char to reach the resolution of 720x400.
Well I dislike the VGA font of my BIOS and I changed it in order to have some new not supported chars of Italian language. I'm pretty surprised that it is so hard to read, nobody I knew has had problems. May I ask you which rules I broke and which chars are unreadable?
Attachments
debug adjusted.PNG
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: Smile is growing... perhaps ;)

Post by Combuster »

Nobody said it was "unreadable", just that it's more troublesome.

Some key points have already been given. also:
- Individual symbols need to be well distinguishable (e vs l),
- Individual symbols need to have consensus of style (script l versus the more static t vs weighted z/d )
- shapes must connect or disconnect where needed: the hole in the e is lacking, the m has a disjoint middle leg
- symbols should group into words and words into sentences. Your font reads like a chinese calligrapher would: each character is (not) a word.
There was a thread on the subject somewhere on the forum, you should go out and find it.

That said, why not just fix the needed italian in the VGA font (Did you try loading the extended ascii with codepage 850 or parts thereof)
"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 ]
User avatar
DavidCooper
Member
Member
Posts: 1150
Joined: Wed Oct 27, 2010 4:53 pm
Location: Scotland

Re: Smile is growing... perhaps ;)

Post by DavidCooper »

An impressive piece of work, although it's visually quite painful. I hate the yellow screen (picture 2), but maybe that's just me - to try to balance the yellow against something you could try a red outline for the box, yellow for the content of the top half and blue text for the content of the lower half (it might not work, but by experimenting in this way I'm sure you can find some way to improve the look of it considerably).

On that same screen, where it says "Here you are a small guide." it sounds like an invitation to take part in some kinky role-play where you are asked to pretend to be a girl in uniform. Better wording might be "Here is a list of available commands."

If you want to keep that font, you'll need to provide a switch to an alternative one, or better still, start with something easier to read and offer the fancy one as an alternative. I don't know how you can solve the letter spacing issue, but I agree with the others here that it adds to the reading discomfort.

In pictures 1 and 3 there are rather a lot of long horizontal lines with very short text content between them. It isn't clear what the longest text to appear in them might be or how many additional long thin boxes might need to appear underneath the existing ones, but if the content is always going to be fairly short it might be better to go for short fat boxes with maybe three or four boxes per row.

In pictures 8 and 9 the attempt at a 3D banner heading results in something that looks like a sticker that has come loose and slid out of place) - it simply doesn't work with boxy graphics, unlike your flames which are superb.

Having said all that, don't worry too much about the visuals - keep focused on getting the functionality right first and put some work into making it visually more attractive later on.
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
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

- shapes must connect or disconnect where needed: the hole in the e is lacking, the m has a disjoint middle leg
- symbols should group into words and words into sentences. Your font reads like a chinese calligrapher would: each character is (not) a word.
There was a thread on the subject somewhere on the forum, you should go out and find it.

That said, why not just fix the needed italian in the VGA font (Did you try loading the extended ascii with codepage 850 or parts thereof)
The e is so streched because I have just 8x8pixel to fix the shape, but I understand your point of view :).
The difference between cursive and "stampatello" or Roman Type is this there is padding between the chars.
I could fix it but there wasn't the space around the chars to add the graphic symbols required :)
DavidCooper wrote:An impressive piece of work, although it's visually quite painful. I hate the yellow screen (picture 2), but maybe that's just me - to try to balance the yellow against something you could try a red outline for the box, yellow for the content of the top half and blue text for the content of the lower half (it might not work, but by experimenting in this way I'm sure you can find some way to improve the look of it considerably).
This guide has no color :) It is just a plan text file and the booloader types the text file in this way. I could change the default color ^_^ or convert it in a ansi file.
DavidCooper wrote: On that same screen, where it says "Here you are a small guide." it sounds like an invitation to take part in some kinky role-play where you are asked to pretend to be a girl in uniform. Better wording might be "Here is a list of available commands."
I can't understand this XD sorry ^_^
DavidCooper wrote: If you want to keep that font, you'll need to provide a switch to an alternative one, or better still, start with something easier to read and offer the fancy one as an alternative. I don't know how you can solve the letter spacing issue, but I agree with the others here that it adds to the reading discomfort.
Ok I will put this font together with the one with the runes XD
DavidCooper wrote: In pictures 1 and 3 there are rather a lot of long horizontal lines with very short text content between them. It isn't clear what the longest text to appear in them might be or how many additional long thin boxes might need to appear underneath the existing ones, but if the content is always going to be fairly short it might be better to go for short fat boxes with maybe three or four boxes per row.
I can't because I could use more long names and write in them additional data about the profile I'm loading.
DavidCooper wrote: In pictures 8 and 9 the attempt at a 3D banner heading results in something that looks like a sticker that has come loose and slid out of place) - it simply doesn't work with boxy graphics, unlike your flames which are superb.
This was my first try with colors ^_^ I'll try to fix it :)
DavidCooper wrote: Having said all that, don't worry too much about the visuals - keep focused on getting the functionality right first and put some work into making it visually more attractive later on.
It is however important :) I will fix all the problems.
User avatar
DavidCooper
Member
Member
Posts: 1150
Joined: Wed Oct 27, 2010 4:53 pm
Location: Scotland

Re: Smile is growing... perhaps ;)

Post by DavidCooper »

Karlosoft wrote:
DavidCooper wrote:On that same screen, where it says "Here you are a small guide." it sounds like an invitation to take part in some kinky role-play where you are asked to pretend to be a girl in uniform. Better wording might be "Here is a list of available commands."
I can't understand this XD sorry ^_^
Statement: "Here is a guide."
Announcement and invitation to look at something that's expected: "Here you are!"
Combine them: "Here you are: a guide"
A very different statement: "Here you are a guide" = "In this situation, you are a guide".
Make that a small guide, and the suggestion is that you are inviting the user to play the part of one of these:-

http://www.google.co.uk/imgres?imgurl=h ... CG8Q9QEwBw

That was a google search and I'm not sure if the link will last, so here's a direct link in case it breaks, though sadly without the music: http://www.yokoi.com/girlscout/uniform1.jpg

Anyway, it's just one of the many hazards of working in a language which you don't speak like a native.
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
User avatar
Karlosoft
Member
Member
Posts: 277
Joined: Thu Feb 14, 2008 10:46 am
Location: Italy
Contact:

Re: Smile is growing... perhaps ;)

Post by Karlosoft »

Ahah I see XD... the female scouts are "guide" also in Italian XD
I'll change it :)
Post Reply