Hallo,
aufgrund eines Beitrages hier über den ATARI ST habe ich meinen auch mal
aus dem Keller geholt und etwas damit gespielt. Habe damals einige
Hardware für den ST gebaut und nun auch mal einiges angeschlossen.
Nun habe ich ein Problem:
Eine alte Hardware erhält seine Daten parallel über den Druckerport des
ST. Das klappt auch einwandfrei. An einem älteren IBM-Notebook unter
WinXP mit paralleler Druckerschnittstelle (LPT1) gelingt es mir jedoch
nicht, irgendwelche Daten über LPT1 zu senden.
Beim ATARI erstelle ich eine Textdatei mit "ABC" gefolgt von <CR><LF.
Ein Doppelklick auf die Datei lässt die Datei entweder Anzeigen oder
Drucken. Mit einem angeschlossenen Centronics-Tester kann ich pro
Tastendruck je eines der 5 Zeichen anzeigen. Danach ist der Druck
beendet.
Die selbe Datei unter WinXP: Der Eigenschaftendialog zeigt 5 Byte und
der HEX-Monitor zeigt 41,42,43,0D,0A. Aber es gelingt mir nicht, diese 5
Byte über LPT1 zu senden, bzw. mit dem Centronics-Tester abzurufen.
Was muss ich auf dem IBM-Notebook unter WinXP unternehmen, um diese 5
Byte über LPT1 zu senden?
Für eure Mühe im Voraus vielen Dank
Wilhelm
Vielen Dank für den Tipp.
Habe also die Datei in datei.txt umbenannt und nach C: verschoben.
Dann in der DOS-Box:
C:\>copy /b datei.txt >lpt1:
Nix passiert, am angeschlossenen Centronics-Tester kommen keine Zeichen
an. Allerdings hängt nun die DOS-Box, ich kann keine Zeichen mehr
eingeben. Einen Timeout scheint es nicht zu geben.
Kann es sein, dass die 25 polige SUB-D Buchse am IBM-Notebook anders
belegt ist als die 25 polige SUB-D Buchse am ATARI?
Es kann sein, dass die Pegel an deinem Notebook zu gering sind.
Alte Geräte wie dein Atari sind für 5V ausgelegt.
Neuere Geräte haben oft weniger Spannung am Parallelport.
Wilhelm.W schrieb:> Eine alte Hardware erhält seine Daten parallel über den Druckerport des> ST.
Deine Hardware zieht auch die "BUSY"-Leitung auch low, und bestätigt
jedes empfangene Zeichen mit einem Impuls an "ACK"?
Falls es ohne Handshake, nur durch Ausgabe der Bitmuster auf den
Datenport funktionieren muss, wirst du um direkten Zugriff auf die
Schnittstelle nicht herumkommen. Unter XP ging das noch, mit einem
speziellen Treiber, der dies erlaubte, mir fällt nur gerade der Name
nicht mehr ein.
... schrieb:> copy /b datei.txt lpt1:
Stimmt, ohne das ">"
Zumindest auf Strobe sollte man einen kurzen Puls sehen, aber der
ominöse Tester kommt vielleicht mit den geringeren Pegeln nicht klar.
Und vielleicht muss die Schnittstelle im BIOS noch ent-EPP-t werden?
Keine Ahnung ob das einen Einfluss hat, aber kann man ja mal testen.
Uiiii, hier gibts auch noch atari user.
Würde mich gerne mit einklinken. Habe auch noch einen st520 mit hdd und
pipapo am laufen. Auch ein mega st2 steht hier.
Zur centronik.
Beim atari kommt die centronik aus dem soundchip, soweit ich weiß.
AY8910 oderso. Diese konnte man komplett frei ansteuern, was so beim pc
nicht vorgesehen ist. Zumindest nicht mal so.
Gibt es noch mehr atarianer?
> copy /b datei.txt lpt1:
1.Statt Atari mal Drucker angeschlossen?
2.Dann noch Auge ins Bios um den richtigen Mode für LPT einzustellen.
3.Nicht jedes Kabel ist voll belegt.
https://de.wikipedia.org/wiki/Parallele_Schnittstelle
Jens M. schrieb:>> copy /b datei.txt lpt1:> Stimmt, ohne das ">"
Auch ohne das ">" keine Änderung. Allerdings nach einigen Minuten die
Meldung: "Der Drucker hat kein Papier mehr"
Danach sehe ich in der DOS-Box den Promt wieder.
Ingo W. schrieb:> Deine Hardware zieht auch die "BUSY"-Leitung auch low, und bestätigt> jedes empfangene Zeichen mit einem Impuls an "ACK"?
Habe mir mal eben die Schaltung und Beschaltung des Centronics-Tester
angeschaut: Pin 1 = Strobe, Pin 2-9 = D0-D7, Pin 11 = Busy, Pin 18 =
GND. Mehr ist nicht. Strobe setzt hier ein FlipFlop, der Ausgang Q
erzeugt das Busy-Signal. "ACK" gibt es hier nicht. Das FlipFlop kann ich
über eine entprellte Taste rücksetzen (nächstes Zeichen abholen). Der
Tester wird extern mit 5VDC versorgt.
Beim ATARI funktioniert der Tester einwandfrei. Der Tester war mal eine
Zwischenprüfung in meiner Ausbildung. Deshalb staune ich eben nicht
schlecht, dass er an einem PC nicht funktioniert.
Alan Shugart schrieb:> Sicher dass die Parallelschnittstelle am PC HW-mässig noch heile ist?
Nö, habe aber noch ein zweites Notebook, dort das gleiche. Im BIOS
beider Notebooks steht LPT auf ENABLED und bi-direktional.
oszi40 schrieb:> 3.Nicht jedes Kabel ist voll belegt.
Der Centronics-Tester wird direkt an LPT angesteckt, also ohne Kabel.
Was hat es mit dieser INPOUT32.DLL auf sich. Brauche ich diese dll oder
brauche ich sie nicht? Falls ja, wie richte ich diese auf meinem
Notebook ein?
Die DLLs nutzen nur was, wenn du ein Programm hast das sie benötigt.
Die Software kann dann über die DLLs die Schnittstelle frei ansteuern,
ohne Beschränkungen, ähnlich wie ein Microcontroller.
Der Fehler mit dem Papier deutet drauf hin, das die Schnittstelle
- nicht genug Spannung hat und der Tester die Pegel nicht erkennt
- defekt ist
- darauf wartet, das /Error high wird, das ist Pin 15
- darauf wartet, das Paper Emtpy low wird, das ist Pin 12
- Ack bedient haben möchte
- darauf wartet das Select high wird, Pin 13
Ich würd aufgrund der Paper-Meldung mal mit Pin 12 anfangen...
Alan Shugart schrieb:> Sicher dass die Parallelschnittstelle am PC HW-mässig noch heile ist?
Mir fällt eben ein, dass ich an dem Port und an dem Notebook ab und zu
einen GALEP-4 betreibe. Also ist die Schnittstelle in Ordnung.
Jens M. schrieb:> Die DLLs nutzen nur was, wenn du ein Programm hast das sie benötigt.
OK, dann lasse ich das mit der dll mal außen vor.
Jens M. schrieb:> Der Fehler mit dem Papier deutet drauf hin, das die Schnittstelle> - nicht genug Spannung hat und der Tester die Pegel nicht erkennt> - defekt ist> - darauf wartet, das /Error high wird, das ist Pin 15> - darauf wartet, das Paper Emtpy low wird, das ist Pin 12> - Ack bedient haben möchte> - darauf wartet das Select high wird, Pin 13>> Ich würd aufgrund der Paper-Meldung mal mit Pin 12 anfangen...
Oje :-(
Da mein Centronicstester mit 5V läuft: Sind 5V für ein H noch OK?
Wilhelm.W schrieb:> Oje :-(>> Da mein Centronicstester mit 5V läuft: Sind 5V für ein H noch OK?
Du solltest Centronics nicht mit RS232 verwechseln - Centronics arbeitet
nur mit 5V.
Sascha
Jens M. schrieb:> Ich würd aufgrund der Paper-Meldung mal mit Pin 12 anfangen...
Das war aus der DOS-Box ein voller Erfolg !
Allerdings zeigt sich ein seltsamer Effekt: Wenn ich via Tstendruck Busy
auf L setze, lässt sich das Notebook mit dem Senden eines Zeichens eine
Sekunde Zeit, nach einem weiteren Tastendruck wieder eine Sekunde. Also
5 Zeichen in 5 Sekunden.
Ich kann auf dem Tester jedoch Busy über einen Jumper statisch auf L
legen, dann wird auch eine 10k Datei im Bruchteil einer Sekunde
gesendet.
Hintergrund: Ich möchte eine ATARI-Software auf einem ATARI-Emulator
unter WinXP laufen lassen. Das hat auch super funktioniert, nur die
Datensendung über den Druckerport an die externe Hardware funktionierte
nicht. Mit Pin 12 auf L funktioniert das nun. PERFEKT !
Sascha W. schrieb:> Du solltest Centronics nicht mit RS232 verwechseln - Centronics arbeitet> nur mit 5V.
Das ist auch mein Wissensstand, ich las aber:
Jens M. schrieb:> der> ominöse Tester kommt vielleicht mit den geringeren Pegeln nicht klar.
Andreas M. schrieb:> giveio.sys
Wer unter XP direkten Zugriff auf die parallele Schnittstelle haben
moechte sollte sich diese Webseite ansehen:
http://home.snafu.de/mgrafe/index.htm
Eventuell ist sie die Loesung fuer den TO
Vor etwa mehr als 12 Jahren hatte ich noch einen EEpromprogrammierer der
fuer Windows 98 entwickelt wurde und unter XP seinen Dienst eingestellt
hatte.Mit Hilfe des "DDW"-Projekts konnte ich den EEprommer wieder
problemlos in Betrieb nehmen.
Die Webseite ist interessant fuer alle die noch XP-Laptops/Rechner mit
aelterer Software betreiben moechten.
Software wie DOSBOX etc ist nicht erforderlich....
@Wilhelm W
Meine Anmerkung mit den Pegeln kommt daher, das LPT eigentlich 5V
verarbeitet, viele moderne Computer aber eher mit 3,3V arbeiten.
Das reicht bei mancher Hardware aus, aber dein Tester hätte evtl.
notwenidge Signale nicht gesehen, weil es damals noch nichts 3,3V gab.
Aber wenn PE geholfen hat, ist ja alles gut.
Das mit der einen Sekunde dürfte einer der Gründe für die DLLs sein ;)
Obwohl es nicht schaden würde, Select und Error noch passend zu
schalten, möglicherweise liegen die offenen Eingänge auf nicht klarem
Pegel und fangen sich was ein.
> das LPT eigentlich 5V verarbeitet
Wesentlich mehr als 3.6 V wird man da auch nicht sehen.
TTL laesst gruessen.
Die 3.3 v aus einem CMOS sollten also locker reichen.
Jens M. schrieb:> Ich würd aufgrund der Paper-Meldung mal mit Pin 12 anfangen...
Witzigerweise liegt an der externen Hardware Pin 12 bereits an Masse.
Letztendlich aber egal, denn die externe Hardware läuft nicht am LPT1
des Notebooks. Zwar kann ich bei der Emulator Einstellung "exklusiver
Zugriff auf LPT1" mit meinem Centronics-Tester die Bytes mit der Taste
einzeln raus lassen, das Handshaking mit der externen Hardware scheint
aber dann nicht zu funktionieren.
Wenn z.B. Busy H ist, erscheint am ATARI die Programm-Meldung: "Drucker
nicht bereit". Am ST-Emulator erscheint diese Meldung nicht, es bleibt
aber das Programm hängen und der Emulator stürzt ab (keine Rückmeldung).
Das Ganze ist wohl doch eine Nummer zu speziell. Dann baue ich eben
weiterhin den ATARI ST für diesen Job auf. Ist halt schon eine Menge
Zeug auf dem Tisch, ich hoffte, die Daten auch aus dem Notebook raus
lassen zu können.
Der Emulator ist übrigens für Windows 95/98/ME und Windows
NT4.0/2000/XP. Alle meine ATARI-Programme laufen auf dem Emulator
anstandslos, scheinbar ist es aber ein Problem, die parallele
Schnittstelle anzusprechen.
Jens M. schrieb:> @Wilhelm W> Meine Anmerkung mit den Pegeln kommt daher, das LPT eigentlich 5V> verarbeitet, viele moderne Computer aber eher mit 3,3V arbeiten.michael_ schrieb:> Es kann sein, dass die Pegel an deinem Notebook zu gering sind.> Alte Geräte wie dein Atari sind für 5V ausgelegt.> Neuere Geräte haben oft weniger Spannung am Parallelport.
Hab ich ja hier schon genannt.
... schrieb:> Wesentlich mehr als 3.6 V wird man da auch nicht sehen.> TTL laesst gruessen.> Die 3.3 v aus einem CMOS sollten also locker reichen.
Aber die alten Chip im Atari wollen auch Strom sehen.
Siehe Lastfaktor.
Bei einigen CNC-Steuerungen wird explizit darauf hingewiesen, dass sie
nur mit Schnittstellen von richtigen Desktop-PC funktionieren.
Erstmal würde ich einen Kreuzvergleich mit einem anderen PC machen.
michael_ schrieb:> Bei einigen CNC-Steuerungen wird explizit darauf hingewiesen, dass sie> nur mit Schnittstellen von richtigen Desktop-PC funktionieren.
Wenn ich mich richtig erinnere waren die ersten
Centronics-Schnittstellen (wer hat LPT erfunden? Die Fa. Centronics
wars) aufgebaut mit Treibern der Art 7406 und Pullup-Widerständen von
ein paar hundert Ohm. Die konnten einfach alles treiben.
Georg
Mal ne ganz einfache Idee - hast du mal probiert, wie das Biest
reagiert, wenn du den Parallelport im BIOS auf klassisch unidirektional
stellst? Oder ist bidirektional ohne ECP schon die einfachste mögliche
Einstellung?
Matthias L. schrieb:> Oder ist bidirektional ohne ECP schon die einfachste mögliche> Einstellung?
Nö, in eine Richtung ist einstellbar, werde ich noch testen.
Das Problem scheint mir aber wo anders zu liegen.