flat assembler
Message board for the users of flat assembler.

Index > OS Construction > Solar_OS new version released on 2006_07_12

Author
Thread Post new topic Reply to topic
bogdanontanu



Joined: 07 Jan 2004
Posts: 403
Location: Sol. Earth. Europe. Romania. Bucuresti
bogdanontanu
A new monthly release ...
for Solar_OS

Binary: http://www.oby.ro/os/files/sol_os_2006_07_12_bin.zip
Sources: http://www.oby.ro/os/files/sol_os_2006_07_12_src.zip


New Things:


1)Sol_Tris Game
----------------------
A graphical Tetris like game
so let me know your high scores.

Funny but Sol_OS did lacked games.
(I agree we need many other things)

3)ACT_NOTIFY callback
--------------------------
For backgrund tasks.

It allows applications to run when minimized
and/or are in another hidden desktop
without adding a timer or becoming a service.

Adds better sepparation of PAINT and RUN methods.

4)ListView control
-----------------------
You know, drag the headers...
I still have to add small icons and view modes to it

5)FDISK becomes more NTFS aware
-----------------------------------
In preparations for NTFS filesystem browse.

In FDISK APP if you press Enter on a NTFS partition
and read BPB in the upcoming Details window -->
then you will find some MFT and FileRecords info

But the transition is mainly internal since analysis and
functions are added in order to support NTFS.

_________________
"Any intelligent fool can make things bigger,
more complex, and more violent.
It takes a touch of genius -- and a lot of courage --
to move in the opposite direction."
Post 13 Jul 2006, 23:12
View user's profile Send private message Visit poster's website Reply with quote
Octavio



Joined: 21 Jun 2003
Posts: 366
Location: Spain
Octavio
I tested previous version, and fileviewer detects correctly a fat32 partition on the hard disk but was unable to read files,the file listing was just garbage, same problem when reading from cd. The cool down feature is still too hot on my PIII 930Mhz.
Post 14 Jul 2006, 11:41
View user's profile Send private message Visit poster's website Reply with quote
bogdanontanu



Joined: 07 Jan 2004
Posts: 403
Location: Sol. Earth. Europe. Romania. Bucuresti
bogdanontanu
Well, that is interesting!

Excuse number.1:
It never happened to me! (not to be able to read a FAT32 partition) Very Happy


Was that in Virtual PC or on a realPC hardware?
Who generated the FAT32 filesystem...

What does the FDISK application tell about the partition and BPB?
(eneter on partition, press read BPB button in next window)

FDD_Explorer will NOT read FAT12 or FAT16... only FAT32 as they are generated by Windows OSes.

It might be a bug beacuse I have changed all the interfaces to accomodate multiple filesystems...

About the CD-ROM it is possible:
- if the CD is not answering withing a decent timeout
- if the filesystem it is not exactly IS09660
- if it is a DVD.

But CD-ROM is early code anyway.

For even cooler CPU please try to enable Tk2 option also... this should almost completly stop the CPU and force it to reduce the core speed if it is capable (and a P3 usually is) Experiment with Coll Downd and TK2 to see wiitch one is better...

I will add more advanced power management options soon.
Post 14 Jul 2006, 16:57
View user's profile Send private message Visit poster's website Reply with quote
Octavio



Joined: 21 Jun 2003
Posts: 366
Location: Spain
Octavio
Now i tested the latest version without better results.
bogdanontanu wrote:
Well, that is interesting!

Excuse number.1:
It never happened to me! (not to be able to read a FAT32 partition) Very Happy

Yes,i also use this excuse, and i know that there are different computers on wich my Os could not work.

Quote:

Was that in Virtual PC or on a realPC hardware?

real hardware
Quote:

Who generated the FAT32 filesystem...

My OS Smile
Perhaps there is something wrong,Windows can read write with no problem but other OS have problems.Thats why also tested the cd.
Quote:

What does the FDISK application tell about the partition and BPB?
(eneter on partition, press read BPB button in next window)

Now the file viewer only detects a unknow partition ,but there are two
a fat 16 and a fat32.
Note that it is a 40GB hard disk but the computer bios only supports 8GB
Your program detects the hard disk size as 2MB.
Quote:

