Sourcecode Fortschritt
- 
					
					
					
					
 @MrX: calc.elf liefert nun bei 0^5 die 0, das ist fein, bei 5^3 kommt brav die 125, aber ab 5^4 kommt 624 raus, auch bei 5^5 eins zu wenig. Bei 25^0.5 kommt erst 1.5 dann 1. Da sollte man nachschärfen.  
 
- 
					
					
					
					
 Bei 25^0.5 kommt erst 1.5 dann 1 Der Taschenrechner kann keine Fließkommazahlen. Er rechnet: 
 25^0 => 1 -> 1.5 => 1,5 -> atoi("1.5") => 15^4 kommt 624 raus, auch bei 5^5 eins zu wenig Rundungsfehler, da der Taschenrechner Integer nutzt, aber mit dem Fließkommafunktionen rechnet. 
 
- 
					
					
					
					
 Vor der Benutzung der aktuellen Version von calc.elf wird gewarnt. Die Ergebnisse sind weitgehend falsch. Das PrettyOS Team übernimmt keinerlei Haftung für evtl. daraus entstehende Schäden!  
 
- 
					
					
					
					
 Version 0.0.3.175: - Unterstützung für Sysenter/Sysexit. Code aber deaktiviert (task.c, z. 146) 
 - Unterstützung für SSE: OSFXSR-Bit in CR4 gesetzt, FPU-Status bei Unterstützung entsprechend mit fxsave und fxrstor gesichert
 - Global Pages aktiviert (in CR4)
 - Bugfix: CPUID-Code früher initialisiert (vor erster Verwendung)
 - Bugfix: Inkrementeller Build für initrd.dat gefixt
 - Bugfix: "volatile foo*" durch "foo* volatile" ersetzt, wo sinnvoll.
 
- 
					
					
					
					
 Version 0.0.3.176: - fsmanager-Schnittstelle geändert: fwrite und fread statt fputc und fgetc als Treiberschnittstelle 
 - Write-Caching im Devicemanager implementiert
 - Caching-Mechanismus im FAT-Treiber ausgebaut; Weitere Optimierungen dort.
 
- 
					
					
					
					
 Version 0.0.3.177: - FAT-Treiber weiter aufgeräumt 
 - System friert bei Fehlern wie "Division durch 0" nicht mehr ein
 - bochs.bxrc auf Bochs 2.5 geupdated
 
- 
					
					
					
					
 Version 0.0.3.178: - Stilistische Änderungen um ckernel.c (zusammen mit ehenkes ausgearbeitet) 
 - fpu.c in cpu.c integriert
 - Kleiner Fix an der Compilererkennung in der userlib
 - strg+s startet die Shell
 - PrettyOS gibt nicht mehr stupide [OK] beim Start aus: Reihenfolge: Ausgabe "Was" - Ausführung - Ausgabe "Ergebnis"
 
- 
					
					
					
					
 Version 0.0.3.179: - Speicherlayout überarbeitet: Löcher im Bereich ~ 10 MiB beseitigt. PrettyOS fordert nur noch 12 MiB RAM. 
 - paging.c überarbeitet bzgl. Kommentaren und Codelayout. Feste Adressen durch Makros ersetzt. (Zusammen mit ehenkes ausgearbeitet)
 - Dokumentation in memory.txt verbessert
 
- 
					
					
					
					
 Version 0.0.3.180: - Code der ELF- und PE-Treiber überarbeitet, Funktionsnamen der Schnittstelle geändert (gemeinsam mit ehenkes erarbeitet) 
 
- 
					
					
					
					
 Version 0.0.3.181: - Bugfix: todolist_create allokiert nun Speicher richtiger Größe (cppcheck-Fund) 
 - Diverse Verbesserungen an der C-Standardbibliothek:
 -- string.c: strcspn, strerror, strspn und strtok implementiert, Prototyp von strchr korrigiert
 -- signal.c: Implementiert
 -- stdlib.c: abort() sendet nun SIGABRT; atexit implementiert
 -- errno.h: Namen der Fehler korrigiert (Präfix "E" statt "ERR")
 - Calc fängt Division durch 0 nun ab
 - Kleinigkeiten
 
