APPLICATIONSDIVERS ★ 8-BIT-DRUCKER-PORT|CPC MAGAZIN) ★

8-Bit-Drucker-Port (CPC Magazin)Applications Divers
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Dieser Beitrag soll Ihnen die Arbeit mit Ihrem CPC erleichtern. Wenn Sie Besitzer eines solchen Rechners und eines Druckers sind, haben Sie sich sicher schon über das eigenwillige Verhalten des Printers bei Grafik, Ä, ö, Ü und anderen Feinheiten gewundert. Dies wird durch das Fehlen eines achten Datenbits hervorgerufen, das aber gerade für die Steuerung des Druckers sehr oft eine entscheidende Rolle spielt.


Bild 1

Eine echte 8-Bit-Centronics-Schnittstelle für den Expansionsport des CPC ist nun aber nicht gerade billig und zudem überflüssig. Das Problem kann nämlich auch durch eine kombinierte und denkbar einfache Hard- und Software-Lösung behoben werden. Sie benötigen dazu lediglich eine halbe Stunde Zeit, sollten aber bedenken, daß ein eventuell noch vorhandener Garantieanspruch bei Eingriffen in Ihren CPC erlischt.

Zunächst wollen wir uns einmal der Software zuwenden. Im Computerbereich beginnt das Zählen immer bei Null. Das achte Bit ist also im Fachjargon das siebte, das erste Bit somit Bit Nummer Null. Wenn der CPC ein Zeichen an den Drucker sendet, wird erst einmal das siebte Bit gelöscht und das Zeichen ausgegeben. Dann erfolgt Setzen des siebten Bits und erneute Ausgabe der Daten. Besagtes Bit erscheint aber nicht auf dem Datenbus an Pin 9 des Drucker-Ports, sondern wird abgezweigt und als Strobe-Signal auf Pin 1 ausgegeben (Anhang im CPC-Handbuch: Druckeranschiuß, Ansicht von hinten). Damit erfährt der Printer, daß die Daten zu drucken sind. Nachdem das siebte Bit dann wieder gelöscht ist, werden die Daten erneut zum Drucker gesendet. Gegen diesen Vorgang gibt es keinen Trick. Das siebte Bit ist unbrauchbar. Die entsprechende ROM-Routine sieht folgendermaßen aus:

;zu druckendes Zeichen in Register A
LD B, #EF ; I/O Port Printer
RES 7,A ; Bit 7 löschen
OUT (C), A ;Zeichen senden
DI
SET 7, A ; Bit 7 setzen
OUT (C),A ; Strobe senden
RES 7,A ; Bit 7 wieder ausschalten
EI
OUT (C),A ;Strobe löschen
RET

Wir müssen also eine freie Leitung für das 7. Bit finden. Es gibt im CPC gewiß einige Stellen, an denen man ansetzen möchte, aber nur eine ist wirklich vernünftig. Sie kommt mit wenig Software zur Ansteuerung aus und erfordert keine Lötarbeiten an Chips, was wohl jedem Computerbesitzer den Eingriff erlauben sollte. Auch handelt es sich sowieso um eine Ausgabeleitung, nämlich die zum Datenrecorder.

Schalten Sie nun Bildschirm, Diskettenlaufwerk sowie andere Peripherie ab und ziehen Sie sämtliche Stecker vom Computer! Anschließend legen Sie den Rechner mit den Tasten nach unten voreich und lösen mit einem Kreuzschlitzschraubendreher die sechs im Boden eingelassenen Schrauben. Dann halten Sie den Computer links und rechts, damit die beiden Teile nicht auseinandergehen, und drehen ihn wieder herum. Dabei fallen die Schrauben heraus. Nun heben Sie das obere Teil an, ziehen die beiden Stecker ab, die es mit dem unteren verbinden, und legen es beiseite.


Bild 2