About the CD-ROM it is possible:
- if the CD is not answering withing a decent timeout
- if the filesystem it is not exactly IS09660
- if it is a DVD.

It is a dvd reader with a normal cd with iso9660 inside and is pretty fast
usually 3-6 seconds to start.
It seems that your driver don´t allow task switch while waiting for the unit to be ready,it appears a timeout message box like 'aplication not responding' .
Quote:

For even cooler CPU please try to enable Tk2 option also...

no changes ,i think that the computer is always very busy updating the screen.[/quote]
Post 16 Jul 2006, 09:53
View user's profile Send private message Visit poster's website Reply with quote
bogdanontanu



Joined: 07 Jan 2004
Posts: 403
Location: Sol. Earth. Europe. Romania. Bucuresti
bogdanontanu
Quote:

Question:Was that in Virtual PC or on a realPC hardware?
Answer: real hardware

Question:Who generated the FAT32 filesystem...
Answer:My OS Smile


I strongly suggest a test on VirtualPC since it is free now.

I agree that I did not tested on real hardware lately (busy) but I did tested on VirtualPC and it is working ok in there.

Besides VPC has the advantage of an uniform hardware platform for testing.

Anway I will conduct expensive testing on real hardware soon.

However testing on odd hardware is a big stress for a hobby OS.

Hobby OSes are well known for not having many drivers and not very compatible ones. Adding a custom generated FAT32 to this mixture is... well a little bit too much Razz

I have tested my FAT32 code with FAT32 generated by: MS-DOS, Win98SE, WIn2000 and WinXP.It works with all this Smile.

How can i get a hold of the FAT32 generated by your OS? Running your os in VPC with an unformated HDD will do?

Quote:

Now the file viewer only detects a unknow partition ,but there are two
a fat 16 and a fat32.
Note that it is a 40GB hard disk but the computer bios only supports 8GB
Your program detects the hard disk size as 2MB.


That HDD detection bug was present in an OLDER version ... the latesr version released on 2007_07_12 shold not have this bug anymore.

Of course IF the HDD is 2M it can hardly show any FAT32 partition corectly since only the FAT copies will usually be much bigger than this Very Happy

I was askinh about the FDISK allpication and not the File Browser (aka HDD_Explorer)... The FDISK Applications is located in the Hardware Tests menu... but in fact all filsystem applications are based on the info returned by the FDISK API.

I just wanted to know what is the output of that application to detect if the problem in on the lowest layers (below FDISK) of intermediate in between FDISK and HDD_EXplorer presentation layers.

One other issue would be the controller where the HDD explored are located... i somehow remember that the secondary controller has lower (older) quality drivers in SolOS... oh dear.

[quote]
It is a dvd reader with a normal cd with iso9660 inside and is pretty fast
usually 3-6 seconds to start.
It seems that your driver don´t allow task switch while waiting for the unit to be ready,it appears a timeout message box like 'aplication not responding' .
[quote]

Yes SolOS is well know for not allowing lengthy operations to perform Very Happy
(the watchdog will interupt such tasks brutally)

And yes the ATAPI drivers included do expose this problem if the operations take too long. It will be fixed in the next releases.

For now you could simply disable the WatchDog check box in The System Counters Application and check if the CD-ROM/DVD is read corectly in this case (after busy waiting) ...

The ATAPI drivers do have state machine non-busy wait versions but i did not have the time to enable them in the released SolOS.


Quote:

no changes ,i think that the computer is always very busy updating the screen.


Hmmm well the Tk2 option will always insert a HLT instruction in OS loop and because of this screen redraw will be postponed until the next IRQ-0... that is pretty slowly (18 times per seccond max)

The CPU should detect this HLT and cool down for a while until the next IRQ.

Of course that IF IRQs do come from the mouse, keyboard network or HDD activiity ... THEN the HLT will be terminated and the fast screen redraw will once again happen after the IRQ has been serviced...

Cool down option is adding an "adaptative" HLT in the sense that it will assume that more operations will foloww in cascade after an IRQ (network for example) and will slow down ONLY after a longer timeout...

