Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
z9001:drucken [2016/11/15 13:33] – [Anschluss von Druckern mit paralleler Schnittstelle (centronics)] volkerpz9001:drucken [2025/03/23 11:14] (aktuell) – [Modulunterlagen] volkerp
Zeile 11: Zeile 11:
 Von Robotron gibt es 3 Druckermodule, die eigentlich alle 3 identisch aufgebaut sind und sich nur in der Software und in der Steckerbelegung unterscheiden. Hier ist eine reiche Vielfalt vorhanden: Es gibt alte Module mit alter Leiterplatte wie obiges **Drucker-Modul 690006.8**, gefolgt vom **Schreibmaschinen-Modul für S6005 690021.1** und dem **Drucker-Modul 690025.2** (f. K6311/12). Die beiden letzten Module erschienen ab 3. Quartal 1987 mit neuer Software (BM116, Software V24Ax), ausgeliefert ab Modulnummer 710970. Von Robotron gibt es 3 Druckermodule, die eigentlich alle 3 identisch aufgebaut sind und sich nur in der Software und in der Steckerbelegung unterscheiden. Hier ist eine reiche Vielfalt vorhanden: Es gibt alte Module mit alter Leiterplatte wie obiges **Drucker-Modul 690006.8**, gefolgt vom **Schreibmaschinen-Modul für S6005 690021.1** und dem **Drucker-Modul 690025.2** (f. K6311/12). Die beiden letzten Module erschienen ab 3. Quartal 1987 mit neuer Software (BM116, Software V24Ax), ausgeliefert ab Modulnummer 710970.
  
-Alle Druckermodule von Robotron sind gleich aufgebaut und arbeiten mit einer SIO und einer CTC. Der anzuschliessende Drucker muss also über eine V24 (RS 232) serielle Schnittstelle verfügen. Drucker mit Parallel-Schnittstelle wie CENTRONICS können nicht mit diesen Modulen angeschlossen werden; ein Selbstbau eines Adapters ist aber recht einfach (s.u.).+Alle Druckermodule von Robotron sind gleich aufgebaut und arbeiten mit einer SIO und einer CTC. Der anzuschließende Drucker muss also über eine V24 (RS 232) serielle Schnittstelle verfügen. Drucker mit Parallel-Schnittstelle wie CENTRONICS können nicht mit diesen Modulen angeschlossen werden; ein Selbstbau eines Adapters ist aber recht einfach (s.u.).
  
 Alle Module sind mit einem PROM/EPROM ausgerüstet (Adressbereich 0B800h-0BFFFh). Allerdings steht bei Aktivierung des ROMs gleich der ganze Adressbereich von 8000-0BFFFh nicht mehr für RAM etc. zur Verfügung. Es ist deshalb ratsam, den ROM abzuschalten und stattdessen die Software von Kassette zu laden. Je nach Modulart (Schreibmaschinenmodul, Druckermodul alt oder neu) gibt es verschiedene EPROM-Inhalte. Die Hardware ist in jedem Falle gleich. Alle Module sind mit einem PROM/EPROM ausgerüstet (Adressbereich 0B800h-0BFFFh). Allerdings steht bei Aktivierung des ROMs gleich der ganze Adressbereich von 8000-0BFFFh nicht mehr für RAM etc. zur Verfügung. Es ist deshalb ratsam, den ROM abzuschalten und stattdessen die Software von Kassette zu laden. Je nach Modulart (Schreibmaschinenmodul, Druckermodul alt oder neu) gibt es verschiedene EPROM-Inhalte. Die Hardware ist in jedem Falle gleich.
  
