Nikolaus Heusler Archiv

Erschienen in 64'er Magazin, Ausgabe 11/1990 · Originaldatei: 11_90.TXT

Hinweis: Dies ist das an die Redaktion eingereichte Manuskript, nicht der gedruckte Endtext. Layout, Bildunterschriften, Korrekturen und Kürzungen der Redaktion können in der veröffentlichten Fassung abweichen.

Printfox und Star LC 10-C

Frage von Klaus-Peter Gölz aus der 64'er 6/90, Seite 52: Ich möchte das Programm »Printfox« an meinen Star LC 10-C anpassen. Welche Daten müssen beim Anpassungsprogramm SETUP eingegeben werden?

Wählen Sie den Punkt 5 (Andere Epson-kompatible). Geben Sie die Sequenzen ein, die als Beispiele aufgeführt sind:

— Normal Quality Sequenz: ESC '3' 24

— 1. Minivorschub: ESC '3' 1

— 2. Minivorschub: ESC '3' 23

— Normalwert zur Textausgabe nach einer Hardcopy: ESC '3' 36

— Grafikmodus 640 Punkte/Zeile (CRT-Grafik): ESC '*' 4

— High Quality Grafik 1920 Punkte/Zeile: ESC '*' 3

Sollte dies wider Erwarten nicht funktionieren, bleibt als Alternative Punkt 1 (MPS 801/803). Der Drucker bringt in diesem Modus allerdings nur 480 Punkte pro Zeile.

Marco Siedler, Duisburg

Diktiergerät als Datasette

Frage von Jan Rubak aus der 64'er 7/90, Seite 95: Ich besitze das Diktiergerät Microcassette Tape Player 3-5325C von General Electric. Wie kann ich es zu einer Datasette für den C 64 umbauen?

Das ist nicht so einfach, da man zunächst einen Remote-Eingang ins Diktiergerät einbauen muß. Unterbrechen Sie dazu die Stromzufuhrleitung des Motors und installieren Sie eine 2,5-mm-Buchse. Empfehlenswert ist, in die Mechanik einen Mikroschalter einzusetzen, der beim Betätigen der PLAY-Taste schließt. Dieser sollte separat außerhalb des Geräts montiert werden. Vor allen Dingen benötigen Sie ein Interface, das Sie nach dem Schaltplan aus dem Buch »Hardwarebasteleien für den C 64/128«, Seite 164, selbst bauen können. An die Leitung »Motorzuführung« löten Sie den 2,5-mm-Stecker. Wird es noch mit einem entsprechenden Plastikgehäuse verkleidet, ist das Interface perfekt.

Jan Turetzek, Hanau

CP/M 3.0 und der Texteditor ED

Ich habe versucht, auf meinem C 128 unter der CP/M-Version 3.0 eine Datei mit dem Texteditor ED zu erstellen. Natürlich habe ich auch das CP/M-Handbuch durchgelesen, doch nichts hilft mir weiter. Muß man eine bestimmte Programmiersprache beachten?

Michael Buschleb, Hannover

Um mit dem CP/M-Texteditor ED zu arbeiten, brauchen Sie keine eigene Programmiersprache. Sie können damit normale Texteingaben machen (Adressen, Notizen usw.) und diese als Datei (am besten mit der Endung ».TXT« gekennzeichnet) auf Ihre CP/M-Arbeitsdiskette speichern. Legen Sie die Seite der CP/M-Diskette ins Laufwerk, auf der sich ED.COM befindet und rufen Sie den Texteditor auf:

A>ED (gewünschter Filename).TXT

CP/M versucht, eine Datei dieses Namens von der Diskette zu laden. Wird keine gefunden, erzeugt CP/M ein temporäres File mit der Endung ».$$$«, der Bildschirm bringt die Meldung: NEW FILE. Anschließend wird ein Doppelpunkt und das Sternchen ausgegeben. Jetzt erwartet ED entsprechende Eingaben laut CP/M-Handbuch, Seite 55 ff. Eine neue Datei muß immer mit »I« (Insert) begonnen werden, erst dann erscheint die Eingabezeile 1, in der man mit dem Eintippen von beliebigem Text beginnen kann. Alle üblichen Tastaturzeichen sind erlaubt. Mit RETURN kommt man in die nächste Eingabezeile.

