Wie Steve Wozniak BASIC für das Original Apple von Grund auf neu geschrieben


Feiern die 50. Jahrestag von BASIC, Steve Wozniak hat einige Erinnerungen über seine ersten Erfahrungen mit diesem Volkssprache geschrieben — und wie er seine eigene BASIC von Grund auf für die Apple erstellt I und Apple II Computer. Eine unglaubliche Leistung. Genießen! — JD

1967 oder 1968, als Senior in der High School, unsere Elektronik-Lehrer (der beste Lehrer der mein Leben in vielerlei Hinsicht der Lehre) organisierte für mich zu gehen, einen Computer zu programmieren, weil ein Unternehmen in Sunnyvale (Sylvania) kannte ich bereits die Elektronik in der Klasse in der Schule. Herr McCollum tat dies für Studenten mit Elektronik Fähigkeiten jedes Jahr Suche nach lokalen Unternehmen mit Ingenieuren und Projekte, die Schülerinnen und Schüler kommen lassen würde und und einige Erfahrung erhalten. Ich habe gelernt und auf dem IBM-Computer in FORTRAN programmiert.

Ich erlebte zunächst BASIC in der High School im selben Jahr. Wir haben keinen Computer in der Schule aber GE, ich denke, brachte in einem Terminal mit Modem für ihren Time-sharing-Unternehmen zu fördern. A die wenigsten wir helle Mathematik Studenten erhielten einige Seiten des Unterrichts und wir haben einige sehr einfache Programme in BASIC geschrieben. Ich sah, dass dies eine sehr einfache und leicht-Sprache, mit zu beginnen, sondern das Terminal zu lernen war nur in unserer Schule für ein paar Tage. Ich fragte unseren Kopf Mathelehrer zu schreiben, eine Seite auf warum ich, dies dachte wäre eine gute Sache für unsere Schule zu haben. Ich habe in der Tat eine Seite über logisches Denken und Problemlösen schreiben, aber unsere Schule nicht go ahead und erhalten in der Timeshare-Programm.

In meiner Studienzeit mein höheren Level Programmiersprachen der wissenschaftlichen Form, FORTRAN wurden, PL-1, Algol. Natürlich programmierte ich eine Menge in vielen Versammlung Sprachen auch in der Schule und auf eigene Faust.

In den Homebrew Computerclub hatten wir ein paar Bücher herum, dass ich gerne "Bibeln" nennen. Einer war Computer Lib/Dream Machine von Ted Nelson, beschreibt eine zukünftige Welt von Hyperlinks auf die Bedeutung der Dinge schriftlich weiter. Seine Ideen waren wie Science Fiction, aber alle wussten, dass sie technisch machbar waren, und wir alle Apostel für diese Sichtweise auf die Zukunft waren des Computings. Die "Bibel" war ein Buch "101 Spiele in BASIC." Ich war ein Fan von Computerspielen und wusste, dass, sobald ich hatte ein Computer meines eigenen ichs Sie in diese Spiele zu spielen geben möchten. Gemessen an meinen eigenen Gefühlen, habe ich angenommen, dass dies ein Schlüssel für eine Heimcomputer Revolution wäre. Der nicht-Unternehmer in mir hindert mich reden, Märkte oder Finanzen.

Ich wusste nicht genau, was ein echter Computer erforderlich, um die große finanzielle Aufgaben zu erledigen, die Computer für Unternehmen, die Computer, die für Unsummen von Geld verkauft hat. Das waren lohnt sich Computer. Alles, was ich wusste war, dass die ganz in der Nähe. Ich lief Simulationen von Chip-Designs und Logik Designs bei HP, arbeiten am Rechner. Mein Computer hätte, das zu tun? Mein Computer hätte auch Spiele spielen. Zumindest dann war ich mir sicher, dass mein Computer möglich, die wichtigen Dinge, dass hochpreisige Computern tun, aber ich war nicht sicher, könnte.

