Profis helfen Einsteigern
Sind Sie Einsteiger und haben Fragen zu Ihrem neuen C 64? Brauchen Sie die Hilfe der Profis? Dann können Sie jetzt aufatmen. Wir führen Sie durch den anfangs unübersehbaren »Fragen-Dschungel«, der zwischen Ihnen und Ihrem Computer steht.
Wenn Sie Fragen haben, dann schreiben Sie uns. Wir werden Ihr Problem zusammen mit der Profi-Antwort veröffentlichen. Scheuen Sie sich nicht, denn praktisch jeder Einsteiger wird mit ähnlichen Problemen konfrontiert. Ihre Fragen schicken Sie bitte unter dem Stichwort »Profis helfen Einsteigern« an die Redaktion.
Warum passiert nichts, wenn ich auf die Funktionstasten drücke?
Die Funktionstasten beim C 64 sind leider nicht vorbelegt. Es gibt allerdings auf dem Markt eine große Anzahl von Basic-Erweiterungen, die die Funktionstasten mit nützlichen und oft gebrauchten Kommandos belegen. Im Basic V 2.0 des C 64 werden die Funktionstasten wie normale Tasten behandelt. Daher ist es möglich diese in eigenen Programmen abzufragen. Die Funktionstasten besitzen die ASCII-Werte 133 bis 140. Eine Abfrage sieht dann folgendermaßen aus: ;
60 GET A$
70 IF A$ = "" GOTO 60
80 IF A$ = CHR$(133) GOTO 1000
90 GOTO 60
1000 PRINT "SIE HABEN F1 GEDRUECKT!!!"
1010 END
In den Zeilen 60 und 70 wartet der Computer so lange, bis eine Taste gedrückt ist. In Zeile 80 überprüft der C 64, ob die gedrückte Taste dem ASCII-Wert 133 und somit dem Wert der Funktionstaste Fl entspricht. Ist dies der Fall, springt der Computer in die Zeile 1000, gibt die Nachricht aus und beendet das Programm. Ansonsten arbeitet er Zeile 90 ab und springt wieder zum GET in Zeile 60. Sollten Sie noch Probleme mit den einzelnen Befehlen und Anweisungen haben, nehmen Sie bitte Ihr Handbuch und lesen deren Bedeutung dort nach.
(rf)In vielen Listings der 64'er findet man Data-Zeilen, die wohl ein Maschinenprogramm darstellen sollen. Wie kommt man zu diesen DATA-Zeilen und was für eine genaue Bedeutung haben sie?
Diese DATA-Zeilen beziehen sich in Ihrem Fall auf Maschinenprogramme. Jeder Befehl in Maschinensprache ist auch durch eine Zahl darstellbar. Auf diese Weise kann man Maschinenprogramme in Basic-Programme einbinden. Wer keinen Assembler oder Maschinensprachmonitor besitzt, muß sogar auf diese Möglichkeit zurückgreifen. Um nun die einzelnen Zahlen, die die Maschinenbefehle verkörpern, in die gewünschten Speicherbereiche zu bringen, benötigen Sie eine FOR-NEXT-Schleife, die die in den DATA-Elementen abgelegten Zahlen in den Speicher transportiert (POKEt). Die erste Speicherstelle, in die gePOKEt wird, dient dann meistens als Einsprungadresse für das Maschinenprogramm, das Sie mit dem Befehl »SYS« adresse« aufrufen können. Das so erstellte Maschinenprogramm kann mit Hilfe eines Disassemblers angezeigt werden. Die DATA-Anweisung wird in einer späteren Folge des Einsteiger-Kurses ausführlich erklärt werden.
(rf)Gibt es eine Möglichkeit, die Fehler der Floppy 1541 abzufangen, so daß das Programm normal weiterlaufen kann?
Wenn Sie beispielsweise ein Programm nachladen wollen und nicht genau wissen, ob sich dieses auf der Diskette befindet, können Sie das Vorhandensein folgendermaßen abfragen:
10 OPEN 15,8,15
20 OPEN 1,8,0,"Programmname"
30 INPUT#15,A,B$,C,D
40 IF A<>0 GOTO 100
50 CLOSE 1:CLOSE 15
60 LOAD "Programmname"
100 PRINT"PROGRAMM NICHT GEFUNDEN"
110 CLOSE 15:CLOSE 1
In Zeile 10 wird der Fehler- und Befehlskanal der Floppy zum Auslesen geöffnet. In Zeile 20 eröffnen Sie das angeforderte Programm als Datei. Zeile 30 veranlaßt das Einlesen der Floppymeldung aus dem Fehlerkanal. Die Fehlernummer steht in A, der Text in B$, der Track (die Spur) in C und der Sektor in D. Ist A ungleich Null, liegt ein Fehler vor. Bauen Sie sich ruhig in Zeile 35 eine STOP-Anweisung in das Programm ein und sehen Sie sich die Variablen an. Konnte die Datei eröffnet werden, hat A den Wert Null, in B$ steht »ok« und die Variablen C und D stehen ebenfalls auf Null. Ist A im obigen Beispiel ungleich Null wird eine Fehlermeldung in Zeile 100 ausgegeben, die Sie nach Ihren eigenen Wünschen gestalten können. Bei einer Dateiverwaltung sollte nach jedem Dateizugriff eine Fehlerabfrage erfolgen, um alle Fehlerquellen auszuschalten. In diesem Fall reicht ein kleines Unterprogramm. In einer späteren Ausgabe werden die Möglichkeiten der Fehlerabfrage im Einsteiger-Kurs ausführlich erläutert.
(rf)Immer wieder lese ich etwas über Interfaces. Was ist das eigentlich genau und wozu wird es benötigt?
Interfaces (Schnittstellen) finden überall dort in der EDV Anwendung, wo sich zwei Geräte (oder Programm-Module) ‚bedingt durch Bauart oder Übertragungswerte nicht verstehen. Interface bedeutet übersetzt Schnittstelle. Über das Interface erfolgt der Austausch von Daten oder Steuerinformationen. Durch eine spezielle Schnittstellenanpassung lassen sich unterschiedliche Schnittstellen miteinander verbinden. Es gibt Standard-Schnittstellen, die in Normendefinition festgelegt sind, beispielsweise RS232C, V.24 oder IEEE 488. Sicherlich ist Ihnen bekannt, daß Ihr C 64 mit einer seriellen Schnittstelle (IEC) zum Anschluß von Drucker und Floppy ausgerüstet ist. Die Daten werden seriell übertragen, das heißt Bit für Bit. Diese Schnittstelle ist zwar nicht unüblich, findet aber in der Praxis nicht allzu häufig Verwendung. Die meisten Drucker sind vom Hersteller mit einer Parallelschnittstelle ausgerüstet. Mit Hilfe eines Interfaces kann man Drucker mit parallelem Dateneingang an die serielle Schnittstelle des C 64 anschließen. Bei der parallelen Datenübertragung werden die Bits nicht im Gänsemarsch, wie bei der seriellen, sondern nebeneinander gesendet. Natürlich nicht alle auf einmal, sondern immer in Gruppen zu acht Bits (= 1 Byte). Diese Methode ist um einiges schneller als die serielle. Das Interface wandelt nun ganz einfach die seriellen Signale des C 64 in parallele um.
(rf)Welche Vorteile hat ein Diskettenlaufwerk gegenüber der Datasette?
Bei beiden Geräten handelt es sich um sogenannte Massenspeicher. Allerdings bietet eine Diskettenstation gegenüber der Datasette einige Vorteile, die Sie nach einiger Zeit nicht mehr missen wollen. An erster Stelle steht hier die doch erheblich höhere Geschwindigkeit der Diskettenlaufwerke. Des weiteren können auf Kassette alle Daten nur sequentiell, das heißt der Reihe nach, abgespeichert werden. Vor allem bei einer Dateiverwaltung erweist sich die relative Zugriffsmöglichkeit (jeder Datensatz kann direkt angesprochen werden) der Floppy als großer Vorteil. Die Floppy legt auf der Diskette ein Inhaltsverzeichnis an, aus dem alle Programme und Dateien, die sich auf der Diskette befinden, zu ersehen sind. Wegen der viel höheren Verarbeitungsgeschwindigkeit ist eine Floppy bei großen Programmen und Datenmengen der Datasette vorzuziehen.
(rf)Ich habe versehentlich eine Diskette mit vielen Programmen darauf formatiert. Wie kann ich diese Programme wieder zurückholen?
Wenn Sie die Diskette ohne Angabe einer ID, (dabei handelt es sich um die beiden Zeichen im Diskettennamen nach dem Komma im »NEW«-Befehl), formatiert haben, wurde nur das Inhaltsverzeichnis gelöscht. Die Formatierung hat dann aber höchstens zwei Sekunden gedauert. In diesem Fall könnten Sie mit dem »Disk-Wizard« aus Ausgabe 5/86, Seite 54, die Diskette restaurieren. Da in der Regel mit ID formatiert wird, sind in diesem Fall alle Daten der Diskette unwiederbringlich verloren. Die Floppy 1541 überschreibt beim normalen Formatieren alle Sektoren.
(rf)Gibt es außer Basic noch weitere leicht erlernbare Programmiersprachen, die noch dazu leistungsfähiger sind?
Für den C 64 gibt es eine ganze Reihe von Programmiersprachen. Dabei handelt es sich größtenteils um Compilersprachen. Ein Compiler ist ein Programm, der das in einer bestimmten Sprache erstellte Programm in Maschinencode umwandelt, damit der Computer auch damit arbeiten kann. Eine konkrete Empfehlung kann von dieser Stelle nicht gegeben werden, da die Programmiersprache auf das jeweilige Anwendungsgebiet abgestimmt sein muß. Wollen Sie beispielsweise komplexe kaufmännische Anwendungen schreiben, empfehlen sich Sprachen wie Pascal, Cobol oder eben Basic. Für mathematische Anwendungen eignen sich am besten Assembler oder Fortran. Ein Manko haben allerdings alle diese Sprachen: Sie sind wesentlich komplizierter aufgebaut als Basic. Wegen leichter Erlernbarkeit empfehlen sich noch Comal und Logo. Sie sollten sich vielleicht mit Basic Grundkenntnisse in der Programmierung aneignen und später auf eine leistungsfähigere Hochsprache umsteigen. Eine umfassende Marktübersicht finden Sie in Ausgabe 8/86 ab Seite 44.
(rf)Mit meiner Floppy 1541 lassen sich des öfteren Programme nicht mehr richtig laden. Auch bei der Formatierung treten Fehler auf. Wie können diese Fehler behoben werden und was kostet das?
Die von Ihnen geschilderten Fehler können zwei Ursachen haben. Möglicherweise ist der Schreib-/Lesekopf Ihrer Floppy verschmutzt, durch Staubablagerungen oder ähnliches. In diesem Fall genügt es, die Floppy mit einem der überall erhältlichen »Floppy-Cleaner«, einer Art Reinigungsdiskette, zu säubern. Sollte diese Möglichkeit nicht zum gewünschten Erfolg führen, können Sie davon ausgehen, daß der Schreib-/Lesekopf nicht mehr in seiner Position steht. Mit etwas Geschick und unserer Anleitung aus Heft 10/85, Seite 32, können Sie dieses Übel beseitigen. Die Ursache für eine derartige Fehljustierung ist in der starken mechanischen und thermischen Beanspruchung der Teile zu suchen. Eine Wiederholung dieses Mangels ist also nach längerem Gebrauch nicht auszuschließen. Sollten Sie nach der Justierung des Schreib-/ Lesekopfes immer noch Probleme haben, hilft nur der Gang zu einer Reparaturwerkstatt.
(rf)