-Übersicht über die einzelnen Modultypen nebst ROM: +**Achtung:** Bei manchen Modulen sind die DIP-Schalter entgegen der Dokumentation eingelötet! Am besten, man probiert daher aus. Beide Schalter müssen offen sein, dann ist kein ROM aktiv. 
 + 
 +**Drucker-Modul Schalterstellungen** 
 + 
 +<a2s> 
 +ROM an         ROM aus         verboten          verboten 
 +B800-BFFF                       
 + 
 +#-#-#           #-#-#           #-#-#           #-#-# 
 +|X| |           | | |           | |X|           |X|X| 
 +| | |           | | |           | | |           | | | 
 +| |X|           |X|X|           |X| |           | | | 
 +#-#-#           #-#-#           #-#-#           #-#-# 
 +</a2s> 
 + 
 +Der rechte Schalter aktiviert theoretisch eine ROM-Bereich C000-C7FF. Man könnte hier den ROM durch einen EPROM U2716 mit eigener Software ersetzen. Allerdings fehlt für den KC87 das ROMDI-Signal! Das ist damit nur eine mögliche Schalterstellung am Z9001 ohne BASIC-Modul; oder man lötet eine Brücke analog zum ROM-Modul ein (Z9001: /ROMDI (X1:9B) offen, KC87: /ROMDI (X1:9B) an Masse).  
 + 
 +**Übersicht über die einzelnen Modultypen nebst ROM**
   * Druckermodul 690006.8 f. Thermodrucker TD40, andere Leiterplatte\\  ROM M506, Systemkommandos '#', 'TD40'    * Druckermodul 690006.8 f. Thermodrucker TD40, andere Leiterplatte\\  ROM M506, Systemkommandos '#', 'TD40' 
-  * Schreibmaschinen-Modul für S6005 690021.1 (bis 3. Quartal 1987)\\ :!: ich suche die Dokumentation zum alten Schreibmaschinen-Modul bis 3. Quartal 1987\\ ROM M012, Systemkommandos '#', 'S6005' +  * Schreibmaschinen-Modul für S6005 690021.1 (bis 3. Quartal 1987)\\ ROM M012, Systemkommandos '#', 'S6005' 
   * Druckermodul 690025.2 f. K6311/12 (bis 3. Quartal 1987)\\  ROM M013 B8, Systemkommandos '#', 'K6311/12'    * Druckermodul 690025.2 f. K6311/12 (bis 3. Quartal 1987)\\  ROM M013 B8, Systemkommandos '#', 'K6311/12' 
   * Schreibmaschinen-Modul für S6005 690021.1 und Druckermodul 690025.2 ab 3. Quartal 1987\\ ROM BM116, Systemkommandos 'V24A1', 'V24A3', 'V24A3'   * Schreibmaschinen-Modul für S6005 690021.1 und Druckermodul 690025.2 ab 3. Quartal 1987\\ ROM BM116, Systemkommandos 'V24A1', 'V24A3', 'V24A3'