- 
					
					
					
					
 Nach zahlreichen Änderungen, Verbesserungen und neuen Funktionen und genau 200 Revisionen nach 0.0.3.0 erhöhen wir die Versionsnummer auf: PrettyOS 0.0.4.0Neue Features:- Erweiterte USB-Unterstützung 
 -> UHCI-, OHCI-Treiber neu
 -> EHCI-Treiber deutlich verbessert
 -> USB-Code deutlich überarbeitet
 - CDI-Unterstützung
 -> e1000-Treiber eingebunden
 - PrettyIPC-Baum
 - Vollständige Clang-UnterstützungVerbesserungen:- Bootloader optimiert 
 - "File not Found"-Fehler behoben
 - Einige neue Userprogramme, alte verbessert. Lizenzen vereinheitlicht.
 - Erweiterte Debug-Funktionalität: Broken-Free-Diagnose
 - Ausgabecode von Kernel in Shell/Userspace verlagern
 - fast vollständige C-Standardbibliothek (Userbereich)
 - Zahlreiche kleine Bugfixes und VerbesserungenVersion 0.0.4.0 - Rev. 1383- APIC-Rahmen eingefügt; noch deaktiviert. 
 
- 
					
					
					
					
 Version 0.0.4.1: - APIC-Registeradressen korrigiert 
 - APIC+PIC-Modus, bis unser APIC-Treiber fertig ist; APIC-Treiber aktiviert
 
- 
					
					
					
					
 Version 0.0.4.2 - Rev 1385ac97.h/c für Multimedia Controller Audio als Frame hinzugefügt Test mit qemu mittels -soundhw ac97 In pci.c findet man bisher: if (PCIdev->classID == 0x04 && PCIdev->subclassID == 0x01) // Multimedia Controller Audio { if (PCIdev->vendorID == 0x8086) // Intel { install_AC97(PCIdev); } }
 
- 
					
					
					
					
 Version 0.0.4.3: - Audiotreiberschnittstelle hinzugefügt 
 - VCcompatibility.h verbessert:
 -- Compiler-Macros in Abhängigkeit der gewählten Konfiguration definiert
 -- Schlüsselwort restrict (C99) durch Präprozessor versteckt.
 
- 
					
					
					
					
 Version 0.0.4.4 - Rev 1387install_AC97(pciDev_t* device) weiter entwickelt. 
 reset / volume / sample rate
 
- 
					
					
					
					
 Version 0.0.4.5: - Beepton mit AC97 erzeugt 
 
- 
					
					
					
					
 "0.0.4.6 - Rev: 1390" (in Datei versehentlich 0.0.4.5) ac97.h angepasst und erweitert entsprechend AC97 spec. Bezüglich NAM-bar und NABM-bar Diskussion siehe: http://www.koders.com/c/fidCF4F2F224B1F26DCA9CACD6398B49BBC3C8920F0.aspx?s=cdefs.h 
 
- 
					
					
					
					
 Version 0.0.4.7: - AC97-Interrupts behandelt -> System friert nicht mehr ein 
 - Konfiguration gemäß Spezifikation (soweit vorhanden) angepasst
 - Deskriptoren und Buffer dynamisch allokiert und aligned
 
- 
					
					
					
					
 Version 0.0.4.8: - Diverse kleinere Codekorrekturen basierend auf cppcheck-Ergebnissen: 
 -- Debug-Code in dhcp.c hinter Präprozessordirektiven versteckt
 -- Vorzeichen von Variablen und in printf-Formatstrings korrigiert
 
- 
					
					
					
					
 Version 0.0.4.9: - Neues Userprogramm "Device Manager" (devmgr.elf): Zeigt PCI-Geräte mit Namen und Details an. 
 - PCI-Vendorliste aus dem Kernel entfernt (Kernel erheblich schlanker (50% kleiner), Funktionalität nun in devmgr.elf)
 - Bugfix: ipc_getFolder() gibt keinen Datenmüll mehr zurück