Sourcecode Fortschritt
-
Rev. 264:
ehci.c: Fehler in DeactivateLegacySupport behoben
jetzt: if(failed){/* manueller Versuch */} <--- könnte das Problem BIOS=1 && OS=1 bei störrischem BIOS lösen. Macht es aber offensichtlich nicht (Test bei Tobiking).
-
Revision 265:
- Hello-Programm auf 0.5 aktualisiert (kleiner Zeilenfehler behoben)
- makefile: clear-target ergänzt, clear.bat beigelegt
- Shell wird jetzt mit der start.asm der Usertools kompiliert
- HELLO.ELF statt hello.elf
-
Revision 266:
- printf -> kprintf;
- printformat -> printf (Deswegen sind so viele Dateien geändert)
- Das neue printf und i2hex in userlib übernommen; my_stdarg.h mit userlib mitgeliefert
- typedefs aus os.h in userlib übernommen
- TTT auf Version 5.1 aktualisiert (Man kann nicht mehr gewinnen und zugleich Remis spielen, mglw. Verbesserung der Lauffähigkeit auf manchen PCs)
-
Revision 267:
ehci.c: Vereinfachungen in der Ausgabe zur besseren Übersicht
interrupts.asm:
DO_IDT_ENTRY SYSCALL_NUMBER, 0x0008, 0xEE00
DO_IDT_ENTRY CONTEXT_SWITCH_CALL, 0x0008, 0x8E00 <---syscall.c, video.c: nur Formatierung/Kommentare
User-Programm: TTT (hello.elf) Zahleneingabe wird abgebrochen
(Prompt (=Totalabbruch) bzw. unerwartete Fehlermeldung, dass Zahl bereits verwendet wird).Irgendwas bei der Ausführung der User-Programme ist "kaputt".
DO_IDT_ENTRY CONTEXT_SWITCH_CALL, 0x0008, 0xEE00 hilft auch nichts, also OK.
-
Ja, irgendwas ist da kaputt. Das müssen wir alles nochmal durchgehen, u.a. video.c, wie ehenkes im IRC schon sagte.
Ich hab übrigens mal die printf etwas erweitert&korrigiert, gibts bald...
-
Rev. 268:
ehci.c und usb.c: test-transfer mit 2 QH und 3 QTD
Ablauf des USB-Transfers: http://www.henkessoft.de/OS_Dev/Bilder/rev268_asyncList.PNG
-
Rev. 269:
- printf: Ausgabe korrigiert, Funktion vereinfacht, Buffer verkleinert
- os.h/descriptor_tables.h: extern vor Funktionsdeklarationen zwecks Vereinheitlichung entfernt
- min und max von util.c nach math.c verlegt
- Klammern bei via Präprozessor definierten Fkts. ergänzt
- clear.bat: pause entfernt (Relikt vom testen der Funktionsfähigkeit)
-
Rev. 270:
file.c: (floppy disk motor off)
printf("file not found in root directory\n"); flpydsk_control_motor(false);
-
Rev. 271:
ehci.c:
Umsortierung entsprechend:
Intel 82801EB (ICH5), 82801ER (ICH5R), and 82801DB (ICH4) Enhanced Host Controller Interface (EHCI)
Programmer’s Reference Manual (PRM) April 2003
Entsprechende Kommentare eingefügt
-
Hey Leute,
bin ab Montag dreieinhalb Monate im Ausland, deshalb erstmal nichts mehr von mir (ich war hier in letzter Zeit ja leider eh kaum präsent).
Bin auf den dann vorherrschenden Stand gespannt, geht ja echt voran
Viele Grüße
-
Schade, das Du dann erstmal nicht weiterarbeiten kannst, an PrettyOS.
Aber natürlich trotzdem viel Vergnügen im Ausland.
-
Rev. 272:
kleinere Veränderungen
-
Rev. 273:
Vorschlag von +gjm+ im Fehler-Thread umgesetzt (keine Kernel-Ausgaben nach dem User-Programmstart im gescrollten Ausgabebereich ):
// printf("\n\n"); // <- ... sollte auf ausgaben ab hier verzichtet werden
-
Revision 274:
- makefile komplett neu (Dank auch an mastamind und Tobiking für die Hilfe)
- clean.bat statt clear.bat
-
Superjob!
kleiner Fehler:
nasm kernel/data.asm -O32 -f elf -Ikernel/ -o object_files/kernel/data.o kernel/data.asm:5: error: `incbin': unable to open file `initrd.dat' mingw32-make: *** [kernel/data.o] Error 1
Kopiert man initrd.dat aus einer alten Vorlage nach ...\kernel\ dann klappts, es fehlt also dort.
-
Revision 275:
Styleguide-Anpassungen (Tabs ersetzen, "if ("s usw.)
-
Rev. 276: kleine Veränderungen, pci_write_byte getestet in ehci.c (auskommentiert)
void pci_config_write_byte( uint8_t bus, uint8_t device, uint8_t func, uint8_t reg, uint8_t val ) { outportl(PCI_CONFIGURATION_ADDRESS, 0x80000000 | (bus << 16) | (device << 11) | (func << 8) | (reg & 0xFC) ); outportb(PCI_CONFIGURATION_DATA + (reg & 0x03), val); } /// correctness of function pci_config_write_byte checked with bar0 from EHCI - ehenkes, 2010-03-24
-
Revision 277:
- Style-Korrekturen
- Überflüssige Binaries entfernt. Darunter auch nasm! (Muss nun extra installiert werden, PATH setzen nicht vergessen)
- makefile-Fehler bezüglich initrd.dat behoben, target für user_test_c ergänzt (derzeit deaktiviert)
-
Rev. 278:
file.c: flpydsk_write(const char* name, const char* ext, void* memory, uint32_t size) <--- begonnen
flag in ehci.c, mit dem man den USB-Testtransfer einschalten kann, standard: aus
-
Rev. 279:
file.c: flpydsk_write(const char* name, const char* ext, void* memory, uint32_t size) weiter ausgebaut.
TODO:- FAT1 u. FAT2 aus FAT-Indices berechnen und in track0[...] übertragen.
- File aus Memory in 512 Byte Paketen in die durch die FAT1 beschriebenen Sektoren schreiben.