Zeile 46: Zeile 63:
   - bei Interesse: die {{Drucker-Modul8.pdf|Dokumentation}} für Modul 690006.8 (alt) f. K6303   - bei Interesse: die {{Drucker-Modul8.pdf|Dokumentation}} für Modul 690006.8 (alt) f. K6303
   - bei Interesse: die {{Drucker-Modul_25.pdf|Dokumentation}} für Modul 690025.2 (alt, bis II 87) f. K6311/K6312   - bei Interesse: die {{Drucker-Modul_25.pdf|Dokumentation}} für Modul 690025.2 (alt, bis II 87) f. K6311/K6312
 +  - bei Interesse: die Dokumentation zum {{http://www.sax.de/~zander/z9001/module/druck/z9_srm.pdf| Schreibmaschinenmodul}} bis 3. Quartal 1987 (bei {{http://www.sax.de/~zander/| U. Zander, 2024}})   
 +
 +==== Port-Adressen ====
 +
 +EPROM U556 B800H bis BFFFH -(abschaltbar)
 +
 +^ Basis-Port ^ Bedeutung ^ Port hex ^
 +| B0 | SIO Daten Kanal A | B0h |
 +|  | SIO Daten Kanal B | B1h |
 +|  | SIO Kommandos Kanal A | B2h |
 +|  | SIO Kommandos Kanal B | B3h |
 +| A8 | CTC Kanal 0 | A8h |
 +|  | CTC Kanal 1 | A9h |
 +|  | CTC Kanal 2 | AAh |
 +|  | CTC Kanal 3 | ABh |
 +
 +EA-Adreßbereich ACH bis AFH und B4H bis B7H
 +zusätzlich belegt!
 +
  
 ===== Druckertreiber ===== ===== Druckertreiber =====
Zeile 78: Zeile 114:
 Beim alphanumerischen Druck werden Grafikzeichen generell als "*" gedruckt.Die Verwendung von Systemressourcen und die Anbindung an das OS ist ebenfalls je nach Treiber leicht verschieden. Gemeinsam ist die Nutzung von max. 182 Byte am Speicherende für die Seitenformat-Einstellungen und den Zeilenpuffer (EOR wird entsprechend herabgesetzt). Die älteren Treiber halten sich noch nicht einmal an die Vorschriften für System-Treiber (s. OS-Handbuch Z9001), und implementieren nur die Treiberfunktion 0 (Statusabfrage). Alle anderen Funktionen werden nicht ausgewertet, es wird immer davon ausgegangen, dass nur noch die Zeichenausgabe genutzt wird! Beim alphanumerischen Druck werden Grafikzeichen generell als "*" gedruckt.Die Verwendung von Systemressourcen und die Anbindung an das OS ist ebenfalls je nach Treiber leicht verschieden. Gemeinsam ist die Nutzung von max. 182 Byte am Speicherende für die Seitenformat-Einstellungen und den Zeilenpuffer (EOR wird entsprechend herabgesetzt). Die älteren Treiber halten sich noch nicht einmal an die Vorschriften für System-Treiber (s. OS-Handbuch Z9001), und implementieren nur die Treiberfunktion 0 (Statusabfrage). Alle anderen Funktionen werden nicht ausgewertet, es wird immer davon ausgegangen, dass nur noch die Zeichenausgabe genutzt wird!
  
-===== Softwarequellen =====+===== Download =====
  
-Robotron hat den Quelltext zu V24A3 veröffentlicht, so dass man die SIO-Ansteuerung und Geräteeinbindung nicht neu erfinden muss. Ich habe mir die Mühe gemacht und alle Treiber disassembliert und aufbereitet. Alle mir bekannten Druckertreiber, Sourcen etc. finden sich in diesem {{druckertreiber.zip|Paket}}.+  * {{druckertreiber.zip|}}. Alle Modul-ROMs, Beschreibungen, weitere Teiber, Quellcodes zu allen Treibern uam. 
 + 
 +Robotron hat den Quelltext zu V24A3 veröffentlicht, so dass man die SIO-Ansteuerung und Geräteeinbindung nicht neu erfinden muss. Ich habe mir die Mühe gemacht und alle Treiber disassembliert und aufbereitet. Alle mir bekannten Druckertreiber, Sourcen etc. finden sich im Zip-Archiv.
  
 u.a. u.a.
Zeile 102: Zeile 140:
 ===== Was erwartet das Betriebssystem? ===== ===== Was erwartet das Betriebssystem? =====
  
-Das OS des Z9001 ist basierend auf CP/M entwickelt worden und hat dessen Treiberkonzept übernommen. So gibt es 4 logische Geräte, die von den Anwendungsprogrammen genutzt werden können: CONST, READER, PUNCH, LIST. Diesen logischen Geräten werden nun physische Gerätetreiber zugeordnet. Das erfolgt mittels Kommando ASGN. Üblicherweise wird CONST der Tastatur und dem Bildschirm zugeordnet und LIST dem Drucker.+Das OS des Z9001 ist basierend auf CP/M entwickelt worden und hat dessen [[z9001:software:os:geraetetreiber|Treiberkonzept]] übernommen. So gibt es 4 logische Geräte, die von den Anwendungsprogrammen genutzt werden können: CONST, READER, PUNCH, LIST. Diesen logischen Geräten werden nun physische Gerätetreiber zugeordnet. Das erfolgt mittels Kommando ASGN. Üblicherweise wird CONST der Tastatur und dem Bildschirm zugeordnet und LIST dem Drucker.
  
 Damit ein physischer Gerätetreiber so zugeordnet werden kann, muss er einige Eigenschaften erfüllen:  Damit ein physischer Gerätetreiber so zugeordnet werden kann, muss er einige Eigenschaften erfüllen: 
Zeile 240: Zeile 278:
 Hier ist meine Lösung: An einem normalen Centronics-Kabel wird der Sub-D-Stecker abgebaut und ein 3x5-DDR-Steckverbinder angeschlossen. Für das Ready-Signal ist ein D121 zusätzlich im Relaisgehäuse platziert. Dazu gehört mein {{drucker.zip|Vollgrafikdruckertreiber}} LX86NR, -> [[z9001:drucken#drucken_mit_dem_megamodul|EPSON-Treiber im Mega-Modul]]. Beim Einlesen im OS des Computers stellt sich der Treiber automatisch ans logische RAM-Ende und initialisiert seinen Z9001-Modus. Soll im BASIC gedruckt werden, so ist unbedingt das 'memory end' unter den Beginn von LX86NR zu stellen. Es gibt 3 Modi: Z9001-Modus, Vollgraphik-Modus (Es werden alle Grafikzeichen und ein Hardcopy korrekt gedruckt!), Intern-Modus.  Hier ist meine Lösung: An einem normalen Centronics-Kabel wird der Sub-D-Stecker abgebaut und ein 3x5-DDR-Steckverbinder angeschlossen. Für das Ready-Signal ist ein D121 zusätzlich im Relaisgehäuse platziert. Dazu gehört mein {{drucker.zip|Vollgrafikdruckertreiber}} LX86NR, -> [[z9001:drucken#drucken_mit_dem_megamodul|EPSON-Treiber im Mega-Modul]]. Beim Einlesen im OS des Computers stellt sich der Treiber automatisch ans logische RAM-Ende und initialisiert seinen Z9001-Modus. Soll im BASIC gedruckt werden, so ist unbedingt das 'memory end' unter den Beginn von LX86NR zu stellen. Es gibt 3 Modi: Z9001-Modus, Vollgraphik-Modus (Es werden alle Grafikzeichen und ein Hardcopy korrekt gedruckt!), Intern-Modus. 
  
-{{img_3205.jpg?200}}{{img_3213.jpg?200}}+{{:z9001:img_3205.jpg?200|}} {{:z9001:img_3213.jpg?200|}}
  
 +<code>
 +Z9001 User Port Drucker (K6325)
 +
 +D0..D7 >----------------------------> D0..D7
 +/STRB <----------------------------< /ACK
 +
 +          5+---------------+
 +/ARDY >--| EB | I--I | Q |
 +       |      |   |
 +   3|    |      |   |1
 + +-| EA1|      |/Q o---------> /STROBE
 + | |    |      |   |
 + +-| EA2|      |   |
 + |4|    | D121 |   |
 +         | +---------------+
 +             11|    |10
 +        GND      +-||-+
 +                  C
 +                 R R=4,7K
 + | C=10n
 ++5V ---------+
 +</code>
  
 ===== Vollgrafik-Druckertreiber für Anschluss eines Druckers am Userport (Serielle Schnittstelle) ===== ===== Vollgrafik-Druckertreiber für Anschluss eines Druckers am Userport (Serielle Schnittstelle) =====
Zeile 259: Zeile 319:
   1-LX86, 2-LQ400, 3-K6313, 4-K6304:    1-LX86, 2-LQ400, 3-K6313, 4-K6304: 
  
-Anschluss: 1- V24-Modul (9600Baud, 8N1), 2 - UserPort lt. mp\\+Anschluss: 1- V24-Modul (9600Baud, 8N1), 2 - UserPort (8 Bit, mein Interface)\\
 Arbeitsmodi: 1-Grafik, 2-ASCII, 3-IBM 1-Vollgrafik, 2-nur '*' bei Grafik, 3-Direktmodus\\ Arbeitsmodi: 1-Grafik, 2-ASCII, 3-IBM 1-Vollgrafik, 2-nur '*' bei Grafik, 3-Direktmodus\\
 unterstützte Drucker: LX86, LQ400, K6313, K6304 (TS80) unterstützte Drucker: LX86, LQ400, K6313, K6304 (TS80)
  • z9001/drucken.1479216818.txt.gz
  • Zuletzt geändert: 2016/11/15 13:33
  • von volkerp