Herunterladen Inhalt Inhalt Diese Seite drucken
Commodore 128 Handbuch
Commodore 128 Handbuch

Commodore 128 Handbuch

Homecomputer
Vorschau ausblenden Andere Handbücher für 128:
Inhaltsverzeichnis

Werbung

Schmidt - Szczepanowski
COMMODORE
für Einsteiger
EIN DATA BECKER BUCH

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für Commodore 128

  • Seite 1 Schmidt - Szczepanowski COMMODORE für Einsteiger EIN DATA BECKER BUCH...
  • Seite 3: Ein Data Becker Buch

    Schmidt - Szczepanowski COMMODORE für Einsteiger EIN DATA BECKER BUCH...
  • Seite 4 IS B N 3 - 8 9 0 1 1-Q99-1 Copyright © 1 9 8 5 D A T A B E C K E R G m b H M e ro w in g e rs tra ß e 3 0 4 0 0 0 D üsseldorf Alle R e c h te Vorbehalten.
  • Seite 5 W ichtiger H inweis: D ie in d iesem Buch w ie d e rg e g e b e n e n S chaltu n gen , V e rfa h re n und P ro ­ g ra m m e w e rd e n oh ne Rücksicht auf die P a te n tla g e m itgeteilt. S ie sind a u s ­ schließlich für A m a te u r- und L e h rzw e c k e bestim m t und dürfen nicht g e w e rb ­...
  • Seite 7 Problem jedes neuen Rechners, daß keine Programme für diesen erhältlich sind, überhaupt nicht auf. Durch die 100 %ige Kompatibilität zum C 64 ist sämtliche Software für diesen Rechner auf dem COMMODORE 128 lauffähig. Zusätzlich erschließt sich durch die CP/M-Fähigkeit ein weiteres riesiges Softwareangebot. Sie können also sicher sein die richtige Wahl getroffen zu haben.
  • Seite 9: Inhaltsverzeichnis

    CURSOR LINKS/RECHTS - Taste CURSOR OBEN/UNTEN - Taste Editieren mit den Cursortasten CLR/HOME - Taste Die Tasten mit Buchstaben Die SHIFT- und SHIFT-LOCK - Taste Die COMMODORE - Taste ’C=’ Der Textmodus Die ASCII/DIN-Taste Weitere Grafiktasten Die Leertaste Die INST/DEL - Taste...
  • Seite 10: Basic Sinnvoll Eingesetzt

    Der erste Befehl Die RETURN-Taste Der PRINT - Befehl Rechnen mit PRINT Die Klammerechnung Exponentialschreibweise Textausgabe mit PRINT Steuerzeichenausgabe mit PRINT Vereinfachte PRINT-Eingabe PI und Potenzierung Kombinieren von Strings mit Zahlen Trennen von Befehlen Das erste Programm Ein Programm, was ist das? Die Zeilennumerierung Programmstart Programmänderung...
  • Seite 11 Die Abfrage mit IF Berechnetes GOTO Adressen eingeben Adressen ändern Adressen löschen Adressen ausgeben Datei sichern Datei laden Programm beenden Das gesamte Programm auf gelistet Die Zusatzgeräte Die Datasette Das Diskettenlaufwerk V C -1571 - Systembefehle - sequentielle Dateiverwaltung Der Drucker Der Joystick ANWENDUNGSBEISPIELE Dateiverwaltung...
  • Seite 13: Einleitung

    Deshalb besprechen wir in diesem Buch den COMMODORE 128 nur in seinem eigenen Modus. Grundlagen, die Sie dabei kennenlernen, werden Ihnen auch beim späteren Einstieg in CP/M eine nützliche Hilfe sein. Der C 64 Modus ist ohnehin nur für den Ablauf fertiger Software interessant.
  • Seite 14 Ihren Rechner so starten, daß ein anderer als der 128er Modus auftritt, können Sie leichter nachvollziehen woran das lag und den Startvorgang richtig wiederholen. Bleibt noch eine Vereinbarung zu treffen: Im 128er Modus haben Sie die Möglichkeit 80- oder 40- Zeichen pro Zeile Bildschirm darzustellen.
  • Seite 15: Nach Dem Auspacken

    NACH DEM AUSPACKEN Dieses Kapitel richtet sich an alle diejenigen, die seit wenigen Stunden stolze Besitzer eines COMMODORE 128 und diverser Zusatzgeräte sind. Wenn Verkäufer Anschließen der Geräte auch noch so ausführlich erklärt hat, so sind die Gedanken in der Aufregung meist ganz woanders.
  • Seite 16: Das Netzgerät

    jedoch Kabel, die bei allen Geräten mitgeliefert werden. Alle Kabel zusammen geben einen erschreckenden Anblick: Das Netzgerät Mit dem 128er wird ein externes Netzgerät geliefert, das ihn mit dem nötigen Strom versorgt. Sicherlich ist dieses Gerät aus gutem Grund nicht in den 128er eingebaut worden.
  • Seite 17: Der Fernseher

    Außerdem können Sie nur mit dem Commodore 1902 oder einem dazu kompatiblen Monitor den 128 im 80 Zeichen Modus betreiben. Wir gehen im folgenden immer davon aus, daß Sie Ihren 128er im 40 Zeichenmodus an einem Fernseher oder Monitor betreiben.
  • Seite 18: Die Datassette

    eingerastet ist. Achten Sie bitte darauf, da andernfalls auf dem 40 Zeichen Bildschirm keine Zeichen erscheinen werden. Doch bleiben wir beim Fernseher. Dem 128er liegt ein Antennenkabel bei, mit dem Sie ihn mit der "Glotze" verbinden können. Dazu schließen Sie das Ende mit dem etwas längeren Stecker hinten an die dafür vorgesehene Buchse des 128ers an: Nun wird das andere Ende in den Antenneneingang des...
  • Seite 19 Wenn Sie die Datassette ausgepackt haben, so stellt sich die Frage, wo dieses kleine Gerät denn angeschlossen wird. Nun, hinten am 128er ist bereits ein Anschluß für ein Kassettenlaufwerk vorhanden. An diesen sogenannten Kassettenport wird das Kabel des Recorders mit dem breiten Stecker angeschlossen.
  • Seite 20 Kassettenrecorders bemerkt? Es gibt Leute, die grübeln oft stundenlang nach, wo dieses kleine Kabel denn nun angeschlossen wird. Wohin denn nun mit diesem Kabel? Wenn die Datassette am p S e r angeschlossen wird, dieses Kabel überflüssig. Massekabel, daß COMMODORE-Rechnernmit Metallgehäuse angeschlossen wird.
  • Seite 21: Das Diskettenlaufwerk

    wie z.B. die ältere Ausführung des CBM 8032. Wenn Sie die Datassette eines dieser Geräte anschließen möchten, so schneiden Sie es einfach ab. Das Diskettenlaufwerk Die Diskettenlaufwerke (Floppylaufwerke) des Typs V C -1571 sind für viele Anwender nicht mehr wegzudenken. Wer einmal diesen externen...
  • Seite 22 Die beiden Buchsen sind parallel geschaltet, das heißt, es ist ganz egal, welche der beiden Sie verwenden. Wozu die andere Buchse benötigt wird, werden Sie spätestens dann feststellen, wenn ein Drucker angeschlossen werden soll. Das andere Ende des Floppykabels wird nun an den 128er angeschlossen.
  • Seite 23 Das beigefügte, meist graufarbene Netzkabel schließen Sie hinten an der V C -1571 an. Die entsprechende Buchse ist unübersehbar. f - ' i « r l ' > Übrigens hier noch vermerkt, daß Floppystation 1541 für den C 64 in derselben Weise an Ihren 128er anschließen können.
  • Seite 24: Der Drucker

    Textverarbeitung oder Dateiverwaltung, kann unmöglich einen Druclcer verzichten. COMMODORE bietet einen preislich 128er zugeschnittenen Drucker, den MPS 801, an. Im folgenden wollen wir diesen Drucker an den Rechner anschließen. Mit einem Drucker werden wie bei der Floppystation meist zwei Kabel geliefert.
  • Seite 25 Das andere Ende des Kabels kann nun aber nicht am 128er angeschlossen werden, da dieser Anschluß bereits von dem Floppylaufwerk belegt ist. Sollte kein Floppylaufwerk angeschlossen sein, so kann der Drucker natürlich auch an dann freie Buchse angeschlossen werden. Diskettenlaufwerk aber noch einen freien Anschluß für ein weiteres Gerät hat, schließen wir hier den Drucker an.
  • Seite 26: Die Inbetriebnahme

    Mit dem Anschluß des Druckers haben ^ wir unser recht umfangreiches System vervollständigt. Die Inbetriebnahme Nachdem alle Geräte angeschlossen sind, müssen diese zunächst mit Strom versorgt werden. Ärgerlich ist meist, wenn erst jetzt bemerken, daß diese vielen Netzstecker nicht an eine Steckdose angeschlossen werden können.
  • Seite 27 •'MS Wenn nun alle Geräte mit Strom versorgt sind, kann es losgehen. schalten alle Geräte nacheinander ein. Zunächst das Herz des Systems, den 128er. Auf der rechten Seite befindet sich der Netzschalter. Nach Einschalten des 128ers muß die rote Leuchtdiode oben links .
  • Seite 28 die Betriebsbereitschaft an. Schließlich muß nur noch der Drucker aktiviert werden. Der Netzschalter hierzu befindet sich auf der rechten Seite des Gerätes. Nach dem Einschalten bewegt sich der Druckkopf kurz hin und her. Danach leuchtet vorne am Gerät ein rotes Licht. Achtung! Wenn Sie den Drucker gerade ausgepackt haben,...
  • Seite 29 abgeglichen werden. Sie stellen den Fernseher auf den 128er so ein, als würden Sie einen Fernsehsender suchen. Es ist der Kanal 36 auf UHF. Falls gerade auf diesem Kanal in Ihrer Nähe ein Sender liegt, so können Sie von diesem Kanal abweichen, Dazu befindet sich hinten neben dem Fernsehkabelanschluß...
  • Seite 30: Die Tastatur

    DIE TA STA TU R In diesem Kapitel lernen Sie die Handhabung der 92 Tasten Ihres Commodore 128. Mit Hilfe dieser Tasten werden Sie alle verborgenen Möglichkeiten Ihres Heimcomputers erschließen. Sei es die Eingabe von Texten, das Erstellen von Bildern (Grafiken), das Abschicken von Anweisungen oder die Berechnung mathematischer Probleme, all dies wird für Sie nach diesem Kapitel kein Neuland mehr sein.
  • Seite 31: Allgemeines Zur Tastatur

    Tasten sind sehr wichtig, da damit Farben bestimmt, Texte eingegeben, Programme unterbrochen und Befehle an den Rechner übermittelt werden können. Allgemeines zur Tastatur ersten Blick erweckt Tastatur Commodore Eindruck einer üblichen Schreibmaschinentastatur. Doch wenn Sie genauer hinsehen, werden Sie leichte Abweichungen feststellen: Buchstaben ’Y’...
  • Seite 32: Los Geht's

    Los geht’s Nun wird es Zeit, die schlafende Technik Ihres CBM 128 zum Leben zu erwecken. Schalten Sie dazu den Rechner ein. Nach jedem Einschalten erscheint eine Meldung, besagt, daß der Rechner nun bereit ist, Ihren Kommandos zu folgen. Die erste Zeile der Meldung weist auf die interne BASIC-Version hin.
  • Seite 33: Cursor Links/Rechts - Taste

    erscheint demnach kein ’READY’ und es können somit keine Eingaben gemacht werden. Nun zu dem kleinen blinkenden Quadrat unterhalb des ’READY’. Dies eine Orientierunghilfe Bildschirm. Angenommen, Sie möchten etwas auf dem Bildschirm schreiben, dann ist es notwendig, genau zu wissen, wo das einzugebende Zeichen erscheinen wird.
  • Seite 34 ITS l E S E U P E ® Was aber, wenn der Cursor den rechten Rand dieser Zeile überschreitet? Probieren Sie dies selbst aus und drücken dazu nochmals 20 mal die CURSOR LINKS/RECHTS - Taste. Nach dem 20. Druck auf diese Taste erscheint der Cursor wieder auf der 1.
  • Seite 35 Sicher haben Sie sich gefragt, wie der Cursor denn nun in die andere Richtung (nach links) zu bewegen ist. Dazu benutzen Sie die Taste ’SHIFT’. Diese Taste schaltet die Funktion der Cursor-Taste um auf CURSOR LINKS. Halten Sie nun die SHIFT-Taste gedrückt und betätigen die CURSOR LINKS/RECHTS - Taste.
  • Seite 36: Cursor Oben/Unten - Taste

    CURSOR OBEN/UNTEN - Taste kann Cursor wieder Ausgangsstellung (unterhalb ’READY’) bringen? Dazu könnten Sie z.B. solange die CURSOR LINKS - Taste gedrückt halten, bis der Cursor Zeile für Zeile nach oben wandert. Doch dies ist nicht im Sinne des Erfinders. Die CURSOR OBEN/UNTEN - Taste ermöglicht Ihnen die ebenso schnelle Bewegung des Cursors nach oben und unten wie mit der CURSOR LINKS/RECHTS - Taste nach links und rechts.
  • Seite 37 Versuchen Sie nun, den Cursor in die 3. Bildschirmzeile zu bewegen. Dazu müssen Sie den Cursor nach oben bewegen. Wenn Sie aber auf die CURSOR OBEN/UNTEN - Taste drücken, so bewegt sich der Cursor nach unten! Sicher haben Sie bereits geschaltet Rückschlüsse zuvor...
  • Seite 38: Editieren Mit Den Cursortasten

    Editieren mit den Cursor-Tasten Hier taucht ein Fremdwort aus der Datenverarbeitung auf, dessen Bedeutung dem einen oder anderen Leser, besonders Anfänger, sicher nicht bekannt ist. Editieren bedeutet Bearbeiten von Texten, d.h., Texte erstellen und ändern. Man spricht bereits vom Editieren, wenn Sie ein paar Worte auf dem Bildschirm schreiben.
  • Seite 39 An die Stelle des ’R’ schreiben Sie ein Leerzeichen (die unübersehbare Taste ganz unten). Ändern Sie nun auch die fünf letzten Buchstaben dieses Wortes (TGHTS’) ’RECHTE’ Dazu geben einfach unmittelbar hintereinander diese sechs Buchstaben ein. Nun haben wir das Wort ’RIGHTS’ in ’RECHTE’ umgewandelt. Der Abschluß...
  • Seite 40: Clr/Home - Taste

    CLR/HOME - Taste Wir haben uns bereits damit beschäftigt, den Cursor so schnell möglich oberen Bildschrmrand manövrieren.DazuhabenwirdieCURSOROBEN/UNTEN-Taste benutzt. Aber es geht noch schneller: Die CLR/HOME - Taste zwei Funktionen, eine SHIFT- eine Normalfunktion. Drücken Sie diese Taste ohne SHIFT, so wird die HOME-Funktion aktiv.
  • Seite 41 Damit Sie nicht aus der Übung kommen: Schreiben Sie ein paar Buchstaben in die Bildschirmmitte. f i L L E RECHTE VORBE Wenn Sie nun denken, daß das, was sich nun auf dem Bildschirm befindet, eigentlich alles unbrauchbares Kauderwelsch ist, wischen einfach alles...
  • Seite 42: Die Tasten Mit Buchstaben

    Die Tasten mit Buchstaben Wie bereits erwähnt, gleicht die Anordnung dieser Tasten bis auf kleine Abweichungen der einer Schreibmaschine. Sicher sind Ihnen die jeweils zwei Grafiksymbole an der Vorderseite jeder dieser Tasten sofort aufgefallen. Doch was es damit auf sich hat, stellen wir zunächst zurück. Konzentrieren wir uns auf die Buchstaben.
  • Seite 43 Nun haben wir einen "sauberen" Bildschirm, auf dem wir editieren können. Bitte geben Sie nun keine Unmengen von Texten ein in der Hoffnung, daß Ihr Computer alles, zu jeder Zeit abrufbereit, in seinen Speicher aufnimmt. Ganz so einfach ist es nicht. Das, was Sie eingeben, wird lediglich flüchtigen Bildschirmspeicher...
  • Seite 44: Die Shift- Und Shift-Lock - Taste

    Taste Umschalten zwei Funktionen belegten Tasten. Zusätzlich COMMODORE 128 mit einer zweiten SHIFT-Taste ausgerüstet (SHIFT LOCK), die bei Betätigung einrastet. Somit ist es überflüssig, SHIFT-Taste gedrückt halten. Betätigen Sie diese Taste ein zweites Mal, so wird sie wieder entriegelt.
  • Seite 45 zweite Funktion bzw. das zweite Zeichen einer mehrfach belegten Taste. Bei den Tasten, die zusätzlich mit zwei Grafiksymbolen beschriftet sind, wählen SHIFT-Taste das jeweils rechte Grafikzeichen aus. Versuchen Sie nun, die vier Spielkartensymbole der Tasten A,S,Z und X auf den Bildschirm zu bekommen. Löschen Sie zuvor den Bildschirm mit den beiden Tasten SHIFT und CLR/HOME.
  • Seite 46: Die Commodore - Taste 'C

    Entriegeln Sie bitte die SHIFT LOCK-Taste, wenn sie verwendet wurde. Die COMMODORE - Taste ’C = ' Mehrfachbelegte Tasten sind für Sie nicht mehr unbekannt. Sie haben mit SHIFT z.B. das rechte Grafiksymbol eines Buchstabens zum Vorschein gebracht. Sie wissen sicher, worauf hier angespielt wird.
  • Seite 47 eine Möglichkeit gegeben werden, das zweite Grafiksymbol anzusprechen. Dazu wurde diese Taste installiert. Halten Sie die Taste ’C=’ gedrückt, wenn Sie eines der links an Vorderseite Tasten dargestellten Grafiksymbole auswählen möchten. aufgepasst! Links neben schon bekannten Spielkarten - Symbolen sind Grafikzeichen angebracht, die jeweils einen Winkel darstellen.
  • Seite 48: Der Textmodus

    Schreiben drei der Taste ’A’ darstellbaren Zeichen nebeneinander auf dem Bildschirm. Zuerst den Buchstaben, dann das rechte und schließlich das linke Grafikzeichen. Löschen Sie bitte vorher den Bildschirm. Mit einiger Übung können Sie allein mit den Grafikzeichen hübsche Bilder auf den Bildschirm zaubern.
  • Seite 49 bung. In diesem Modus gleicht die Tastatur noch mehr einer Schreibmaschine. Bei normaler Betätigung werden Kleinbuchstaben und mit Hilfe der Umschalt-Taste (bei uns SHIFT Taste) Großbuchstaben angezeigt. Grafiksymbole, die normalerweise mit SHIFT angesprochen werden, stehen nun nicht mehr zur Verfügung. Sie schalten den Textmodus ein, indem Sie bei gedrückter SHIFT- Taste einmal die ’C=’- Taste gleichzeitig drücken.
  • Seite 50 Was meinen Sie, tut sich auf dem Bildschirm, wenn Sie nun den Textmodus wieder ausschalten? Überzeugen Sie sich selbst. Schalten Sie den Textmodus wieder aus, indem Sie wiederum SHIFT und ’C=’ gleichzeitig drücken. Aus den Großbuchstaben wurden wieder Grafikzeichen und aus den Kleinbuchstaben wurden Großbuchstaben.
  • Seite 51: Die Ascii/Din-Taste

    Die ASCII D IN - Taste Ist die ’CAPS LOCK / ASCII DIN’- Taste gedrückt, so erscheint betätigen einer Taste, soweit vorhanden, das graue Zeichen. Drücken Sie also die Taste mit dem schwarzen ’+’ Zeichen, so erscheint auf dem Bildschirm ein ’ß* so, wie es auf der Taste grau abgebildet ist.
  • Seite 52: Weitere Grafiktasten

    Weitere Grafiktasten , und * W W W F 5 rf I r n 1 » 1 "11 C . E 9 3 B ■ J i . S B ’ M M i , mmmMMm i n ir ■ a « v a i’S.B B 0 S i i 9 B B a o iiia m -'"...
  • Seite 53 Verlassen Sie wieder den Textmodus (wiederum mit SHIFT und ’C=’). Im Textmodus werden bekanntlich aus den SHIFT-Grafikzeichen Großbuchstaben. Da auch die hier behandelten fünf Tasten SHIFT-Grafikzeichen enthalten, geben wir diese Zeichen ein, um festzustellen, ob der Textmodus hier etwas verändert. Löschen Sie also nochmals den Bildschirm und betätigen diese fünf Tasten, diesmal zusammen mit SHIFT.
  • Seite 54: Die Leertaste

    Schalten Textmodus bitte aus, bevor fortfahren. Die Leertaste Auch diese Taste finden Sie an jeder Schreibmaschine wieder. Bei Ihrem Computer brauchen Sie ebenfalls nicht darauf zu verzichten, Leerzeichen zwischen die Wörter zu setzen. Befindet sich Stelle, Leerzeichen erscheinen soll, bereits ein anderes Zeichen, so wird dieses natürlich gelöscht.
  • Seite 55 Stelle nach rechts rücken, doch dies ist sehr umständlich und somit nicht angebracht. Mit der Leertaste können auch Zeichen von links nach rechts gelöscht werden. Versuchen Sie es selbst: Drücken Sie die Taste CLR/HOME, um zum linken Rand der obersten Bildschirmzeile zu gelangen.
  • Seite 56: Die Inst/Del - Taste

    Die IN ST/DEL - Taste B B yPTF^.a B a s a l B W U S ä f ' ■i.i r .i i i i p p s s a a a B i i B i M i B B B a a a B i i i i a a a n r W V B ’B B B a ' a S B B H I ^ a w m a m tm...
  • Seite 57 Löschen Sie nun den Bildschirm und tippen den folgenden Satz ab: TIPPFEHLER SIND UNVERZEIHLICJ Bei der Eingabe des letzten Buchstabens ist ein Fehler unterlaufen. Tipp-Ex ist hier nicht notwendig. Auf Tastendruck wird der zuletzt eingegebene Buchstabe gelöscht. Drücken Sie dazu die Taste INST/DEL Nun können Sie hier den richtigen Buchstaben einsetzen, und der Tippfehler ist vergessen.
  • Seite 58 Doch dieses Beispiel zeigt nicht den überragenden Vorteil dieser Taste. Spielen wir ein weiteres Beispiel durch. Geben Sie, nachdem Sie den Bildschirm gelöscht haben, den folgenden Satz ein: TIPPFEHLER SIND UNVERRZEIHLICH Auch hier hat sich ein Tippfehler eingeschlichen: Zwei ’R’ sind hier nicht angebracht. Es ist nicht notwendig, das letzte Wort ab dem Tippfehler nochmal zu schreiben.
  • Seite 59 Bewegen Sie den Cursor auf das zu löschende ’R’ des 1:48-* fehlerhaften Satzes. Dazu drücken Sie die Tasten SHIFT und CURSOR LINKS/RECHTS gleichzeitig. Wenn Sie nun die Taste INST/DEL (ohne SHIFT) drücken, wird das ’R’ links neben dem Cursor gelöscht und der Rest, einschließlich des Zeichens unter dem Cursor, nach links aufgerückt.
  • Seite 60: Ich Mache Nimals Fehler

    Einmal - wie bereits beschrieben - die DEL^Funktion, mit der Sie Zeichen links vom Cursor löschen können. Die zweite Funktion wird wie üblich mit der SHIFT-Taste aktiviert. Die Einfügefunktion Ihres COMMODORE 128 ist sehr beliebt, doch überzeugen Sie sich selbst an dem folgenden Beispiel.
  • Seite 61 Jedem, der in der Schule ein wenig aufgepaßt hat, wird dieser Fehler sicher sofort ins Auge gefallen sein. Es wäre nun sehr umständlich, wenn man alle Zeichen bis zum Fehler löschen und neu eingeben müßte. Da gerade diese Einfügefunktion sehr oft benötigt wird, ist Sie mit den Tasten SHIFT und INST/DEL sofort abrufbereit.
  • Seite 62 nach rechts zum Ausgangspunkt bewegen, können Sie die Texteingabe fortsetzen. Selbstverständlich können auch mehrere Zeichen einfügen. Dazu drücken entsprechenden Postition mehrmals die INST/DEL- mit der SHIFT-Taste. Wenn beide Tasten gedrückt halten, tritt eine automatische Wiederholung in Kraft. Die Taste INST/DEL wird dann selbständig...
  • Seite 63: Die Ctrl-Taste Bringt Farbe Ins Spiel

    ■ n ■ a m mmmmm rn-m B s a i a a.a a ' I* i f I a i 3 W ' i ¥ Sicher ist Ihnen bekannt, daß Ihr COMMODORE 128 16 Farben darstellen kann. Sicher warten auch schon lange darauf, diese selbst hervorzuzaubern.
  • Seite 64 um. Halten Sie z.B. CTRL gedrückt und tippen auf die Taste ’T, schreiben sofort schwarzer Schrift. Die acht Tasten und die zugehörigen Farben: Taste Beschriftung Farbe BLK (black) schwarz WHT (white) weiß CYN (cyan) türkis PUR (purple) violett GRN (green) grün BLU (blue) blau...
  • Seite 65: Weitere Farbenpracht Mit Der C= - Taste

    2 grün heiIgrün blau heiIblau gelb grau 3 Das sind nun die 16 mit dem COMMMODORE 128 darstellbaren Farben. Mit zu den Farben gehören drei Grauabstufungen. Wenn Sie die verschiedenen Graustufen einmal auswählen einige Zeichen damit schreiben, werden feststellen, daß...
  • Seite 66: Reverse Zeichendarstellung

    Versuchen Sie nun einmal, die ersten 16 Zeilen Bildschirms mit jeweils einer Farbe und dem Zeichen ’A’ zu füllen. Achten Sie auf den rechtzeitigen Farbwechsel. Die Zeile mit der Farbe Blau ist natürlich nicht zu erkennen, da Sie mit der Hintergrundfarbe identisch ist. Reverse Zeichendarstellung Ü...
  • Seite 67: Reverse Ist Nun Ausgeschaltet

    umgekehrt. Das ’B’ sieht demnach dann so aus: 00000000 Wenn Sie bei der Farbauswahl zufällig die Taste ’9’ zusammen CTRL betätigt haben, sind schon unfreiwillig reversen Zeichen konfrontiert worden. reverse Zeichendarstellung wird Tasten ’CTRL’ und ’9’ eingeschaltet. Löschen Sie nun den Bildschirm und schreiben in die erste Zeile den Text REVERSE IST NUN AUSGESCHALTET Nachdem Sie den Cursor zum Anfang der zweiten Zeile...
  • Seite 68 Jetzt sehen Sie bestens, was reverse Zeichendarstellung bedeutet. Natürlich muß dies auch wieder auszuschalten sein. Die Taste rechts neben der ’9’, also die Taste ’0’, schaltet den Reverse-Modus zusammen mit CTRL wieder aus. Halten Sie dazu die CTRL-Taste gedrückt und tippen kurz auf die Taste ’0’.
  • Seite 69: Fertigprograme - Laden Und Starten

    • Arbeit erstellte Programme erwecken ihn zum Leben. Der Softwaremarkt des COMMODORE 128 ist für den C 64 Modus sehr umfangreich. Viele der angebotenen Programme sind bereits oder werden sicher in Kürze auch für den 128er Modus angeboten.
  • Seite 70: Laden Von Diskette

    Laden von Diskette Die meisten Programme werden nur als Diskettenversion auf den Markt gebracht. Dafür gibt es viele Gründe. Z.B. ist es für einen Anwender bequem, wenn ein Programm schnell geladen und somit einsatzbereit ist. Darüber hinaus Datenverwaltung einem Diskettenlaufwerk wesentlich komfortabler und schneller. Die Effektivität des Datenzugriffs nimmt großen Einfluß...
  • Seite 71: Laden Von Kassette

    Ein korrekter Ladevorgang sieht wie folgt aus: BASIC m COMMTOORE f i s ßvtrt Ali Ri:GHMr|Esi-RÖElf 1 . Ö ft& l K G . ¡i f t g C H jw e r c i ii f l : « Nach Eingabe des Ladebefehls meldet der Rechner mit "SEARCHING FOR daß...
  • Seite 72: Ladeprobleme Von Diskette

    Ladeprobleme von Diskette Welche Fehler können beim Laden Diskette auftreten werden sie behoben? Grundsätzlich werden Fehler durch eine Meldung und/oder durch blinkende Leuchtdiode am Laufwerk signalisiert. Der erste Fehler kann nach dem Befehl Ladeversuch mit ’SHIFT’ - ’RUN/STOP’ auftreten. Die rote Leuchtdiode blinkt und der Rechner meldet "7FILE NOT FOUND ERROR".
  • Seite 73: Ladeprobleme Von Kassette

    der sich ein besseres Bild von der fehlerhaften Diskette machen kann. Ladeprobleme von Kassette Auch eine Kassette besteht magnetischem Aufzeichnungsmaterial, das leicht beschädigt werden kann. Wenn Sie bei einer Musikkassette nur ein leichtes, kaum störendes Kratzen hören, so kann dies bereits das Laden Programms unmöglich machen.
  • Seite 74: Der Erste Befehl

    Zeichen auf den Bildschirm zu schreiben. Die wenigsten unserer Leser erwarben ihren COMMODORE 128 für diesen Zweck. Für alle diejenigen, die sich im letzten Kapitel etwas langweilten, wird es in diesem Kapitel interessanter. Wir wollen nun den Computer dafür nutzen, wofür er ja einzig und allein geeignet ist,...
  • Seite 75 Zeile nicht Rechner weitergegeben, sondern nur der Cursor zum Anfang der nächsten Zeile befördert. Sie schließen somit die Zeile ab und schreiben in der nächsten Zeile weiter. Ihr COMMODORE 128 ist mit der Programmiersprache BASIC ausgerüstet versteht Befehle dieser Sprache.
  • Seite 76: Der Print-Befehl

    Leute, die jede freie Minute dem hochverehrten Computer widmen. Zeitungsanzeigen wie "Verkaufe meinen CBM 128, Scheidung droht" sind keine Seltenheit mehr. Grundsätzlich gilt es, gesundes Maß Zeit opfern, um das Hobby der Programmierung in BASIC zur hellen Freude werden zu lassen.
  • Seite 77: Rechnen Mit Print

    Taschenrechner Hand haben, schalten COMMODORE 128 ein! Ich selbst schalte auch oft den Rechner nur für kleine Berechnungen ein. Viele meiner Bekannten haben dann oft ironisch gefragt "was, rechnen kann man damit auch?". Das wäre ja auch ein Unding, wenn man mit einem Computer, der immerhin das zwanzigfache eines Taschenrechners kostet, nicht rechnen könnte.
  • Seite 78 für Addition - für Subtraktion für Multiplikation für Division Nur ist das Rechnen mit Ihrem Computer nicht vergleichbar mit einem Taschenrechner. Hier können Sie z.B. nicht T2*2=’ eingeben, bekanntlich ohne Befehl nichts läuft. gibt immer experimentierfreudige Leser, dies trotzdem versuchen werden. Was dann geschieht, ist etwas verwirrend.
  • Seite 79 Wie wird nun ’12*2’ korrekt errechnet und ausgegeben? Die Lösung ist einfach; Geben Sie dazu den Befehl ’PRINT 12*2’ ein. Beachten Sie: Immer wenn Sie einen Befehl eingeben, müssen Sie diesen mit RETURN abschließen. Was Sie auf dem Bildschirm schreiben, ist dem Rechner egal. Ihn interessiert nur das, was Sie ihm mit RETURN zur Ausführung überlassen.
  • Seite 80 Doch nun weiter mit den Grundrechenarten. Berechnen Sie nun hintereinander ’12+2’, ’12-2’, ’12*2’ und ’12/2’. Ihr Bildschirm sollte nachher folgenden Bildschirm gleichen: Haben Sie es geschafft? Gut, dann dürfen Sie wieder eine Sprosse höher Erfolgsleiter Hobby-Programmierer steigen. Nein, dann lesen Sie bitte den letzten Abschnitt nochmals aufmerksam durch.
  • Seite 81: Die Klammerechnung

    Die Klammerrechnung besteht also Möglichkeit, beliebige Kettenrechnungen durchzuführen. Ein praktisches Beispiel: Es soll der Gesamtpreis von drei Teppichstücken ermittelt werden. Der Quadratmeterpreis beträgt 23.80 DM. Das erste Stück umfaßt 2.45 m * 2.80 m, das zweite Stück 4.50 m * 3.85 m und das dritte Stück 2.75 m * 4.80 m.
  • Seite 82: Exponentialschreibweise

    Exponentialschreibweise Der Rechner stellte das Ergebnis mit 5 Nachkommastellen dar. Es ist eine sogenannte Fließ- oder Gleitkommazahl. Grundsätzlich wird neun Stellen genau gerechnet. Ergibt sich eine Zahl mit drei Stellen vor dem Komma, so wird automatisch auf 6 Stellen nach dem Komma gerechnet. Sollte die Zahl 999999999 überschreiten, so wird wieder auf neun Stellen genau...
  • Seite 83: Textausgabe Mit Print

    Sie über das Rechnen mit den vier Grundrechenarten im Direkt-Modus wissen sollten. Weitere mathematische Funktionen finden Ihrem Handbuch COMMODORE 128. Textausgabe mit PRINT Neben Zahlen können auch Texte, sogenannte "Strings" (Zeichenketten), mit PRINT ausgegeben werden. Voreilige Versuche wie ’PRINT GUTEN TAG’ werden kläglich scheitern.
  • Seite 84 Obwohl der Befehl nicht den gewünschten Erfolg verbuchen kann, erscheint keine Fehlermeldung. Der Rechner hat den Befehl also ausgeführt. Nur was hat er ausgeführt? Woher Null? Dies sind Probleme, ersten Gehversuchen mit BASIC immer wieder auftreten. Die Fragen sind ohne vorzugreifen schwer beantworten.
  • Seite 85 Na also, nach dem ersten Fehlversuch hat es nun doch geklappt. Der Rechner wünscht Ihnen einen guten Tag {er macht bekanntlich all das, was Sie von ihm verlangen). Übrigens: Wenn Sie bisher allzu zaghaft mit Ihrem Rechner umgegangen sind jeden Befehl vorher dreimal...
  • Seite 86: Steuerzeichenausgabe Mit Print

    Steuerzeichenaugabe mit PRINT Ein Programm muß selbstverständlich in der Lage sein, z.B. Bildschirm löschen, weitere Daten auszugeben. Es wäre ja undenkbar, wenn ein Programm den Benutzer auffordern würde, SHIFT-Taste CLR/HOME-Taste zu drücken, damit der Programmablauf fortgesetzt werden kann. Steuerzeichen werden in Strings übernommen und mit einem reversen Symbol gekennzeichnet.
  • Seite 87 In dem Moment, in dem Sie die RETURN-Taste drücken, um Befehl "abzuschicken", wird Bildschirm Ausgabe des Strings gelöscht. Was passiert wohl, wenn Sie dieses Steuerzeichen hinter "GUTEN TAG" setzen? Richtig, Bildschirm wird nach Ausgabe des Strings sofort gelöscht. Der String ist somit kaum zu erkennen. Hier eine Liste...
  • Seite 88 Wenn Sie diesen Befehl nun mit RETURN dem Rechner übergeben, sehen Sie den Erfolg; Doch nicht Cursorsteuerungszeichen, sondern auch Farben und reverse Zeichendarstellung können mit einem PRINT-Befehl eingesetzt werden. Auch hier geben Sie an der gewünschten Stelle im String die Farbe entweder mit der CTRL- oder mit der C= - Taste ein.
  • Seite 89 Haben Sie es geschafft? Es ist eigentlich recht einfach, Steuerzeichen Strings einzubinden. müssen beachten, daß sobald das erste Anführungszeichen gesetzt wurde, sämtliche Steuerlasten bis auf INST/DEL nicht mehr zu verwenden sind. Der Nachteil ist ersichtlich: Wenn Sie ein String mit einem Anführungszeichen begonnen haben und feststellen, daß...
  • Seite 90: Vereinfachte Print-Eingabe

    1. Cursor nach links zum Buchstaben ’N’ bewegen. 2. Tasten SHIFT und INST/DEL drücken. 3. Cursor wieder rechts hinter dem ’G’ positionieren. Da hier aber noch ein String erstellt wird, scheitert schon der erste Punkt. Versuchen Sie es selbst. Halten Sie die Taste SHIFT gedrückt und tippen viermal auf die Taste CRSR LINKS/RECHTS.
  • Seite 91: Pi Und Potenzierung

    Geben Sie anstelle des Befehls PRINT das Fragezeichen ein, so erspart man sich damit etwas Arbeit, zumal der Befehl PRINT der am häufigsten verwendete Befehl ist. Es ist also egal, ob Sie nun ’PRINT 3*7’ oder ’? 3*7’ eingeben. Probieren Sie es selbst einmal aus. liegt Ihnen, PRINT-Befehl...
  • Seite 92 Stellen nach dem Komma. Der COMMODORE 128 hält diese Konstante für Berechnungen bereit. Rufen Sie das PI einmal auf den Bildschirm. Geben Sie dazu PRINT ein. Das PI erhalten Sie mit SHIFT und der Taste PFEIL HOCH/PI.
  • Seite 93 2 hoch 3 bedeutet 2*2*2, also 8 10 hoch 4 bedeutet 10*10*10*10, also 10000 ersten Beispiel ’2’ Basis ’3’ Exponent. Doch Schluß Mathematik-Nachhilfeunterricht. Beim COMMODORE128 wird zur Potenzierung zwischen der Basis und dem Exponent ein ’Pfeil nach oben’ gesetzt. Rechnen Sie nun einmal 2 hoch aus.
  • Seite 94: Kombinieren Von Strings Mit Zahlen

    Kombinieren von Strings mit Zahlen - Ä-- 'i - * ' Die Tasten spielen eine große Rolle, wenn Strings und Zahlen kombiniert werden sollen. Aber welche? Wenn Sie z.B. eine Zeile wie "2.5 MAL 2.5 = 6.25" ausgeben wollen, indem Ergebnis gleichzeitig errechnet wird, so wird ein String und eine anschließende...
  • Seite 95 Ein durch SEMIKOLON abgeschlossener PRINT-Befehl hat zur Folge, daß weiterer PRINT-Befehl nicht nächsten Zeile, sondern in der gleichen Zeile hinter dem ersten PRINT erfolgt. Doch hierzu erfahren Sie später mehr. Geben Sie nochmals den letzten Befehl ein, ersetzen aber alle Semikolons durch ein Komma. Ein Tip: Benutzen Sie den komfortablen Bildschirm-Editor und "laufen"...
  • Seite 96: Trennen Von Befehlen

    Das Komma trennt auch die einzelnen Werte, aber mit größerem Abstand. Wenn Sie die Abstände auszählen, so werden Sie feststellen, daß der Abstand zwischen den Ziffern jeweils 10 Zeichen beträgt. Dadurch wird eine leicht formatierte Ausgabe von Zahlenkolonnen ermöglicht. Zur Trennung von Strings wird das Komma nur selten genutzt.
  • Seite 97 Sie können natürlich auch drei oder vier Befehle eingeben und durch Doppelpunkte trennen. Es ist nur darauf zu achten, daß zwei Zeilen nicht überschritten werden. Hier läßt sich auch sehr gut die Wirkung des Semikolons nach dem ersten PRINT-Befehl verdeutlichen. Löschen Sie den Bildschirm und geben Sie die beiden PRINT-Befehle nochmals ein.
  • Seite 98: Das Erste Programm

    DAS ERSTE PROGRAMM Mit dem ersten Programm ist nicht etwa die ARD gemeint, sondern Ihre ersten Gehversuche bei der Programmierung in BASIC. Verdrängen Sie Ihren eventuellen Unmut dieses "heiße Eisen" anzufassen. BASIC eine Programmiersprache für den Einsteiger, vor der niemand allzu großen Respekt zu haben braucht.
  • Seite 99: Die Zeilennumerierung

    Die Zeilennumerierung Ein Programm ist also eine Folge von Befehlen. Doch wodurch wird diese Reihenfolge bestimmt? Nun bei der Programmiersprache BASIC wird jeder Befehl (auch Statement genannt) mit einer Nummer versehen, deren Reihenfolge bestimmt, wie das Programm ablaufen wird. Stellen sich z.B.
  • Seite 100 Richtig, jeder Befehl erhält eine Zeilennummer, die bestimmt, in welcher Reihenfolge das Programm abgelaufen wird. ZEILENNUMMERN DÜRFEN BEIM COMMODORE 128 IM BEREICH VON 0 BIS 63999 LIEGEN. DIE SCHRITT­ WEITE IST OHNE BEDEUTUNG. Die Schrittweite bestimmt, um welche Zahl die Folgezeile größer...
  • Seite 101 Bildschirms ein. Erinnern wir uns: Das Steuerzeichen zum Bildschirmlöschen ist SHIFT mit CLR/HOME. Diese Zeile sollte dann wie folgt aussehen: Dies ist nun die erste Zeile unseres Programms. Die zweite Zeile soll eine Zeichenkette ausgeben. Dies erfolgt bekanntlich ebenfalls mit dem Befehl PRINT. Wir arbeiten mit einer Schrittweite von 10.
  • Seite 102: Programmstart

    8 ^ 6 E T E I L T DURCH B E R B IB T “ Nun ist das Programm fertig und braucht nur noch gestartet zu werden. Programmstart Der 128er hat die soeben eingegebenen Programmzeilen nicht nur auf dem Bildschirm, sondern auch in seinem BASIC-Speicher festgehalten.
  • Seite 103: Programmänderung

    Dieses Programm ist zwar noch sehr klein, für Anfänger jedoch ein Erfolgserlebnis. Sie können dieses Programm nun so oft starten, wie es Ihnen gefällt. Überzeugen sich selbst: Geben nochmals ’RUN’ ein und nochmals und... Programmänderung Es kann durchaus Vorkommen, daß an einem Programm Änderungen vorgenommen werden müssen.
  • Seite 104 Sie den Bildschirmeditor. Bewegen Sie zunächst den Cursor auf die entsprechende Zeile. Danach ändern Sie die Zeile, indem Sie die Zahl 18 gegen 21 und die Zahl 6 gegen 7 austauschen. werden dazu einfach überschrieben. Schließlich geben Sie diese Zeilen nochmals mit der Taste RETURN als Programmzeilen ein.
  • Seite 105: Verzweigung

    Verzweigung Programme werden nur selten wie im letzten Beispiel stur von vorne nach hinten abgearbeitet. Oft werden, meist zu bestimmten Bedingungen, Zeilen übersprungen anderer Stelle fortgesetzt. Hier Sprung erforderlich. DER BEFEHL 'GOTO' SPRINGT ZU EINER ANGEGEBENEN ZEILE In BASIC gibt es den Befehl ’GOTO’, der eine hinter dem Befehl angegebene Zeilennummer anspringt.
  • Seite 106: Unterbrechen Eines Programms

    haben Zeile eine sogenannte Endlosschleife erstellt, Programm ständig Zeilen 110 bis 130 durchläuft. Wenn wir nicht eingreifen, läuft Programm noch stundenlang weiter. DIE TASTE 'RUN/STOP' UNTERBRICHT DEN PROGRAHMABLAUF Drücken Sie also nun die Taste ’RUN/STOP’. Das Programm hält an und meldet ’BREAK IN ...". In welcher Zeile das Programm nun gestoppt wird, ist rein zufällig.
  • Seite 107: Speichern Und Laden Von Programmen

    Speichern und Laden von Programmen Wenn Sie den Rechner nun ausschalten, so ist das Programm verloren. Da Sie sicherlich nicht nach jedem Einschalten des Geräts das gewünschte Programm eintippen möchten, können die Programme auf ein externes Speichermedium abgelegt werden. Beim 128er dies entweder...
  • Seite 108 speicherbefehl an. Wenn Sie das Programm unter dem gleichen Namen auf einer Diskette abspeichern möchten, so geben Sie den Befehl ’DSAVE'TEST-1"’ ein. Was dann weiter geschieht, sehen Sie im folgendem Bild: Nachdem Programm abgespeichert ist, meldet Rechner auch hier wieder ’READY’. Wenn Sie dieses Programm nun wieder von der Diskette in Rechner laden...
  • Seite 109: Löschen Eines Programms

    Löschen eines Pogramms bereits bekannt, erlischt Programm beim Ausschalten des Rechners. Doch auch ohne Ausschalten kann das Programm gelöscht werden. DER BEFEHL >NEW‘ LÖSCHT DAS IM SPEICHER BEFINDLICHE PROGRAMM Geben Sie nun den Befehl ’NEW’ ein, so wird das Programm gelöscht.
  • Seite 110: Basic Einführung

    BASIC EINFÜHRUNG Dieses Kapitel soll eine Einführung Programmiersprache BASIC darstellen. Dabei sollen nicht alle BASIC-Befehle stur nacheinander beschrieben werden, sondern wird eine Adressenverwaltung Schritt für Schritt aufgebaut, in der die Befehle dann zum gegebenen Zeitpunkt beschrieben und eingesetzt werden. Der Leser dieses Buches soll...
  • Seite 111: Datenorganisation

    Die Daten sind nicht Bestandteil des Programms. Dies wäre zwar möglich, aber diese Daten können dann nur vom Programmierer und nicht vom Anwender verwaltet werden. Eine Änderung der Daten hätte gleichzeitig eine Änderung des Programms zur Folge, was wir sofort wieder vergessen können.
  • Seite 112 Bleibt nun noch die Frage, was gespeichert werden soll. "Adressen natürlich" werden viele spontan reagieren, doch sind wir uns überhaupt im Klaren, was alles zu einer Adresse gehören soll? Natürlich nicht. Sammeln wir doch einmal alles, woraus sich eine Adresse zusammensetzen könnte: - Anrede - Vorname...
  • Seite 113: Rechnerinterne Speicherung Der Daten

    Rechnerinterne Speicherung der Daten Mit einer sequentiellen Datei läßt sich zwar sehr bequem arbeiten, jedoch gibt es hier auch Nachteile gegenüber anderen Organisationsformen. Stellen Sie sich vor, gesamte datei mit den Adressen befindet sich auf einer Kassette. Sie möchten nun eine ganz bestimmte Adresse aus dieser Datei haben.
  • Seite 114: Variablen

    Variablen bekannt, werden die Datensätze Rechner gespeichert. Die Frage ist nur wo und wie werden sie gespeichert? RECHNERINTERNE DATEN WERDEN IN VARIABLEN GESPEICHERT Variablen sind also Zauberwort. Variablen sind Speicherbereiche im 128er, die mit einem Namen versehen werden. Durch Angabe dieses Namens kann auf diese Speicherbereiche zugegriffen werden.
  • Seite 115: Ariablenverarbeitung

    Beispiele numerische Variablen: Beispiele Stringvariablen: A l$ Vom BASIC Interpreter des CBM 128 werden jedoch auch längere Variablennamen angenommen. beachten jedoch, daß nur die ersten zwei Zeichen als Variable anerkannt werden. Der Variablenname "BETRAG" wird als Variable "BE" angelegt! Somit Variablenbezeichnung "BETRAG"...
  • Seite 116 Ist doch einfach, oder? Soll diese Variable ausgegeben werden, so lautet der Befehl PRINT EK geben Sie beide Befehle nun einmal in den Rechner ein. Soll die Variable EK wieder gelöscht werden, so geben Sie sinngemäß den Befehl EK=0 ein. Die Variablen können aber auch für Rechenoperationen benutzt werden.
  • Seite 117 Was geschieht? Natürlich, der in S$ gespeicherte String wird ausgegeben. Soll diese Stringvariable wieder gelöscht werden, so muß ein sogenannter Leerstring in S$ gespeichert werden. S$="" Leerstring besteht also zwei unmittelbar aufeinanderfolgenden Anführungszeichen. Selbstverständlich kann diesen Strings nicht gerechnet werden. Auch nicht, wenn eine Zahl als String abgelegt wird.
  • Seite 118: Tabellen

    haben jetzt zwei wichtigsten Variablentypen kennengelernt. numerische Variable String variable, durch zusätzliches ’$’ gekennzeichnet ist. solchen Variablen können auch Adressen gespeichert werden. Dies jedoch nicht sinnvoll. Speicherung mehreren gleichartig aufgebauten Datensätzen Rechner werden andere Variablen benötigt. Tabellen Tabellen werden in der Datenverarbeitung oft eingesetzt. Wenn Sie mehrere Daten einer Gruppe im Rechner speichern wollen, so ist es sehr umständlich, jedem Datenelement dieser Gruppe einen Variablennamen zu geben.
  • Seite 119 Eine Tabellen- oder Arrayvariable ist z.B. A$(l). Auch XY(212) ist eine numerische Arrayvariable. Der Index ist also beliebig groß anzusetzen. Es gibt hier nur zwei Dinge zu beachten: 1. Übersteigt der Index die Zahl 10, so muß für diese Tabelle Speicherplatz reserviert werden. 2.
  • Seite 120 Doch nun zurück zu unseren fünf Städtenamen, die in einer Tabelle abgelegt werden sollen. Wenn die Variable D$ verwendet wird, werden die Städte mit den folgenden Zuweisungen gespeichert. 10 D$(1)="B0NN" 20 D$(2)="PARIS" 30 D$(3)="LONDON" 40 D$(4)="R0M" 50 D$(5)="MADRID" Man könnte hier auch zuvor die Anweisung ’DIM D$(5)’ geben, wenn der Index 6-10 nicht benötigt wird.
  • Seite 121 Diese beiden soeben erstellten Tabellen bezeichnet man als eindimensional, da Sie nur einen Index besitzen. Nun können Tabellen aber beliebig viele Indizes erhalten. Anstatt der beiden zuvor auf gebauten Tabellen kann auch eine zweidimensionale Tabelle erstellt werden. Beachten Sie zunächst die entsprechende Befehlsfolge: 10 DIM D$(1 20 D$(0,1)= "BONN"...
  • Seite 122: Dateneingabe Über Tastatur

    Kommen wir nun wieder zu unserer Adressenverwaltung zurück. Eine solche zweidimensionale Tabelle ist ideal für die Aufnahme der sequentiellen Adressendatei. Der erste Index numeriert die Datensätze, der zweite Index numeriert die Datenfelder innerhalb der Datensätze. Da unsere Datensätze 8 Felder enthalten, zweite Index maximal 8.
  • Seite 123 Problem: Dateneingabe über Tastatur Befehl: INPUT “string";v1 Parameter: "String” - beliebige Zeichenkette - Variable, in der die Eingabe gespeichert wird. INPUT "ZAHL";X Beispiel: Es wird der String "ZAHL" ausgegeben und anschließend ein numerischer Wert von der Tastatur eingelesen und in der Variablen X gespeichert.
  • Seite 124 Sie brauchen natürlich nicht das gesamte Programm neu einzugeben, sondern nur die Zeile 30 entsprechend zu ändern. Sie bemerken, daß der String vor dem INPUT nur dokumentierende Aufgaben hat. Die Dokumentation des INPUT kann aber auch ein PRINT in der Zeile zuvor übernehmen: 10 PRINT"KREISBERECHNUNG"...
  • Seite 125: Schleifen

    Schleifen Lassen Sie uns zunächst eine Übung machen, die dann später zur Schleifensteuerung führt. Es sollen fünf Namen über die Tastatur eingelesen werden. Diese Namen sollen in dem Array N$ gespeichert werden. Mit den bisher beschriebenen Befehlen würden wir folgendes Programm aufbauen: 10 PRINT“EINGABE DER NAMEN"...
  • Seite 126 Beispiel: FOR A=1 TO 20 STEP 1 Die Variable A wird nach jedem Durch­ lauf um 1 erhöht, bis sie den Wert 20 erhält (20 Schleifendurchläufe) Bemerkung: Ist das Inkrement 1, so kann der Para­ meter STEP weggelassen werden. Der Be­ fehl aus dem Beispiel könnte demnach auch so eingegeben werden: FOR A=1 TO 20...
  • Seite 127 Mit diesen beiden Befehlen können wir nun beliebige Schleifen programmieren. Wenden wir uns wieder anfangs beschriebenen Dateneingabe mit INPUT zu. Hier sollten fünf Namen in ein Array mit dem Index 1 bis 5 eingelesen werden. Wenn wir nun eine Schleife einsetzen, so benötigen wir nur eine INPUT-An Weisung, in der der Index Variable,...
  • Seite 128 Wir können das Programm nun dahingehend erweitern, daß nach Eingabe der Namen alle nochmals ausgegeben werden. Dazu muß eine weitere Schleife angehängt werden: 60 FORI=1 TO 5 70 PRINT "NAME ";N$(D 80 NEXT I also alles nicht kompliziert, vielleicht zu Anfang angenommen haben. Was kann man noch mit einer Schleife anfangen? Nun, z.B.
  • Seite 129 Sollen die Namen im vorherigen Beispiel nicht von 1 bis 5, sondern umgekehrt von 5 bis 1 eingelesen werden, so ist dies durchaus möglich. Der Anfangswert der Schleife ist dann 5, der End wert 1 und das Inkrement, also der STEP-Parameter -1.
  • Seite 130: Erste Reaktion Des Programms

    Erste Reaktionen des Programms Nachdem wir so weit in BASIC fortgeschritten sind, wird es Zeit, mit dem Adressenprogramm zu beginnen. Wie sollte ein solches Programm anfangen? Wenn Sie schon einmal vergleichbare Programme bedient haben, wissen Sie sicher, was ein solches Programm nach dem Starten auf dem Bildschirm zeigt.
  • Seite 131 diesem Code ab. Auch die Steuerzeichen (CLR/HOME, CURSOR LINKS/RECHTSusw.)habeneinenbestimmtenASCII-Code.Zum Codieren der Zeichen nach dem ASCII-Code gibt es zwei Funktionen , die zunächst beschrieben werden. Problem: Umwandlung eines ASCII-Codes in ein Zeichen Funktion: CHR$(n) Parameter: n - ASCII-Code (0-255) Beispiel: FOR 1=32 TO 127: PRINT I;CHR$(I):NEXT I zeigt alle in der Betriebsart GROSS/ GRAFIK darstellbaren Zeichen und deren ASCII-Code an.
  • Seite 132: Setzen Der Hintergrund- Und Rahmenfarbe

    Dies ist eine Menge an Informationen, die erst einmal verdaut werden muß. Wie gesagt, arbeitet der Rechner intern nur mit den ASCII-Codes der Zeichen. Demnach versteht er auch, wenn Sie diesen ASCII-Code und nicht das Zeichen selbst eingeben. Doch warum haben wir zum Löschen des Bildschirms nicht das übliche Steuerzeichen verwendet? Wenn...
  • Seite 133 Problem: Setzen von Bildschirm- und Textfarben Befehl: COLOR zi.fa Parameter: zi - Code für Farbziel (0-6) fa - Code für Farbe (1-16) Beispiel: COLOR 4,1 setzt den Farbcode 1 (schwarz) für das Farbziel 4 (Rahmen) Bemerkung: Liegen 'zi' oder 'fa' außerhalb des erlaubten Bereiches , so folgt die Fehlermeldung "ILLEGAL QUANTITY ERROR"...
  • Seite 134 Farbe Code Farbe Code orange schwarz weiß braun hellrot grau 1 türkis violett grau 2 heiIgrün grün heiIblau blau gelb grau 3 Code Farbziel Hintergrund (40 Zeichen) BiIdschirmrand Schriftfarbe Die Farbziel-Codes 1-3 und 6 werden wir im Kapitel über Grafik besprechen.
  • Seite 135: Unterprogramme

    Unterprogramme Im weiteren Verlauf der Adressenverwaltung werden wir die BASIC-Zeilen zur Ausgabe des Programmkopfes noch öfter benötigen. Damit wir nicht immer wieder diese Zeilen eingeben müssen, was das Programm auch unnötig verlängern würde, machen wir daraus ein Unterprogramm (auch Routine genannt).
  • Seite 136 nun die Zeilen 100-170 zu einem Unterprogramm, das von beliebiger Stelle im späteren Programm aufgerufen werden kann. Wie Sie der Befehlsbeschreibung entnommen haben, müssen wir dazu dieses Unterprogramm mit dem Befehl RETURN abschließen. Dazu hängen wir wieder eine Zeile an: 180 RETURN Nun dürfen wir dieses Programm jedoch nicht mehr starten.
  • Seite 137: Das Menü

    DAS MENÜ Schauen wir zunächst, welche Fortschritte unser Programm gemacht hat: 10 COLOR 4,3:C0L0R 0,3:COLOR 5,8 99 GOTO 1000 100 REM =================== 110 REH PROGRAMMKOPF 120 REM =================== 130 PRINT CHR$(147); 140 FOR I=1TO40:PRINT"=";:NEXT 1 150 PRINT" ADRESSENVERWALTUNG" 160 FOR I=1TO40:PRINT"=";:NEXT I 170 PRINT:PR1NT 180 RETURN 1000 GOSUB 100...
  • Seite 138 möchten, sollten wir Ihn aus der Adressendatei nehmen. Wir benötigen also eine Funktion "löschen": -5- ADRESSEN LOESCHEN Nun kommt das wichtigste: Alle Daten nutzen uns wenig, wenn wir diese nicht ausgeben, also abrufen können. Mit folgendem Teilprogramm sollen Adressen ausgegeben werden: -6- ADRESSEN AUSGEBEN Kein Programm sollte mit dem Netzschalter des Rechners beendet werden.
  • Seite 139: Die Abfrage Mit If

    in schwarz ausgegeben. 1105 PRINT:PR1NT AUSWAHL ";:COLOR 5,8 1110 COLOR 5,1:PRIMT“ 1115 INPUT F Die Abfrage mit IF Was aber, wenn der Anwender eine ungültige Zahl eingibt, z.B. 9? Dies sollte vom Programm unterbunden werden. Die Frage ist nur wie? Wir müssen feststellen, welcher Wert eingegeben wurde, also...
  • Seite 140 Vergleichoperatoren eingesetzt werden: SYMBOL BEDEUTUNG GLEICH > GRÖSSER ALS KLEINER ALS < GRÖSSER ALS ODER GLEICH > = , = > KLEINER ALS ODER GLEICH < = , = < UNGLEICH < > . X Der IF-Befehl prüft also zuerst, ob die Bedingung wahr ist.
  • Seite 141 Befehle bleiben dem Fortgeschrittenen Vorbehalten. Kommen wir zu unserem Problem zurück. Wir wollten abfragen, ob der Anwender eine Zahl eingegeben hat, die nicht Bereich liegt. Wie muß entsprechende IF-Anweisung codiert werden? Schauen Sie sich die Lösung an: IF F=0 OR F>7 THEN ... Ja, was dann? Geben wir einfach eine Fehlermeldung in der letzten Bildschirmzeile aus und gehen zurück zur Zeile 1000.
  • Seite 142: Berechnetes Goto

    die Falscheingabe fest und gibt die Fehlermeldung aus. Wenn ein gültiger Wert eingegeben wurde, müssen wir nun die nötigen Schritte einleiten. Das heißt, es muß zum entsprechenden Programmteil verzweigt werden. Berechnetes GOTO Um abhängig von der Variablen F im Programm verzweigen, gibt es einen Befehl, der dies auf leichteste Weise ermöglicht.
  • Seite 143 In welchen Zeilen nun die Programmteile untergebracht werden, ist im folgenden ersichtlich: Zei le Progranmteil 5000 DATEI LADEN 10000 DATEI SPEICHERN 15000 ADRESSEN EINGEBEN 20000 ADRESSEN AENOERN 25000 ADRESSEN LOESCHEN 30000 ADRESSEN AUSGEBEN 35000 PROGRAMM BEENDEN Wir werden nun ein Programmteil nach dem anderen fertigstellen.
  • Seite 144 300 REM ==================== 310 REM KOEPFE PROGRAMMTEILE 320 REM ==================== 330 PT$(1)=" DATEI LADEN ■ ' 340 PT$(2)=" DATEI SPEICHERN " 350 PT$(3)="ADRESSEN EINGEBEN" 360 PT$(4)="ADRESSEN AENDERN " 370 PT$(5)="ADRESSEN LOESCHEN" 380 PT$(6)="ADRESSEN AUSGEBEN" 390 PT$(7)="PROGRAMM BEENDEN " 400 GOSUB 100 410 PRINT"...
  • Seite 145: Adressen Eingeben

    Adressen eingeben Nun wird es ernst. Der erste anspruchsvolle Programmteil muß erstellt werden. Doch fangen wir erst einmal mit dem einfachsten an: 15000REM =================== 15010 REM ADRESSEN EINGEBEN 15020 REM =================== 15030 GOSUB 300 weit, gut. erstes wird also Programmkopf sowie der Name des Programmteils ausgegeben. Danach müssen wir den Zähler für den zuletzt eingegebenen Datensatz um eins erhöhen.
  • Seite 146 15050 PRINT 15060 FOR 1=1 TO 7 15070 PRINT F$(I); 15080 INPUT D$(Z,I) 15090 NEXT I Starten Programm nachdem diese Zeilen eingegeben haben und wählen die Funktion 3 aus. Was nun geschieht, bewirkt allein diese ausgetüftelte Schleife. Ein gesamter Adressensatz wird mit 4 Befehlen eingelesen. Innerhalb der Schleife wird zunächst der Name des Feldes ausgegeben.
  • Seite 147 der Cursor einmal nach oben gesetzt, damit die erneute Abfrage nicht eine Zeile unter letzten Abfrage nochmals erscheint. Programm wird nun mit einer weiteren Frage fortgesetzt. 15160 PR INT"WEITERE EINGABEN (J/N)"; 15170 X$="":INPUT X$ 15180 IF X$="J" THEN 15000 15190 IF X$="N" THEN 1000 15200 PRINT CHR$(U5);:GOTO 15160 Hier muß...
  • Seite 148: Adressen Ändern

    15180 IF X$="J" THEN 15000 15190 IF X$="N" THEN 1000 15200 PRINT CHR$(145);:GOTO 15160 Adressen ändern Nun möchten wir dem Anwender unseres Programms die Möglichkeit geben, einzelne Felder eines bestimmten Datensatzes ändern. benutzen dazu Funktionstasten. Mit der Taste Fl soll vorwärts, und mit Taste rückwärts "geblättert"...
  • Seite 149 20060 FOR 1=1 TO 7 20070 PRINT I;F$(I);D$(ZZ,I) 20080 NEXT I müssen solange Tastatur abfragen, irgendeine Funktionstaste gedrückt ist. Der Befehl dazu ist GET. Problem: Lesen eines Zeichens von Tastatur Befehl: GETKEY v1 Parameter: v1 • Stringvariable, in der die gedrückte Taste gespeichert werden soll Beispiel: GETKEY X$...
  • Seite 150 zugeordnete String ausgegeben. Geben Sie einmal Befehl KEY 1,"TESTSTRING" ein. Betätigen Sie dann die fl-Taste. Sie sehen, daß das Wort ’TESTSTRING’ so oft ausgegeben wird, wie Sie die fl-T aste betätigen. Wenn Sie nur den Befehl ’KEY’ ohne Zahl oder Komma eingeben, so werden die Belegungen aller Funktionstasten auf dem Bildschirm ausgegeben.
  • Seite 151 Die Funktionstasten F2, F4, F6 und F8 werden mit SHIFT bedient. Da wir nur mit den Funktionstasten F l, F3, F5 und F7 arbeiten, müssen alle anderen Tasten Programm ignoriert werden. 20100 IF ASC(X$)<133 OR ASC(X$)>136 THEN 20090 Alle ASCII-Codes unterhalb von 133 und überhalb von 136 werden nicht akzeptiert.
  • Seite 152 die Datei über- oder unterschreiten wollten. Dann werden Tasten einfach ignoriert Zeile 20090 verzweigt. dieser Zeile wird erneut Tastatur abgefragt. fehlt noch eigentliche Änderung Datensatzes ab Zeile 20160. Dort soll zuerst nach der Nummer und anschließend nach dem neuen Inhalt des zu ändernden Feldes gefragt werden.
  • Seite 153 20160 PRINT 20170 INPUT"FELDNUMMER (1-7) ";X 20180 IF X<1 OR X>7 THEN PRINT CHR$(145);:GOTO 20170 20190 PRINT 20200 INPUT"NEUER INHALT: ";D$(ZZ,X) 20210 GOTO 20040...
  • Seite 154: Adressen Löschen

    Adressen löschen Beim Löschen der Adressen wenden wir eine andere Technik als beim Ändern an. Sie sollen ja möglichst vielseitg programmieren lernen. Wir müssen den Vor- und Zunamen der zu löschenden Adresse angeben. Ist er nicht bekannt, so kann man ihn mit dem "blättern" in "ADRESSE AENDERN" ermitteln.
  • Seite 155 25055 IF Z=0 THEN 1000 25060 INPUT "VORNAME: ";D1$ 25070 INPUT "NAME : ";D2$ Wir erzeugen wieder den Programmkopf in Zeile 25030. Danach rufen wir die Routine ab Zeile 500 auf, die bekanntlich überprüft, ob überhaupt Daten im Rechner vorhanden sind. Nun lesen wir Vorname und Name der zu löschenden Adresse ein.
  • Seite 156 Wird die Schleife komplett durchlaufen, also nicht durch auffinden des Namens abgebrochen, so ist der Name nicht gefunden worden. Hier geben wir eine Meldung aus und verzweigen zurück ins Menü. Wir müssen das Programm nun an der Stelle fortsetzen, zu der beim Auffinden des gesuchten Namens verzweigt wird.
  • Seite 157 entsprechenden Tabellenplatz zu löschen. Würden wir dies tun, so bleibt die Größe der Tabelle trotz Löschen einer Adresse erhalten. Dies ist nicht im Sinne des Erfinders. Alle Adressen, die sich hinter der zu löschenden Adresse befinden, müssen eins nach vorne aufrücken. Wenn z.B. die Adresse mit dem Index 5 gelöscht wird und 7 Adressen im Rechner gespeichert sind, so rückt die 6.
  • Seite 158: Adressen Ausgeben

    25130 GOSUB 300:PRINT 25135 FOR 1=1 TO 7 25140 PRINT F$(I);D$(X,1) 25150 NEXT I 25155 PRINT 25160 INPUT"ADRESSE LOESCHEN (J/N) ";X$ 25170 IF X$="J" THEN 25200 25180 IF X$="N" THEN 1000 25190 PRINT CHR$(145);:GOTO 25160 25200 FOR Y=X TO Z-1 25210 FOR 1=1 TO 7 25220 D$(Y,I)=D$(Y+1,I) 25230 NEXT I...
  • Seite 159 dies später noch mehrmals benötigt wird. Falls Drucker ausgewählt wurde, wird dieser nun mit dem Befehl OPEN geöffnet. Ein neuer Befehl, der sofort beschrieben wird. Problem: Öffnen eines Kanals Befehl: OPEN nr,ga,sa Parameter: nr - Nurmer des Kanals (1-255) ga - Adresse des Geräts, zu dem der Kanal geöffnet werden soll.
  • Seite 160 30080 GOSUB 300:PRINT 30090 PRINT"SUCHBEGRIFFE:" 30100 PRINT"----.." 30110 PRINT 30120 FOR 1=1 TO ..NEXT I 30130 FOR 1=1 TO 7 30140 PRINT F$(I); 30150 INPUT S$(I) 30160 NEXT I Zeile erstellt einen...
  • Seite 161 aktuellen Feld ein Suchbegriff eingegeben wurde. Wenn nein, wird der Zähler S, der bei einem den Suchbegriffen entsprechenden Datensatz den Wert 7 enthält, um eins erhöht und zum NEXT verzweigt. Ist ein Suchbegriff eingegeben worden, so wird dieser mit dem tatsächlichen Feld verglichen.
  • Seite 162 In diesen Zeilen dreht sich fast alles um die Ausgabe des gefundenen Datensatzes. Die Zeilen 30250 bis 30280 bilden eine Schleife, in der die 7 Felder der Adresse mit ihrer Bezeichnung ausgegeben werden. Abhängig vom Inhalt der Variablen G$ wird die Adresse auf dem Drucker oder auf dem Bildschirm dargestellt.
  • Seite 163: Datei Sichern

    30110 PRINT 30120 FOR 1=1 TO 7:S$(I)="":NEXT 1 30130 FOR 1=1 TO 7 30140 PRINT F$(I); 30150 INPUT S$(I) 30160 NEXT I 30170 FOR Y=1 TO Z 30180 S=0 30190 FOR 1=1 TO 7 30200 IF S$(I)="" THEN S=S+1:GOTO 30220 30210 IF D$(Y,I)=S$(I) THEN S=S+1 30220 NEXT I 30230 IF S<>7 THEN 30300...
  • Seite 164 10000 REM =================== 10010 REH DATEI SPEICHERN 10020 REH =================== 10030 GOSUB 300:PRINT 10040 GOSUB 500:IF Z=0 THEN 1000 Diese Zeilen sind uns nicht mehr unbekannt. Bevor wir die Daten auf die Diskette speichern können, muß diese erst eingelegt werden. Die folgenden Zeilen fordern dazu auf. 10050 PRINT"BITTE DATENDISKETTE EINLEGEN"...
  • Seite 165: Datei Laden

    Diskette DOPEN #x,"Dateiname",W(rite) noch einfacher als bei dem Drucker. Das erste, was wir auf die Diskette schreiben, ist die Anzahl der zu übermittelnden Datensätze, die bekanntlich in Z gespeichert ist. Danach senden wir die einzelnen Felder Adressentabelle Hilfe einer verschachtelten Schleife, die Ihnen nicht mehr unbekannt ist.
  • Seite 166: Programm Beenden

    5040 PRINT»BITTE DATENDISKETTE INS LAUFWERK LEGEN!» 5050 PRINT 5060 INPUT»DRUECKEN SIE DANACH RETURN»;X$ Hier wird wieder Hinweis ausgegeben, Datendiskette einzulegen. 5070 DOPEN #1,"ADRESSEN" 5080 INPUT#1,Z 5090 FOR Y=1TO Z 5100 FOR 1=1 TO 7 5110 INPUT#1,D$(Y,I) 5120 NEXT I 5130 NEXT Y 5140 CLOSE 1 Hier wird die Datei "ADRESSEN"...
  • Seite 167 35000 REM ==================== 35010 REM PROGRAMM BEENDEN 35020 REM ==================== 35030 GOSUB 300:PRINT 35040 IF Z=0 THEN 35150 Die ersten Zeilen werden Ihnen sicher schon langweilig. Doch die Zeile 35040 sieht ungewohnt aus. Wenn Z=0 ist, also wenn keine Daten im Rechner gespeichert sind, wird das Programm ohne weiteres sofort beendet.
  • Seite 168 nun gelernt haben, können Sie entweder zur Verwirklichung eigener Ideen oder Durchführung individueller Programmändeungen, speziell bei dieser Adressenverwaltung verwenden. Falls einige Abschnitte nicht sofort verstanden haben, arbeiten diese ruhig nochmals durch. Möchten Sie BASIC bis ins letzte Detail lernen, so gibt es auf dem Markt ein reichhaltiges Angebot an BASIC-Lernbüchern.
  • Seite 169: Das Gesamte Programm Auf Gelistet

    10 COLOR 4,3:COLOR 0,3:COLOR 5,8 20 DIM D$(200,7) 30 F$(1)="ANREDE " 31 F$(2)="VORNAHE " 32 F$(3)="MAME • ' 33 F$(4)="STRASSE " 34 F$(5)="PLZ/ORT " 35 F$(6)="TELEF0N " 36 F$(7)="BEMERKUNG ■ ' 50 N=1:FOR I=1T07STEP2:KEYI,CHR$(132+N):KEYI+1,CHR$(136+N):N=N+1:NEXT 99 GOTO 1000 100 REM =================== 110 REM PROGRAMMKOPF 120 REM ===================...
  • Seite 170 +";:COLOR 5,8:PR1NTPT$(F);‘ -COLOR 5,4:PR1NT"+” 430 PRINT" +++++++++++++++++++":COLOR 5,8 440 PRINT" 450 RETURN 500 REM ================= 510 REM DATEN IM RECHNER? 520 REM ================= 530 IF Z>0 THEN 560 540 FE$="KEINE DATEN IM RECHNER!" 550 GOSUB 200 560 RETURN 1000 GOSUB 100 1005 COLOR 5,4:PRINT"...
  • Seite 171 5140 CLOSE 1 5150 PRINT:PRINT"OATEN SIND GELADEN!" 5160 SLEEP 2 5170 GOTO 1000 10000 REM =================== 10010 REM DATEI SPEICHERN 10020 REM =================== 10030 GOSUB 300:PR I NT 10040 GOSUB 500:IF Z=0 THEN 1000 10050 PRINT"BITTE DATENDISKETTE EINLEGEN" 10060 PRINT 10070 INPUT"DRUECKEN SIE DANACH RETURN";X$ 10075 SCRATCH "ADRESSEN"...
  • Seite 172 15180 IF X$="J" THEN 15000 15190 IF X$="N" THEN 1000 15200 PRINT CHR$(145);:GOTO 15160 20000 REM ==================== 20010 REM ADRESSEN AENDERN 20020 REM ==================== 20030 ZZ=1 20040 GOSUB 300 20050 PRINT 20060 FOR 1=1 TO 7 20070 PRINT I;F$(I);D$(ZZ,I) 20080 NEXT I 20090 GETKEY X$ 20100 IF ASC(X$)<133 OR ASC(X$)>136 THEN 20090 20110 IF ASC(X$)=136 THEN 1000...
  • Seite 173 25150 NEXT I 25155 PRINT 25160 INPUT"ADRESSE LOESCHEN (J/N) ";X$ 25170 IF X$="J" THEN 25200 25180 IF X$="N" THEN 1000 25190 PRINT CHR$(145);:GOTO 25160 25200 FOR Y=X TO 2-1 25210 FOR 1=1 TO 7 25220 D$(Y,I)=D$(Y+1,I) 25230 NEXT I 25240 NEXT Y 25250 Z=Z-1 25260 GOTO 1000 30000 REH ===================...
  • Seite 174 30270 IF G$="D" THEN F$(I);D$(Y,I) P R I N T # 1 , 30280 NEXT I 30285 IF G$="D" THEN 30300 PRINT: INPUT*'DRUECKEN SIE RETURN'*;X$ 30290 30300 NEXT Y 30310 GOSUB 300:PRINT:PRINT 30320 PRINT"DATEIENDE" 30330 INPUT"DRUECKEN SIE RETURN";X$ 30340 IF G$="D" THEN CLOSE 1 30350 GOTO 1000 35000 REM ==================== 35010 REM...
  • Seite 175: Die Zusatzgeräte

    Aufzeichnungsgerät für Programme und Daten erforderlich. Da gibt es einmal die preisgünstige Kassettenaufzeichnung mit der COMMODORE-Datassette. Dem anspruchsvollen Einsteiger bietet sich schnelle Speicherung Disketten mit dem COMMODORE Diskettenlaufwerk V C -1571. Erfahrungsgemäß sich erwiesen, daß fast jeder Anwender Datassette früher oder später...
  • Seite 176 ein Zeichen (Buchstabe, Ziffer usw.). Wenn Sie eine vom 128er "bearbeitete" Kassette Ihren herkömmlichen Rekorder einlegen, so können Sie dieses ins Kreischen übergehende Piepsen hören. Mit zwei Tönen werden also Programme, Adressen sonstige Daten verschlüsselt. Beachten Sie jedoch, daß dieses Verfahren von Computer zu Computer unterschiedlich ist.
  • Seite 177 Nun muß bestimmt werden, zu welchem Gerät der Kanal geöffnet werden soll. Jedes Gerät besitzt eine Geräteadresse (ga), OPEN-Befehl zweiter Parameter gekennzeichnet wird. Typische Gerätenummer (ab Werk) sind: Datassette : Adresse 1 Drucker : Adresse 4 Diskettenlaufwerk : Adresse 8 Bleiben wir bei der Datassette.
  • Seite 178 Programm fortfahren kann. Wäre Ihnen das angenehm? Mit diesen Informationen sind wir nun in der Lage, z.B. Daten eine Kassette zu speichern. Wie sieht der entsprechende Befehl aus, wenn der Kanal die Nummer 1 und die Datei den Namen "TESTDATEI" erhalten soll? OPEN 1,1,1,''TESTDATEI"...
  • Seite 179 ERROR bedeuted Fehler, somit wird diese Fehlermeldung als "Datei bereits offen" interpretiert. öffnet man einen Kanal zum Schreiben, so muß dieser erst wieder geschlossen werden bevor man ihn zum Lesen öffnet. Doch wie schließt man einen Kanal? Wer etwas Englisch kann, ahnt sicher schon, wie der entsprechende Befehl heißt.
  • Seite 180 Stringvariable angegeben werden, eingelesene Zeichen festhält. Alle folgenden Beispiele sind somit einsetzbar: PRINT#1,"DUESSELDORF" PR1NT#4,A$ PRINT#2,235 PRINT#8,LA INPUT#1,NA$ INPUT#4,SA GET#9,X$ Natürlich muß Kanalnummer (Filenummer) OPEN-Befehls entsprechenden Übertragungsbefehls übereinstimmen. Beim OPEN-Befehl können zwei Sekundäradressen zum Schreiben einer Datei angegeben werden. 1 - Schreiben ohne Endemarke 2 - Schreiben mit Endemarke Was ist nun eine Endemarke? In der Fachsprache nennt man dieses Kennzeichen auch end-of-file Marke (EOF).
  • Seite 181 nach letzen Datensatz gezielt abbrechen, folgenden Beispiele bringen hier mehr Licht hinein. Spielen wir zuerst die Methode mit der Sekundäradresse 1 durch. Große Dateien mit einheitlichem Datensatzaufbau werden wie bei der Adressenverwaltung rechnerintern in einem Array (Tabelle) gespeichert. Anfang Programms muß...
  • Seite 182 180 PR1NT#1,D$ 190 GOTO 160 200 CLOSE 1 200 END Hier wird Array nicht benötigt. Beim späteren Einlesen wird es jedoch wieder eingesetzt. Die Datei muß mit Sekundäradresse 2 geöffnet werden, da das einlesende Programm unbedingt die Endemarke benötigt. Übrigens: Wenn Sie diese Programmteile als Unterprogramme (Routinen) verwenden möchten, so ändern Sie den Befehl ’END um in ’RETURN’...
  • Seite 183 Codieren wir nun den Teil eines Programmes, der die Daten mit Sekundäradresse 1, also ohne Endemarke und mit führender Datensatzanzahl speichert. 200 REM *** SPEICHERN OHNE ENDEMARKE *** 210 PRINT"BITTE DATASETTE VORBEREITEN" 220 PRINT"UND RETURN DRUCKEN" 230 INPUT X$ 240 0PEN1,1,1,"TESTDATEI" 250 PRINT#1,Z: REM SPEICHERN SATZZAEHLER 260 FOR 1=1 TO Z 270 PRINT#1,D$(Z)
  • Seite 184: Das Diskettenlaufwerk Vc -1571

    300 REH *** LESEM MIT ENDEMARKE *** 310 PRINT"BITTE DATASETTE VORBEREITEN" 320 PRINT"UND RETURN DRUECKEN" 330 INPUT X$ 340 Z=1 350 OPEN 1,1,0,"TESTDATEI" 360 INPUT#1,D$(Z) 370 IF ST=64 THEN 400 380 Z=Z+1 390 GOTO 360 400 CLOSEI 410 END Auch hier werden Datensätze...
  • Seite 185 Sektoren gegliedert werden. Die Anzahl der Spuren und der Sektoren auf einer Spur ist von dem Typ des Laufwerks abhängig. Meist werden 40 oder 80 Spuren verwendet. Bei dem COMMODORE-Laufwerk 1571 sind es 35 Spuren auf jeder Diskettenseite. folgende Bild...
  • Seite 186 Schauen Öffnungen schwarzen Diskettenhülle an; KERBE FÜR SCHREIBSCHUTZ MITTELLOCH LOCH FÜR MAGNETKOPF Das Mittelloch wird im Laufwerk auf die Achse des Motors gelegt, Diskette ständig dreht. Durch Mittelloch erreicht der Schreib/Lesekopf die magnetische Folie. Durch einen zweiten Motor, sogenannten Schrittmotor, kann der Kopf auf jede beliebige Spur...
  • Seite 187: Die Systembefehle Der Vc

    Betriebssystem. Dieses eigene Betriebssystem, (Disk Operating System) belegt k e i n e n Platz im Speicher Ihres COMMODORE 128 und bietet trotzdem eine Reihe sehr leistungsfähiger Befehle, die den Befehlssatz Ihres COMMODORE Computers wesentlich erweitern. Eine weitere Besonderheit neben...
  • Seite 188: Formatieren Von Disketten

    Formatieren von Disketten Befehl Formatieren lautet "HEADER". NEW-Befehl hat folgendes Format: HEADER ■'Diskettenname",Iid Der Diskettename umfaßt maximal 16 Zeichen und ist im Kopf Directorys enthalten. Identi­ fikationsmerkmal (ID) Diskette besteht zwei beliebigen Zeichen, an denen das Laufwerk erkennt, ob eine andere Diskette eingelegt...
  • Seite 189 Laufwerk erkannt. Um jedoch festzustellen, welcher Fehler aufgetreten ist, muß Systemvariable gelesen werden. Diese Systemvariable kann nur gelesen und nicht beschrieben werden. Sollten versuchen einen String zuzuordnen, werden Fehlermeldung; SYNTAX ERROR erhalten. Geben Sie einmal den Befehl: PRINT DS$ Wenn die rote Leuchtdiode an der 1571 nicht geblinkt hat, also kein Fehler...
  • Seite 190 Bildschirm: (Bitte beachten Sie, daß nicht alle V C -1571 derselben Test/Demo-Diskette geliefert werden, COMMODORE auch hier manchmal nicht angekündigte Änderungen vornimmt). • ' zx 2a '•1541test/defno "how to use" "how part two" "vie-20 wedge" "c-64 wedge"...
  • Seite 191 bam" “ V i e w “check disk“ “display t&s“ “performance test“ prg “sequential file“ prg “random fial“ Diesem Directory sind viele Informationen zu entnehmen. Sehen wir uns die 1. Zeile, den Kopf des Directory, einmal an. Das Zeichen ’0’ in dieser Zeile hat keine besondere Bedeutung.
  • Seite 192: Löschen Von Files

    Löschen von Files Natürlich muß Möglichkeit bestehen, nicht mehr benötigte Fites zu löschen. Dazu ist der Befehl ’SCRATCH’ vorgesehen. Bevor dieser Befehl angewandt wird, sollte man sich stets überzeugen, daß der im SCRATCH-Befehl angegebene Name auch mit dem des zu löschenden Files übereinstimmt.
  • Seite 193: Verbinden Von Files

    File, das eröffnet, aber noch nicht abgeschlossen wurde, kann nicht umbenannt werden! Verbinden von Files Aus mehreren sequentiellen Files kann ein neues File gebildet werden. Wenn z.B. jeden Monat eine sequentielle Datei Ausgaben Ihrem Haushalt erstellt haben und diese mit den Namen AUSG.Ol, AUSG.02 usw.
  • Seite 194: Die Jokerzeichen

    Die Jokerzeichen gibt zwei Jokerzeichen: Stern ( * ) Fragezeichen (?). Der Stern an einer bestimmten Stelle des Filenamens symbolisiert, daß das erste File auf der Diskette relevant ist, das mit den Zeichen vor dem Stern beginnt. Ein Beispiel: DLOAD "TEST*" Dieser Befehl lädt das erste Programm, dessen erste vier Buchstaben "TEST"...
  • Seite 195 Geben Sie z.B. DIRECTORY "*=P" ein, so werden nur die Programme auf der Diskette ausgegeben. Auch können mit dem SCRATCH-Befehl z.B. alle sequentiellen Files auf der Diskette mit folgendem Befehl gelöscht werden: SCRATCH "*=S" Natürlich kann diesem Stern auch noch eine Zeichenfolge angegeben...
  • Seite 196: Sequentielle Datenverwaltung Mit Der Floppy

    stellen 6 bis 7 "01" enthalten, sind angesprochen Sequentielle Datenverwaltung mit der Floppy Diskettenlaufwerk sollte nicht ausschließlich Programmspeicherung genutzt werden. Spätestens dann, wenn Sie eigene Programme schreiben, die eine große Datenmenge verwalten haben, werden eine schnelle Datenorganisation benötigen. sequentielle Datenspeicherung ist zwar nicht die schnellste, aber die einfachste Methode, Daten zu verwalten, was gerade für Anfänger wichtig sein dürfte.
  • Seite 197: Das Eröffnen Einer Sequentiellen Datei

    Das Eröffnen einer sequentiellen Datei Um eine Datei zu erstellen, muß sie vorher geöffnet werden. Beim öffnen zum Beschreiben wird Folgendes durchgeführt: 1. Es wird geprüft, ob auf der Diskette bereits ein File mit diesem Namen existiert. Wenn wird Fehlermeldung "FILE EXISTS" in DS$ ausgegegeben. 2.
  • Seite 198 Soll eine Datei Schreiben geöffnet werden, bereits auf der Diskette existiert, so muß wie bei dem Befehl ’DSAVE’ dem Filenamen der Klammeraffe anschließendem Doppelpunkt vorangestellt werden!. Beispiel: DOPEN #1," :ADRESSEN",W Bei der Eröffnung der Datei muß der Modus ’W’ für eine sequentielle Datei, welche...
  • Seite 199: Der Drucker

    Der Drucker Daß Drucker früher oder später jedem professionellen Computersystem gehört, braucht nicht mehr diskutiert zu werden. Wir wollen uns nun der Anwendung eines Druckers zuwenden. Dieser Einstieg ist auf jedem Drucker praktizierbar. Nähere Beschreibungen über Möglichkeiten, alle 128er anschließbare Drucker bieten, würden den Rahmen dieses Buches sprengen.
  • Seite 200 Kommen wir nun zu der Bedienung des Matrixdruckers, nachdem er an den 128er angeschlossen ist. Wie sie bereits der Adressenverwaltung entnehmen konnten, ist zunächst ein OPEN-Befehl erforderlich. OPEN fn,4,sa Es muß also eine Filenummer, die Geräteadresse 4 und eine Sekundäradresse eingegeben werden. Die Sekundäradresse ist es, die schon viele Anwender eines Druckers zum Verzweifeln gebracht hat.
  • Seite 201 auf den Bildschirm gehen, auf den Drucker zu lenken, gibt es einen speziellen Befehl. CMD fn Dieser Befehl leitet die Bildschirmausgabe auf das mit 'fn' im OPEN-Befehl bestimmte Gerät Ein Beispiel: Laden BASIC-Programm (z.B. Adressenverwaltung). folgenden Befehle werden Direktmodus eingegeben jedesmal RETURN abgeschlosssen.
  • Seite 202: Der Joystick

    Zeile zurückgesprungen, wie der Joystick nicht bedient wird (JOY(2)=0). Wurde der Feuerknopf betätigt, so wird zu dem Wert von JOY 128 hinzuaddiert. Das wird in Zeile 30 entsprechend berücksichtigt. Ab Zeile 40 wird dann die vollzogene Joystickbewegung ausgegeben. Sie müssen als Einsteiger dieses Programm nicht bis ins Letzte verstehen.
  • Seite 203: Der Hauptspeicher

    PRINT-Befehle gegen andere Anweisungen ersetzen. INTERNES Der Hauptspeicher Wie der Name des 128ers schon sagt, besitzt er 128 KByte Speicher. Da ein KByte 1024 Bytes entspricht, hat der 128er einen Speicher mit 131072 Speicherstellen. Was ist nun hier alles untergebracht? Die Begriffe Betriebssystem und BASIC-Interpreter sind in diesem Buch schon gefallen.
  • Seite 204: Der Sys-Befehl

    Befehlen programmiert werden um die Grafik- und Soundmöglichkeiten nutzen zu können. Bei dem umfangreichen BASIC des COMMODORE 128 ist das nicht mehr erforderlich. Es wird daher hier auch nicht näher darauf eingegangen, da es Sie nur unnötig belasten würde.
  • Seite 205: Anwendungsbeispiele

    Gebiete Softwaremarktes werden beschrieben und die wichtigsten Kriterien erläutert. Kurzum ist dieses Kapitel eine echte Hilfe vor dem Kauf. Dateiverwaltung Anwender Commodore haben unterschiedlichsten Interessen. Es gibt jedoch eine von Programmen, die jeder einsetzen kann. Dies ist die Dateiverwaltung, ermöglicht, beliebiges katalogisieren.
  • Seite 206 Diese Maske wird einmal erstellt und dann auf einer Diskette festgehalten. Wenn Sie nun später z.B. Daten eingeben möchten, so erscheint immer diese Maske, die dann nur noch ausgefüllt wird. Der Clou an einer Dateiverwaltung ist eine ausgeklügelte Datenauswertung. möglich, Datei nach beliebigen Kriterien zu duchsuchen und die gefundenen...
  • Seite 207: T Extverarbeitung

    für den 128er wird in Kürze sehr umfangreich sein. Die Entscheidung Kauf fällt somit nicht leicht. unterscheiden sich verschiedenen Text­ verarbeitungsprogramme für den 128er? Ein wichtiger Punkt ist der Zeichensatz. Amerikanische Text Verarbeitungsprogramme verfügen z.B. nicht über deutsche Umlaute. Da es beim 128er kein Problem ist, den Zeichensatz umzustellen, gibt...
  • Seite 208: Finanzbuchhaltung

    Dateiverwaltung z.B. Adressen ausgewertet werden, dann von der Textverarbeitung übernommen werden können. So ist es z.B. möglich, Rundschreiben zu erstellen, die nur an die vorher mit der Dateiverwaltung ausgewählten Adressen gesendet werden. Mit TEXTOMAT und DATAMAT ist dies möglich. Wie gesagt, ist ein Drucker unbedingt zum Einsatz einer Textverarbeitung erforderlich.
  • Seite 209: Fakturierung

    verpflichet, wenn er eine bestimmte Vermögens-, Umsatz­ oder Gewinngrenze überschreitet. Doch denjenigen, die unterhalb dieser Grenze liegen? Hier hat Einkommensteuergesetz sogenannte Einnahme/Überschußrechnung vorgesehen. Überschußrechnung wird der Gewinn durch Vergleich der Betriebsausgaben Betriebseinnahmen ermittelt. Dazu wird ein Kassenbuch geführt, das in der einen Spalte die Ausgaben und in der anderen die Einnahmen vorweist.
  • Seite 210: Grafik

    64.000 Bildpunkte gesetzt werden kann, können schönsten Bilder und Grafiken dargestellt werden. Durch das komfortable BASIC Ihres COMMODORE 128 ist es relativ leicht, eindrucksvolle Grafiken Bildschirm zaubern. Mit den folgenden Befehlen lassen sich Punkte, Linien und ganze geometrische Figuren zeichnen:...
  • Seite 211 1000 GOSUB 40000:G0SUB 100 Wenn Sie jetzt das Programm wie gewohnt mit ’RUN’ starten, baut sich ansprechendes Titelbild . in hochauflösender Grafik auf. Weiterführende Informationen zur Grafik-Programmierung finden Sie im Handbuch zum COMMODORE 128 und in den Literaturhinweisen im Anhang.
  • Seite 212: Sound

    Töne und die effektvollsten Geräusche erzeugen kann. Wie bei der Grafik sind auch zur Bedienung des Synthesizers komfortable BASIC-Befehle vorhanden. Da dies aber für einen Einsteiger zu kompliziert ist, werden wir auch die Soundmöglichkeiten des COMMODORE 128 nur kurz vorstellen. Genaueres...
  • Seite 213 Zeile 100 identisch, wenn Sie daß bei der Eingabe berücksichtigen, so können Sie sich Arbeit ersparen. Starten Sie die Routine dann mit ’RUN’ und genießen das Stück. entsprechenden Programm können Ihren COMMODORE 128 so durchaus zum Bühnenfähigen Synthesizer machen.
  • Seite 214: Sprites

    Formen darstellen. Wie das funktioniert läßt sich am einfachsten in der Praxis zeigen. Geben Sie dazu einmal folgenden Befehl; SPRDEF Ihr COMMODORE 128 zeigt Ihnen daraufhin einen roten Bildschirm mit einem großen Fenster in der linken, oberen Bildschirmecke. Darunter...
  • Seite 215 Was haben wir jetzt genau gemacht? Zuerst wurde durch den Befehl ’SPRDEF’ der Sprite-Editor aufgerufen. Dann haben wir festgelegt, daß das Sprite mit der Nummer 1 zu editieren ist. Das alte Sprite 1 wurde mit ’CLR’ gelöscht und ein neues Sprite 1 (Männchen) gezeichnet. Daraufhin haben wir den Sprite-Editor wieder verlassen.
  • Seite 216 10 SPRITE 1,1,2 20 MOVSPR 1,100,100 30 A=JOY(2) 40 IF A=0 THEM 30 50 IF A>127 THEN A=A-128:SPRITE 1,1,3,1,1,1 60 IF A=1 THEM MOVSPR 1,+0,-5 70 IF A=2 THEN MOVSPR 1,+5,-5 80 IF A=3 THEN MOVSPR 1,+5,+0 90 IF A=4 THEN MOVSPR 1,+5,+5...
  • Seite 217: Anhang

    ANHANG Adressenverwaltung auf Kassette 5000 REM ==================== 5010 REM DATEI LADEN 5020 REM ==================== 5030 GOSUB 300:PRINT:PRINT 5040 PRINT"BITTE DATENKASSETTE EINLEGEN UND ZU-" 5050 PRINT 5060 PRINT"RUECKSPULEN!" 5065 PRINT 5070 PRINT"DRUECKEN SIE DANACH RETURN"; 5080 INPUT X$ 5085 PRINT 5090 OPEN 1,1,0, "ADRESSEN" 5100 INPUT#1,Z 5110 FOR Y=1 TO Z 5120 FOR 1=1 TO 7...
  • Seite 218 10110 PRINT#1,Z 10120 FOR Y=1 TO Z 10130 FOR 1=1 TO 7 10140 PRINT#1,D$(Y,I) 10150 NEXT I 10160 NEXT Y 10165 CLOSE 1 10170 PRINT:PRINT"DATEN SIND GESICHERT! 10180 SLEEP 2 10190 GOTO 1000...
  • Seite 219: Stichwortregister

    Stichwortregister Abkürzungen 78 Array 107 ASCII-Code 118 Bedingung 127 Befehle 63 Control-Taste 51 Datei 99 Datei löschen 152/180 Dateiverwaltung 193 Dezimalpunkt 69 Dimensionierung 109 Directory 178 Editor 26 Escape 50 Fakturierung 197 Farben 51 Fehlermeldung 63 File 166 Finanzbuchhaltung 196 Floppyfehler 177 Formatieren 176 Funktionstasten 138...
  • Seite 220 Indizierung 108 Inkrement 116 Joker 182 Kanal öffnen 147/152/164 Klammerrechnung 69 Komma 82 Kopieren 181 Laden 58 Löschen 97 Menü 125 Pi 79 Potenzierung 80 Print 64 Problembeschreibung 98 Programm 86 Rahmenfarbe 120 Rechensymbole 66 RETURN-Taste 62 Reverse 54 Rundschreiben 196...
  • Seite 221 Strings 72/105 String variable 103 Synthesizer 200 Tabellen 106 Textausgabe 71 Textverarbeitung 194 Trennen 84 Umbenennen 180 Unterbrechung 94 Unterprogramme 123 Variablen 102 Variablen - numerisch 103 Variablen - alphanumerisch 103 Verbinden 181 Vergleichsoperatoren 128 Zehnerexponent 70 Zeichenmatrix 54 Zeilennummerierung 87...
  • Seite 223 ä rts -k o m p a tib e l, 3 B e tr ie b s ­ s y s te m e (e in s d a v o n C P /M ), 128 KB RAM u.v.m .
  • Seite 224 Falls S ie a u f d e m C o m m o d o re 128 d a s C P /M e in s e tz e n w o lle n , s o llte n S ie d ie s e s B u c h le s e n ! g ru n d s ä...
  • Seite 226: Das Steht Drin

    DAS STEHT DRIN: 128 für Einsteiger sollte Ihr erstes Buch zum Commodore 128 sein. Es bietet eine leichtverständliche Einführung in Handhabung, Einsatz und Programmierung Ihres neuen Rechners und setzt keinerlei Vorkenntnisse voraus. Aus dem Inhalt: - Die Geräte nach dem Auspacken...

Inhaltsverzeichnis