PS: Unglaublich wie schwer das ist obwohl es im Prinzip eigentlich sehr einfach sein sollte (man denkt nur an Z80 Programmierung o.ä.)!
Da war auch die Hardware recht einfach gestrickt. Man brauchte sich nicht mit Caches oder Pipelines rumärgern, es gab keine verschiedenen Modi. Und das BIOS wurde (CP/M) vom Betriebssystem gesponsert.
Wobei die meisten Systeme zusätzlich ein eigenes Betriebssystem hatten, welches die Hardware ausnutzen konnte.
Oder man erfindet ein neues Computerkonzept wo man dann all diese Treiber nicht mehr braucht! Dann wäre wohl auch die OS Programmierung wahrscheinlich viel einfacher!
Gab es ja ... das BIOS von CP/M stellte die Grundlagen von Treibern zur Verfügung, weitere gab es nicht. Und die ursprünglichen Systeme (z.B. CAOS auf dem KC85) brauchten keine Treiber, weil sie nur auf dieser entsprechenden Architektur liefen und somit die Hardware sich nicht änderte.
Allerdings gibt es dieses Konzept inzwischen nicht mehr - und darum muss es Treiber geben.
PPS: Was ist aus all diesen Homecomputer OS geworden (Spectrum, Atari, Comodore usw.). Die waren schon damals viel besser als Windows 95, ganz zu schweigen von Spielen!
Bekannte Hardware kann man ausnutzen. Inzwischen ist Hardware aber so komplex, dass niemand da mehr durchsieht. Darum verwischen die Treiber dann die Grenzen - niemand kann/darf heutzutage ungeschert an den Registern einer modernen Graka rumpfuschen, bei Hercules/CGA/... war das noch notwendig und sinnvoll.
Schau dir mal
SymbOS an, das könnte in die Richtung Homecomputer OS gehen (für Amstrad CPC, allerdings ist der Source nicht ganz freigegeben). Das finde ich durchaus ein beachtliches Stück Leistung für einen Z80.
Was mir nicht klar ist, damals verschwanden all diese Home Computer wegen Personal Computer. Jetzt kommen die Spielconsolen, die im Grunde nichts anderes sind als die Home Computers Komisch wie sich die Wirtschaft entwickelt!
Für PCs gibt/gab es mehr Software für jeden Zweck. Als Rechentechnik noch richtig Geld kostete, hatte man -ein- Gerät und das musste u.U. für alle reichen. Eine Spielekonsole konnte eben keine Textverarbeitung. Inzwischen sind die Preise gesunken und spezielle Geräte für Spiele sind preislich nicht mehr so angesiedelt, dass man sich entscheiden müsste.
Dafür trifft die o.g. Behauptung wieder zu, dass sich die Hardware-Architektur nicht großartig verändert (PSX bleibt PSX, wie SNES auch SNES bleibt) und damit u.U. besser ausgereizt werden kann. Da allerdings moderne Spielekonsolen auch nur verkleinerte, zusammengestopfte PCs sind, relativiert sich das.
@taljeth: Du schriebst, dass du einen Kernel in Pascal angefangen hast. Irgendwie kann ich mir das nicht zu richtig vorstellen, wie das funktioniert (ich kenne nur Delphi). Welche Software (Compiler) benutzt du dafür? Kannst du mir einen kleinen HelloWorld-Bootloader mal darin programmieren? Weil Pascal würde mich schon interessieren (ich mag kein C und hab die Pascal-Syntax nunmehr zwangsweise lernen müssen... Basic fällt ja aus).
Gruß,
Svenska (Sebastian)