Die Tastenkombination CTRL Z beendet den Eingabemodus. Zum Speichern der Datei auf Diskette müssen Sie »E« eingeben.

Mit ED.COM erzeugte Textdateien lassen sich jederzeit mit dem transienten Befehl »TYPE (Dateiname).TXT« wieder auf dem Bildschirm anzeigen.

Die Redaktion

RAM-Erweiterung 1764

Frage von Herbert Gruber aus der 64'er 3/90, Seite 77: Ich habe gehört, daß man die RAM-Erweiterung 1764 erweitern kann. Sind außer dem Einlöten der Sockel und dem anschließenden Bestücken noch andere Arbeiten an der Hardware durchzuführen?

Ich habe bereits zwei 1764-Module problemlos auf 512 KByte erweitert. Nach dem Bestücken der 1764 mit den D-RAMs 42256 N15 oder typengleichen sind keine weiteren Änderungen mehr an der Hardware nötig. Der REC erkennt die zur Verfügung stehende Speichermenge automatisch. Anstelle der vier Bänke stehen jetzt 8 x 64 KByte zur Verfügung. Ebenso läuft der Betrieb unter GEOS völlig normal, das größere Speichervolumen wird sofort erkannt.

Helmut Pancheri, A-Kirchbichl

C 64 als Bandleader

Gibt es von irgendeinem Computerhersteller Hard- und/oder Software, mit der man Musikinstrumente und Mikrofone (die gesamte Anlage) steuern und mischen kann?

Frank Uhlig, Pobershau

Gute Nachbarn per Computer

Frage von Gerhard Wiens aus der 64'er 7/90, Seite 94: Mein körperlich behinderter Nachbar und ich besitzen jeweils beide einen C 128 mit ausreichenden Peripheriegeräten (Floppies, Drucker). Obwohl unsere Wohnungen ca. 20 m voneinander entfernt liegen, beschäftigt uns die Idee, unsere Computer miteinander zu verbinden. Besteht diese Möglichkeit?