BASIC war der Schlüssel zu spielen. Bill Gates war unbekannt, außer in der Elektronik-Hobby-Welt. Jeder in unserem Club wusste, dass er für den Intel Mikroprozessor BASIC geschrieben hatte. Ich roch den Wind und wusste, dass der Schlüssel zur macht mein Computer gut (beliebt) wurde zu eine Hochsprache gehören und dass es BASIC werden mussten. Programmierung in FORTRAN Ingenieure wollten nicht werden, was eine Heimcomputer Revolution beginnen würde.

Das Erlernen der Sprache und schreiben einen BASIC-interpreter

Das Problem war, dass ich keine Kenntnis von BASIC, nur eine bloße Erinnerung, dass es Zeilennummern aus dieser 3-Tages-High School-Erfahrung hatte. Also nahm ich ein grundlegendes Handbuch spät ein Nacht bei HP und begann es zu lesen und Notizen zu den Befehlen dieser Sprache. Beachten Sie, dass ich einen Kurs in Compiler (oder Interpreter) schreiben in meinem Leben noch nie getroffen hatte. Aber mein Freund Allen Baum hatte mich geschickt xerox Kopien von Seiten seiner Texte am MIT über das Thema, also ich könnte behaupten, dass ich eine Ausbildung MIT drin, hatten ha ha. In meinem zweiten Jahr am College saß ich in einem Matheunterricht Analyse versucht, mich mit dem Schreiben eines FORTRAN-Compilers beizubringen, wissen nichts über die Wissenschaft der Compiler schreiben. Ich ging zurück zu diesem Gedächtnis und begann das Schreiben von Code für meine 6502-Mikroprozessors in Zeilen zu lesen, dass ein Benutzer für die Analyse und Überprüfung auf Fehler eingegeben.