However Cool down plus TK2 means 2xHLT and this should cool down )at least a little) any CPU. Fo example my Pentium-D CPU on my laptop drops to 800Mhs from 1.8Ghs when detects this 2xHLT

Of course the Pentium3 CPU is older and might cool down less and require some special commands to reduce frequency...


Anyway I would like to take the time and say: THANK YOU!

for the time spend into testing and reporting those issues on real hardware ... I really do appreciate it Smile

_________________
"Any intelligent fool can make things bigger,
more complex, and more violent.
It takes a touch of genius -- and a lot of courage --
to move in the opposite direction."
Post 16 Jul 2006, 17:29
View user's profile Send private message Visit poster's website Reply with quote
Octavio



Joined: 21 Jun 2003
Posts: 366
Location: Spain
Octavio
Quote:

I strongly suggest a test on VirtualPC since it is free now.

I think that the purpose of the test is to detect errors that only happens on
others computers.And the purpose of the OS is to handle directly the computer ,not run like a emulated aplication for another OS.I don´t think is funny to write drivers, but this is OS development.
Quote:

How can i get a hold of the FAT32 generated by your OS? Running your os in VPC with an unformated HDD will do?

I have not tested on VPC ,but it worked on bochs booting from fd.
I think that my fdisk program is correct ,but perhaps linux has some harcoded values and do not accept a fat32 with only one fat table,less reserved sectors, and not chs aligned.

Quote:

I was askinh about the FDISK allpication

no partitions found
on another computer amd1800xp HD 60gb usb 1 and 2
dvd recorder.
it detected the ntfs partition
but can´t read cd files and shows:
sector size=0
e:
file
file
file
file

eject and close did work.
USB test was interrupted by the watchdog timer.
Is curious that when it kills a window only the button disappears.
Post 17 Jul 2006, 10:48
View user's profile Send private message Visit poster's website Reply with quote
bogdanontanu



Joined: 07 Jan 2004
Posts: 403
Location: Sol. Earth. Europe. Romania. Bucuresti
bogdanontanu
Quote:

I think that the purpose of the test is to detect errors that only happens on
others computers.And the purpose of the OS is to handle directly the computer ,not run like a emulated aplication for another OS.I don´t think is funny to write drivers, but this is OS development.


Well for me it is still fun to develop drivers Wink
However I wanted to test in VPC for reference and to check if the version you have is ok. Aparently it is ok.


However I do consider that it is important for a hobby OS to be able to run nicely in VirtualPC and VMWare; becaue it allows for a larger userbase of testers... (not for drivers) but at least for applications.

I guess more people are willing to take a test ride in the comfort of a virtualmachine than boldly testing on real hardware...

Quote:

I have not tested on VPC, but it worked on bochs booting from fd.
I think that my fdisk program is correct ,but perhaps linux has some harcoded values and do not accept a fat32 with only one fat table,less reserved sectors, and not chs aligned.


Aha, so I coold run it in Bochs and generate such a test partition to reproduce the bugs in Sol_OS?

Oh, I see now, Windows never creates such a FAT32 partition --- ie one with a single FAT table --- since it is less secure and the FAT table does not use up so much space on HDD. (it is only around 8Megabytes per FAT)

OK --> Clearely that is why it is not working Very Happy.

Also reserved sectors have to be there because many military computers use them for specific purposes (HDD encryption keys) and some partition managers or boot managers also... not having them means a lot of trouble but indeed for odd computers.

Not CHS aligned is not a big issue but i guess the standard specifies that the values should be like that for compatibility reasons... many tools asume that the standard is respected into this issue.

OK., I will fix the assumption I make (aka always have 2 FATS) since it is not in the standards ... but honestly I never found a windows OS that will ever format without 2 FATS and this would be only to accomodate your OS.


For me, using FAT32 is only a transitory situation for compatibility and file interchange with Windows.

I do not intend to base my OS on FAT or any custom version of it.

Quote:

no partitions found
on another computer amd1800xp HD 60gb usb 1 and 2
dvd recorder.
it detected the ntfs partition


No partition in Fdisk Application ? after pressing the coresponding HDD button and "Read partitions" button?