Die für uns interessante Leitung finden wir an Pin 12 des 8255. Sie wird vom Pin weg auf die Platine bis zu einem Lötpunkt geführt. Genau da zapfen wir die Leitung an (s. Bild 1). Sie nehmen dazu ein Stückchen Schaltdraht (ca. 7 cm), entfernen die Isolation an beiden Enden auf jeweils 5 mm und verzinnen diese mit einem 15-Watt-Lötkolben. Dann erwärmen wir den Lötpunkt, lassen ein kleines Tröpfchen Lötzinn auf ihm verlaufen und heften das eine Ende des Drahtes an. Nun wird an Pin 9 des Drucker-Ports die Zuleitung zum Kontaktstreifen mit einem Teppichmesser, Skalpell oder einer Rasierklinge durchtrennt (s. Bild 2). Es ist hierzu auf keinen Fall notwendig, ein großes Stück herauszuschneiden; wichtig ist nur, daß die Unterbrechung vollständig ist. Besitzer eines 6128 müssen wohl oder übel den Draht mit einem Seitenschneider durchtrennen. Nun verzinnen Sie das in den Computer weisende Ende des Kontaktstreifens und heften dann das andere Ende des Drahtes hier an (s. Bild 1). Achten Sie bitte darauf, daß Sie keine Lötklumpen auftragen. Das Lötzinn muß nur einmal kurz verlaufen und dabei glänzen. Jetzt kann der Computer wieder zusammengebaut werden. Dies geschieht in umgekehrter Reihenfolge wie beim öffnen.

Nun können wir uns wieder der Software zuwenden. Pin 12 des 8255 gehört zum Port C dieses Chips. Wir wollen hier aber seine Funktionsweise und Programmierung nicht näher betrachten, sondern nur die wichtigsten Fakten klären. Der 8255 besitzt ein Kontroliregister, mit dem sich die

Ports steuern lassen. Im Moment ist eigentlich nur von Bedeutung, daß, wenn wir Daten in dieses Register schreiben, bei denen das siebte Bit auf Null gesetzt ist, die einzelnen Bits des Ports C an- oder ausgeschaltet werden können. Dies geschieht nach folgendem Schema:

bit76543210
Wert0xxx101?

Bit 7 muß, wie bereits erwähnt, Null sein. Die Bits 6,5 und 4 sind bedeutungslos, mit 3,2 und 1 wird die Bit-Nummer  von Port C bestimmt (0 bis 7). Nun wäre also nur noch Bit 0, das Fragezeichen, zu erklären. Ist dieses 0, so wird das Bit im Port C mit der angegebenen Nummer gelöscht und der damit verbundene Pin abgeschaltet. Ist es hingegen auf 1 gesetzt, so wird er angeschaltet.

In Assembler sieht dies folgendermaßen aus:

LD B, #F7 ;8255 control
LD C.5 ; Bit 5 (binär: 00000101)
SLA C ; nach links schieben (binär: 00001010)
SET 0,C ;Bit0 = 1, BitöPortCan
OUT (C),C ; senden
RES 0,C ; Bit 0 = 0, Bit 5 PortC aus
OUT (C), C ; senden

Entsprechend geben Sie in Basic ein:

OUT &F700, &X00001011 ;an
OUT &F700, &X00001010 ;aus

Nun können Sie gleich zum Spaß folgendes versuchen: OUT &F700, &X00001001 OUT &F700, &X00001000 Allem Anschein hach wird über Bit 4 das Relais für den Motor des Cassettenrecorders gesteuert. Nachdem der abgedruckte MC-Generator nach dem Einschalten des Computers einmal gestartet ist, verfügen.Sie bis zum nächsten System-Reset übereine vollwertige 8-Bit-Centronics-Schnittstelle.

H. H. Fischer , CPC Magazin

★ PUBLISHER: CPC Magazin
★ YEAR: 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LICENCE: LISTING
★ AUTHOR: H.H.Fischer

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» 8-Bit-Drucker-Port    (CPC  Magazin)    GERMANDATE: 2020-06-13
DL: 25 fois
TYPE: ZIP
SIZE: 4Ko
NOTE: 40 Cyls
.HFE: NON

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Hardware » Port 8 Bits (Micro-Mag)
» Applications » 8-bit Print Routine (Amstrad Computer User)
» Applications » Screen Dump for KDS 8 bit printer port (Computing with the Amstrad)
» Applications » 8-Bit-Druckerporttreiber (CPC Amstrad International)
» Hardware » Imprimante Divers - 8-Bit Printer Port
» Applications » Hardcopy mit 8 Bit und 24 Nadeln (Schneider Magazin)

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 245 millisecondes et consultée 163 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.