Hi,
ich bin ganz neu hier (Forum + OS proggen), als bitte nicht lachen, wenn ich jetzt ein totalen Anfängerfehler gemacht hab.
Ich bin grad dabei, zu versuchen ein OS in C zu entwerfen (als Bootloader GRUB). Dazu hab ich mir ein Tutorial angeschaut und abgeschrieben. Wills dann umschreiben und erweitern, bis es mir halt gefällt.
Mein Problem:
Ich versuch jetzt es hinzukriegen, dass mein Kernel auf ein Tastendruck wartet (egal welche Taste) und dann weiterarbeitet.
Habs mit Inline-Assembler versucht (in elf-gcc für Windows) aber kriegs irgendwie net hin (PC stürtzt an entscheidender Stelle ab):
#include "video.h"
/**
* Hauptfunktion, die aus der header.S angesprungen wird
*/
void kernel()
{
// Bildschirm leeren und eine Meldung anzeigen
cls();
cls();
printf("Hello World\n");
asm("mov $0, %ah"); /* !!!!! */
asm("int $0x16"); /* !!!!! */
printf("to my Kernel");
// Endlosschleife
while (1);
}
PS.: Arbeite im Real Modus.