Ich schlage eine RS232-Schnittstelle am Userport vor. Aufgrund der relativ großen Entfernung werden Sie jedoch nicht ohne Treiberhardware auskommen, die den schwachen Signalen genügend Power mitgibt. Ein spezielles RS232-Interface halte ich für Geldverschwendung, da es das Signal am einen Ende der Leitung auf 12 Volt anhebt. Dies muß ein zweites Interface am anderen Ende der Leitung jeodch wieder rückgängig machen. Als Leitung selbst schlage ich ein zweiadriges, abgeschirmtes Mikrofonkabel vor. Die RS232-Schnittstelle sollte auf 3-Draht-Handshake eingestellt werden. Für das »Plaudern per Bildschirm« gibt es jede Menge Software: Terminalprogramme (z.B. »Proterm« aus dem 64'er-Sonderheft 53) sind bestens dazu geeignet. Ein DFÜ-Schachprogramm gibt es meines Wissens ebenfalls. Informationen über die Programmierung der RS232 findet man in der 64'er 11/87.

Stefan Meinlschmidt, Hersbruck

1541 oder 1571?

Z.Zt. verwende ich die Floppy 1541, will mir aber das Laufwerk 1571 zulegen, um eine größere Speicherkapazität auf Disketten zu bekommen (z.B. bei der Arbeit mit GEOS). Kann ich mit der 1571 auch die Programme laden, die ich mit der 1541 benutze? Bringt die 1571 Nachteile gegenüber der 1541?

Michael Klinik, Nieder-Olm

Die Verwendung der Floppy 1571, die auch Disketten unter dem Betriebssystem CP/M lesen und beschreiben kann, bringt im Vergleich zur 1541 nur Vorteile. Jede Datei, jedes Programm, die mit der 1541 gespeichert wurden, kann auch von der 1571 gelesen und geladen werden.Eine größere Speicherkapazität als die 1541 besitzt der »große Bruder« allerdings nicht, denn mit dem verwendeten Aufzeichungsformat GCR können beide Diskettenstationen nicht mehr als 1328 Blocks (je 664 Blocks auf der Vorder- und Rückseite einer Diskette) speichern. Der entscheidende Vorteil der 1571 liegt allerdings darin, daß Disketten nicht nur mit dem 128 PC, sondern auch mit dem C 64 doppelseitig formatiert und beschrieben werden können, da sie zwei Schreib-/Leseköpfe besitzt. Damit lassen sich die genannten 1328 Blocks nutzen, ohne die Diskette umdrehen zu müssen. Bei großen, zusammenhängenden Programmen oder Datenmengen, die sich unbedingt auf einer Diskettenseite befinden müssen, ist dies sicher von Vorteil. Außerdem können Sie die durch das Floppy-Betriebssystem begründete größere Lade- und Speichergeschwindigkeit nutzen. Um dies der 1571 mitzuteilen, müssen Sie folgenden Befehl eingeben (im Direktmodus oder innerhalb eines Programms):

OPEN 1,8,15,"U0>M1":CLOSE 1

Wenn Sie nun mit den bekannten DOS-Anweisungen eine Diskette formatieren, werden Sie feststellen, daß dies jetzt doppelseitig geschehen ist: 1328 Blocks free. Den Normalzustand (nur ein Schreib-/Lesekopf aktiv) erreichen Sie wieder durch folgende Eingabe:

OPEN 1,8,15,"U0>M0": CLOSE 1

Dies ist auch die Voreinstellung unmittelbar nach dem Einschalten, wenn die Floppy 1571 mit einem C 64 betrieben wird oder nach einem Floppy-Reset. Ein weiterer Vorteil der 1571 gegenüber der 1541: Beim Formatieren einer neuen Diskette mit ID-Kennung entfällt das ratternde Geräusch beim Positionieren des Schreib-/Lesekopfes, der bei der 1541 an den Steppermotor schlägt (von der dadurch bedingten Gefahr der Dejustierung ganz zu schweigen).

Die Redaktion

Computergesteuerte Diashow

Ich möchte Diavorführungen im Überblendverfahren mit meinem C 128 steuern. Wer kann mir mit Hard- oder Software weiterhelfen?

Giselher Schönbeck, F-Aureilhan

Floppy 1571 am KC 85/2

Neben dem C 64 besitze ich einen KC 85/2 (die Leser aus der DDR werden diesen Computer gut kennen), für den ich ein Kassetten-CP/M mit einer 64K-RAM-Disk installiert habe. Ich möchte die 1571 anschließen, um meine CP/M-Disketten lesen zu können. Wer hat so etwas schon einmal gemacht und kann mir eine geeignete Hardware-Lösung anbieten? Wer besitzt ein Programm zum Datenaustausch zwischen dem KC und dem C 64 über Kassette?

Peter Kraufmann, DDR-Zinnowitz

Read-Errors bei Startexter 4.0

Frage von Davorin Scharping aus der 64'er 7/90, Seite 95: Ich arbeite mit dem Textprogramm Startexter 4.0 auf meinem C 64. Auf einer Datendiskette sind mehrere Read-Errors aufgetreten (Spur 18, Sektoren 1 und 4). Gibt es ein Programm, die Diskette zu reparieren? Kann man auch einzelne Tracks laden, speichern oder formatieren?

Kopien von einzelnen Tracks einer Diskette können mit jedem »Nibbler« gemacht werden (z.B. »Turbonibbler« von Eurosystems). In diesem Fall nützt dies nichts, da das Directory (Track 18) zerstört ist.

Hier helfen »Deformat«-Programme wie der »Disk-Wizard« aus der 64'er 5/86. Zunächst muß man die gesamte Disektte »weich« formatieren (ohne ID):

OPEN 15,8,15, "N: DISK": CLOSE 1

Damit wird das gesamte Inhaltsverzeichnis gelöscht. Nun startet man das Deformat-Programm, das die Blockverkettungen von der Diskette liest. Alle »Ketten«, die länger als ein vorher eingegebener Wert sind, werden wieder in Files umgewandelt. Der alte Name und der Filetyp (PRG, SEQ usw.) kann anschließend eingetragen werden. Vor dem Deformatieren sollte man auf jeden Fall eine Sicherheitskopie der Diskette machen, die man so bearbeiten möchte.

Christoph Nitsche, Dresden

Unmusikalischer C 64-II

Ich bin begeisterter Musiker. Da mein alter C 64 den Geist aufgab, mußte ich mir einen C 64-II zulegen. Nun stelle ich fest, daß meine Musik mit dem neuen C 64 nicht mehr klingt, worüber ich verständlicherweise »sehr erfreut« bin. Es hört sich etwa folgendermaßen an: Der Digi-Kanal ist außerordentlich leise und unsauber, die Tonkanäle sind manchmal klar und laut. Ich habe schon alles versucht und jeden gefragt, alles vergebens!

Alfred Mair, Essen

Leider müssen wir Ihnen bestätigen, daß Commodore bei dem C 64-II andere Kondensatoren benutzt hat (böse Zungen behaupten, weil diese preisgünstiger gewesen seien). Falls Sie die Möglichkeit haben, gleichartige Kondensatoren wie in Ihrem alten C 64 zu erhalten und einzubauen, dürfte einem ungetrübten Musikgenuß per C 64 nichts mehr im Wege stehen.

Die Redaktion

Zwei heiße Spieletips

»West Bank«

Manchmal erscheint ein kleiner Mann mit vier Melonen auf dem Kopf. Man sollte diese herunterschießen. Wurden alle getroffen, taucht ein Geldsack (abschießen!) oder eine Bombe auf (Finger weg vom Feuerknopf!).

»Wizzball«

Im Titelbild muß man das Wort »WIZZBOREWIZZ« eingeben, dann kann man ohne Probleme alles durchfliegen.

Wolfgang Weitzdörfer, Regensburg

Tastenabfrage

Wie kann ich die SHIFT- und CTRL-Taste zusammen in Assembler abfragen?

Björn Rücker, Heiligenhaus

Dafür ist die Adresse $028D (653) zuständig. Der Normalinhalt dieses Flags ist »0«. Nur beim Drücken folgender Tasten verändert diese Speicherstelle ihren Wert:

Tasten	Byteinhalt
SHIFT	1
CBM	2
SHIFT CBM	3
CTRL	4
SHIFT CTRL	5
CBM CTRL	6
SHIFT CBM CTRL	7

Fragen Sie in Maschinensprache diese Adresse ab. Nimmt diese den Wert »5« an (SHIFT und CTRL gleichzeitig gedrückt), verzweigen Sie in den Programmteil, der als Reaktion auf den gemeinsamen Tastendruck aufgerufen werden soll. Ein Beispiel:

TASTE  LDA $028D
       CMP #$05
       BNE TASTE
       Programmteil Reaktion...

In Verbindung mit Adresse $CB (203) kann damit die gesamte Tastatur des C 64 abgefragt werden, ausgenommen RESTORE.

Die Redaktion

Störender Stecker

Ich besitze einen C 64-II, die Floppy 1541-II und den Epson-Drucker LX-800. Dazu verwende ich das Wiesemann-Interface 92000/G mit dem Kassettenportstecker. In die Floppy habe ich mir ein einfaches Parallelkabel eingebaut. Wenn ich kopieren will, muß ich den Kassettenportstecker entfernen, sonst funktioniert kein Kopierprogramm. Ich habe eine Diode zwischen Pin B und Draht B gelötet — ohne Erfolg. Gibt es eine Lösung, damit ich den Stecker nicht immer herausziehen muß?

Hans W. Haase, Kisdorf

Zeichensatzspeicher gesucht

Irgendwo habe ich die Empfehlung gelesen, einen neuen Zeichensatz ab Adresse $2000 (8192) zu definieren. Dieser Bereich befindet sich jedoch mitten im Basic-RAM. Schreibe ich ein langes Programm, das diese Adresse erreicht, wird der neue Zeichensatz zerstört. Setze ich den Basic-Anfang hoch, daß dieser nach dem neuen Zeichensatz beginnt, verliere ich ca. 8 KByte wertvollen Speicherplatz für mein Basic-Programm. Außerdem kann ich auch keine Hiresgrafik verwenden, wenn bei $2000 der Zeichensatz liegt. Wie kann ich den Zeichensatz etwa bei Adresse 2060 beginnen lassen? Und welche Werte muß ich in die geheimnisvolle Speicherstelle 53272 POKEn?

Tamas Görbe, H-Jaszarokszallas

Sie können einen neuen Zeichensatz frühestens ab Adresse $0800 (2048) beginnen lassen. Allerdings steht hier nur ein begrenzter Bereich zur Verfügung, maximal 2048 Byte bis zur Adresse $0FFF (4095). Sie müssen sich entscheiden, welchen der beiden Zeichensatzdarstellungsarten Sie verwenden möchten: Groß- oder Kleinschrift. Der folgende Speicherabschnitt des C 64 von Speicherstelle 4096 bis 8191 kann nicht mit neuen Zeichenmustern »beschickt« werden, denn hier spiegelt das Betriebssystem das Originalzeichensatz-ROM ab Adresse $D000 (53248). Da dies nur die Bildschirmdarstellung betrifft, kann in diesem Abschnitt ohne weiteres ein Basic- oder Assemblerprogramm liegen. Um einen »halben« Zeichensatz ab 2048 nutzen zu können, müssen Sie wie folgt vorgehen (sämtliche Eingaben im Direktmodus):

POKE 43,1: POKE 44,16: POKE 4096,0: NEW

Damit haben Sie den Anfang des Basic-Speichers nach $1000 (4096) verschoben. Laden Sie nun den neuen Zeichensatz. Die Startadresse auf Diskette muß 2048 lauten:

LOAD "(Filename)",8,1

Der Beginn des neuen Zeichensatzes wird der Adresse 53272 mitgeteilt:

POKE 53272, PEEK(53272) AND240 OR (2048/1024)

Dadurch haben Sie lediglich 2048 Bytes vom Basic-Speicher »verschenkt«.

Die Redaktion

Probleme mit RESTORE

In meinem Basic-Programm möchte ich nach Tastatureingabe verschiedene Texte abrufen. Dies läßt sich mit »READ X$« und »DATA« sehr komfortabel realisieren. Leider fehlt die Möglichkeit, die DATA-Zeilen mit den Textstrings zu selektieren, etwa in der Form »READ X$(100 — 200). Darüber kann ich in keinem Fachbuch etwas finden.

Hans Weisser, Herzebrock

Das Basic 2.0 des C 64 sieht die Möglichkeit nicht vor, den Zeiger gezielt auf bestimmte DATA-Zeilen zu setzen. Der Interpreter beginnt immer bei der ersten DATA-Zeile zu lesen, die er im Programm findet. Dieser Zeiger läßt sich zwar mit der Anweisung RESTORE zurücksetzen, jedoch auch wieder nur auf den Anfang des DATA-Zeilenbereichs. Wünschenswert wäre der Befehl »RESTORE Zeilenummer« wie beim C 128. Abhilfe dafür ist in Basic außerordentlich umständlich zu programmieren, sodaß nur der Ausweg über Maschinensprache bleibt. Ein entsprechendes Assemblerprogramm muß die Basic-Routine RESTORE modifizieren. Hierbei sind die Speicherstellen 65/66 (Adresse des aktuellen DATA-Elements) und 122/123 (Basic-Zeiger innerhalb einer Subroutine) von Bedeutung. Auf der Diskette zum 64'er-Sonderheft 52 finden Sie unter dem Filenamen »Listing 8« ein Utility, das das Basic 2.0 des C 64 um die gewünschte Anweisung »RESTORE Zeile« erweitert.

Die Redaktion