flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > Solar_OS new version released on 2006_07_12 |
Author |
|
bogdanontanu 13 Jul 2006, 23:12
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." |
|||
13 Jul 2006, 23:12 |
|
bogdanontanu 14 Jul 2006, 16:57
Well, that is interesting!
Excuse number.1: It never happened to me! (not to be able to read a FAT32 partition) 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. |
|||
14 Jul 2006, 16:57 |
|
Octavio 16 Jul 2006, 09:53
Now i tested the latest version without better results.
bogdanontanu wrote: Well, that is interesting! Yes,i also use this excuse, and i know that there are different computers on wich my Os could not work. Quote:
real hardware Quote:
My OS Perhaps there is something wrong,Windows can read write with no problem but other OS have problems.Thats why also tested the cd. 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. 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:
no changes ,i think that the computer is always very busy updating the screen.[/quote] |
|||
16 Jul 2006, 09:53 |
|
bogdanontanu 16 Jul 2006, 17:29
Quote:
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 I have tested my FAT32 code with FAT32 generated by: MS-DOS, Win98SE, WIn2000 and WinXP.It works with all this . 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:
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 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 (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:
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 _________________ "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." |
|||
16 Jul 2006, 17:29 |
|
Octavio 17 Jul 2006, 10:48
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. 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. Quote:
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. |
|||
17 Jul 2006, 10:48 |
|
bogdanontanu 17 Jul 2006, 16:27
Quote:
Well for me it is still fun to develop drivers 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:
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 . 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 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:
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 But maybe the read failed because of a timeout. Quote:
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 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." |
|||
17 Jul 2006, 16:27 |
|
Octavio 18 Jul 2006, 14:36
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 ) 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:
yes but is compatible. Quote:
done, but nothing happens. |
|||
18 Jul 2006, 14:36 |
|
bogdanontanu 18 Jul 2006, 22:36
Quote:
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:
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 However I also plan to add an optional "deep scan" module for auto detection of some files Quote:
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 . 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:
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 _________________ "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." |
|||
18 Jul 2006, 22:36 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.