Hmm this is odd since in FDISK application I do not care about how many FATS are present or if the partition is CHS aligned or about the reserved sectors...

There I simply read and show all partitions from the MBR....
Are you using a custom MBR also?

Quote:

but can´t read cd files and shows:
sector size=0
e:
file
file
file
file


Yes that is a bug in ISO9660 filesystem implementation: when a read from CD-ROM finishes abnormaly because of timeout... it will still show a dummy filelist. I will fix it to show a message or an empty filelist in the next release.

Sector_size=0 shows that the read from the CD-ROM failed ... OR again a custom ISO9660 filesystem?

Funny because this time I do read "sector_size" from the CD-ROM FS headers and I do not assume 2048 Very Happy

But maybe the read failed because of a timeout.

Quote:

eject and close did work.
USB test was interrupted by the watchdog timer.
Is curious that when it kills a window only the button disappears.


Oh, this is normal because the watchdog only kills the offending code that is inside the Button's callback itself... there is no reason to kill the whole application IF only a small part of code did failed.

The USB code is only for UHCI controllers...
Aha, and I guess it requires that you do run the PCI Enumerator first and the USB test application after it Smile

Because it needs the info from PCI to detect USB chipset base address..
mea culpa here

_________________
"Any intelligent fool can make things bigger,
more complex, and more violent.
It takes a touch of genius -- and a lot of courage --
to move in the opposite direction."
Post 17 Jul 2006, 16:27
View user's profile Send private message Visit poster's website Reply with quote
Octavio



Joined: 21 Jun 2003
Posts: 366
Location: Spain
Octavio
There is some problem with the hd driver, the first attempt to read fails but after a retry it works, i made a new fat32 with 2 fats (i have the sources of fdisk.asm Smile ) and hd explorer works ok, it even recognizes txt files or binary files ,better than windows wich uses the name extension.
can it load executables?

Quote:

Are you using a custom MBR also?

yes but is compatible.

Quote:

Aha, and I guess it requires that you do run the PCI Enumerator first and the USB test application after it Smile

done, but nothing happens.
Post 18 Jul 2006, 14:36
View user's profile Send private message Visit poster's website Reply with quote
bogdanontanu



Joined: 07 Jan 2004
Posts: 403
Location: Sol. Earth. Europe. Romania. Bucuresti
bogdanontanu
Quote:

There is some problem with the hd driver, the first attempt to read fails but after a retry it works, i made a new fat32 with 2 fats (i have the sources of fdisk.asm Smile ) and hd explorer works ok,


Aha, so it must be an too early timeout issue. I guess my HDDs are newer and thus faster... i will test on some older solower HDDs. Thank you again!

Quote:

it even recognizes txt files or binary files ,better than windows wich uses the name extension.


Guess what? I also use file extensions!
But if I do not recognize the file then I do start the HexViewer.

I like filename extensions Wink

However I also plan to add an optional "deep scan" module for auto detection of some files Very Happy

Quote:

can it load executables?


Yes, but i have not checked this feature lately and the binary files might be out of sync with the OS interfaces.

There are some files in the SDK folder. Might need recompilation and some EQU changed... but it could work out of the box also.

Press enter on such a file and in the HexViewer "Run" ... if you are lucky it will run...otherwise it will CRASH (if interfaces are old). Again I will have to check them.

Anyway IF you press enter on a PE executable file ( .EXE or .DLL)
THEN you might notice some interesting information in the Debug viewer.

The PE is analysed and information is shown in debug... It is a preparation for the DLL mapping in memory and even for PE execution Wink.

When this is finished: the creation of external executables will become extreemly easy.

Any assmbler or C or other HLL will work as long as it generates PE or ELF compatible binary and use SolOS specific headers/includes.


About USB:
Quote:

done, but nothing happens.


It was an early test version for the USB drivers. You can only see the UHCI detection and some bits changing in the Debug output when you insert and removean USB device in USB01

Nothing very exciteing in the released USB code Wink

_________________
"Any intelligent fool can make things bigger,
more complex, and more violent.
It takes a touch of genius -- and a lot of courage --
to move in the opposite direction."
Post 18 Jul 2006, 22:36
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.

Website powered by rwasa.