Computergeschichte(n) - nicht nur für Geeks
Transcription
Computergeschichte(n) - nicht nur für Geeks
1527.book Seite 1 Donnerstag, 7. Oktober 2010 5:26 17 H. R. Wieland Computergeschichte(n) – nicht nur für Geeks Von Antikythera zur Cloud Auf einen Blick TEIL I Geschichte der Hardware 1 Von Rosenkranz und Rechenschieber ................................... 23 2 Computer ohne Programme ................................................. 49 3 Vom ersten Computer und anderen Rechnersauriern ............ 97 4 Von Äpfeln und Brotkästen .................................................. 147 5 Der Superrechner im Wohnzimmer ...................................... 189 TEIL II Geschichte der Software 6 Von Lady Ada bis F# ............................................................ 237 7 Softwaregeschichte(n) .......................................................... 291 8 Von CP/M über DOS zu Windows ........................................ 319 9 Computerspiele .................................................................... 351 10 Das Netz der Netze .............................................................. 421 TEIL III Die Zukunft 11 Virtualisierung ...................................................................... 465 12 Mein PC is’ ene Wolke ......................................................... 477 13 Denkmaschine ..................................................................... 513 Inhalt Vorwort ........................................................................................................ 15 TEIL I Geschichte der Hardware 1 Von Rosenkranz und Rechenschieber ....................................... 23 1.1 1.2 1.3 1.4 Eins, zwei, drei ... .................................................................. Hexadezimal mit dem Windows Calculator ............................ Der heilige Computer aus gläsernen Perlen ............................ Von Seeschlachten und Zahlenschiebern ............................... 1.4.1 Rechenstäbe und Rechenschieber ............................. 1.4.2 Der Abakus ............................................................... Digital und analog ................................................................. 1.5.1 Uhrenvergleich ......................................................... 1.5.2 LP versus CD ............................................................. 1.5.3 Zwischen digital und analog und zwischen wahr und falsch ......................................... Lesen Sie weiter .................................................................... 23 28 30 32 33 37 39 39 41 Computer ohne Programme ....................................................... 49 2.1 49 51 58 62 66 67 70 71 72 1.5 1.6 2 2.2 2.3 2.4 2.5 Die ersten Rechenmaschinen ................................................. 2.1.1 Die Maschine von Antikythera .................................. 2.1.2 Die Sterne lügen nicht .............................................. Planetarien simulieren mit Stellarium ..................................... Rechenuhr, Dampfrechner und Superautomaten ................... 2.3.1 Schickards Rechenmaschine ...................................... 2.3.2 Die Pascaline ............................................................ 2.3.3 Morlands Apparate ................................................... 2.3.4 Leibniz' Rechenmaschine .......................................... 2.3.5 Von Leibniz’ Zeit in die Gegenwart: Brunsviga, Superautomat und Co. .............................................. 2.3.6 Der Taschenrechner .................................................. Die Analytische Maschine ...................................................... 2.4.1 Babbages Idee .......................................................... 2.4.2 Analoge Computer .................................................... Noch mehr Spaß: Sonnenfinsternis simulieren ....................... 2.5.1 Eine deutsche Sonnenfinsternis ................................. 45 47 76 78 80 80 85 87 87 5 Inhalt 2.5.2 Das erste Datum der Weltgeschichte ........................ 2.5.3 Ring of Fire ............................................................... Lesen Sie weiter .................................................................... 89 92 93 Vom ersten Computer und anderen Rechnersauriern ........... 97 2.6 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 4 4.3 4.4 4.5 4.6 Vom Rechensaurier zum Minicomputer ................................. Der Biss in den Apfel ............................................................. 4.2.1 Steve Jobs versus The Beatles .................................... 4.2.2 Der erste PC ............................................................. 4.2.3 Ein Tag im November ............................................... 4.2.4 Lisas trauriges Ende .................................................. Die Zeit der Homecomputer .................................................. 4.3.1 Mein Spectravideo .................................................... 4.3.2 Der C64 – der König der Heimcomputer ................... Der IBM-PC: besser spät als nie ............................................. Noch mehr Spaß: Atari, Amiga und Co. ................................. Lesen Sie weiter .................................................................... 147 153 154 156 158 160 161 161 168 179 181 185 Der Superrechner im Wohnzimmer .......................................... 189 5.1 5.2 5.3 5.4 5.5 6 97 106 110 118 119 125 144 Von Äpfeln und Brotkästen ........................................................ 147 4.1 4.2 5 Z wie Zuse ............................................................................. Die geheime Schlacht der Codeknacker ................................. ENIAC – im Dienste der Armee .............................................. UNIVAC – ein Computer schreibt Wahlgeschichte ................. Frei nach Turing: die Manchester Mark I ............................... Der Rechner geht in Serie: Innovation made by IBM .............. Lesen Sie weiter .................................................................... Der PC erobert die Welt ........................................................ Mikroprozessoren .................................................................. 5.2.1 Die Entwicklung des Prozessors ................................ 5.2.2 Moderne Mikroprozessoren ...................................... Workstation Clons ................................................................. Vektor- und Parallelrechner ................................................... 5.4.1 Crays Erfindung ......................................................... 5.4.2 Aktuelle Entwicklung ................................................ Rechnende Netze .................................................................. 5.5.1 Computercluster ....................................................... 5.5.2 Computerschwärme retten die Welt ......................... 189 192 193 197 202 203 203 208 211 211 216 Inhalt 5.6 5.7 5.5.3 Grid-Computing ........................................................ 5.5.4 Das SETI-Projekt ....................................................... 5.5.5 Die Zukunft der Supercomputer ................................ Noch mehr Spaß: Eigene Cray gefällig? .................................. Lesen Sie weiter .................................................................... 216 220 229 231 233 TEIL II Geschichte der Software 6 Von Lady Ada bis F# ..................................................................... 237 6.1 6.2 6.3 6.4 6.5 6.6 Das rasende Herz ................................................................... 6.1.1 Der Prozessor ........................................................... 6.1.2 In Kurzform: Assembler ............................................. 6.1.3 Die erste »höhere« Sprache: Fortran .......................... Die Turingmaschine ............................................................... 6.2.1 Aufbau und Funktionsweise einer Turingmaschine .... 6.2.2 Fleißige Biber und die Unvollständigkeit der Mathematik ........................................................ 6.2.3 Vollständig unvollständig .......................................... ALGOL und die GOTO-Programmierung ................................ 6.3.1 Compiler und Interpreter .......................................... 6.3.2 BASIC ....................................................................... 6.3.3 ALGOL ...................................................................... Mehr Sprachen, bitte! ........................................................... 6.4.1 Cobol und PL/1 ......................................................... 6.4.2 C .............................................................................. 6.4.3 Smalltalk ................................................................... 6.4.4 Pascal ....................................................................... 6.4.5 C++ .......................................................................... 6.4.6 Prolog ....................................................................... 6.4.7 Ada ........................................................................... 6.4.8 Python ...................................................................... 6.4.9 BASIC/VB .................................................................. 6.4.10 Ruby ......................................................................... 6.4.11 Java .......................................................................... Noch mehr Spaß: Ein Blick in Microsofts Forschungsabteilung .............................................................. 6.5.1 F# ............................................................................. 6.5.2 Microsoft Research (MSR) ......................................... Lesen Sie weiter .................................................................... 237 239 242 243 245 246 252 253 255 258 259 262 266 266 268 269 273 276 278 278 280 281 283 283 287 287 288 288 7 Inhalt 7 Softwaregeschichte(n) ................................................................. 291 7.1 7.2 7.3 7.4 7.5 8 8.2 8.3 8.4 8.5 8.6 Masterprogramme ................................................................. 8.1.1 Geschichtlicher Überblick ......................................... 8.1.2 Wie war das eigentlich mit DOS? .............................. Die Windows-Story ............................................................... 8.2.1 Das »Ur-Windows« ................................................... 8.2.2 NT – New Technology ............................................... 8.2.3 Das Millennium-Gespenst geht um ........................... Linux/Ubuntu ........................................................................ 8.3.1 Linux tritt auf den Plan ............................................. 8.3.2 Shuttleworths Geschenk an die Menschheit .............. 8.3.3 Der Mikrokernel ....................................................... Computern in Echtzeit ........................................................... Noch mehr Spaß: OS/2 und gOS ............................................ 8.5.1 OS/2 ......................................................................... 8.5.2 gOS .......................................................................... 8.5.3 Singularity – das Neueste aus dem MicrosoftLabor ........................................................................ Lesen Sie weiter .................................................................... 320 321 321 324 326 328 329 332 332 333 338 339 343 343 343 347 349 Computerspiele ............................................................................. 351 9.1 9.2 8 291 293 296 299 301 302 307 307 308 312 313 314 315 317 Von CP/M über DOS zu Windows ............................................ 319 8.1 9 Vom technischen Wunder zur Büromaschine ......................... 7.1.1 Software, die Nutzen bringt ...................................... 7.1.2 Das große Artensterben ............................................ Wie PowerPoint erfunden wurde ........................................... 7.2.1 Kennen Sie »Bob«? .................................................... 7.2.2 Ein Riese stolpert ...................................................... Es muss nicht immer Microsoft sein ....................................... 7.3.1 König der Datenbanken ............................................ 7.3.2 Ein Stern am Computerhimmel ................................. 7.3.3 Novell ....................................................................... Nicht umsonst, aber Open Source ......................................... 7.4.1 »GNU is not UNIX« ................................................... 7.4.2 Übersicht zur Geschichte der freien Software ............ Lesen Sie weiter .................................................................... Es spielt der Mensch ............................................................. 351 Der Computer lernt spielen ................................................... 352 Inhalt 9.3 9.4 9.5 9.6 9.7 9.8 10 9.2.1 Ein Spiel, ein Computer – Nimrod ............................. 9.2.2 OXO ......................................................................... Mit Pingpong fing es an ......................................................... 9.3.1 Auf ins All! ................................................................ 9.3.2 Nicht nur reine Ballerei ............................................. Komm mit, ins Abenteuerland ... ........................................... 9.4.1 Adventures ............................................................... 9.4.2 Rouge und Boulder Dash .......................................... 9.4.3 Eine Schlange geht nach Hollywood .......................... 9.4.4 Rollenspiele .............................................................. Die größten Meilensteine in der Computerspiel-Geschichte ... 9.5.1 MobyGames ............................................................. 9.5.2 Von Partys, Money, Modding, MOG und MMOGs ... 9.5.3 Sonderformen ........................................................... Spielerwelt in Spielersprache ................................................. Noch mehr Spaß: ausgewählte Meilensteine der Computerspiele ..................................................................... 9.7.1 Defender of the Crown ............................................. 9.7.2 America’s Army ........................................................ 9.7.3 Spore ........................................................................ 9.7.4 Abenteuer Marke Eigenbau – mit dem Unreal Development Kit ...................................................... Lesen Sie weiter .................................................................... 352 357 359 362 366 376 376 380 384 384 389 389 391 393 400 405 405 407 409 413 418 Das Netz der Netze ...................................................................... 421 10.1 10.2 10.3 Ich hab’s gesagt ..................................................................... 10.1.1 Die Anfangsidee ....................................................... 10.1.2 Dezentrales Netz und vermittelte Datenübertragung ..................................................... IP-Adresse und Domainname ................................................ 10.2.1 Nichts als Zahlen ....................................................... 10.2.2 Noch mehr Zahlen: IPv6 ........................................... 10.2.3 Stets zu Diensten: das DNS ....................................... 10.2.4 Webadressen zu verkaufen – InterNIC/ICANN .......... 10.2.5 OpenNIC .................................................................. 10.2.6 Mit dem Modem in die Mailbox ............................... Das WWW entsteht .............................................................. 10.3.1 Fragen zu allem und jedem ....................................... 10.3.2 Die Server-Browser-Ehe ............................................ 421 422 423 429 429 430 431 434 440 443 444 444 446 9 Inhalt 10.4 10.5 10.6 Browser ................................................................................. 10.4.1 Der Luchs machte den Anfang .................................. 10.4.2 Der Browserkrieg ...................................................... Das semantische Web ........................................................... Lesen Sie weiter .................................................................... 452 453 456 458 461 TEIL III Die Zukunft 11 Virtualisierung ............................................................................... 465 11.1 11.2 11.3 12 12.2 12.3 12.4 Cloud Computing .................................................................. 12.1.1 Was ist Cloud Computing? ........................................ 12.1.2 Die Anfänge des Cloud Computing ........................... 12.1.3 Ein mehrdeutiger Begriff ........................................... 12.1.4 iCloud ....................................................................... 12.1.5 eyeOS ....................................................................... 12.1.6 Sag mir, wo die Daten sind ....................................... 12.1.7 Cloud-Dienste .......................................................... Cloud – wichtiger Baustein der Informationszukunft .............. Noch mehr Spaß: Ubuntu One .............................................. Lesen Sie weiter .................................................................... 478 479 484 487 488 492 502 502 507 508 509 Denkmaschine ............................................................................... 513 13.1 13.2 13.3 10 465 466 467 468 469 472 476 Mein PC is’ ene Wolke ................................................................ 477 12.1 13 Ein Rechner zum Experimentieren ......................................... 11.1.1 Das Grundprinzip ...................................................... 11.1.2 Sinn und Zweck der Virtualisierung ........................... 11.1.3 Wie funktioniert das genau? ..................................... 11.1.4 Die wichtigsten Anbieter .......................................... Noch mehr Spaß: das JPC-Projekt .......................................... Lesen Sie weiter .................................................................... Das Phantom an der Börse .................................................... Quantenmechanik ................................................................. 13.2.1 Quantenverschränkung ............................................. 13.2.2 Superposition ........................................................... 13.2.3 Qbits ........................................................................ Von der Natur lernen: neuronale Netzwerke und KI .............. 13.3.1 Das erste neuronale Netz .......................................... 513 517 517 518 518 520 521 Inhalt 13.4 13.5 13.6 13.7 13.3.2 Der Streit ums Perceptron ......................................... Zelluläre Automaten .............................................................. 13.4.1 Geschichte ................................................................ 13.4.2 Zellenspiele .............................................................. 13.4.3 Muster ...................................................................... 13.4.4 Zellraum ................................................................... 13.4.5 Metaautomaten ........................................................ 13.4.6 Wireworld ................................................................ 13.4.7 Anwendung und Praxis ............................................. 13.4.8 Also sprach Aristoteles .............................................. Noch mehr Spaß: die große Kunst der kleinen Zellen ............. Von der Turingmaschine zu rechnenden Räumen ................... Lesen Sie weiter .................................................................... 522 530 531 533 537 541 549 550 553 554 557 559 560 ANHANG A VirtualBox (Windows / Mac OS X / Linux) ............................. 565 A.1 A.2 A.3 A.4 B Installation und Anwendung von VirtualBox .......................... A.1.1 Die Installation von VirtualBox .................................. A.1.2 Der Einsatz von VirtualBox ........................................ Kommunikation mit dem Wirt ............................................... A.2.1 Wechseldatenträger .................................................. A.2.2 Gemeinsamer Ordner ................................................ VirtualBox deinstallieren ........................................................ Lesen Sie weiter .................................................................... 565 566 569 576 576 576 577 578 Die Installation von Java und JRE ............................................. 579 B.1 B.2 B.3 B.4 B.5 B.6 JDK oder JRE? ....................................................................... Hardwarevoraussetzungen ..................................................... Die Installation ...................................................................... B.3.1 Die Installation der Dokumentation .......................... B.3.2 Demos und Beispiele ................................................ B.3.3 Die Installation von Eclipse ....................................... Deinstallation ........................................................................ Noch mehr Spaß am Programmieren: 3D-Moleküle ............... Lesen Sie weiter .................................................................... 579 580 581 588 590 593 594 595 596 Index ............................................................................................................ 597 11 Praxis Computer ohne Programme 왘 왘 왘 왘 왘 왘 Die Antikythera-Maschine simulieren ....................................................... Planetarien simulieren – die wichtigsten Skriptbefehle der Stellarium-ScriptEngine ...................................................................... Simulation von Schickards Rechenmaschine ............................................. Simulation der Pascaline ........................................................................... Kurbelgetriebene Rechenmaschine ........................................................... Babbages Maschine .................................................................................. 55 63 67 71 77 83 Vom ersten Computer und anderen Rechnersauriern 왘 왘 왘 왘 왘 Rechnen mit dem Z3 ................................................................................ Rechnen mit dem ENIAC .......................................................................... Baby, Baby ... (Manchester Mark I simulieren) ......................................... Mainframe in the Box (Großrechner simulieren) ....................................... Betriebssysteme und Zusatzprogramme für IBM-Maschinen ..................... 103 113 122 130 133 Von Äpfeln und Brotkästen 왘 왘 왘 왘 왘 왘 왘 Assembler mit dem PDP-1 ....................................................................... Die Apple I-Computerplatine ................................................................... Apple Lisa ................................................................................................ MSX-Rechner simulieren .......................................................................... Den C64 simulieren .................................................................................. C64-Spiele simulieren ............................................................................... Den C64 in BASIC programmieren ............................................................ 150 157 158 164 170 173 175 Der Superrechner im Wohnzimmer 왘 왘 왘 C4004 simulieren ..................................................................................... 196 BOINC ..................................................................................................... 223 Rechnen mit der GPU ............................................................................... 225 Von Lady Ada bis F# 왘 왘 왘 왘 12 Im Inneren des Prozessors ........................................................................ Fortran ..................................................................................................... Die Programmierung einer Turingmaschine .............................................. Biberjagd .................................................................................................. 239 243 250 252 Praxis 왘 왘 왘 왘 왘 왘 왘 왘 왘 Ein einfaches GOTO-Programm ................................................................ Die Türme von Hanoi ............................................................................... bwBASIC .................................................................................................. ALGOL ..................................................................................................... Squeak (Smalltalk) .................................................................................... Pascal ....................................................................................................... C++ .......................................................................................................... Ada .......................................................................................................... BASIC/VB ................................................................................................. 256 257 259 263 269 274 277 280 282 Softwaregeschichte(n) 왘 왘 Lotus Symphony ....................................................................................... 305 Oracle ...................................................................................................... 308 Von CP/M über DOS zu Windows 왘 Computer in Echtzeit ................................................................................ 341 Computerspiele 왘 왘 왘 왘 왘 왘 왘 왘 왘 Das erste Computerspiel ........................................................................... Pong in Java ............................................................................................. Spacewar .................................................................................................. Die Welt der Strategien ............................................................................ Zork ......................................................................................................... Boulder Dash ........................................................................................... Eigene Level entwerfen ............................................................................ Tangram ................................................................................................... Sokoban, der intelligente Kuli .................................................................. 352 360 363 373 378 382 383 395 397 Das Netz der Netze 왘 왘 왘 왘 왘 왘 왘 왘 왘 IP-Adresse ermitteln ................................................................................. Hosts-Datei unter Windows ..................................................................... Hosts-Datei unter Linux ............................................................................ Adresse auflösen ...................................................................................... Domainabfragen ....................................................................................... Zugang zum OpenNIC .............................................................................. Wie funktioniert das Internet? .................................................................. Feedly ...................................................................................................... Flock ........................................................................................................ 430 431 433 435 438 440 447 459 460 13 Praxis Virtualisierung 왘 왘 Virtuelles System auswählen ..................................................................... 471 Noch mehr Spaß: das JPC-Projekt ............................................................. 473 Mein PC is’ ene Wolke 왘 왘 왘 왘 gOS .......................................................................................................... iCloud ...................................................................................................... eyeOS ...................................................................................................... »Gänseblümchen« – Daisyworld ................................................................ 480 489 497 505 Denkmaschine 왘 왘 왘 왘 왘 14 Quantenrechner simulieren ...................................................................... Neuronales Netz ...................................................................................... Das Märchennetz ..................................................................................... Conways Life – die Minimalversion ........................................................... Muster aus dem Game-of-Life-Automaten ................................................ 519 523 527 534 538 »Das Internet ist doch bloß ein Hype.« – Bill Gates, 1995 Vorwort Im Jahr 2010 feiern wir den hundertsten Geburtstag des großen deutschen Computerpioniers. Deshalb wurde dieses Jahr zum Konrad-Zuse-Jahr erklärt. Konrad Ernst Otto Zuse wurde am 22. Juni 1910 in Berlin geboren. Damit wird, wie eine große Zeitung titelte, der Computer 100. Computer haben wie alle Dinge ihre ganz persönliche Geschichte – eine Geschichte, die gar nicht so langweilig und technisch-trocken ist, wie so mancher glaubt. Das ist durchaus ein Grund, sich intensiver damit zu befassen. Wie der Titel des Buches unschwer erraten lässt, wollen wir uns den originellen und »schnurrigen«, vor allem aber den interessanten Seiten der Computerhistorie zuwenden. Wie so oft in der Geschichte der Technik ist auch die Computertechnik gespickt mit Missverständnissen, ja mit »Unfällen« ganz eigener Art. Wir wollen versuchen, die Spuren, die der Computer in der Zeit hinterlassen hat, praktisch zu lesen. Das soll heißen: Wir werden uns Programme aus den betrachteten »Epochen« ansehen und versuchen, selbst zu programmieren, wo immer es sinnvoll scheint. Also geht es neben der Hardware auch um Software, ja sogar um Computerspiele, denn diese sind mit eine der stärksten Triebkräfte in der Geschichte der EDV. Die angesprochenen Themen kann dieses Buch natürlich nicht umfassend abhandeln, dazu ist die Geschichte der Hard- und Software einfach zu umfangreich. Es kann aber einen Überblick über die wichtigsten »Schlachtfelder« und »Heerführer« im Kampf um die Datenverarbeitung mit Hilfe von Maschinen liefern. Trotzdem soll dies natürlich kein Lehrbuch sein, vor allen Dingen auch kein Buch zu einer bestimmten Programmiersprache. Dafür gibt es andere Bücher, die in der Reihe »Coding for Fun« erschienen sind. Beherrscht man jedoch die Programmierung, z. B. eine Sprache wie Java, kann man die Beispiele nicht nur vom Computer ausführen lassen; bei dem einen oder anderen Programm, dessen Quellcode beiliegt, kann man sich sogar anschauen, wie die Software damals geschrieben wurde und was sich die Entwickler dabei gedacht haben. Man kann sich Anregungen bei den ganz großen Softwareentwicklern holen, etwa bei 15 Vorwort Niklaus Wirth, dem Erfinder der Programmiersprachen Pascal, Modula und Oberon, oder bei James Gosling, dem Entwickler von Java. Programmieren zu können soll jedoch so wenig Bedingung für das Verstehen dieses Buches sein wie Lateinkenntnisse für ein Buch über die Geschichte der Römer nötig sind. Sie können also ganz vorbehaltlos an die Sache herangehen. Dieses Buch möchte vor allem eines vermitteln: die Freude an neuen Ideen, also den Spaß, den all die Pioniere empfanden, als sie etwas zum ersten Mal ausprobierten. So wie Konrad Zuse, als er sah, dass man durch die Nutzung binärer Zahlen mit einer elektrischen Maschine und unter Zuhilfenahme von Blechstreifen rechnen lassen konnte. Aber wir wollen uns nicht nur antiquierte Maschinen ansehen, die in irgendwelchen Museen vor sich hin rosten. Ich möchte darüber hinaus einen Blick in die Zukunft werfen, auch wenn ich mich dabei vielleicht irren mag. Welches Geschichtsbuch bietet schon auf seinen letzten Seiten einen Ausblick in die Welt von morgen und übermorgen? Bei einem Buch zum Thema Computergeschichte jedoch darf ein Ausblick, wie ich meine, nicht fehlen. So, nun wünsche ich jedem Leser ein Maximum an Spaß mit Computergeschichte(n)! Hinweise zur Benutzung des Buches Das Buch ist so weit wie möglich chronologisch aufgebaut, was aber nicht bedeutet, dass die vorausgehenden Kapitel für das Verständnis der folgenden Texte erforderlich sind. Der geneigte Leser kann daher jeweils das lesen, was ihn gerade interessiert, ohne den Überblick zu verlieren. Um die praktischen Beispiele nachvollziehen zu können, ist es ratsam, sich eine virtuelle Maschine einzurichten. Dazu im folgenden Abschnitt mehr. Wo es mir sinnvoll schien, habe ich interessante Aussagen der Computerpioniere eingestreut. Oft handelt es sich dabei um Irrtümer, die zeigen sollen, wie rasch und umfassend sich die Sichtweise auf den Computer geändert hat, und nicht, wie sehr sich die Fachleute irrten oder wie dumm sie gewesen wären. Damit sich die einzelnen Bestandteile des Buches wie Programmcode und Kapiteleinführungen besser voneinander abheben, wurden jeweils unterschiedliche Schriften verwendet. Sie sind hier vor der Aufzählung der verwendeten Abkürzungen dargestellt, damit Sie einen Überblick gewinnen können. 16 Vorwort Darstellung Verwendung Kapiteleinführung Vorwort vor den einzelnen Kapiteln Listing Programmcode CD:/beispiele/kapitel01/pro001 Hinweis zu den Code-Beispielen auf der DVD-ROM Start 폷 Programm 폷 VBasic Menüfolge <Proj.-Verzeichnis> Erläuterung, die sinngemäß zu ersetzen ist (Ctrl)+(H) Tastatureingabe Fachbegriff Name oder Fachbegriff Fett Hervorhebung wichtiger Wörter und Begriffe Tabelle 1 Tabelle der Zeichenformate Abkürzung Bedeutung Start-Icon Start-Kreis von Windows (bei Windows 7/Windows Vista) und Start-Icon (bei älteren Windows-Versionen) GUI grafische Nutzerschnittstelle (aus Entwicklersicht) IDE integrierte Entwicklungsumgebung LMT linke Maustaste anklicken OOP objektorientierte Programmierung RMT rechte Maustaste anklicken UML Diagramme, um den Aufbau von OO-Programmen zu beschreiben URL Webadresse VM virtuelle Maschine, insbesondere Java-Maschine Tabelle 2 Tabelle der verwendeten Abkürzungen Noch mehr Spaß mit der grauen Kiste Nun zu einem der wichtigsten Kapitel des Buches. Es befindet sich ziemlich am Schluss und heißt »VirtualBox (Windows / Mac OS X / Linux)« – Anhang A. Dieses Kapitel sollte in jedem Fall zuerst durchgearbeitet werden, es sei denn, Sie sind ein Fachmann für Virtualisierung und haben auf Ihrem Rechner bereits Systeme wie VirtualBox in Gebrauch. Mit Hilfe dieses Kapitels können Sie Ihren Rechner so vorbereiten, dass Sie andere Betriebssysteme installieren können, ohne das bestehende System verän- 17 Vorwort dern zu müssen. Auch wenn Sie noch nie einen Rechner selbst konfiguriert haben, sollten Sie es mit Hilfe dieses Kapitels versuchen. Es lohnt sich ... Zunächst geht es nur darum, ein Virtualisierungsprogramm zu installieren. Diese Software »gaukelt« dann einen eigenständigen Rechner im Betriebssystem Ihres Rechners vor, mit dem man beliebig herumexperimentieren kann, ohne dass etwas kaputtgeht. Sollte einmal etwas schieflaufen, löscht man einfach den »kaputten« Rechner aus dem Programm und erzeugt einen neuen. Sollte es ganz schlimm kommen, deinstalliert man die Virtualisierungssoftware und installiert sie wieder neu. Außerdem bewahrt ein virtuelles System Ihr reales System vor Viren, wenn Sie etwas Neues immer zuerst auf einem virtuellen Rechner installieren, um es zu testen. Auch bei der beiliegenden Software von der Buch-DVD und bei Software, die Sie von im Buch genannten Adressen aus dem Internet laden, kann es vorkommen, dass Ihre Virensoftware Virenbefall meldet. Bei der von mir getesteten Software handelte es sich durchweg um Fehlalarm. Trotzdem können sich jederzeit böswillige Viren einschleichen. Achtung, wichtig! Verwenden Sie stets virtuelle Systeme. Selbst wenn Sie dort das gleiche Betriebssystem betreiben wie auf dem Hauptrechner. Dadurch können Sie Virenbefall auf Ihrem eigentlichen Computer verhindern. Also, alles völlig ungefährlich, wenn man es richtig macht. Oder anders gesagt: Wenn man nicht kompletten Unsinn macht, kann man mit der Software und den Beispielen im Buch keinen Schaden am Computer anrichten. Was Sie noch unbedingt benötigen, um die Beispielprogramme des Buches nachvollziehen zu können, ist ein Java-Laufzeitsystem. Wie man dieses installiert, lesen Sie ebenfalls im Anhang (»Die Installation von Java und JRE« – Anhang B). Sinnvollerweise installieren Sie sich so etwas gleich auf dem virtuellen Rechner. Zur DVD-ROM Auf der beiliegenden DVD ist die gesamte Software enthalten, die für das Nachvollziehen der Beschreibungen und der Sachverhalte aus dem Buch erforderlich ist. Es steht Ihnen natürlich frei, neuere Versionen oder andere Software aus dem Internet downzuloaden. Allerdings sollten Sie dann auch berücksichtigen, dass weder der Verlag noch der Autor Fragen zu der Software beantworten können. 18 Vorwort Arbeiten Sie also, wenn möglich, mit der Software auf der DVD. Dann ergeben sich auch die wenigsten Diskrepanzen zum Inhalt des Buches, und Sie erzielen den größtmöglichen Lern- und Spaßeffekt. Auf der DVD befinden sich zudem zahlreiche Dokumentationen zur Software und zu weiterführenden Sachgebieten, so dass Sie sich über das Buch hinaus weiter in die Thematik einarbeiten können. Helfen und weiterführen sollten auch die überall im Buch eingestreuten Webadressen. Danksagung In diesem Buch, das ich als Reminiszenz an den großen Erfinder verstehe, gebührt der größte Dank Herrn Konrad Zuse. Er ist derjenige, der vor vielen Jahren den Computer als einfaches Rechenwerkzeug erdacht hat. Was nach fast 70 Jahren aus dieser genialen Idee geworden ist, das will dieses Buch zeigen. Dank geht außerdem: ... an meine Frau Helga Rosita, ganz besonders für ihr Verständnis. ... an Herrn Uwe Baumann, der bei Microsoft eine Webseite zum spielerischen Erlernen von Programmiersprachen betreut. ... an alle, die Abbildungen zur Geschichte des Computers beigesteuert haben, insbesondere an Herrn Heribert Müller vom Technikum29 für seine ansprechenden Bilder. ... an Herrn Henry Raymond, der mir eine sehr schöne Z3-Simulation zur Verfügung gestellt hat. ... an Herrn Till Zoppke, der mir seine ENIAC-Simulation für die beiliegende DVD überließ. Ebenfalls zu danken habe ich Herrn Christof Elmiger für die Überlassung seiner Arbeit zu L-Systemen. Ein herzliches Dankeschön an Herrn Thomas Jetter für das Programm MemBrain. ... an Herrn Axel Koerfer von der Bitmanagement Software GmbH für die Erlaubnis, den VRML/X3D Viewer BS Contact beilegen zu dürfen. ... an Frau Biggi Lehrl für die Abbildung ihres Rosenkranzes. ... an meine Lektorin Judith Stevens-Lemoine, die sich viel Mühe mit der Betreuung dieses Buches gegeben hat. Hätte sie sich meinen neuen Ideen gegenüber nicht aufgeschlossen gezeigt, wäre dieses Buch nie zustande gekommen. Den gleichen Dank schulde ich Frau Anne Scheibe von Galileo Press. 19 Vorwort ... an Herrn Prof. Peter Ziese, der sich für mein Coding for Fun-Buch begeistern konnte und nicht mit Anregungen gespart hat. ... an Herrn Eckart Prause für die Überlassung des BIOS-Kompendiums, das vielen Nutzern bei BIOS-Problemen weiterhalf und weiterhin hilft und somit hier Teil der PC-Geschichte wurde. ... für die Abbildung von SAP an Herrn Rungwerth, und das Bild von der Software AG verdanke ich Herrn Kockrick. ... an meinen Lehrer und Mentor, Herrn Prof. Dr. Peter Zöller-Greer, der mich durch seine Forschungen im Bereich der KI vielfach angeregt und unterstützt hat. Mit seinen Worten möchte ich sagen: »Der Mensch, wie er in der Natur vorkommt, benötigt im Grunde keinen Computer, der Computer aber in jedem Fall den Menschen.« Ein ganz besonderer Dank gebührt jener endlosen Schar an Hobbyprogrammierern, die mit unvergleichlichem Elan und Enthusiasmus ihre Freizeit dafür opfern, geniale Softwareprogramme zu erstellen, die sie kostenlos weitergeben. Ohne ihre Arbeit wäre an ein solches Buch gar nicht zu denken gewesen. Denn ohne sie es gäbe kein FreeDOS, kein Squeak-Smalltalk und vor allem kein Linux oder Ubuntu. Und ehe ich es vergesse ... Das herzlichste Dankeschön geht natürlich an Sie, meine Leser, die einfach Spaß an einem Buch wie diesem haben und denen das Geld dafür nicht zu schade ist. Ich wünsche mir, dass Sie das Buch mit der gleichen Freude und Begeisterung lesen, mit der ich es geschrieben habe. H. R. Wieland 20 Der wirkliche Siegeszug des Computers begann damit, dass er zum alltäglichen Gebrauchsgegenstand wurde. Kein Begriff verdeutlicht dies so sehr wie der Name »Homecomputer«. Er stellte zwar nur ein kurzes Intermezzo in der Geschichte der EDV dar, doch durch seinen Nachfolger, den PC, gewann der Computer seine heutige Bedeutung. 4 Von Äpfeln und Brotkästen 1960 1976 1977 1979 1981 1982 2000 PDP1 Apple1 Apple2 Homecomputer C64 IBM-PC 4.1 Vom Rechensaurier zum Minicomputer Der Computer war längst etabliert und sogar Held zahlreicher Filme geworden (wie z. B. Tron1), aber trotzdem war er noch immer unnahbar. Irgendwo in klimatisierten Räumen, gepflegt von weißbekittelten Fachleuten, fristete er ein Dasein wie das eines Knastbruders, das tagein, tagaus im Abarbeiten endloser Zahlenreihen bestand. 1 Regie: Steven Lisberger, SF Film, Disney Studios, USA, 1982, 96 Minuten. 147 4 Von Äpfeln und Brotkästen Es war Mitte der 70er Jahre des vorigen Jahrhunderts, als sich dieser Umstand radikal verändern sollte. Es keimte die Idee, Computer für den Normalverbraucher zu bauen und so klein zu machen, dass man sie überall hin mitnehmen konnte. Für den Laien sah diese Entwicklung zunächst so aus, als gäbe es da ein paar Elektronikbastler, die gerne mal wissen wollten, wie so ein Rechner mit Bits und Bytes funktioniert. Dass sich daraus einmal der größte Markt für Elektronikprodukte entwickeln sollte war absolute Fiktion. Die sogenannten ICs waren bezahlbar geworden, und es gab Bausätze für einfache Taschenrechner. Warum dann nicht auch für Computer, also für Rechner, die etwas mehr konnten, als nur Zahlen zu addieren? Kleinere Computer gab es längst, die sogenannte Middleware. Middleware Middleware war nicht mehr auf klimatisierte Räume von der Größe eines Ballsaals angewiesen. Die Minicomputer waren verkleinerte Ausgaben der »Rechensaurier«. Anfangs bestanden sie aus den gleichen Bausteinen wie ihre großen Vettern, hatten daher bei weitem nicht die gleiche Leistung wie sie. Die Firma Digital Equipment Corporation (DEC) hatte 1960 den PDP-1 genannten ersten Minicomputer auf den Markt gebracht. Der Entwickler des Rechners war ein gewisser Ben Gurley. Für heutige Verhältnisse waren sie keineswegs mini, hatten sie doch die Größe von Kleiderschränken. Sie schrumpften jedoch weiter, am Ende immerhin bis auf die Größe von Nachtschränkchen. Die Minicomputer waren vor allem bei Universitäten und Forschungseinrichtungen sehr beliebt, weil sie um einiges billiger waren als Großrechner und nicht alle im Batchbetrieb liefen, sondern oft im Dialogbetrieb. Man nannte diese Rechnergruppe nach dem Aufkommen der Mikrocomputer Mittlere Datentechnik (midrange computer) oder einfach Middleware (heute versteht man etwas ganz anderes darunter2). Sehr bekannte Rechnermodelle dieser Klasse waren die VAX-Rechner (siehe Abbildung 4.2). Sie galten als eine Art Mini-Supercomputer und waren besonders für die grafische DV favorisiert. 2 Middleware ist Software, die zwischen Anwendungen liegt – Software, die beispielsweise Klassen einer Anwendung für die Persistrierung auf eine relationale Datenbank mappt. 148 Quelle: http://de.academic.ru/dic.nsf/dewiki/1067512 Vom Rechensaurier zum Minicomputer PDP-1 mit Fernschreiber als Eingabegerät und Monitor Abbildung 4.2 Eine VAX 11/750 Quelle: www.cca.org/photo/rcsri/index.html Abbildung 4.1 149 4.1 Von Äpfeln und Brotkästen Gegen Ende dieser Entwicklung gab es Miniausführungen der VAX-Hardware, die sogenannte Microvax (siehe Abbildung 4.3), einer Art Super-PC. Quelle: www.classiccmp.org/dunfield/dec/index.htm 4 Abbildung 4.3 MicroVAX 2 Praxis: Assembler mit dem PDP-1 Auch PDP- und VAX-Rechner lassen sich am PC emulieren. Es gibt sogar eine Software, die zur Emulation einer ganzen Reihe von Groß- und Minirechnern geeignet ist. Man findet sie im Netz unter http://simh.trailing-edge.com/. Die Software liegt auch auf der beiliegenden DVD unter Software zum Buch\Kap04\ Simhv-Multisimulator\simhv38-1-exe.zip. Entpackt man die Datei, findet man eine ganze Reihe exe-Dateien. Zu jedem Rechnermodell gibt es einen eigenen, selbständig laufenden Emulator. Aber auch hier gilt: Neben dem Emulator werden die jeweiligen Betriebssysteme benötigt. Die Einrichtung ist zudem extrem aufwendig und umfangreich. Eine Beschreibung würde in diesem Buch mehr als ein ganzes Kapitel füllen. Aus diesem Grund möchte ich hier auf die Dokumentationen verweisen, die sich zu diesem Thema im Internet befinden. Eine sehr gute Beschreibung zur Einrichtung eines VAX-Systems unter Linux findet man auf dieser Webseite: http://www.wherry.com/gadgets/retrocomputing/ vax-simh.html. Trotzdem wollen wir natürlich auf einen Versuch mit einem der ersten Minicomputer nicht verzichten. Auch dazu können wir auf eine professionelle Simulation zurückgreifen. Sie nennt sich ersatz11 und ist in einer kostenlosen Demoversion erhältlich. Auf der folgenden Seite erfahren Sie mehr: http://www.dbit.com. Die Software befindet sich mit einer ausführlichen Dokumentation auch auf der DVD unter Software zum Buch\Kap04\PDP11. 150 Vom Rechensaurier zum Minicomputer Diese Software sollte man in jedem Fall auf einem virtuellen Rechner installieren. Es kann zu Virenwarnungen kommen, da der Code des Emulators Codeteile enthält, die von vielen Virenschutzprogrammen als Virus erkannt werden. Möchte man trotzdem die besprochenen Versuche durchführen, muss man den Virenschutz etwas lockern. Dadurch könnten sich echte Viren unbemerkt einschleichen. Auf einem virtuellen System ist man bei entsprechend vorsichtiger Handhabe jedoch auf der sicheren Seite, wenn man das System nach den Versuchen löscht. Nach dem Start der exe-Datei wird eine einfache Installationsroutine aufgerufen und die Software auf der Platte des virtuellen Rechners installiert. Das eigentliche Simulationsprogramm ist die E11.exe. Abbildung 4.4 Assembler-Programmierung mit der PDP11 In unserem kleinen Programm geht es darum, einen kurzen Satz auf dem Bildschirm auszugeben (siehe Abbildung 4.4). Die Befehlsübersicht des Emulators kann man sich mit einem ? holen. Allerdings muss man bedenken, dass die Tastatur nicht entsprechend der deutschen Tastatur belegt ist. Das Fragezeichen ist dort, wo das (#) ist. Alternativ kann man auch HELP eintippen. Mit der ersten Zeile kündigen wir der »Shell« an, dass wir ein Assembler-Programm ab der Speicherstelle 1000 schreiben wollen. Das geht mit ASSEMBLE <Speicherstelle> oder a <Speicherstelle>. E11> a 1000 151 4.1 4 Von Äpfeln und Brotkästen Nun wird vorne die Speicheradresse angezeigt. Der Editor des Assemblers ist bereit. Wir speichern die Adresse des Textes, der ausgegeben werden soll, im Register 5: 001000 mov #1022,r5 Danach wird der Port für die Zeichenausgabe überwacht. Ist er frei, geben wir sogleich den Text aus. tst steht für Test: 001004 tstb @#177564 Ist das Ergebnis positiv, gehen wir zu 1004 zurück, um auf ein negatives Ergebnis zu warten. bpl steht dabei für »branch if plus«, also »verzweige nach, wenn plus«. 001010 bpl 1004 Gibt die Zeile mit dem tstb ein negatives Ergebnis aus, kann das Programm demnach zur Speicherstelle 001012 gelangen. An dieser Stelle steht nun der Code für die eigentliche Ausgabe des Textes: 001012 movb (r5)+,@#177566 Was so viel besagt wie, dass der Prozessor den Inhalt der Speicherstelle, die in Register 5 steht, auf den Ausgabeport legen soll. Danach soll er den Inhalt des Registers um 1 erhöhen. Gleichzeitig soll der Erfolg der Operation im ConditionCode-Register (Flagregister) festgehalten werden. 001016 bne 1004 Dies gilt es mit dem nächsten Befehl zu überprüfen, wobei bne für »branch if not equal” steht. Verzweige, solange ungleich. Bringt 001012 eine Null, wird die nächste Speicherstelle angesprungen und das Programm angehalten. 001020 halt Die folgende Zeile sorgt dafür, dass der gewünschte Text in dem Arbeitsspeicher ab Speicherstelle 1022 abgelegt wird. Der Text kann dabei bis 32 Zeichen lang sein. Das Programm läuft so weit durch den Speicher, bis keine vernünftigen Zeichen mehr vorhanden sind und eine Null (00) kommt. <15> und <12> stehen für einen Zeilenumbruch und den Wagenrücklauf. 001022 .asciz /Beispiel aus More Coding for Fun/<15><12> Mit den Tasten (Strg)+(C) kann man den Assembler-Modus verlassen. 001040 ^C 152 4.2 Der Biss in den Apfel Um das Programm ablaufen so lassen, muss man den Prozessor anweisen, die Befehle ab Speicherstelle 1000 abzuarbeiten. Das gelingt mit einem einfachen Go <Speicherstelle> für »gehe zur genannten Speicherstelle«. g 1000 4.2 Der Biss in den Apfel Quelle: www.edibleapple.com Die Firma Apple, die heute der angesehenste Computerhersteller der Welt ist, wurde als Garagenfirma von Steve Jobs, Steve Wozniak und Ronald Wayne am 1. April 1976 im heutigen Silicon Valley, Los Altos, gegründet. Bedenkt man, dass die 1.750 US-Dollar zur Gründung aus dem Verkauf von Steve Jobs HippieVW-Bus und Wozniaks Hewlett-Packard-Taschenrechner stammten – wobei man sich heute nicht mehr einig ist, ob der Taschenrechner oder der VW-Bus mehr einbrachte –, war es wohl eher eine Art Aprilscherz als die Hoffnung, eine Firma mit Milliardenumsatz (oder wie man in Big Apple, New York City, sagt: »Billion in sales«) zu gründen. Abbildung 4.5 Wozniak und Jobs mit dem Motherboard des Apple I Der Apple I war ein Bausatz ohne Netzteil, Tastatur und Gehäuse, genau so, wie man es bis dahin von Taschenrechnern für den Selbstbau kannte. Es gab auch fer- 153 Von Äpfeln und Brotkästen tig verlötete Exemplare zu kaufen. Entworfen hatte die Platine Steve Wozniak, Jobs hatte von diesen technischen Details nicht genug Ahnung, um selbst eine Platine entwickeln zu können. Aber er verstand etwas von dem, was technisch machbar war und beim Kunden ankam. Quelle: www.applefritter.com 4 Abbildung 4.6 Das Motherboard des Apple I Die Platine kostete damals 666.66 US-Dollar3, was relativ viel war für einen Selbstbausatz (siehe Abbildung 4.6). Wichtige Teile fehlten, wie das Netzteil und eine Tastatur. So wurden insgesamt nur einige Hundert Exemplare der Apple IPlatine verkauft. 4.2.1 Steve Jobs versus The Beatles Vor der Gründung der Firma musste man sich über einen Namen einig werden. Obwohl es ein wichtiger Teil der Unternehmensgeschichte ist, so ist man sich selbst bei Apple nicht mehr einig, wie der Name eigentlich entstand ist. Steve Jobs, den die Suche nach Erleuchtung bereits nach Indien geführt hatte – was zur Zeit der Blumenkinder durchaus nichts Ungewöhnliches war –, verbrachte hin und wieder einige Wochen auf der Farm seiner Hippiefreunde und half dabei auch bei der Apfelernte. Andererseits war der Name Apple Records für jeden Beatles-Fan ein Begriff. Es war das Plattenlabel dieser Band. Jobs hatte zu der Zeit, als ihn seine Sehnsucht nach Indien führte, bei Atari gearbeitet und kannte die Wirkung eines Namens mit dem Anfangsbuchstaben A. Er landete ganz vorne 3 http://apple1.chez.com/Apple1project/Gallery/Gallery.htm (Mystiker sehen in dem verrückten Preis ein böses Omen.) 154 Der Biss in den Apfel im Branchenverzeichnis des Telefonbuchs, aber auch in der normalen örtlichen Übersicht. Wenn man nun vor Atari landen wollte, war Apple als Name gerade richtig. Steve Wozniak wandte natürlich sofort ein, dass es Ärger mit Apple Records geben würde, als Jobs den Namen vorschlug. Und er sollte Recht behalten. 1989 verklagte Apple Records Apple Computer auf Verletzung des Markennamens, was Apple schlussendlich zu einer Zahlung von 26,5 Millionen $ zwang. Allerdings ging es weniger allein um den Namen Apple. Bereits 1981 hatte man sich geeinigt, dass Apple Computer seinen Namen führen dürfte, wenn man 80.000 $ zahlen würde und versichere, dass man sich ganz aus dem Musikgeschäft heraushalte. Nun bot der neue Apple-Rechner aber die Möglichkeit, Musik mit dem CDROM-Laufwerk zu kopieren, was Apple Records als eindeutigen Verstoß gegen die alte Abmachung ansah. Die Millionen wurden gezahlt. Der Streit war damit jedoch nicht beigelegt, Apple Computer entwickelte sich weiter. Als man schließlich den iPod als MP3-Player auf den Markt brachte und eine zugehörige Musikbörse, iTunes Store, im Internet etablierte, war der nächste Gerichtstermin absehbar. Die Firma Apple Corps Ltd. gehörte inzwischen Paul McCartney, Ringo Starr, Yoko Ono, der Witwe von John Lennon, sowie den Erben von George Harrison. Man brachte jedoch 2007 eine endgültige Einigung zustande, bei der Apple Computer den Markennamen Apple ganz übernahmen und in Apple Inc. umfirmierte. Von Steve Jobs Firma wurde eine Summe in ungenannter Höhe gezahlt und Apple Records gestattet, den Namen bezüglich der Musikstücke weiter nutzen zu dürfen. Was die Herkunft des Namens angeht, sind die Ungereimtheiten nach wie vor unausgeräumt. So grassiert im Internet auch folgende Geschichte, die angeblich von Steve Jobs selbst stammt: »Damals war ich tatsächlich noch Frutarier, aß nur Obst. Mittlerweile bin ich, wie jeder andere auch, ein Abfalleimer. Wir waren damals mit der Anmeldung unseres Unternehmensnamens drei Monate im Verzug, und ich drohte, das Unternehmen 'Apple Computer' zu nennen, falls bis fünf Uhr niemandem ein interessanterer Name einfällt. Ich hoffte, so die Kreativität anzuheizen. Aber der Name blieb. Und deshalb heißen wir heute ›Apple‹.« – Quelle: wikipedia.de 155 4.2 4 Von Äpfeln und Brotkästen 4.2.2 Der erste PC Die Gewinne aus dem Apple I-Verkauf reichten aus, um das Nachfolgemodell, den Apple II, entwickeln zu können. Der Apple II wurde ein Riesenerfolg, und der Grundstein zu einem Weltunternehmen war gelegt (bis 1985 wurde er zwei Millionen Mal verkauft). In Amerika gilt er heute als der erste persönliche Computer, der erste PC. Abbildung 4.7 Der Apple II Plus mit Monitor Neben zahlreichen revolutionären Leistungsdaten hatte der Apple II eine Eigenschaft, die sich erst später bei einem anderen Hersteller als entscheidendes Merkmal herausstellen sollte: Der Apple II war mit Hilfe von Steckkarten erweiterbar. Er war demnach ein offenes System. Ein Teil der Funktionsweise und des Bauplans wurde veröffentlicht, so dass andere Hersteller Platinen entwickeln konnten, die die Fähigkeiten des Rechners verändern konnten. Hatte man z. B. vor, einen Scanner zu betreiben, so gab es eine Karte, an die ein Scanner anschließbar war, auch wenn die Standardanschlüsse des Apple II dies nicht zuließen. Wollte man Temperaturen erfassen, um einen Brutschrank für bedrohte Vogelarten zu steuern, so war auch das über eine spezielle Input/Output-Steckkarte möglich. 156 Der Biss in den Apfel Praxis: Die Apple I-Computerplatine Der Apple I war nicht viel mehr als eine Platine und deshalb ohne eigenen Bastelgroßeinsatz kaum zu nutzen. Um dieses Feeling entsprechend vermitteln zu können, soll hier ein entsprechend spartanisches Beispiel mit dem Apple I-Emulator Pom herhalten. Wir nehmen sozusagen die nackte Platine und zaubern mit ihr »Coding for Fun« auf den »Fernsehbildschirm«. Das nötige Programm findet man im Internet unter http://pom1.sourceforge.net/ aber auch auf der Buch-DVD unter Software zum Buch\Kap04\Apple\pom10.0.3-win32.zip. Nach dem Entpacken können Sie das Programm POM1.EXE starten. Es erscheinen zwei schwarze Dialogboxen. Eine davon besitzt einen Cursor und stellt den Fernsehbildschirm dar, der an die Apple I-Platine angeschlossen ist. Eingaben sind, wie üblich, mit der Tastatur möglich. Informationen zu Steueranweisungen finden Sie in der Datei README.txt. Mit zwei durch einen Punkt getrennte Adressen können Sie den Speicher ausgeben lassen, z. B.: 01F8.020F Programmieren sollte man den Apple I natürlich in Maschinensprache, wobei wir nur einen Text ausgeben. Wir kopieren also einen Hauptspeicherinhalt in den Videospeicher. Dazu schreiben wir Folgendes in den Hauptspeicher: 0300: 0308: 0310: 0318: 0320: A2 07 4C 4E 55 00 20 1F 47 4E BD EF FF 20 00 13 FF 8D 46 00 03 E8 43 4F 00 C9 4C 4F 52 00 00 02 44 20 00 F0 03 49 46 00 Nun müssen wir nur noch den Instruktions-Pointer4 auf die 0300 stellen, damit der Prozessor die danach folgenden Befehle abarbeitet. Das macht man mit dem Befehl R in dieser Form: 0300R Als Ergebnis erhalten wir das gewünschte »Coding for Fun«. Wer seine Versuche nicht nur eintippen will, der kann Speicherinhalte mit (Ctrl)+(S) in eine Datei auslagern oder mit (Ctrl)+(L) laden. Angefangene Befehle können mit der (Esc)4 Das Befehlszählregister ist eine Speicherstelle im Prozessor, die je nach Systemarchitektur die Speicheradresse des aktuellen oder des als Nächstes auszuführenden Befehls enthält. 157 4.2 4 Von Äpfeln und Brotkästen Taste unterbrochen werden. Das gezeigte Beispiel finden Sie auch als ASCII-Textdatei auf der DVD unter Software zum Buch\Kap04\Apple\coding.txt. Man kopiert die Datei ins Pom1-Verzeichnis und lädt sie mit Hilfe von Ctrl-L Coding.txt A 0300R Mit dem Apple I waren also durchaus erste Erfahrungen in Richtung Computerprogrammierung möglich. Wer das noch vertiefen möchte, der findet im Internet reichlich Informationen über den Aufbau und die Programmierung der Apple IPlatine. 4.2.3 Ein Tag im November Entscheidend für die Zukunft des Computerherstellers Apple sollte ein Tag im Spätherbst des Jahres 1979 werden. Steve Jobs war vom Xerox-Entwicklungslabor zu einer kleinen privaten Vorführung eingeladen worden. Mit einigen Mitarbeitern und natürlich auch Wozniak schaute er sich dort einen Rechner an, den man Xerox Alto nannte. Welch bleibenden Eindruck dieser Rechner bei Steve Jobs hinterlassen hat, gestand er 1996 in einem Interview: »Ich war total geblendet von dem ersten Ding, das sie mir zeigten: die grafische Benutzeroberfläche. Ich dachte, das ist das beste Ding, was ich je in meinem Leben gesehen habe. Es hatte noch viele Schwächen. Was wir sahen, war unvollständig. Sie hatten eine ganze Reihe Sachen falsch gemacht. Aber zu der Zeit wussten wir das nicht. Dennoch: Sie hatten den Keim der Idee geschaffen, und sie hatten es sehr gut gemacht. Und innerhalb von zehn Minuten war mir klar, dass eines Tages alle Computer so arbeiten würden.« Die damalige Vorführung bei Xerox gilt als eines der denkwürdigsten Ereignisse in der Geschichte der EDV, zumal auch Bill Gates die gleiche Anlage besichtigen durfte. Man geht davon aus, dass sowohl Apples Betriebssystem für den Rechner Lisa als auch das erste Windows auf diese Besuche zurückgehen. Die Ereignisse von damals wurden nachgestellt, und man kann sie sich im Internet als Kurzfilme ansehen, wie beispielsweise hier: http://de.sevenload.com/ videos/n593w7S-Apple-und-Xerox. Praxis: Apple Lisa Auch die »schöne« Lisa lässt sich heute am PC betrachten. Ein Emulationsprogramm findet man im Internet unter: http://lisa.sunder.net/. Auf der DVD gibt es die Windows-Version unter Software zum Buch\Kap04\Apple\AppleLisa.zip. 158 Der Biss in den Apfel Nach dem Entpacken kopieren Sie die Dateien in ein entsprechendes Verzeichnis. Das Lisa-Office-System ist bereits installiert, so dass Sie auch direkt von der Festplatte starten können. Dazu führen Sie auf dem Dateinamen lisaem.exe einen Doppelklick aus. Ein Dialog mit der Abbildung des gesamten Lisa-Rechners wird geöffnet. Nun starten Sie über die Dialogpunkte File 폷 Run. Quelle: http://teo-net.de/wordpress/wp-content/uploads/ 2009/01/macintosh_128k_transparency.png Der Dialog ROMless Boot wird geöffnet. Wählen Sie ProFile Hard Drive on Parallel Port, und starten Sie mit der OK-Schaltfläche. Eine Festplatte wird gezeigt, anschließend startet das Lisa-Office-System Release 3.1. Abbildung 4.8 Lisa-Emulator eines laufenden Apple Lisa 2-Rechners Es ist eine einfache zweifarbige Windows-Oberfläche (siehe Abbildung 4.8). Mehr als eine Uhr und eine Zwischenablage sowie der Papierkorb sind nicht verfügbar. Das Diskettenlaufwerk wird über den Menüpunkt Housekeeping 폷 Eject Micro Diskette bedient, der natürlich nur verfügbar ist, wenn eine Diskette im Laufwerk steckt. Zusätzliche Software ist auf Disketten-Images im Verzeichnis /image verfügbar. Es handelt sich dabei um Programme wie 왘 LisaWorkshop 왘 LisaCalc 왘 LisaDraw 왘 LisaGraph 159 4.2 Von Äpfeln und Brotkästen 왘 LisaList 왘 LisaWrite Anleitungen finden Sie in der Datei LisaEm User's Guide 1.2.5.pdf im Verzeichnis des Emulators. Es gibt sogar einen ausführlichen Einführungsfilm zum Apple Lisa im Internet aus dem Jahre 1983: http://www.youtube.com/watch?v= a4BlmsN4q2I&feature=fvw und einen Film zur Emulation: http://www.youtube.com/watch?v=dEth2JfgX3Y&feature=related. 4.2.4 Lisas trauriges Ende Obwohl der Apple Lisa zu seiner Zeit ein technisch sehr gelungener Personalcomputer war, wurde es ein wirtschaftlicher Misserfolg. Hauptursache dafür war der extrem hohe Preis. Der Rechner kostete in Amerika 9.995 $. In Deutschland wurde er für rund 30.000 DM angeboten. Da er aus Design-Gründen eher zierlich wirkte (das Display hatte 12«), war kaum jemand bereit, einen so hohen Preis für dieses Gerät zu bezahlen. So kam es, dass Apple in einer Nacht-und-NebelAktion 2.700 Rechner auf einer Müllhalde in Utah einfach verscharren ließ. Es hatte sich als unmöglich herausgestellt, die Rechner noch zu verkaufen. Man verfiel auf die Idee, sie einfach zu vernichten, um sie wenigstens steuerlich geltend machen zu können. Quelle: http://www.allaboutapple.com/ 4 Abbildung 4.9 160 Der Apple Macintosh Die Zeit der Homecomputer Auch der Nachfolger war anfangs nicht viel erfolgreicher, obwohl er nicht einmal ein Viertel von dem kostete, was man für den Apple Lisa berappen musste. Nach dem Entwicklungssprung zur grafischen Oberfläche ging die Weiterentwicklung der Hardware rasant voran. Bei Apple folgte auf den Lisa der Macintosh (siehe Abbildung 4.9), der zum Power Mac weiterentwickelt wurde. Nach und nach konnte sich Apple eine solide Nische im Bereich Design und DesktopPublishing erarbeiten und bis heute immer weiter ausbauen. Die größten Erfolge errang man dann jedoch mit Design-, ja Lifestyle-Produkten wie dem iMac, dem iPod, dem iPhone und dem iPad. »Make the screen five inches by eight inches, and you'll rule the world.« – »Machen Sie das Display 5 Zoll mal 8 Zoll groß, und Sie werden die Welt erobern.« – Alan Kay zu Steve Jobs auf die Frage nach seiner Meinung zum iPhone *** »Wir lieben die Beatles, und deshalb war es schrecklich, mit ihnen wegen der Apple-Namensrechte zu streiten.« – Steve Jobs 4.3 Die Zeit der Homecomputer Hier soll nicht verheimlicht werden, dass in den Achtzigern auch die große Zeit der sogenannten Homecomputer begann. Die Medien hatten den Computer hoffähig gemacht, und in den Firmen wurde er einigen Mitarbeitern auf den Schreibtisch gestellt. Die Firma Apple wollte jedoch den Computer für jedermann bauen. Aber beide, der PC aus dem Büro wie der Apple II für den betuchten Enthusiasten, waren für den Hausgebrauch viel zu teuer. In diese Marktlücke drang nach und nach eine ganze Reihe von Anbietern mit klingenden Namen. Um nur einige zu nennen: Commodore, Sinclair, Atari, Arcon, Schneider, Spectravideo und Sony. Das erfolgreichste Modell von allen war der Commodore C64. Was bei ihm überzeugte, waren Leistung und Preis. Sein Name leitete sich von seinem 64-KB-Hauptspeicher ab. 4.3.1 Mein Spectravideo Es war ein eher verregneter Samstag im Jahre 1984. Ich hatte mich entschlossen, meinen Homecomputer (siehe Abbildung 4.10) doch zu verkaufen, nachdem ich einige Testberichte über aktuelle Computerspiele und zum Rechner geschrieben 161 4.3 4 Von Äpfeln und Brotkästen sowie Software für den MSX-Standard entwickelt und bei gängigen Computerzeitungen in klingende Münze verwandelt hatte. Meine Hoffnung war, dafür eine jener gigantischen schwarzen Olivetti-Typenrad-Schreibmaschinen in gutem gebrauchtem Zustand zu erstehen, da sie für das Erstellen von Artikeln eindeutig besser geeignet waren als Homecomputer mit 40 Zeichen pro Zeile. Abbildung 4.10 Der Spectravideo SV 318 Den Homecomputern musste ich trotzdem nicht entsagen, weil Philips mir einen MSX VG8020 für meine freie Mitarbeit zur Verfügung gestellt hatte. Abbildung 4.11 Der Philips MSX VG8020 Ich hatte in der lokalen Presse eine Verkaufsanzeige aufgegeben und auch einen Interessenten gefunden, der sich an jenem Samstag erwartungsvoll bei mir einfand. Unser Gespräch verlief ziemlich zwiespältig, was mir sofort, dem Käufer jedoch überhaupt nicht bewusst wurde. 162 Die Zeit der Homecomputer »Ich bin Architekt und habe jeden Tag eine Menge Pläne zu zeichnen, auch 3D-Darstellungen der geplanten Gebäude sind gefordert, was mir hin und wieder Kopfschmerzen bereitet. Der Bauherr hätte am liebsten ein Foto von seinem zukünftigen Haus, am besten mit Umgebung, Bäumen, architektonischem und landschaftlichem Hintergrund, Bewölkung und so weiter.« »Gewiss, aber der Rechner hat eine grafische Auflösung von 256 × 192 Punkten bei 16 Farben.« »Außerdem sind da noch die statischen Berechnungen.« »Nur wird es schwerlich dafür Programme geben. MSX-BASIC ist im ROM enthalten und erlaubt eine recht komfortable Programmierung.« »Ach, ja, das ist schön, eine Programmiersprache wollte ich immer schon erlernen. Es ist doch sicher nicht all zu schwer. Gewiss kann man sie in ein, zwei Tagen beherrschen.« »Na ja, ich habe zwei Wochen gebraucht, bis ich gut damit zurechtkam. Aber Sie schaffen das gewiss schneller.« »MSX, was ist das? Das sagt mir im Moment nix.« »MSX ist ein Standard für Heimcomputer, der 1982 von mehreren japanischen und koreanischen Firmen ins Leben gerufen wurde, um die Hersteller von Heimcomputern unter einem technischen Standard zu vereinen. Das heißt, Drucker, Joysticks und Programme, die für einen MSX-Computer entwickelt wurden, können auch für alle anderen MSX-Computer verwendet werden. Firmen aus dieser MSX-Gruppe sind beispielsweise Sanyo, Sony, aber auch Philips, hier in Europa. Insbesondere von den Softwareherstellern, die nun ein Programm gleich für eine ganze Reihe von Heimcomputern entwickeln können, erwartet man in den nächsten Jahren sehr interessante Produkte. So gibt es inzwischen bereits Textverarbeitungssoftware, Karteikartensoftware und Ähnliches für diesen Rechner.« Ich hatte einen Käufer gefunden. Alles in allem war der Architekt davon überzeugt, dass ihm mein Rechner die Unterstützung liefern würde, die er sich erhoffte. Davon war ich ganz und gar nicht überzeugt. Aber ich wusste auch, dass die konkreten Wünsche, die er hatte, von keinem Rechner dieser Welt erfüllt werden konnten. Auch ein C64 oder IBM-PC, selbst ein Großrechner würde ihm da nicht viel helfen. Bei einem MSX-Rechner hatte er zumindest eine relativ einfache BASIC-Version, die zudem der BASIC-Version des zehnmal teureren IBMPC entsprach und auch von Microsoft war, sowie die Aussicht, dass asiatische Fir- 163 4.3 4 Von Äpfeln und Brotkästen men reichlich Hard- und Software entwickeln würden. Auch die Erweiterbarkeit blieb nicht hinter dem C64 zurück (siehe Abbildung 4.12). Erst sehr viel später habe ich verstanden, dass es gerade diese völlig überzogenen Wünsche und Hoffnungen waren, ja die völlige Unkenntnis über die Art und Weise der Leistungen von Computern, die Hard- und Softwarehersteller immer wieder anspornte. Sie sorgte dafür, dass wir heute in unseren PCs Prozessoren haben, die jeden Superrechner von damals ganz alt aussehen lassen, und Software, mit der man Häuser in 3D entwerfen und virtuell begehen kann, und dass selbst Spielfilme wie Ice-Age oder Avartar am Computer entwickelt werden können. Ausschnitt aus dem Datenblatt des Spectravideo 318 Hersteller: Spectravideo Baujahr: 1983 Programmiersprache auf dem internen ROM: Microsoft Extended BASIC Prozessor: Zilog Z80 A Taktrate: 3.6 MHz RAM: 16 kB (aufrüstbar bis: 144 kB) ROM (mit Basic): 32 kB Graphic modes TMS9918A: 256 x 192 (16 colors), 40 x 24 characters (2 colors), 4 x 48 (16 colors) Colors 16 Soundbaustein: AY-3-8910 mit 3 Kanälen, 8 Oktaven Anschlussmöglichkeiten für: Fernseher (über Adapter), Monitor, Datenkassettentape, 2 Joysticks, eine Erweiterungs-Cartridge, den sogenannten Super Expander Praxis: MSX-Rechner simulieren Natürlich kann man mit dem heutigen PC auch einen MSX-Rechner simulieren. Das entsprechende Programm gibt's im Internet unter http://www.bluemsx.com/, auf der DVD finden Sie den Emulator für Windows unter Software zum Buch\ Kap04\MSX\blueMSXv282full.exe. Nach der Installation erscheint ein Icon auf der Desktop-Oberfläche, mit dem das Programm gestartet werden kann. Über den Menüpunkt Run 폷 Start können Sie den Rechner in Betrieb nehmen. Ein kurzes Intro erscheint, und daraufhin erhält man auf einem blauen Display folgende Meldung: MSX BASIC version 2.1 (siehe Abbildung 4.13) 164 Die Zeit der Homecomputer Abbildung 4.12 Erweiterungsmöglichkeiten für den SV 318 Abbildung 4.13 BlueMSX startet. 165 4.3 4 Von Äpfeln und Brotkästen Im Gegensatz zu Windows hat der blaue Hintergrund keine negative Bedeutung. Man wollte nur eine eigene Farbnuance gegen das in der EDV vorherrschende Schwarz/Grün setzen (Terminalmonitore). Es ist sinnvoll, eine deutsche MSX-Maschine zu wählen, um die Sonderzeichen benutzen zu können: Tools 폷 Maschineneditor. Im Feld Konfiguration wählen Sie MSX2 – German aus und klicken auf die Schaltfläche Start. Dennoch ist es sinnvoll, sich das Tastaturlayout einblenden zu lassen oder es wenigstens einmal anzusehen. Das ist über den mittleren der drei unteren schwarzen Knöpfe am rechten Rand (siehe Abbildung 4.13) möglich. Der BASIC-Interpreter ist aktiv, und Sie können Ihren BASIC-Code direkt eingeben, beispielsweise so: 10 20 30 40 50 60 70 80 90 100 110 120 130 SCREEN2 P=3.1415926 LINE(66,10)-(189,50) CIRCLE(128,160), 60, , , ,20/60 FOR D=0 TO 2*P STEP 0.15 E=D+P/2 X=128+60*COS(D) Y=30+20*COS(D) S=128+60*COS(E) T=160+20*SIN(E) LINE(X,Y)-(S,T) NEXT D GOTO 130 An den Schluss wird eine Endlosschleife gesetzt, damit die gezeichnete Abbildung erhalten bleibt. Verglichen mit heutigen Grafikkarten und Grafikmodi war MSX nicht gerade leistungsfähig. Farben konnten im Screen2-Grafikmodus nicht für einzelne Pixel, sondern nur für Rechtecke der Größe 8 x 8 Pixel unterschiedlich gesetzt werden. Das sieht man sehr schön, wenn man die Linien des vorherigen Beispiels in verschiedenen Farben setzen möchte. 10 20 30 40 50 60 70 80 90 100 166 SCREEN2 P=3.1415926 LINE(66,10)-(189,50) CIRCLE(128,160), 60, , , ,20/60 FOR D=0 TO 2*P STEP 0.15 E=D+P/2 X=128+60*COS(D) Y=30+20*COS(D) S=128+60*COS(E) T=160+20*SIN(E) Die Zeit der Homecomputer 105 110 120 C=INT(15*RND(1)) LINE(X,Y)-(S,T),C NEXT D Natürlich sind die beiden Beispiele auch in der Dateisammlung der Buch-DVD enthalten. Sie finden diese unter Software zum Buch\Kap04\MSX. Um eine Datei zu laden, muss man zunächst eine virtuelle Diskette einbinden. Das kann ein Image oder ein Verzeichnis sein. Sie wählen es über folgenden Menüpunkt aus: File 폷 Diskettenlaufwerk B 폷 Directory einfügen, beispielsweise so: C:\temp\MSX. Dadurch wird das Verzeichnis unten in die Menüliste eingefügt. Abbildung 4.14 Die MSX-Diskette (C:\temp\MSX) ist eingehängt und kann aktiviert werden. Um die Diskette zu aktivieren, muss sie erst im Menü angeklickt werden. Neu aktivieren muss man sie ebenfalls, wenn man die Datei unter Windows editiert hat. Danach kann man eine Datei von dieser Diskette laden, z. B.: LOAD "b:mbasic01.txt" Ob die Datei geladen wurde, lässt sich gut mit dem Befehl LIST prüfen, der die Programmzeilen anzeigt, die sich gerade im Hauptspeicher befinden. Bereits beim MSX-Rechner gab es eine ganze Reihe von Shortcuts, die die Bedienung wesentlich erleichterten. Auch der Emulator BlueMSX kennt solche Kurztasten, es gibt sogar einen Editor, um selbst Shortcuts zu definieren. Näheres dazu finden Sie auf den Hilfeseiten. 167 4.3 Von Äpfeln und Brotkästen Eine gute MSX-Handbuchsammlung mit einer MSX-BASIC-Anleitung hält die Konami-Seite bereit: http://www.konamiman.com/msx/msx-e.html#msx2th. Wer die spielerischen Qualitäten eines MSX-Rechners noch kennenlernen möchte, findet auf der Buch-DVD zwei Spiele, die sich als Cartridge in den Rechner laden lassen: File 폷 Cartridge-Slot1 폷 Einfügen. Durch das Auswählen der gewünschten ROM-Datei wird die Cartridge sozusagen in den Rechner gesteckt. Die Steckplätze waren von oben zugänglich. Nach dem Aktivieren wird der Rechner neu gestartet und bootet von der Games-Cartridge. Neben Spielen gab es auch einiges an Anwendersoftware in Form von Cartridges zu kaufen. Man entfernt die Cartridge aus dem virtuellen Steckplatz, um das Spiel zu deaktivieren: File 폷 Cartridge-Slot1 폷 Auswurf. Der MSX-Standard hatte den Vorteil, dass er nach entsprechenden Erweiterungen ein echtes Betriebssystem unterstützte, nämlich CP/M. Leider hat er in Europa nie das Interesse erreicht, das ihm in Asien zuteil wurde. »Ich denke, da Kinder scheinbar die Welt in ihren Köpfen konstruieren müssen, um Menschen zu werden, müssen Menschen von Natur aus Konstrukteure sein.« »Computer sind das beste Konstruktionswerkzeug, das wir uns je haben einfallen lassen, außerhalb unseres Gehirns.« – Alan Kay 4.3.2 Der C64 – der König der Heimcomputer Mit über zehn Millionen verkauften Exemplaren war der C64 der erfolgreichste Heimcomputer. Quelle: http://de.academic.ru 4 Abbildung 4.15 168 Der Commodore C64 Homecomputer Die Zeit der Homecomputer Die Hardware war – wie bei Heimcomputern üblich – in einem etwas höheren Tastaturgehäuse untergebracht (scherzhaft Brotkasten getauft). Da war einmal der MOS 6510A von Motorola als 8-Bit-Prozessor und mit einem Custom Chip für die Grafik (VIC) und den Sound (SID), außerdem 64 KB RAM sowie etlichen Anschlussmöglichkeiten wie dem Monitorausgang und einem entsprechenden Monitor im Zubehörprogramm. Aber wie von jedem anderen Heimcomputer durfte man auch von diesem erwarten, dass er über den HF-Ausgang an den heimischen Fernseher angeschlossen werden konnte. Der C64 hatte ein 8-KB-ROM-BIOS, das seine Komponenten – Tastatur, serielle IEC-Schnittstelle für Diskettenlaufwerke und Drucker, Kassetteninterface und Videoausgabe – initialisierte und als Kanäle den Anwendungen und dem ebenfalls enthaltenen 8-KB-ROM-BASIC zur Verfügung stellte. Trotz der heute unvorstellbar geringen Ressourcen realisierte man erstaunliche Anwendungen, natürlich insbesondere im Bereich Spiele. Die ersten Computerspiele Erst mit den Homecomputern kam die große Lust am Computerspiel auf. Die Informatiker an den Großrechnern und den Minirechnern, wie dem PDP, hatten zwar vereinzelt so etwas wie Computerspiele entwickelt – Pong war beispielsweise eines dieser Spiele –, aber das waren teilweise nur Versuche im Rahmen von Forschungsaufträgen. Wenige Jahre später gab es Spielkonsolen, die in Gasthäusern und ersten Spielsalons aufgestellt wurden. Genau diese Spiele wollten die Homecomputer-Besitzer nun zu Hause spielen. Die Lust am Programmieren kam dazu, und die Zahl der Computerspiele explodierte regelrecht. Was mit den Heimcomputern begann, wurde ein Riesengeschäft. Die Programmierung erforderte selbst mit der Sprache BASIC eine ganze Reihe Tricks und Kniffe, um brauchbare Ergebnisse zu erzielen. So entstand der Begriff des Spaghetticodes für verächtlich belächelten Programmierstil. Er war weniger, wie man vielleicht glauben könnte, das Ergebnis fehlender Programmierkenntnisse, sondern der Wunsch, Speicherplatz zu sparen – auch Formatierung kostet Bytes. Außerdem sollte der Quellcode unleserlich gemacht werden, insbesondere, weil Heimcomputer nur Interpreter besaßen, um selbstgeschriebene Programme auszuführen. Sie wurden als Quellcode weitergegeben und hatten keinerlei Schutzmöglichkeiten. Es bleibt zu erwähnen, dass die Verschlüsselung via Spaghetticode natürlich nicht sehr wirkungsvoll war. 169 4.3 4 Von Äpfeln und Brotkästen Praxis I: Den C64 simulieren Viele der älteren Leser haben gewiss einmal einen C64 besessen und würden gerne noch einmal einen Blick zurückwerfen auf das leicht trübe Bild von damals. Andere waren damals vielleicht noch zu jung, um einen Homecomputer zu kaufen, oder möglicherweise noch gar nicht geboren. Für all diese Leser gibt es inzwischen die Möglichkeit, den C64 auf den modernen Flachbildschirm ihres Notebooks zu zaubern. Das Internet hält zahlreiche Emulationen des C64 bereit. Um nur eine Webseite zu nennen: http://www.c64games.de/phpseiten/emulatoren.php. Natürlich finden Sie auch auf der Buch-DVD entsprechende Programme: Software zum Buch\Kap04\C64\WinVICE-1.21. Der Emulator für den C64 heißt x64.exe. Achtung Beim Einsatz der Emulatoren kann es zu Störungen in der PC-Grafikdarstellung und der Soundausgabe kommen. Bei meinen Versuchen waren die Störungen zeitlich begrenzt und insgesamt zu verschmerzen. Klicken Sie doppelt auf die Datei x64.exe, um die Emulation zu starten. Ein hellblauer Dialog wird geöffnet, der den blauen Dialog des C64 enthält. Er erinnert an den Dialog der MSX-Rechners, den wir bereits kennen (siehe Abbildung 4.13). Abbildung 4.16 170 Der Commodore 64-Emulator in Aktion Die Zeit der Homecomputer Mit (Alt)+(¢) lässt sich zum Vollbild-Modus und wieder zurück schalten. Wenn wir schon bei den Tasten sind: (ª)+(Pos1) (nicht (Pos1) des Nummernblocks) löscht den Monitor, und jede Steuertaste, die innerhalb von Anführungszeichen gedrückt wird, wandelt der C64 in Sonderzeichen um, die genau das im Programm bewirken, was man mit den Steuertasten bei der Bedienung auslöst. Außerdem ist zu beachten, dass C64-BASIC üblicherweise nur Großbuchstaben nutzt. Die Hochstelltaste erzeugt bei verschiedenen Tasten Sonderzeichen, die im Programm Fehler verursachen. Versuchen wir es zunächst einmal ganz einfach: PRINT "More Coding for Fun!" Nach dem Drücken der (¢)-Taste wird die Zeile sofort interpretiert und ausgeführt. Der Dialog sollte nun in etwa so aussehen wie in Abbildung 4.16. Das soll uns fürs Erste einmal genügen. Mehr dazu gibt es im Praxisteil III. Die Firma »Commodore« Der Name der Firma war eigentlich Commodore Business Machines International (CBM). Sie wurde 1954 vom polnischstämmigen Amerikaner Jack Tramiel5 (eigentlich: Idek Tramielski) in Toronto, Kanada gegründet. Nach seiner Befreiung durch die Amerikaner aus dem KZ lernte er bei der US Army so etwas wie Büromaschinenmechaniker. Nachdem er 1952 aus der Army ausgetreten war, arbeitete er in diesem Beruf weiter und eröffnete einen entsprechenden Laden in der Bronx. Er reparierte in der Hauptsache Schreibmaschinen, als er die CBM in Kanada gründete, weil dies wirtschaftlich interessanter war. 1962 ging er bereits an die Börse. Ab den 70er Jahren stellte CBM Taschenrechner her und war schließlich durch die Übernahme der Firma MOS Technologies, einem Prozessorhersteller, in der Lage, erste Mikrocomputer herzustellen. Das war zunächst 1977 der PET 20016, der VC20 und schließlich der C64. Der PET 2001 bestand aus einer Tastatur, die mehr an einen Tischrechner oder eine Kaufhauskasse erinnerte als an eine Schreibmaschinentastatur, einem integrierten Rekorder und einem fest aufsitzenden Monitor, was ihm viel Kritik zur schlechten Ergonomie einbrachte. Trotzdem war er der erste Rechner, der weltweit im normalen Handel für jedermann erhältlich war. In Deutschland kostete er bei Quelle 2.999,– DM. Er war auch der erste Rechner, der die Aufschrift »Personal Computer« trug. Mit dem PET deutete sich schon vor der eigentlichen Zeit des Heimcomputers an, dass sich der Elektronenrechner aufmachte, zu einem Alltagsgegenstand zu werden. Auch vom PET gibt es einen Emulator, der sich auf der Buch-DVD befindet: Software zum Buch\Kap04\C64\WinVice-1.21\xpet.exe. 5 Idek Tramielski erblickte am 13. Dezember 1928 in ód das Licht der Welt. 6 PET steht für Personal Electronic Transactor. 171 4.3 Von Äpfeln und Brotkästen © Tomislav Medak; www.google.de 4 Abbildung 4.17 Der PET 2001 Am 13. Januar 1984 verließ Tramiel die Firma CBM, weil er sich mit dem Hauptinvestor Irving Gould überworfen hatte. Die verdienten Millionen versetzten ihn in die Lage, die Firma ATARI Inc. zu kaufen, die zwar erst 1972 gegründet worden war, sich jedoch bald zum führenden Anbieter von Spielhallenkonsolen entwickelt hatte. Tramiel richtete die Produktpalette in Richtung hochwertige Heimcomputer aus. Die eingefleischte Fangemeinde dieser ST genannten Computerreihe war jedoch nicht groß genug, um den Commodore-Amgia-Freunden Paroli zu bieten. Trotz zahlreicher Anwendungen im Bereich Musikszene und Desktop-Publishing blieben die Absatzzahlen zu klein, um den Bestand der Firma auf Dauer zu sichern. Am 30. Juli 1996 wurde Atari vom Festplattenhersteller JTS Corp. übernommen. Am 29. April 1994 ging Commodore in Konkurs. Der Markenname wird allerdings noch bis heute genutzt. Tramiel, der Atari bereits mit seinen Söhnen gemeinsam geführt hatte, zog sich endgültig aus dem Computergeschäft zurück. Fragte man Jack Tramiel, wie er auf den Namen Commodore für seine erste Firma gekommen war, erzählte er immer folgende Geschichte: »Ich war in Sachen Schreibmaschinen in Berlin unterwegs. Es war die erste Zeit des Wirtschaftsaufschwungs und mich beeindruckten vor allem die großen Autos, die zwar noch selten vorbeifuhren, aber deshalb nicht weniger Eindruck machten. Hier gab es den Opel Admiral, den Kapitän und so weiter. 172 Die Zeit der Homecomputer Aber ich wollte einen amerikanischen Rang, da fuhr ein Hudson Commodore vorbei, der in Detroit ab 1941 gebaut wurde. Und ein Commodore ist bei der Army so was wie ein Admiral. Nun wusste ich, meine Firma würde Commodore heißen.« 1976 hatte CBM finanzielle Probleme, schaffte es aber trotzdem, die Firma MOS Technologies zu übernehmen, die später die Prozessoren für Tramiels Rechner liefern konnte. Im selben Jahr wollte er eine weitere Firma kaufen, diese hieß Apple. Man wurde sich nicht einig, Tramiel bot Jobs angeblich 20.000 $ zu wenig. Die Computergeschichte wäre ganz anders verlaufen, hätte Tramiel nicht so knallhart verhandelt ... Praxis II: C64-Spiele simulieren Wie das damals alles war, kann man sich heute mit Hilfe des C64-Simulators ansehen. Mit der C64-Emulation kann man nicht nur programmieren, sondern auch die alten Spiele noch einmal spielen. Eine Liste der C64-Spiele gibt es bei Wikipedia: http://de.wikipedia.org/wiki/Liste_bekannter_C64-Spiele. Viele der alten Spiele findet man auf C64-Seiten im Internet. Die bekanntesten Spiele für den C64 waren in Deutschland: 왘 Pac Man, der absolute Klassiker, ein Geschicklichkeitsspiel von Atarisoft/ Namco aus dem Jahre 1983 왘 Defender of the Crown, Strategiespiel und Amigaklassiker von Cinemaware aus dem Jahre 1987 왘 Maniac Mansion, erschien 1987 als Point-and-Click-Adventure aus der Softwareschmiede Lucasfilm Games 왘 Summer-/Winter-/Worldgames, eine Sportsimulation von Epyx, 1984 왘 Pinball Construction Set, als Game-Builder speziell für Flipperspiele von Electronic Arts aus dem Jahre 1983 왘 Hanse, eine Wirtschaftssimulation von Ariolasoft aus dem Jahre 1986 Natürlich ist das nur eine recht kleine, aber deshalb leider auch willkürliche Auswahl. Hat man ein solches Spiel aus dem Internet bezogen und entpackt, lässt es sich per Menü in den Rechner laden. Die Menüpunkte sind: File 폷 Autostart disk/ tape image. 173 4.3 4 Von Äpfeln und Brotkästen In Suchen in: wählen Sie das Verzeichnis aus, in dem die Spiele-Datei liegt, und klicken sie an. Mit Attach wird sie geladen. Abbildung 4.18 Die Datei mit dem C64 laden Nachdem das Spiel geladen ist, muss die entsprechende Steuerung aktiviert werden. Die meisten Spiele werden mit Joystick gespielt – nun heißt es also, die Joystick-Steuerung einzurichten. Das gelingt über die Menüpunkte Settings 폷 Joystick settings... Abbildung 4.19 174 Die Tasten als Joystick-Ersatz einrichten Die Zeit der Homecomputer Natürlich lassen sich auch PC-Joysticks nutzen. Falls Sie keinen Joystick besitzen, wählen Sie im Dialogfenster oben ein Keyset aus und konfigurieren es mit den Schaltflächen oberhalb von OK (siehe Abbildung 4.19). Nach Anwahl einer Schaltfläche für die Richtung, z. B. South, drücken Sie die entsprechende Taste auf der Tastatur, und schon ist die Verwendung als Joystick-Taste festgelegt. Danach steht dem Spielerlebnis aus Heimcomputer-Tagen nichts mehr im Wege. Viele der Spiele sind leider reine Ballerspiele von nicht gerade überwältigendem Niveau. Es gibt aber auch zahlreiche anspruchsvolle Spiele, wie z. B. Pirates oder Der Ring der Nibelungen. Abbildung 4.20 Der Ring der Nibelungen Emulationsprogramme für andere Homecomputer Wir haben nun beispielhaft zwei Homecomputer besprochen. Natürlich gibt es viele weitere Geräte, die alle ihre genialen Features hatten und ihre Verehrer gefunden haben. Zu den meisten Maschinen gibt es inzwischen auch sehr gute Emulationsprogramme, mit denen man die Rechner von damals auf dem PC nachempfinden kann. Das Internet bietet die entsprechenden Webseiten dazu. Wer sich näher damit befassen möchte, wird mit Sicherheit sehr schnell fündig werden. Beispielhaft sei hier nur eine Seite erwähnt: http://www.emulatorzone.com/. Für einige dieser Emulatoren ist jedoch die Original-ROM-Software erforderlich, die meist strengen Copyright-Rechten unterliegt. Praxis III: Den C64 in BASIC programmieren Das interne BASIC des C64 ist direkt nach dem Start verfügbar. Gibt man beispielsweise PRINT "More Coding for Fun" 175 4.3 4 Von Äpfeln und Brotkästen ein, wird der Text wie gewünscht einmal ausgegeben. Aber damit geben wir uns als angehende BASIC-Fachleute nicht zufrieden. Bei der Programmierung des C64 ist einiges zu beachten. Weil der Sprachumfang des internen BASIC nicht gerade gewaltig ist, wird vieles über Programmiertricks erreicht. Etliche professionelle Programme wurden gleich in Assembler realisiert, um schnell genug ausgeführt werden zu können. Außerdem sind die wahren Möglichkeiten des kleinen Rechners nur in Assembler wirklich auszureizen. Sollten Schwierigkeiten bei den Zeichensätzen auftreten, so dass die gedrückten Tasten nicht die gewünschten Zeichen bringen, kann das an Einstellungen des Emulators liegen. Mit Settings 폷 Joystick settings... können die Tasten mit Joystick-Befehlen belegt werden, die bewirken, dass andere Zeichen angezeigt werden als bei den Tasten üblich. Insbesondere die Cursortasten sind so vorbelegt, dass man die Joystick-Vorbelegung erst abschalten sollte, bevor man mit dem Programmieren beginnt: Settings 폷 Joystick settings..., Joystick in port #1 und Joystick in port #2 auf None einstellen. Jetzt können wir beginnen, wobei wir Folgendes beachten müssen: Gibt man eine Zeile ohne Zeilennummer ein, wird sie nach dem (¢) direkt ausgeführt. Eine Zeilennummer sorgt dafür, dass die Zeile im Programmspeicher landet und erst ausgeführt wird, nachdem der Befehl RUN eingegeben wurde. Mit der (Esc)Taste kann das laufende Programm unterbrochen werden. Groß- oder Kleinschreibung ist beim Programmcode unerheblich, deshalb wird üblicherweise alles großgeschrieben. Steuerzeichen, also Funktionen, die man über eine Taste aufrufen kann, z. B. (½), können innerhalb von Anführungsstrichen genutzt werden. Invers7 dargestellt, werden sie im Programm wie Tastenklicks ausgeführt. Mit LIST lässt sich ein Programm auflisten, über den Menüpunkt Snapshot 폷 save Snapshot image... kann es mit dem gesamten Speicher gesichert werden. Ein echter C64 speichert natürlich auf seiner Datasette, sprich auf dem Kassettenrekorder. Das hat etwas von den Bändern der Großrechner. Programme werden sequenziell hintereinander auf dem Band abgelegt. Identifizieren kann man sie durch ihren Namen, den man hinter dem Befehl SAVE angibt. Tippt man beispielsweise SAVE »VERSUCH« ein, so meldet der C64: PRESS RECORD & PLAY ON TAPE Über File 폷 Attach Tape Image... kann man einen Namen für die Datei angeben, die das Kassettenband darstellt. Sie erhält die Endung .tap. Über die Schaltfläche Create Image kann man sie anlegen. Mit Attach wird sie angehängt. Nun lässt sich über File 폷 Datasette control 폷 Record das Programm auf Band ablegen. Es dauert etwas, bis die Speicherung durchgeführt ist (genau wie im richtigen Leben). 7 Dunkel auf hellem Grund statt hell auf dunklem Grund. 176 Die Zeit der Homecomputer Lesen lässt sich so eine Datei vom Band über den Befehl LOAD gegebenenfalls mit dem Programmnamen dahinter, ansonsten liest der Rechner das, was er als Nächstes auf dem Band findet. Danach sollte man den Start des Bandes nicht vergessen: File 폷 Datasette control 폷 Start. Rechts unter dem blauen Monitor können Sie an der Tapecontroll erkennen, in welche Richtung gerade gespult wird, ein Bandzählwerk zeigt die Stellung des Bandes an. Doch nun zum Programm. Wie wäre es mit diesem Code: 10 REM LAUFSCHRIFT 20 PRINT " " 30 FOR P = 0 TO 20 40 PRINT " " 50 FOR BA = 0 TO 30 60 PRINT " MORE CODING FOR FUN 70 FOR Z = 1 TO 100 80 NEXT Z 90 NEXT BA 100 PRINT " "; 110 NEXT P 120 GOTO 20 "; Die verwendeten Steuersequenzen befinden sich jeweils hinter einem ": (ª)+(Pos1) (½) (æ) Genaueres zu den Zeichensätzen finden Sie unter: http://www.c64-wiki.de/ index.php/Zeichen. Erläuterungen: Zunächst wird per Steuerzeichen der Bildschirm entleert. Jetzt kommt eine zählende Schleife von 0 bis 20. Das nächste Steuerzeichen geht eine Zeile nach unten. Nun folgen die Schritte des Textes – mit Hilfe der zählenden Schleife – bis 30. PRINT " MORE CODING FOR FUN "; Das Semikolon am Zeilenende von PRINT bewirkt, dass das nächste PRINT noch einmal in die gleiche Zeile geschrieben wird. 177 4.3 4 Von Äpfeln und Brotkästen Die nächste zählende Schleife dient als Bremse, damit das Ganze nicht zu rasch abläuft. Wenn man alles eingetippt hat, startet man mit dem Befehl RUN <return>. Nun beginnt das Programm, vorausgesetzt man hat keinen Fehler gemacht, endlos durchzulaufen (siehe Abbildung 4.21). Mit einem Druck auf die (Esc)-Taste kann man es jedoch jederzeit unterbrechen. Hat man einen Fehler in einer Zeile entdeckt, so gibt man die Zeile einfach wieder neu ein. Der C64 ersetzt sie im Programmspeicher durch die neue Zeile. Abbildung 4.21 More Fun mit dem C64 Der Code des Programms befindet sich natürlich auch auf der DVD: als Snapshot in Software zum Buch\Kap04\C64\Programm\fun.vsf, als Kassette in Software zum Buch\Kap04\C64\Programm\fun.tap. Eine Datei wie WinVICE-1.21 sollte man zuvor auf die Festplatte kopieren. Die Snapshot/Tap-Datei kann man im Verzeichnis WinVICE-1.21\C64\ ablegen. In den Speicher des C64 bekommt man sie über Snapshot 폷 Load quicksnapshot image. Wie kann man das Programm abändern, um zu erreichen, dass die Schrift ununterbrochen durchläuft? Die Lösung befindet sich auf der Buch-DVD als Snapshot in Software zum Buch\ Kap04\C64\Programm\fun2.vsf, als Kassette in Software zum Buch\Kap04\C64\ Programm\fun2.tap. 178 Der IBM-PC: besser spät als nie Leider haben wir damit noch lange kein Spiel wie Boulderdash für den C64 programmiert. Wir konnten jedoch etwas von dem Spaß erahnen, den es gemacht haben muss, den Brotkasten »zum Leben zu erwecken«. Abbildung 4.22 Boulderdash Wer jedoch das Thema weiter vertiefen möchte, findet sehr umfangreiche und gute Seiten zum Thema C64 im Internet. »Es ist ziemlich unfair, von einer frisch aus der Fabrik kommenden Maschine zu erwarten, dass sie mit einem Akademiker konkurrieren könne.« – Alan Turing 4.4 Der IBM-PC: besser spät als nie Als IBM seinen PC präsentierte, war die Fachwelt bereits der Meinung, der Gigant habe den Anschluss verpasst, er würde niemals mit einem Mikrorechner auf den Markt kommen und stattdessen lieber weiter Großrechner bauen. Man sollte sich täuschen. Das Geniale am IBM-PC war seine Erweiterbarkeit mit Hilfe von Steckkarten. Die hatte es auch schon bei Vorgängermodellen gegeben, wie beispielsweise dem Apple II (siehe Abbildung 4.23) mit seinen acht Steckplätzen. Der PC besaß zwar in seiner ersten Ausführung nur fünf Steckplätze, hatte aber einen Vorteil, den der Apple-Rechner nicht hatte: Der Rechner war aus genormten Standardbautei- 179 4.4 Von Äpfeln und Brotkästen len aufgebaut und hatte genau definierte Schnittstellen, so dass jede Firma für die vorhandenen Steckplätze Karten herstellen konnte. Quelle: www.allaboutapple.com 4 Abbildung 4.23 Apple II geöffnet Allerdings stellte sich bald heraus, dass es nicht nur möglich war, Steckkarten für diesen Rechner herzustellen. Wenn man wollte, konnte man gleich den ganzen Rechner nachbauen. Insbesondere die jungen Elektronikfirmen in Asien erkannten ihre Chancen. Es gab bald Nachbauten aus Japan, Taiwan und Hongkong. Von IBM wurden die Rechner einfach mit IBM PC-convertible bezeichnet. In Europa nannte man sie PC-Kompatible oder PC-Clone. Das Einzige, was von IBM nicht freigegeben wurde, war das sogenannte BIOS, das auf einem SRAM-Baustein8 abgespeichert ist und zum Starten für die Konfiguration und die Ansteuerung der Hardware vom Betriebssystem dient. Doch auch hier kamen Fremdhersteller dazu. Da zahlreichen PC-Clone-Produzenten BIOS-Programme benötigten, spezialisierten sich Softwarefirmen auf diese hardwarenahe Software und lieferten im Auftrag oder für ganze Baureihen spezielle BIOS-Versionen. 8 Anfangs wurden sie oft als CMOS-Bausteine bezeichnet, obwohl das eine allgemeine Bezeichnung für viele verschiedene IC s einer bestimmten Herstellungsart ist. Viele Prozessoren, Speicherbausteine und Sensorelemente sind CMOS-Bausteine. 180 Noch mehr Spaß: Atari, Amiga und Co. Die bekanntesten BIOS-Hersteller waren: 왘 AWARD 왘 Phoenix 왘 A.M.I. Das BIOS eines Rechners war nicht selten Grund für Probleme. Eine Webseite, die sich intensiv mit dem Thema BIOS auseinandersetzt, findet man unter http:// www.bios-info.de/. Eine HTML-Version des sogenannten BIOS-Kompendiums findet man auf der DVD unter \Bios-Kompendium\bioshtm.zip. Die PC-Nachbauten waren oft wesentlich billiger als das Original von IBM und trugen einen Großteil zu der immensen Verbreitung des Rechnermodells bei. Der Aufbau des Apple II war dagegen lange Verschlusssache, und so gab es auch kaum Nachbauten – und der PC verdrängte den Apple II vom Markt. Die PC-Clone dagegen eroberten erst die Büros in den Firmen und Zuhause und später Kinder- und Wohnzimmer. Heute ist im Grunde jeder PC – ob kleines Netbook oder hochgezüchtete Workstation – nur eine Weiterentwicklung des ersten IBM-PCs. Sie haben, wie kaum ein technisches Gerät vorher, unsere Welt mitgestaltet und verändert. 4.5 Noch mehr Spaß: Atari, Amiga und Co. Bevor wir uns im nächsten Kapitel mit den modernen Rechnern befassen, wollen wir noch einmal einen Blick zurückwerfen auf dessen »Vorfahren« und andere Verwandte. Hier wäre zunächst einmal die von Jack Tramiel aus der Taufe gehobene Atari ST-Serie zu erwähnen. Sie hatte als erste Homecomputer von Haus aus eine grafische Oberfläche. Es war GEM unter dem Betriebssystem TOS. Beides war sehr eng miteinander verzahnt, so dass man zur Bedienung nicht unbedingt auf die Textoberfläche wechseln musste. Die Atari ST-Reihe besaß eine MIDI-Schnittstelle, daher war sie in der professionellen Musikproduktion sehr beliebt. Unter anderem hat Mike Oldfield einen Atari 1040ST mit dem Programm »C-LAB Notator« für einige seiner Songs genutzt. Der Atari-Monitor SM124 hatte für die damalige Zeit eine sehr gute Auflösung, daher konnte sich diese Rechnerreihe auch im Layout und Designbereich etablieren. 181 4.5 4 Von Äpfeln und Brotkästen Interessant war ebenfalls, dass die Diskettenformate dem DOS-Format nahekamen und man den Atari so zur Übertragung von Dateien nutzen konnte. Zahlreiche Emulatoren, wie ein Apple-Emulator, ein Z80- und ein CP/M-Emulator, nutzten diese Hardwareeigenschaft aus, und so wurde er auch als Terminalersatz bei Großrechnern und Minicomputern verwendet. Abbildung 4.24 Die Steem-Atari ST-Simulation Einen Emulator finden Sie im Netz unter http://www.bunkahle.com/Aktuelles/ AtariST.html und http://www.aep-emu.de/emus11.html sowie auf der Buch-DVD im Verzeichnis Software zum Buch\Kap04\Atari. Commodore brachte als Antwort auf die erfolgreichen Atari ST-Modelle den Amiga 1000. Dieser wurde nicht etwa selbst entwickelt, sondern man übernahm die Herstellerfirma in einer Art Übernahmekrimi. Denn die Firma Amiga Corp. war von Jay Miner 1981 unter dem Namen Hi Toro gegründet worden, nachdem er Atari verlassen hatte. Ursprünglich wollte er nur eine neue Spielkonsole entwickeln. Mit der Zeit wurde daraus jedoch das Konzept zu einem sehr leistungsstarken Computer. Atari gehörte damals zu Warner Communications, die auch die »externe« Entwicklung des Amiga bezahlte, um damit den überholten Atari XL abzulösen. Warner Communications trennte sich von Atari, das Jack Tramiel am 2. Juli 1984 kaufte, nachdem er Commodore verlassen hatte. Damit war allerdings nicht die Firma Amiga Corp. verbunden, die Tramiel natürlich gerne auch übernommen hätte. Er bot den Aktionären 0,98 $ pro Anteilsschein. Irving Gould, der Chef von Commodore, bot kurz vor Auslaufen der Bieterfrist 4,25 $ und bekam natürlich Amiga. Aber das Angebot war so großzügig bemessen, dass Commodore sich dabei fast finanziell ruinierte. 182 Noch mehr Spaß: Atari, Amiga und Co. Der Amiga allerdings wurde ein finanzieller Erfolg und eine Computerlegende. Im Handel war er ab dem 23. Juli 1985 bis 1996, als ESCOM das letzte AmigaModell herausbrachte, den Amiga A4000T. Das Wegweisende an diesem Rechner war seine enorme Leistungsfähigkeit: Sein Betriebssystem war multitaskingfähig und ähnelte damit UNIX oder Linux, und er besaß multimediale Fähigkeiten, die zum großen Teil auf den sogenannten Custom Chips beruhten. Diese kann man sich als eine Art Coprozessoren denken, die auf die jeweilige Aufgabe spezialisiert waren. Diese Chips hatten fast alle weibliche Namen als Bezeichnung. So, wie Amiga Spanisch ist und »Freundin« heißt, gab es auch noch Paula: den Soundchip, der außerdem für die Interruptsteuerung zuständig ist und den Diskettenkontroller darstellt 왘 Denise: den Grafikkontrollchip 왘 Agnus: einen Tausendsassa wie Paula, DMA-Konroller, Timer und Blitter9, aber auch Grafikcoprozessor. © Kaiiv; http://de.wikipedia.org 왘 Abbildung 4.25 Commodore Amiga A1000 9 Dabei handelt es sich um einen Grafikbeschleuniger, er kopiert und verschiebt ganze Bildbereiche. 183 4.5 Von Äpfeln und Brotkästen Es gibt sehr wohl einige AMIGA-Emulatoren, die man sich auch legal und kostenlos im Internet downloaden kann. Allerdings benötigt man für ihren Betrieb in jedem Fall das sogenannte Kickstart-ROM, also das Original-ROM des AMIGA. Dieses ist urheberrechtlich geschützt und kann deshalb auch nicht auf der BuchDVD beigelegt werden. Wer einen AMIGA besitzt, kann den Inhalt des ROMs per Software in einem Image ablegen und damit einen Emulator betreiben. Aber wer einen Amiga hat, braucht auch keinen Emulator zu verwenden. Außerdem gibt es die Möglichkeit, ROM-Versionen zu kaufen. Ein weiterer sehr beachtlicher Homecomputer war der Acorn Archimedes (siehe Abbildung 4.27). Mit ihm hielt die RISC-Technologie Einzug in den Homecomputer-Markt. RISC steht für Reduced Instruction Set Computer. Im Gegensatz zum CISC-Prozessor versteht man darunter einen Prozessor, der einen kleinen Satz einfacher Befehle hat, die jedoch enorm rasch ausgeführt werden können. Der Acorn Archimedes war daher damals achtmal schneller als ein Amiga und zehnmal so schnell wie ein IBM-PC. Entwickelt wurde er von der englischen Firma Acorn, die ursprünglich CPU hieß und von Hermann Hauser und Chris Curry, einem ehemaligen Mitarbeiter von Clive Sinclair, 1978 gegründet worden war. Sinclair baute 1980 den damals billigsten Heimcomputer, den ZX80 (siehe Abbildung 4.26). Acorn stand erst in direkter Konkurrenz zur Firma Sinclair, bis sie ihren eigenen Prozessor entwickelten. Aus Enttäuschung über die Leistungsschwächen der erhältlichen Prozessoren entwickelte man einen eigenen Prozessor nach dem neuartigen RISC-Prinzip und landete damit einen Volltreffer. Quelle: http://ksv.bytemap.de 4 Abbildung 4.26 184 Der Sinclair ZX80 Lesen Sie weiter Quelle: http://old-school-micro.blogspot.com Und er wird in verbesserter Form bis heute gebaut. Denn Acorn gründete 1990 mit Apple zusammen die Firma ARM Limited, die noch heute Prozessoren für verschiedene Handys und Kleincomputer lizenziert und liefert. Auch zu AcornRechnern gibt es Emulatoren für den PC: http://b-em.bbcmicro.com/arculator/ download.html. Für diesen Emulator benötigt man ebenfalls die ROMs der Originalmaschine. Abbildung 4.27 Der Acorn Archimedes A3020 Mit all diesen Programmen ist es leicht möglich, eine Zeitreise in die Welt der Heimcomputer zu unternehmen. Wer dagegen sehen möchte, wie so ein Emulator aufgebaut ist, kann sich den folgenden ansehen, einen sehr interessanten Emulator für den C64: den jsc64 von Tim de Koning. Er ist Freeware und ganz in JavaScript geschrieben, so dass man sich relativ leicht in dem Code zurechtfindet. Der Sourcecode liegt im Netz unter http://github.com/Kingsquare/jsc64. »Computer sind eigentlich nicht sonderlich beliebt, weil sie viel Ärger machen. Dabei können wir froh sein, dass sie sich nicht wirklich wehren können.« – Anonymus 4.6 Lesen Sie weiter Webseiten zum Kapitel URL Beschreibung http://simh.trailing-edge.com/ Computer-history-Simulations-Projekt http://simh.trailing-edge.com/links.html Überblick über Simulatoren 185 4.6 4 Von Äpfeln und Brotkästen URL Beschreibung http://simh.trailing-edge.com/ software.html Software für den Simh-Simulator http://simh.trailing-edge.com/pdf/ all_docs.html Simh-Dokumentation http://www.mcmanis.com/chuck/ computers/vaxen/ VAX-Seite in Englisch http://www.openvmshobbyist.com/ news.php Open VMS http://www.scribd.com/doc/19157112/ Handbuch-C128 Handbuch des C128 ftp://ftp.netbsd.org/pub/NetBSD/iso/5.0.2/ FTP-Seite: NetBSD für alle denkbaren Rechner ftp://iso.de.netbsd.org/pub/NetBSD/iso/ NetBSD für alle denkbaren Rechner http://www.msx.d4e.co.jp/1chipmsx.html 1 Chip MSX-Rechner (japanisch) http://www.sueddeutsche.de/wirtschaft/ 497/346335/text/ Artikel vom 6.2.2007 über die Beilegung des Apple/Apple-Markennamensstreits http://pom1.sourceforge.net/ Seite zum POM1-Emulator ftp://public.asimov.net/pub/apple_II/ documentation/ riesiges Archiv mit Apple-Emulatoren und Apple-Software http://www.mr-gadget.de/tech-history/ 2008-12-08/vor-40-jahren-praesentiertedoug-engelbart-die-erste-computermaus/ Geschichte der Computermaus http://de.sevenload.com/videos/ n593w7S-Apple-und-Xerox Kurzfilm zur Vorführung des Xerox Alto im November 1979 http://www.digibarn.com/collections/ software/alto/index.html Homepage zum Xeros Alto http://www.basic.msxall.com/ MSX-Seite mit Programmen http://www.lexlechz.at/de/msx.html private MSX-Seite http://fms.komkon.org/MSX/ ausführliche MSX-Dokumentation http://www.samdal.com/spectravideo.htm Spectravideo-Fanseite http://www.atarimagazines.com/creative/ Beitrag zur MSX-Grafik v10n2/204_Simple_screen_graphics_wi.php http://members.chello.nl/r.wiersma19/ index.html#games MSX-Spiele http://www.konamiman.com/msx/ msx-e.html#msx2th MSX-Handbücher 186 Lesen Sie weiter URL Beschreibung http://www.emulator-zone.com/ Emulator-Seite mit zahlreichen Links http://www.kingsquare.nl/jsc64 ein C64-Emulator in JavaScript http://www.homecomputermuseum.de/ doku/man_de.htm Commodore-BASIC-Handbuch http://cbm.6502.org/alternative/c64_de/ c64_de.pdf C64-Handbuch http://www.server3-amiga-island.de/html/ c64_spiele_von_a.html sehr umfangreiche C64-Spieleseite http://www.zock.com/64er/8404/ 0017.html C64-Zeitschrift Literatur zum Kapitel Wozniak, Steve et al.: iWoz: Wie ich den Personal Computer erfand und Apple mitbegründete. Hanser Wirtschaft 2006. 187 4.6 Index .de 438 .NET 276, 281 32 Bit 329 3D-Shooter 367f. 3D-Spiele 387 6-Core-Prozessor 209 A A.M.I. 181 Abakus 32, 37 chinesischer 37 Abenteuerspiel 370, 376 Access 303 Acorn Archimedes 184 Ada (Programmiersprache) 83, 278 Adventure 377, 389 Adventuregame 370, 376 Akkumulator 117 Alexander der Große 49 ALGOL 255, 266, 273 ALGOL 68 256 Amazon 502f. Amazon Web Services 504 AMD 209 AMD Phenom II 197 Ameisen 289 America’s Army 368, 407 Amiga 182 Analog 39 Analoge Rechner 85 Analoguhr 39 Analytische Maschine 80 Andreessen, Marc 455 Antikythera 씮 Maschine von Antikythera AOL 457 Apache 316 API 589 API-Dokumentation 580, 588f. Apple 153, 173, 298, 458, 470 Logo 120 Apple I 153 Apple II 156, 179, 298, 306, 381 Apple iWork.com 504 Apple Lisa 160 Apple Macintosh 161 Apple MobileMe 504 Apple Records 154 Archimedes 396 Arcon 161 Aristander 49 Aristoteles 45f., 554 ARPANET 423, 427f. Ashton-Tate 302 Assembler 150, 241f. Atanasoff-Berry-Rechner 101 Atari 161, 172, 359 Atari ST 181 Atom 544, 554 Atomium 595 Automat 120 AWARD 181 B B (Programmiersprache) 268 Babbage, Charles 80, 100, 203 Backus, John W. 243 Baer, Ralph 359 Baldur's Gate 387 Ballerspiel 366 Ballmer, Steve 487 Bard's Tale 386 BASIC 169, 175f., 259, 274, 281, 289, 315 BBS 443 BCPL 268 Beatles 154 Bell Laboratories 268, 314, 321 Bell, Gordon 339 Berners-Lee, Tim 444f., 452, 458 Betriebssystem 320f., 323f., 327f., 330, 332f., 336, 338, 341, 571, 573 DOS 320, 323f., 326 QNX 340f., 343 Bildschirmschoner 218 Binäres Zahlensystem 27 BIOS 180 597 Index Bit 169, 331 Blue-ray 44 Bob 301 BOINC 221, 230, 232 Borland 273, 311 Börries, Marco 308, 315, 335 Bot Client 214 Botnetz 213 Boulder Dash 179, 381, 390 Breakout 389 Brotkasten 169 Brown, Thomas 71 Browser 452 Browserkrieg 456 Brunsviga 69 Bulletin Board System 씮 BBS bwBASIC 259 C C (Programmiersprache) 268, 274, 314f. C# (Programmiersprache) 269 C++ (Programmiersprache) 268, 274, 276 C64 씮 Commodore C64 Canion, Joseph R. 190 Canonical Ltd. 335 Catacomb 386 CD 42 CDC 6600 204 Cerf, Vinton 427 CERN 216, 232, 445f., 452 Chrome 458, 460 Chrome OS 479 Church, Alonzo 254 Church-Turing-Hypothese 245, 254 CIA 307 Cipher Event 106 Cloud Computing 202, 461, 478, 484, 502, 507 Cloud-Betriebssystem 485 Cloud-Dienste 502 Cobol 110, 266 Coding4fun 175, 277, 283 Colossus 101, 107 Combobox 585 Commodore 161, 170, 182 Commodore C64 161, 168 598 Compaq 189 Compiler 243, 258 Computer 44 analoge 85 Computercluster 211, 503 Conway, John H. 531, 538 COSINE 429 CP/M 321, 327 CPC 127 Cray 205, 211 Cray Jaguar 207, 230 Cray, Seymour 203 Crocker, Steve 424 Crowther, William 376 Custom-Setup-Dialog 588 Cyberkriminelle 478 D da Vinci, Leonardo 61 Dahl, Ole-Johan 268 Daisyworld 505 DARPA 422, 427 DAU 씮 Digital-Analog-Umsetzer dBASE 302 Defender of the Crown 173, 405 Demokrit 554 DENIC 438 Der Ring der Nibelungen 175 Desktop-Virtualisierung 508 Diablo 387, 390 Die 192 Die Siedler 390 Difference Engine 80 Diffie, Whitfield 299 Digital 39 Digital Equipment Corp. 191 Digital-Analog-Umsetzer 43 Digitaluhr 39 DirectX 329 DNS 431, 434 Dodge, Dan 339 Domain 437 Domain Name System 씮 DNS Domaingrabbing 440 Domainname 429 Donkey Kong 367, 389 Doom 367, 386, 388, 390 Index DOS 299, 320f., 323f., 326ff., 332, 443, 454, 466, 570, 577 DOS-Befehle 323 Drucker 169 DSL 44 Dualcore-Prozessor 202 Duke Nukem 3D 386 Dungeon Master 386 Dungeons und Dragons 384 Fortran 243, 266 FreeBSD 316 FreeDOS 264 FreePascal 274 French, Melinda 씮 Gates, Melinda FTP 452 Fulguration 555 Fuzzy-Logik 45 Fuzzy-Set-Theorie 46 E G Echtzeit 386 Echtzeitsystem 338 Eclipse 316, 339 Installation 593 Edison, Thomas Alva 41 EDSAC 101 Egoshooter 388, 413 Eisenhower, Dwight D. 422 Ellison, Larry 307 Emacs 315 E-Mail 315 Emergenz 555 Emulation 468 Emulatoren 175 ENIAC 101, 110, 321 Enigma 119 Enquire 446, 458 Enterprise Java Beans 582 Ethernet 315 Euklid 114 Euklidscher Algorithmus 114 Excel 300 eyeOS 492 Gaia 502, 504 Galilei, Galileo 61 Game of Life 112, 531, 545 Games 169, 173f., 315, 329, 351, 362, 507 Gates, Bill 158, 291, 299, 324f., 346, 478 Gates, Melinda 301 GEM 181, 327f. General Motors 346 Geschicklichkeitsspiel 367, 393 Gesetz vom ausgeschlossenen Dritten 46 GIMP 316, 335ff. Gleiter 537 Glider 537 Gnome 316 GNU 314ff. Gödel, Kurt 246, 254 Gödelscher Unvollständigkeitssatz 253f., 515 Google 458, 479, 486, 502f. Google App Engine 504 gOS 343, 480 Gosling, James 591 GOTO 112, 177 GOTO-Programmierung 255 GPU 225 Graetz, Martin 362 Grafische Oberfläche 181 Grammophon 41 Grid 502 Grid-Computing 216, 503 GUI 325 Gunter's Scale 33 Gunter, Edmund 35 Gygax, Gary 385 F F# (Programmiersprache) 287 Feedly 459 Ferranti 352 Fibonacci-Zahlen 114 Fiorina, Carly 191 Firefox 457f. Firewall 478 Fleißige Biber 252 Flock 460 599 Index H J Hacker 313, 315 Half-Life 388 Hanse 173 Hardware 169, 320, 324, 329, 331f., 360 Hardware-Analysetool 238 Harris, Jim 190 Harry Potter (Spiel) 391 Heisenbergsche Unschärferelation 515 Hercules 130 Hexadezimalsystem 28 Hilbert, David 111, 246 Hinweise zur Nutzung des Buchs 16 Hitachi 46 Homecomputer 161, 168, 170, 313, 359 Hopper, Grace 109, 243, 266 HP 485 HTML 446, 452 Hybrid Mikrokernel 339 Jahr-2000-Problem 329 Jahr-2038-Problem 331 Java 113, 247, 250, 268f., 276, 283, 316, 320, 360, 581f., 584 EE 582 Installation 579 ME 582 SE 582 JDK 582, 590 Deinstallation 594 Dokumentation 588 Hardwarevoraussetzungen 580 Installation 579, 581 Jobs, Steve 153, 324, 484 Joystick 174f. JPC-Projekt 472 JRE 582 Deinstallation 594 Hardwarevoraussetzungen 580 Installation 579 Jurassic Park 391 I IBM 119, 125, 202, 289, 297, 306f., 309, 321, 328, 343 IBM 604 127 IBM 650 127 IBM Mark 1 128 IBM-DOS 298 IBM-PC 179, 298, 321 IC 148, 194, 200 ICANN 437 icloud 488 IMP 424 Indiana Jones 391 Intel 198 Intel Core i7-980X 197 Internet 422, 429 Internet Explorer 301, 455, 457f. Internet Protocol 씮 IP InterNIC 437 Interpreter 258 IP 315, 428 IP-Adresse 429 ISDN 44 ISDN-Karte 443 600 K Kahn, Philippe 311 Kahn, Robert 427 Kalter Krieg 421 KDE 316 Keilschrifttafel Zahlendarstellung 25 Kemeny, John George 259, 281 Kepler, Johannes 67 Kildall, Gary 321, 327 Kline, Charley 425 Knuth, Donald E. 315 Kubric, Stanley 112 Künstliche Intelligenz (KI) 522 Kurtz, Thomas Eugene 259, 281 L Laplace, Pierre-Simon 514 Laplacescher Dämon 514 Lara Croft 391 Lashlee, Hal 303 Index Leibniz, Gottfried Wilhelm 72 Leibniz-Rechner 292 Lemmings 390 Lichtgeschwindigkeit 540 Life 112 Linné, Carl von 45 Linux 289, 314, 316, 321, 329, 331ff., 338ff., 453, 465, 470, 484 VirtualBox installieren 565, 575 Liste 336, 569, 573, 577 Lizenz 585 Localhost 450 Lochkarte 118, 127, 292 Loopback-Device 450 Lotus 306, 309 Lotus Notes 299 Lovelace, Ada 81, 83, 242, 279 Lovelock, James 505 Lucas, Edouard 257 Lynx 453 M Mac OS X 465 VirtualBox installieren 565, 575 Macintosh 씮 Apple Macintosh Mailbox 443 Make-Datei 263 Manchester Mark I 121 Maniac Mansion 173 Märchennetz 527 Mark I 101, 321 Maschine analog 45 digital 45 Maschine von Antikythera 51 Maschinensprache 239 Mathematik 111, 116, 245f., 252 Maus 324, 326, 523, 590 Metaautomaten 549 Metcalfe, Robert 315 Microcode 208 Microsoft 299, 324, 457, 469, 487, 502 Microsoft Azure 504 Microsoft Mouse 301 Microsoft Office 300 Microsoft Research 288, 347 Microsoft Tablet PC 301 Middleware 148 Mikrokernel 338 Mikroprozessor 192 Millenium-Bug 110, 329, 331 MILNET 428 Miner, Bob 307 MINIX 315 Minsky, Marvin Lee 522 MMOG 400 MMORPG 371, 387 Modem 443 Modula 274 Modula-2 274 Monolithischer Kernel 338 Moore, Edward F. 548 Moore-Nachbarschaft 548 Moorhuhn 367, 391 Morland, Samuel 71 Mosaic 455 Mozilla 457 Mozilla 씮 Firefox MSX 162 Multics 321 Multiplayer Games 372 Murto, Bill 190 Muster 537, 555, 557 MySQL 316 Mystery House 381 N Napier, John 34 Napiersche Rechenstäbe 34 Napoleon Bonaparte 394f., 514 NASA 423 NCCF.GOV 210 Nelson, Horatio 32 Netscape 316, 456 Netscape Navigator 456 NetWare 312 Neumann, John von 79, 111, 532 Neumann-Automat 532 Neuron 523, 527, 529 Neuronales Netz 520, 530 Neverwinter Nights 387 Newton, Isaac 45, 514 Nexus 454 Night Driver 389 601 Index Nim 352 Nimrod 352 Novell 312 NSTL 330 Nvidia 226 Nygaard, Kristen 268 O Oates, Ed 307 Oberon 274 Objektorientierte Programmierung 268 OLED 507 Open Source 313 Meilensteine 315 OpenNIC 440 OpenOffice.org 335 Opera 458 Oracle 307, 335, 470 OS/2 298, 328, 343 Oughtred, William 36 OXO 357, 389 P Pac Man 173 Paketvermittlung 424 Panzer General 368, 390 Parallelrechner 203 Parallels Desktop 470 PARC 324 Partridge, Seth 36 Pascal (Programmiersprache) 273, 279, 311 Pascal, Blaise 70 Pascaline 66, 70 PC 189, 203, 315 PC-DOS 299 PDA 582 PDP-1 362 Penrose, Roger 516 Pentium-FDIV-Bug 198 Pentium-Prozessor 199 Perceptron 522, 525 Perl 274, 315 Phoenix 181 Phonograph 41 602 PHP 316 PHP5 492 Pianola 292 Pinball 367 Pinball Construction Set 173 Ping 433 Pirates 175 PL/1 266, 321, 545 Platon 46 Pokémon 390 Pong 169, 359f., 389 Pools of Radiance 387 POSIX-Kalender 331 Postgres 316 PowerPoint 299 Presario 191 Primzahlen 552 Prince of Persia 390 Principia Mathematica 246 PRINT 175, 177 Programmiersprache deklarative 278 imperative 267 prozedurale 267 Prolog 278 Prozessor 117, 169, 193, 239, 332 Python 269, 274, 280, 316 Q Q-Bert 367, 389 Qbits 518 Qemu 470 QNX 338ff., 343 Quadcore-Prozessor 202 Quake 388 Quantencomputer 517 Quantenmechanik 517 Quantentheorie 45 Quantenverschränkung 517 R Räderuhr 58 Radó, Tibor 252 Ratliff, Wayne 304 Raycasting 386f. Index Raytracing 387 RDF 458 Rechenhilfe 24 Rechenmaschine Abakus 32 Gebetsschnur 32 Rechenschieber 32 Rosenkranz 30 von Schickard 67 Rechenschieber 32, 35f. Rechenstab 35 Rechnende Räume 560 Registrierkasse 78 REM 177 RFC 424 Richards, Martin 268 Ritchie, Dennis 268, 321 Rogue-like-Spiel 380 Rollenspiel 369 Römische Ziffern 27 Rosenblatt, Frank 521 Rosenkranz 30 Rubik's Cube 394 Ruby 269, 274, 283, 316 Rückkopplung 549 Russell, Bertrand 246 Russell, Stephen 362 S SaaS 503 Safari 458 Sale, Tony 107 SAP 295 Schallplattenspieler 41 Schickard, Wilhelm 35, 67 Schlüsselfernschreibmaschine SZ42 106 Schneider 161 Second Life 369 Semantisches Web 458 SETI 220 Setup 585 Sexagesimalsystem 25 Shareware 313 Shuttleworth, Mark 333, 335, 508 Silverberg, Brad 457 Silverman, Brian 550 SimCity 368, 373, 390 Simula 268f. Simulation 468 EDSAC 357ff. ENIAC 113ff. Sinclair 161, 184 Single Sign-on 502 Single-Sign-on-Authentifizierung 503 Singularity 347 SM124 181 Smalltalk 269, 326f. Smalltalk 80 269 Snake 384, 389 Software 291 Software AG 294 Sokoban 396 Sonnenfinsternis simulieren 87 Sony 161 Spacewar 362, 367, 389 Spaghetticode 169 Spectravideo 161 Spiele 169, 173f., 315, 329, 351, 362, 507 mit vollständiger Information 359 Spielersprache 400 Spieltheorie 112 Spore 409 Sportspiel 371, 400 Sprossenrad 73 Sputnikschock 421 Squeak 269 Staffelwalze 73 Stallman, Richard 314f. Star Division 308 Star Trek 391 Star Wars 391 StarMoney 310 StarOffice 309, 316, 335 Stauffenberg, Claus Schenk Graf von 108 Stellarium 62 Sternenhimmel simulieren 62 Storytelling-RPG 387 Strategiespiel 368 Stroustrup, Bjarne 268f., 276 Summer-/Winter-/Worldgames 173 Sun 203, 307, 309, 316, 335, 470 Superautomat 76 Supercomputer 204, 211, 229 Super-Mario 367, 390 Superposition 518 Systems /360 129 603 Index T V Tandem Computers 191 Tanenbaum, Andrew 315, 338 Tangram 394f. Taschenrechner 78 Tate, George 303 TCP 315, 427f. Teller, Edward 532 Tetris 390 TeX 315 Thompson, Ken 268, 314, 321 Tic-Tac-Toe 357 Tomb Raider 390f. Top-Level-Domain 435 Tortendiagramm 39 Torvalds, Linus 316, 329, 332, 338 TOS 181 Tramiel, Jack 171, 181 Transmission Control Protocol 씮 TCP Tron 320, 384, 389 Tukey, John Wilder 292 TurboPascal 273, 311 Turing Award 326 Turing, Alan Mathison 79, 119, 245f., 255 Turingmaschine 120, 245ff., 250, 252ff., 288f., 559 Turingtest 82, 246, 290 Turingvollständig 253 Türme von Hanoi 257 VAX 148 Vektorrechner 203f. Verdisoft 310 Vierspeziesrechner 67 Virenscanner 478 Virtual PC 469f. VirtualBox 327, 336, 470 Deinstallation 577 Installation 565 Virtualisierung 465, 565 VM 332 Virtueller Maschinen-Monitor 씮 VMM Visual Basic 281 VM VirtualBox 327, 336, 565f., 569f., 577 virtuelle Maschine 579 Xen 332 VMM 470 VMware 469f., 575 VMware vSphere 504 Von Neumann, John 씮 Neumann, John von Von-Neumann-Architektur 112, 292 Von-Neumann-Nachbarschaft 548 Von-Neumann-Regel 535 U U-Bahn von Sendai 46 Ubuntu 333, 466, 508 Ubuntu Enterprice Cloud 504 Ubuntu One 504, 508 Uhr astronomische 58 Ulam, Stanislaw 532 Ultima Underworld I 387 UNIVAC 118 UNIX 268, 314f., 321, 330, 332, 338 Unreal 388, 413 Unscharfe Mengenlehre 46 URL 430 604 W Wasserstoffbombe 532 WATCOM 264 Watson, Andrew 505 Watson, Thomas J. 125, 291, 297 Wayne, Ronald 153 Webarchiv 485 WebOS 485 Webstuhl 292 Weltformel 515 Wii 371, 394 Wiitanen, Martin 362 Williams-Kilburn-Röhre 121 Window Maker 484 Windowmanager 484 Windows 299, 324, 454, 457, 478, 488 VirtualBox installieren 565 Windows 2000 331 Index Windows 3.1 300 Windows 7 480 Windows 95 386, 455 Windows Calculator 28 Windows NT 3.1 329, 339 Windows Server 2003 331 Windows Vista 331, 465, 480 Windows XP 331 Wing Commander 367, 390 Wireworld 550 Wireworld-Computer 552, 559 Wirth, Niklaus 273 Wirtschaftssimulation 368 Wolfenstein 3D 386, 390 Word 300 Workstation Clons 202 World of Warcraft 370, 372, 390, 392 World Wide Web 씮 WWW WoW 씮 World of Warcraft Wow-Signal 222 Wozniak, Steve 153 WWW 316, 444, 454, 458 WWW Consortium 458 X Xbox 301 Xcerion 488 Xen 332, 469f., 575 Xerox 299, 324 Xerox Alto 158 Z Z1 101, 193 Z2 101 Z3 97 simulieren 103 Z4 98 Zadeh, L. A. 46 Zählen mit Fingern 25 Zahlensystem 24, 27, 47 binäres 27 Hexadezimalsystem 28 Sexagesimalsystem 25 und Alphabet 28 Zehnersystem 24 Zwölfersystem 25 Zahnrad 52 Zauberwürfel 394 Zehnersystem 24 Zehnerübertrag 73 Zeitrechnung 25 Zellulärer Automat 530, 550, 554, 560 Zork 378, 389 Zuse, Konrad 15, 28, 97, 112, 521, 560 Zweispeziesmaschine 67 Zwölfersystem 25 ZX80 184 605