Ich wusste über Syntax Diagramme und erstellt eine für dieses BASIC. Ich wusste nicht, dass HP BASIC extrem anders als DEC BASIC, derjenige war, der das Buch "101 Spiele in BASIC" verwendet und dass Bill Gates geschrieben hatte. Ich dachte alle BASIC waren die gleichen, aber HP unterschieden sich stark, kam es auf Strings mit Buchstaben. Ich beendete meine Syntaxdiagramme und sie waren komplett. Aber ich hatte in meinem Hinterkopf, dass ich ein Star sein könnte, dass ich ein wenig Ruhm in der Hobby-Welt, wie Bill Gates, bekommen könnte, wenn ich das erste BASIC für den 6502 erstellt. Um ein bisschen Zeit zu sparen, ich zog den schwimmenden Punkt Operationen aus meinem Syntaxdiagramm. Ich musste schreiben Ganzzahl basierte Simulationen für meine HP-Arbeit und Spiele basieren auf Logik, die Ganzzahlen ist. Ich ließ Gleitkommazahlen (solche mit Dezimalstellen) nur um ein paar Wochen zu sparen und haben eine bessere Chance, als erster dieses BASIC auf dem 6502 entwickeln. Sie blicken zurück und sehen, dass ich enthalten floating Point arithmetische Routinen im ROM des Apple] [aber ich ging nie zurück, um in der BASIC zu arbeiten. Wenn Sie von Hand programmieren (konnte nicht leisten können, ein Timeshare-Konto) ist es schwer, Änderungen in der mittleren Struktur der Dinge, die bei festen Adressen sein.

Breakout on Integer-Basi c , die auf den original Apple II.

Ich wusste über Compiler schreiben anders als vielleicht. Aber ich wusste, über Stapel und dergleichen Ausdrücke in UPN mit Stapel umzuwandeln. Unsere HP-Rechner verwendet RPN, in der Tat. Darüber nachzudenken, wie diese Sprache zu schreiben kam ich mit meiner eigenen Techniken, nicht wie etwas aus einem Buch. Ich zog mit der sogenannten ich Nomen und VERB-Stacks (Operanden und Operatoren). Ich habe Tags in meinem Syntaxdiagramm aber jeder Betreiber drin hatte eine Reihe nach der linearen Position in dieser 256-Byte oder 512-Byte-Tabelle (ich vergesse). Der 41. Operand habe den Code des Betreibers #41.

Ich hatte auch eine Liste für jeden Betreiber von 2 Prioritäten. Seine Tendenz, vor anderen Betreibern zu gehen war. Zum Beispiel die + Betreiber würde dazu führen, dass ein * Operator zuerst auftreten. Aber ich brauchte eine zweite Tabelle des Widerstands gegen geschoben in die Tat um Dinge wie Klammern zu handhaben. Ich hatte keine Ahnung, ob ich auf der richtigen Spur war, aber es funktionierte korrekt und Tat, was ich brauchte. Es mussten nicht aus einem Buch kommen.

Ich genoss, zeigt dieses BASIC im Homebrew Computer Club. Ich habe nie mein Name in Druckschrift, so habe ich nicht, dass 'Bill Gates' Ruhm bekommen, aber ich war in meinem Club bekannt. Das war noch bevor Steve Jobs sah, dass mein Computer existiert. Im Laufe der Zeit hatte ich nur eine Routine nach dem anderen zu schreiben, für jede dieser Operatoren nummeriert. Jeder Club treffen hätte ich ein paar weitere Befehle, die voll gearbeitet.

Mit dem Apple] [Ich hatte das Video und Computer-Speicher ein und dasselbe, dass der Mikroprozessor, ändern vielleicht 1 Million (übertrieben) eine zweite, Zahlen 1 Million ändern würde Bildschirm Bytes pro Sekunde. Atari Arcade-Spiele wurden Hardware dann aber jetzt die Spiele als Software mit 6502 Maschinensprache Programmierung umgesetzt werden könnte. BASIC ist eine interpretierte Sprache. BASIC geht über die einzelnen Buchstaben der einzelnen Anweisungen wie es ausgeführt wird, bestimmen, was zu tun ist. Es ist vielleicht 100 oder 1000 mal langsamer als Maschinensprache als Ergebnis. Aber eines Tages war ich neugierig, ob Sie bewegte Objekte nur in BASIC zu programmieren und sehen sie wie realistische Animation bewegen konnte.

Ich hatte Breakout für Atari Hardware entworfen. Ich fragte mich, ob ich dieses animierte Arcade-Spiel in BASIC programmieren könnte? Ich wusste, dass ich es in Maschinensprache programmieren könnte. Da es meine eigene BASIC war, ich ging mit dem Syntax-Diagramm und fügte Befehle zu Farbe Plotten, um horizontale und vertikale Linien zu zeichnen. Ich suchte Chip Handbücher und wählte einen Chip mit 4 Timer (Timer 555 Stil) auf einem Chip. Ich verwendet, die mit einigen Software Paddel Positionen aus Potentiometer zu lesen, wählt diesen geänderten Widerstand nach wo Sie das Rad gedreht. Einmal ich diese Mechanismen installiert hatte (brennende neue EPROMS für die grundlegende Ergänzungen) ich setzte mich und schrieb einige einfache FOR-Schleifen Ziegel in verschiedenen Farben darstellen. Ich muss 30 Farbkombinationen in nur wenigen Minuten versucht haben. Dann fügte ich Paddel und Score und einen Ball. Ich könnte Programmparameter die Ballgeschwindigkeit und Winkel ändern anpassen. By the way, denke ich, dies ist, wenn ich einen Lautsprecher mit 1-Bit-Audio hinzugefügt, nur weil Sie Klänge benötigt, wenn ein, ein Backstein, etc. Ball.

Ich rief Steve Jobs zu meiner Wohnung zu sehen, was ich getan hatte. Ich zeigte ihm, wie schnell und einfach Ihr Dinge wie die Farbe der Ziegel ändern könnte. Am wichtigsten ist, in einem halben Stunde hatte ich versucht weitere Varianten dieses Spiels, als ich über 10 Jahre in Hardware getan haben könnte. Steve und ich erkannte, wie wichtig es sein würde damit animiert (Arcade-Stil) Spiele Software sein könnte. Darüber hinaus bedeutete Wesen in BASIC, dass jedermann jeden Alters es programmieren könnte.

Ich habe über 50 chronologischen Ordner Papiere während meiner grundlegenden Design-Arbeit. Jeder war Spiel BASIC gekennzeichnet. So Sie sehen können, wo mein Kopf kam.

Update

Noch ein Hinweis: In High School oder mein erstes Jahr am College erzählte ich meinem Vater, dass eines Tages würde ich eine 4 K Data General NOVA besitze. Er sagte, dass es so viel wie eine Anzahlung auf eine teure Haus Kosten. Ich war fassungslos und sagte ihm, dass ich in einer Wohnung leben würde.

Warum 4KB?

Denn das war das Minimum benötigt, um eine höhere Ebene Sprache auszuführen. Mir hatte ein Computer mehr als Schalter ein Lichter haben. Es hatte um Programme ausführen zu können.

Ich baute einen Schalter und Leuchten Computer von meinem eigenen Entwurf 5 Jahre vor der Apple I. Damals gab es keine Möglichkeit, 4KB RAM zu leisten, so hatte es nur 256 Byte.

In den Tagen Homebrew eingeführt Sommer 1975, 3 Unternehmen 4K DRAM Dies war das erste Mal, die 4KB wirklich erschwinglich war. Ich musste habe viel um BASIC haben ein Teil dieses Computers sein. Keine andere Wahl darüber. Daher das Minimum RAM auf einem Apple I oder Apple] [war 4 KB. Hatte ich nicht kümmerte sich um BASIC, wahrscheinlich würde ich nur einen anderen Schalter und Lampen Computer mit minimalen statischen Speicher gebaut und wurde mit ihr geschehen.

Anmerkung der Redaktion: Möchten Sie mehr über Wozniakss Leben, wissen Sie seine Biographie auschecken können iWoz. —JD

Verwandte Artikel

Wie Jack Conte ein völlig Batshit DIY-Musikvideo von Grund auf neu gemacht

[youtube]mZ02alEkbLw[/youtube] Jack Contes "Pedale" Musikvideo ist Muttern. Heilige Scheiße, elektronische Musik Roboter Wahnsinn. Aber dies ist eine jener Situationen, wo Sie Mühe, die entscheiden haben, was ist verrückter: das Musikvideo oder...

Ben Heck zeigt, wie Sie eine Apple-1-Kopie von Grund auf neu bauen

[youtube]ZXllm5JWWAs[/youtube] Nur wenige von uns haben die $905.000 musste einer der verbleibenden original Apple-1 Computer kaufen, * Steve Wozniak in Steve Jobs' Garage gebaut, aber Modder extraordinaire Ben Heck hat die zweitbeste Lösung: eine neue dr...

Es ist einfach unglaublich, was dieser Kerl von Grund auf neu gemacht. Und wie er es gemacht? Noch besser ist.

Ein 2014 beginnt bei $50.400 Porsche Boxster. Sie haben nicht diese Art von Grund auf? Wenn Sie einige Ersatzteile Schläuche, Pappe und Kreativität haben, möglicherweise Sie in der Lage, die nächste beste Sache zu machen. Unglaublich kreativer Österreiche...

Es dauerte dieser Roboter 10 Tage lernen, wie man Objekte von Grund auf neu zu erfassen

Roboter sind eine Menge Dinge gut, aber ihre Erfolgsbilanz auf Abholung Objekte ist schlecht. So wie schwer ist es, einen zu holen, ein Objekt bei Bedarf von einem Tisch voller Unordnung zu lehren? Das ist, was ein Team von der Carnegie Mellon University...

Steve Wozniak war So gut an Tetris-er von Nintendo Power Verbot bekam

In unserem Artikel über Tetriss 30. Jahrestag der und nur Steve Wozniak sank um uns mit Geschichten aus seiner langen Regierungszeit als Amerikas #1 Tetris Champion verwöhnen. Er war so gut, Nintendo Power Magazin hielt seine Partitur Einreichungen zu akz...

Steve Wozniak überrascht Mädchen mit Mac Lieferung, glückliches Mädchen flippt aus

Steve Wozniak schickte diesem lustigen Stunt vor ein paar Jahren auf Video festgehalten: zusehen, wie er einen Mac anzubieten, Emma, eine Mädchen, flippt aus, als sie ihr Idol merkt, steht vor der Tür mit ihren neuen Computer. Wie Emmas Vater in dem Video...

Auch Steve Wozniak hat Probleme mit dem Kundendienst aus der Hölle

Wir alle sind verloren gegangen, in die unendliche rekursive Hölle der Kunden-Support-Nummern, ewig warten, im Gespräch mit Menschen, die wir kaum verstehen kann, versucht, ein Problem zu lösen. Es ist nicht nur uns Sterblichen. Berühmte Persönlichke...

Wie können Astronomen für das Leben auf fremden Planeten jagen.

Eine schwefelhaltige Moleküle, die Astronomen vor Ort auf fremde Welten möglicherweise einen Weg zu zeigen, unabhängig davon, ob diese weit entfernten Planeten leben beherbergen, empfehlen Wissenschaftler. Auf der Erde können Mikroben im schwefelhaltigen...

7 Tipps für das Färben von Ostereiern mit Kleinkindern

Eines der Highlights der Osterzeit für unsere Kinder ist das jährliche Färben der Ostereier. Ein Jahr, ich völlig vergessen – und Sie hätte gedacht ich hatte vergessen, einen Kindergeburtstag. Mit zwei Kleinkindern kann der Gedanke an Ostereier färben sch...

Jeder Politiker Traum – das Online-Tool, das ändert sich von "Nein" zu "Ja" Stimmen

Wenn Benutzer ein Computerfehler auf eine walisische Regierung Konsultation zu ermöglichen, Jakobsmuschel Baggerarbeiten in eine Delphin-Reserve entdeckt, war es nicht das einzige, was falsch mit dieser angeblich demokratischen Prozess Es ist jeder Politi...

Steve Wozniak: Apple war nicht wirklich In einer Garage gegründet.

[youtube]XrhmepZlCWY[/youtube] Weniger bekannte Apple Mitbegründer Steve Wozniak vor kurzem setzte sich mit Reddit für ein video-Interview und eine traditionellere AMA. Unter der Weisheiten: das Apple Watch-Lineup ist "zu kompliziert" und Apples...

Steve Wozniak: "Steve Jobs und ich einmal mit vorgehaltener Waffe außerhalb einer Pizzeria ausgeraubt"

Werden Apple Mitbegründer wurden mit vorgehaltener Waffe außerhalb einer Pizzeria beraubt? Dass, zumindest, was Steve Wozniak Jimmy Fallon und Seth Rogen während eines Spiels der "True Confessions" am Freitag die Episode von gesagt The Tonight S...

Steve Wozniak ist eine Reality-TV-Show über futuristische Tech machen.

Ingenieur, Gizmodo, Philanthrop und Apple-Mitbegründer Steve Wozniak mit Mythbusters gemeinsamBeitrag "Kari Byron (zu sehen auf dem Foto oben) für eine kommende Reality-Show namens The Woz. Die Show wird Woz testen futuristische Gadgets Hands-on-Funk...

Arbeitsplätze, bewertet von Steve Wozniak

Im Abschnitt "Diskussion" von unserer Jobs überprüfen, Apple Mitbegründer Steve Wozniak wog mit seine eigenen Eindrücke des Films – und wie er und andere dargestellt wurden. Was folgt, ist die Woz unbearbeitete nehmen auf Jobs: Heute Abend sah i...