Sourcecode Fortschritt


  • Mod

    0.0.5.99 - Rev: 1765

    usb_video.h/c: webcam-code weiter angepasst (u.a. payload-header Erkennung/Auswertung)

    Beispiel: Mit der webcam Logitech C270 erhält man mit 160 Pixel Breite mittels Vbox sauber angeordntete frame-Abfolgen: http://henkessoft.de/Sonstiges/webcam_logitech_160pixel_2.png
    serial log: http://pastebin.com/UwTjHZcw



  • Version 0.0.5.100:

    - OHCI: Initialisierung von USB-Geräten in separatem Thread, Fehlerkorrekturen (Anzeige der Anzahl der Root-Ports, Entfernen von interrupt-EDs)
    - Ausgabe beim Boot etwas verbessert
    - Bootloader: Code etwas vereinfacht
    - Einige Funktionen umbenannt oder als static deklariert


  • Mod

    0.0.5.101 - Rev: 1767

    usb_video.c: Analyse des config descriptors wurde aus der Setup-Funktion zur verbesserten Übersicht in eine eigene Funktion ausgelagert. MJPEG Format und MJPEG Frame Descriptoren im config descriptor detektiert.


  • Mod

    0.0.5.102 - Rev: 1768

    ckernel.c: ESC+F1 bis ESC+F11 eingebaut für die detaillierte Steuerung des geplanten neuen Log-Systems.

    Anmerkung: ESC+F12 führt noch zum Speichern des Bildschirms. Will man diese Kombination ebenfalls verwenden, so muss bei "take screenshot" der Zustand von ESC zusätzlich abgefragt werden. Zur Zeit ist dies nicht notwendig (ESC+F12 == F12).


  • Mod

    0.0.5.103 - Rev: 1769

    LCTRL und RCTRL neben CTRL (beide) separat erfasst.



  • Version 0.0.5.104:

    - log.h/c hinzugefügt
    - Stilistische Änderungen aus den vorigen drei Revisionen teilweise revertiert


  • Mod

    0.0.5.105 - Rev: 1771

    ac97.h/c: testSound beim Start zur Kontrolle aktiviert (in VBox muss gestoppt werden, qemu 2.2 stoppt von alleine) <- wird durch Tastendruck zur Sicherheit gestoppt.

    TODO: WAV-Player implementieren und start.wav mitliefern



  • Version 0.0.5.106:

    - Paging: Neuimplementation in Betrieb genommen
    - Log: Serial für sekundäre Ausgabe implementiert


  • Mod

    0.0.5.107 - Rev: 1773

    new: wav.h/c
    new: kernel/sound with START.wav.c

    ac97: adapted

    Now the old synthetic sound is played first until key stroke, then you see the START.WAV header data, and last but not least the START.WAV follows as endless loop until key stroke.

    Tests with VBox and qemu 2.2 show correct WAV play.


  • Mod

    0.0.5.108 - Rev: 1774

    ac97.h/c und wav.c korrigiert
    Audiosausgabe: "welcome" (eigene Soundwave 44,1 kHz, 16-bit stereo samples)



  • Version 0.0.5.109:

    - Audio-Chaos beseitigt:
    -- Sound hinter Strg+w verborgen
    -- Diverse Bugs (Leaks, Nullpointerdereferenzierungen, etc.) beseitigt
    -- WAV-Datei verschoben
    - Projektmappe auf VS2015 aktualisiert
    - Unerklärbaren HACK in vm86.c entfernt



  • Version 0.0.5.110:

    - Fehlerbehebung: Register-Constraints für CLEAR_BIT und SET_BIT korrigiert
    - Fehlerbehebung: Diverse Paging-Fehler behoben
    - Funktion gets durch gets_s ersetzt (Schutz gegen Pufferüberläufe)
    - Makefiles auf C11/C++11 umgestellt
    - Unbenutzte usb_video_t-Member entfernt



  • Respekt an euch, dass ihr so lange schon dran arbeitet! 🙂


  • Mod

    Wir könnten noch ein bis zwei Unterstützer/Developer gut brauchen. Der Chat ist regelmäßig aktiv. Seid willkommen! http://www.prettyos.de



  • Werd mal vorbeischauen.



  • Version 0.0.5.111:

    - Paging-Modul überarbeitet:
    -- Threadsicherheit mit Mutex hergestellt
    -- Erste Page (0x00000000 - 0x00000FFF) gegen Schreibzugriffe geschützt
    -- paging_createUserPageDirectory und paging_destroyUserPageDirectory umbenannt, Kommentierung verbessert
    - VM86 repariert: Addressen korrigiert; mit eigener Page-Table ausgestattet
    - Videomanager: Abfangen von leerer Eingabe bei Modusauswahl



  • Version 0.0.5.112:

    - Bugfix: OHCI-Treiber initialisierte o->interrupt_baseEDs[i].tdQueueTail nicht
    - Bugfix: dns_setServer() und dns_getServer() stürzen nicht mehr ab, wenn keine Netzwerkkarte vorhanden ist.
    - Makefile: -fno-delete-null-pointer-checks im Kernel aktiviert (nur GCC)
    - Userspace: C-Standardbibliothek um zahlreiche C99/C11-Funktionen erweitert
    - Shell: Befehl 'hi' entfernt
    - Codestil: -Wstrict-prototypes aktiviert, Warnungen behoben
    - Textausgaben, Kommentare und Dokumentation verbessert
    - VM86: Opcodes INSB/W/D, OUTSB/W/D, sowie Unterstützung von rep-Präfix und Segmentoverrides implementiert

    Frohe Weihnachten!



  • Version 0.0.5.113:

    - Fehlerbehebung: ACPI-Modul löschte Allozierung der ersten physischen Speicherseiten, die dann von malloc wiedervergeben wurden. Dadurch wurde die IVT beschädigt.
    - Fehlerbehebung: Nullpointerdereferenzierung im FAT-Treiber behoben
    - Fehlerbehebung: Register-Clobbering korrigiert
    - RTL8139: Rx-Buffer-Wrap-Around korrekt behandelt, bessere Fehlerbehandlung
    - RTL8168: Schutz vor Speicherüberlauf bei Paketen mit Länge < 4 Byte
    - Fehlende semaphore_t-Funktionen implementiert
    - OSXMMEXCPT in CR4 aktiviert (SSE-Unterstützung)



  • Version 0.0.5.114:

    - Fehlerbehebung: Stack-Layout bei VM86-Interrupts korrigiert. Es müssen 16-bit-Werte in der richtigen Reihenfolge gespeichert werden (vielen Dank an Paddy für die Entdeckung des Fehlers).
    - RTL8168: Prüfsummenabladung aktiviert
    - VM86: Behandlung von Fehlern verbessert; keine Tastendruck-Abfrage vor Beenden des Tasks
    - APM: Aktiviert, da nun funktionsfähig.
    - cpu.h: Diverse CPUID-Featureflags hinzugefügt



  • BTW: Hier gibt es ein interessantes OS das in rust geschrieben ist. Es ist noch jung, sieht aber vielversprechend aus. Ein rudimentärer ZFS-Support ist schon implementiert und wird ausgebaut.
    Kann sicherlich noch Man-Power gebrauchen.

    http://www.redox-os.org/


Anmelden zum Antworten