Ich habe auf einem neuen Win7-Rechner 32Bit Dosbox 0.74 installiert. Auf
dem vorherigen PC mit W95 ist eine Dos-Anwendung zum Übertragen von
Daten an eine Fräsmaschine installiert.Auf dem neuen PC hat das Programm
auch im Dosfenster funktioniert. Jedoch die Datenübertragung ist zu
langsam. Daher Dosbox installiert und eingerichtet. Nun tritt folgender
Effekt auf. Das Programm wartet nach dem Start nicht auf die
Fräsmaschine, sondern schickt die Daten ins Nirwana. Schnell, aber
umsonst...
Die Machine und das Programm sind auf 38400,7,E,CTS/RTS eingestellt. DIe
Schnittstelle im Rechner ist Standard: 9600,8,n,xon,xoff.
Scheinbar geht das handshake nicht.
Dummerweise tritt nun im Dosfenster von Windows der selbe Effekt auf.
Woran kann das liegen?.
Weiss jemand einen Rat? Danke im voraus.
Wilhelm Haußer schrieb:> Weiss jemand einen Rat?
das wird einfach nicht gehen. Da du schreibst, das es unter DOS läuft,
nutzt das Programm wohl nicht die WindowsAPI zum zugriff auf die
Schnittstelle. Damit ist das ganze einfach nicht mehr Zeitgemäß auf
einem aktuellen Betriebssystem.
Hast du überhaupt noch eine echte RS232 oder hängt das sogar am USB?
Windows hat übrigens kein DOS-Fester, das ist eine Kommandozeile die
nichts mehr mit dos zu tun hat.
Peter II schrieb:> Windows hat übrigens kein DOS-Fester
DOSbox ist nicht das Windows-Kommandozeilenfenster, sondern ein
DOS-Emulator.
Damit ist es beispielsweise möglich, auch unter x64-Windows einen alten
Frickelport-EPROM-Programmierer mit DOS-Steuersoftware
weiterzuverwenden, wie ich hier beschrieben habe:
Beitrag "[Anleitung] DOS-Parallelport-EPROMer unter Windows 8.1 (x64)"
Wilhelm sollte sich die DOSbox-Konfiguration der seriellen Schnittstelle
genauer ansehen, die steht in der Datei dosbox*.conf im Abschnitt
[serial]
Da muss für die gewünschte Schnittstelle "directserial" eingetragen
werden, der Defaultwert "dummy" dürfte zum geschilderten Verhalten
führen.
Rufus Τ. Firefly schrieb:> DOSbox ist nicht das Windows-Kommandozeilenfenster, sondern ein> DOS-Emulator.
er schreibt aber
> Dummerweise tritt nun im Dosfenster von Windows der selbe Effekt auf.
und das gibt es nicht.
Peter II schrieb:> er schreibt aber>>> Dummerweise tritt nun im Dosfenster von Windows der selbe Effekt auf.> und das gibt es nicht.
Wilhelm hat aber auch das hier geschrieben, sogar als ersten Satz
überhaupt:
> Ich habe auf einem neuen Win7-Rechner 32Bit Dosbox 0.74 installiert.
Erst mal danke für die vielen Antworten.
Schon klar, dass es das dos so auf win7 nicht gibt. Nur der einfachheit
halber so ausgedrückt.
Es ist eine richtige Onboard-RS232.
Vor installieren der DOS-BOX hat die Ausgabe auf die Maschine geklappt,
aber zu langsam. Nach der Installation der DOSBOX erfolgt wohl keine
Ausgabe auf die Maschine, sieht aus, wie keine Verbindung.
Jedoch aus dem CMD-Editor gehts nun auch nicht mehr. Derselbe Effekt.
In config-Datei ist der Port eingetragen:
serial1 = directserial:COM1
serial2 = disabled
serial3=disabled
serial4=disabled
Wilhelm Haußer schrieb:> Jedoch aus dem CMD-Editor gehts nun auch nicht mehr.
Was magst Du damit meinen? Daß Du Dein DOS-Programm in der
Windows-eigenen DOS-Emulationsumgebung laufen lässt?
Liebe Leute,
es kann doch nicht sein das Ihr in einem Technikforum wie uC.Net es
nicht versteht wenn jemand CMD, DosBox etc schreibt! Sogar ich lese
heraus was der TE meint! Geht es hier nur darum ihn sprachlich in die
richtige Richtung zu bringen? Oder trollt ihr einfach?
In config-Datei ist der Port eingetragen:
1
serial1 = directserial:COM1
2
serial2 = disabled
3
serial3=disabled
4
serial4=disabled
kann es sein das die DosBox mit den Leerzeichen nicht zurecht kommt?
GGf die Schnittstelle COM1 durch die Adresse $03F8 ersetzen (bzw. durch
die richtige Schreibweise)
Hier sind die Schnittstellenadressen:
http://www.bios-info.de/4p92x846/hreserve.htm
Alex W. schrieb:> wenn jemand CMD, DosBox etc schreibt!
Da er hier genau zwei unterschiedliche Dinge meint, muss man das
auseinanderhalten.
Dir könnte, wenn Du den Thread verfolgt haben würdest, auch schon
aufgefallen sein, daß ich auf die Konfiguration der Schnittstellen in
der dosbox.conf hingewiesen habe; ich zitier' mich mal:
> Wilhelm sollte sich die DOSbox-Konfiguration der seriellen Schnittstelle> genauer ansehen, die steht in der Datei dosbox*.conf im Abschnitt [serial]
Rufus Τ. Firefly schrieb:> Dir könnte, wenn Du den Thread verfolgt haben würdest, auch schon> aufgefallen sein, daß ich auf die Konfiguration der Schnittstellen in> der dosbox.conf hingewiesen habe; ich zitier' mich mal:>>> Wilhelm sollte sich die DOSbox-Konfiguration der seriellen Schnittstelle>> genauer ansehen, die steht in der Datei dosbox*.conf im Abschnitt [serial]
Und ich schrieb darauf hin:
Alex W. schrieb:> In config-Datei ist der Port eingetragen:serial1 = directserial:COM1> serial2 = disabled> serial3=disabled> serial4=disabled>> kann es sein das die DosBox mit den Leerzeichen nicht zurecht kommt?> GGf die Schnittstelle COM1 durch die Adresse $03F8 ersetzen (bzw. durch> die richtige Schreibweise)
Das wichtige war die Leerzeichen und die Adresse anstatt COM1
Schön was wir ein paar Bytes der Serverdatenbank hinzugefügt haben...
Genau. Und da hat es funktioniert. Jedoch die Datenübertragung auf Com1
war zu langsam. Daher Dosbox installiert und seither das Problem. In der
Dosbox sowie im Windows eigenen Kommandozeileninterprator.
Wilhelm Haußer schrieb:> Die Schnittstelle im Rechner ist Standard: 9600,8,n,xon,xoff.
Das ist unwichtig da wenig Programme dieses default nutzen, DOS Box
schon gar nicht. Aber welcher COM Port ist eingestellt?
> In config-Datei ist der Port eingetragen:> serial1 = directserial:COM1> serial2 = disabled
Das läuft bei mir, auch mit USB / serial Wandlern etc.
Teste erstmal mit einem Dos Terminal Programm ob das ganze läuft.
Die zweite Schnittstelle per Nullmodem z.B. an Hterm in Windows hängen.
Oder mit einem serial / USB Wandler.
Wilhelm Haußer schrieb:> In der> Dosbox sowie im Windows eigenen Kommandozeileninterprator.
Und was hast du denn für COM1 eingestellt, wenn du CMD.EXE aufrufst?
Sag doch einfach mal "mode com1" im "Windows eigenen
Kommandozeileninterprator".
Georg