Hallo Leute, ich weiß nicht, ob ich hier ganz richtig bin, aber ich glaube hier ist eine ganze Menge Hirnschmalz versammelt... deshalb hier meine Frage: Ich habe ein altes Programm, dass nur unter MS-DOS läuft. Ich habe eine Virtuelle Maschine mit VirtualBox aufgesetzt und habe hierauf DOS6.22 laufen. Mein Programm (Multiprog) arbeitet über eine Serielle Schnittstelle. Das Problem => es kommt keine Kommunikation zustande Die Serielle Schnittstelle funktioniert soweit auch unter DOS (hab das mit einem anderen Programm getestet) (ist ein USB to Seriell-Adapter, der unter Windows 10 eingebunden und dann über VirtualBox "durchgeroutet" ist) Ich vermute jetzt, dass mein altes Programm Probleme mit dem FIFO der Seriellen Schnittstelle hat. Kann ich den irgendwie komplett abschalten? Im Gerätemanager kann ich den leider nur Runterschrauben. Runterschrauben hilft aber leider nichts. eventuell auch noch andere Ideen? Für eure Hilfe wäre ich sehr dankbar :-) Gruß Chris
:
Gesperrt durch User
Ältere Programme haben oft nur ein Byte-Protokoll, d.h. sie senden keine Blöcke. Damit sind bei einer USB-Pollingzeit von 10ms nur max 50Byte/s möglich und die Programme machen einen Timeout. Am FIFO wirds daher nicht liegen. Man könnte die Pollingzeit verringern, z.B. auf 1ms. Oder ne echte UART nehmen. Viele Motherboards haben noch eine, nur das Kabel zum D-SUB fehlt.
Erstmal Danke für die schnelle Antwort! Hmh ok... das mit der Pollingzeit auf 1ms klappt leider nicht mit dem echten UART ist das so ne Sache... ich brauch das ganze auf nem Notebook...hab hier leider keinen richtigen Seriellen Anschluss mehr.... hmh dann werd ich wohl hoffen müssen, dass mein altes Notebook (mit dem das noch funktioniert) noch ne Weile läuft Falls noch Ideen vorhanden sind, bitte melden :-) Gruß Chris
Schonmal Dosbox (http://www.dosbox.com/) ausprobiert? Das bringt älteste DOS Software zum laufen. Da das Opensource ist kannst du vielleicht sogar die FIFO selbst aus der COM Emulation entfernen.
Was macht denn dieses uralte DOS-Programm? Vielleicht gibt es vergleichbare Funktionalität auch mit etwas neuzeitlicheren Programmen, die auf das direkte Hardwaregefrickel verzichten?
Das ist ein Regelungsprogramm... das gibt's auch mit gleicher Funktionalität neuer... aber hilft mir leider nix, wenn meine alte Anlage das nicht kann :-) @Bernd Strobel... wie entfernt man da die fifo?
> wie entfernt man da die fifo?
Gar nicht. Die sind standardmäßig deaktiviert und können per Software
aktiviert werden - soweit ich weiß.
In der Systemsteuerung gibt es dazu eine "Erweiterte"
Einstellmöglichkeit. Siehe angehängter Screenshot.
Ich schätze aber, dass das nicht auf DOS Programme wirkt. Die gehen ja
nicht über den Windows Treiber sondern sprechen den UART Chip über seine
Register an. Wenn Windows bzw. VmWare diese emuliert, dann sicher auch
das Verhalten, dass der Fifo standardmäßig deaktiviert ist.
Chris schrieb: > Ich vermute jetzt, dass mein altes Programm Probleme mit dem FIFO der > Seriellen Schnittstelle hat. Ziemlich sicher nicht. Nach meiner Erfahrung ist es viel eher so, dass ein heutiger Rechner einfach zu schnell ist, das Programm wartet auf Antwort von der Gegenstelle, aber um Grössenordnungen weniger lang als auf einem alten 80286er, und kommt dann zum Schluss da ist keiner. Ich habe so ein Protokoll in DosBox zum Laufen gebracht, da kann man die verfügbare CPU-Leistung bzw. Geschwindigkeit einstellen. Die habe ich solange heruntergesetzt, bis ein uralter Hitex-Emulator wieder von seiner Software ansprechbar war, funktioniert jetzt wieder einwandfrei. Das muss man natürlich auf jedem Rechner anders einstellen. Georg
Hallo Stefan Us erstmal Danke für deinen Screenshot. Genau diese Einstellmöglichkeit habe ich gesucht... nur leider sieht die bei mir etwas anders aus! (siehe Anhang) hier hab ich auch mal etwas an den Werten rum gestellt... leider ohne Erfolg... so nen Haken setzen (Fifo verwenden) kann ich leider nicht... Ich nehme an, da das hier keine echte serielle Schnittstelle ist, sondern ein USB to seriell Adapter! Und wie gesagt.. mit DOSBox geht's leider auch nicht....
Hi Georg, phuu... das hört sich sehr aufwändig an... werde das bei Gelegenheit mal noch ausprobieren! Hast du vielleicht eine kurze Anleitung für mich... dann muss ich mich nicht zu Tode suchen ;-)
Richtig, Deine Serielle scheint über einen USB-Chip angebunden zu sein. Probier mal, die Paketgrößen auf Minimum und die Wartezeit auf 1-2 ms zu stellen. Dann werden die Daten schneller gesendet und nicht erst gesammelt.
Das hab ich schon ausprobiert... hat leider nichts genützt :-(
Bei den DOS Programmen war es oft üblich die Hardware der Comports dierekt anzusprechen. Ich verwende noch oft das alte Terminalprogramm vom Nortoncommander, da ist das auch so. Das läuft nur mit "echten" Comports. Mit USB hat man da keine Chance.
Chris schrieb: > @Bernd Strobel... wie entfernt man da die fifo? Das weiß ich leider nicht. Zur DosBox, das ist ein recht verbreitetes Programm, das vor allem entwickelt wurde, um DOS-Spiele aus den 80er und 90er Jahren wieder laufen zu lassen. Darin ist es sehr erfolgreich. Es ist keine herkömmliche virtuelle Maschine, sondern es emuliert das DOS und die HW selbst. Gerade Spiele waren ja damals sehr hardwarenah programmiert, da es keine Treiber in engerem Sinne gab und jedes Programm direkt die HW ansprechen musste. Dosbox emuliert sämtliche Soundkarten, Joysticks, Tastaturen, Mäuse usw aus der Zeit und auch die DOS Systemcalls. Zudem bremst es die Ausführung der Programme soweit ab, dass die alten Spiele wieder spielbar werden auf unserer Sience Fiction Hardware. Da Mäuse damals oft über die serielle Schnittstelle angeschlossen wurden, könnte Dosbox vielleicht auch diese emulieren. Einen Blick ist es wert. Obs es am Ende klappt weiß ich nicht. Es ist nur ein Versuch, der nichts kostet. Installieren brauchst du das Ding nicht. Es gibt ein Zipfile, dass du einfach auspacken kannst und dann läuft es. Die Doku solltest du aber auf jeden Fall lesen. Es gibt da eine Configdatei, keine UI für die Einstellungen.
Chris schrieb: > Das ist ein Regelungsprogramm... das gibt's auch mit gleicher > Funktionalität neuer... aber hilft mir leider nix, wenn meine alte > Anlage das nicht kann :-) Und warum muss das Programm für Deine "Anlage" jetzt ausgerechnet auf einem Notebook laufen? Hat das Notebook einen ExpressCard-Slot? Dann könntest Du eine ExpressCard mit RS232 verwenden (aufpassen, die Dinger gibts auch mit interner USB-Anbindung, womit Du nicht weiter wärst).
Das muss unbedingt auf ein Notebook, da ich nicht ständig nen kompletten PC zu meiner "Anlage" tragen möchte :-) ExpressCard hats leider nicht :-( Ist generell recht spärlich ausgestattet... hat nicht mal ein DVD Laufwerk :D... aber tut ja generell nix zur Sache.... also die einzige brauchbare Idee scheint momentan die DOSBox und da mal den Fifo abzuschalten...falls das geht...ansonsten macht das ja eigentlich auch nix anderes wie meine virtuelle Maschine...von daher wird's wahrscheinlich nicht klappen...
Chris schrieb: > also die einzige brauchbare Idee scheint momentan die DOSBox Hattest Du nicht schon geschrieben, daß Du DOSBox ohne Erfolg ausprobiert hättest? Beitrag "Re: Fifo abschalten unter Windows 10?"
Rufus Τ. F. schrieb: > Chris schrieb: >> also die einzige brauchbare Idee scheint momentan die DOSBox > > Hattest Du nicht schon geschrieben, daß Du DOSBox ohne Erfolg > ausprobiert hättest? > > Beitrag "Re: Fifo abschalten unter Windows 10?" Ja, aber den Tipp von Georg (Runtertakten/CPU-Leistung einschränken) in der DosBox hat er noch nicht probiert. Ich denke, das meint er hier.
Eriwan schrieb: > Ja, aber den Tipp von Georg (Runtertakten/CPU-Leistung einschränken) in > der DosBox hat er noch nicht probiert. Anbei meine dosbox.conf. Wichtig für diesen Zweck: "cycles" und "serial". Georg
Georg schrieb: > Nach meiner Erfahrung ist es viel eher so, dass > ein heutiger Rechner einfach zu schnell ist, das Programm wartet auf > Antwort von der Gegenstelle, aber um Grössenordnungen weniger lang als > auf einem alten 80286er, und kommt dann zum Schluss da ist keiner. Ich kann mich dunkel erinnern, daß Programme, die in Turbo-Pascal oder TC geschrieben wurden, ab 166MHz die Hufe hochgerissen haben.
Super, vielen Dank soweit @Rufus => ich meinte das mit dem runtertackten... ich werd mich die Tage nochmal dran setzen und das ausprobieren... vielleicht klappts ja!
Peter D. schrieb: > Georg schrieb: >> Nach meiner Erfahrung ist es viel eher so, dass >> ein heutiger Rechner einfach zu schnell ist, das Programm wartet auf >> Antwort von der Gegenstelle, aber um Grössenordnungen weniger lang als >> auf einem alten 80286er, und kommt dann zum Schluss da ist keiner. > > Ich kann mich dunkel erinnern, daß Programme, die in Turbo-Pascal oder > TC geschrieben wurden, ab 166MHz die Hufe hochgerissen haben. Da gab es doch sogar sogenannte "PC-Bremsen", also Programme, die den Prozessor dermaßen ausgebremst haben, daß alte Programme wieder liefen :-)
Chris schrieb: > @Rufus => ich meinte das mit dem runtertackten... Auf welchem Rechner bzw. Win-Version ist dein Programm zuletzt gelaufen? Vielleicht ist auch nur dein USB-RS232 Adapter ungeeignet. Welchen Chip hat dieser?
>Auf welchem Rechner bzw. Win-Version ist dein Programm zuletzt gelaufen? >Vielleicht ist auch nur dein USB-RS232 Adapter ungeeignet. >Welchen Chip hat dieser? Hmh... das war ein Windows XP mit nem Intel-Dual Core glaube ich (habs grad nicht griffbereit) ein Elite Book von HP... also prinzipiell auch keine schlechte Kiste => Da liefs mit VirtualPC2004 unter DOS...(VirtualPC geht ja glaub nur bis Vista, weshalb ich das nicht verwenden kann => da hatte ich aber auch noch eine echte Serielle Schnittstelle) Also Adapter hab ich zwei zur Auswahl: Einmal den USB to Seriell von digitus Prozessor 1 x PL-2303 => https://shop.jacob.de/Kabel-und-Adapter/USB-Hub/DIGITUS-DA-70155-DA-70155-artnr-428155.html?gclid=CLvx_Yqz6MwCFeop0wodvBwPQg und einmal den renkforce: Chipsatz: FTDI / FT232R https://www.conrad.de/de/usb-20-seriell-anschlusskabel-1x-usb-20-stecker-a-1x-d-sub-stecker-9pol-1-m-schwarz-vergoldete-steckkontakte-renkforce-1360254.html?gclid=CNDzyNaz6MwCFfEV0wodT8YOXA&insert_kz=VQ&hk=SEM&WT.srch=1&WT.mc_id=google_pla&s_kwcid=AL!222!3!87572880657!!!g!!&ef_id=VwIuAQAABYWv@efF:20160520100527:s
Peter D. schrieb: > Ich kann mich dunkel erinnern, daß Programme, die in Turbo-Pascal oder > TC geschrieben wurden, ab 166MHz die Hufe hochgerissen haben. Das lag m.W. am Second Level Cache. Wenn man den damals auf den Pentiums (MMX usw.) abgeschaltet hat, ging alles wieder. Aber das ist heute keine Option mehr.
Besorg dir eine Docking Station für den Laptop. Dann ist der echte com Port wieder da ...
superdepp schrieb: > Besorg dir eine Docking Station für den Laptop. Dann ist der echte com > Port wieder da ... aber da kann man nicht sicher sein, teilweise binden sie die COM auch nur über USB an. Es gibt Docking Station die Nur per USB3.0 angeschlossen werden.
Bei ebay ein Uralt-Laptop für 10€ kaufen und nur dafür nutzen? Satellite 4600 hatte soweit ich mich erinnere noch eine echte serielle. So einen hier habe ich denselben Gründen wie du an einer CNC-Fräse: http://www.ebay.de/itm/Maxdata-M-Book-1000T-/152093066946?hash=item23697406c2:g:eKMAAOSw1DtXJSjN Hat auch eine echte serielle.
H.Joachim S. schrieb: > Bei ebay ein Uralt-Laptop für 10€ kaufen und nur dafür nutzen? Das sehe ich da eigentlich auch als sinnvollste Option. Die alten Dockingstation Anschlüsse der Laptops waren ja komplette ISA/PCI Busse, da konnte man dann ja auch normale Steckkarten dran installieren. Die neuen am USB Bus werden da nicht funktionieren.
Chris schrieb: > und einmal den renkforce: > Chipsatz: FTDI / FT232R > > https://www.conrad.de/de/usb-20-seriell-anschlusskabel-1x-usb-20-stecker-a-1x-d-sub-stecker-9pol-1-m-schwarz-vergoldete-steckkontakte-renkforce-1360254.html?gclid=CNDzyNaz6MwCFfEV0wodT8YOXA&insert_kz=VQ&hk=SEM&WT.srch=1&WT.mc_id=google_pla&s_kwcid=AL!222!3!87572880657!!!g!!&ef_id=VwIuAQAABYWv@efF:20160520100527:s Dann probiere mal den. Vorausgesetzt, der Chip ist echt. Und vor allem an der alten Kiste. Da erkennst du dann, ob es ein reines Softproblem von W10 ist.
Besitze HP 4000 Laser Jet, mit Renkforce Cetronics Anschlußkabel (Cetronics zu USP)funktioniert leider nicht. Unter Windows 10 wird nur die Möglichkeit geboten das Ding zu entfernen?
helfried schrieb: > Besitze HP 4000 Laser Jet, mit Renkforce Cetronics Anschlußkabel Das hat mit dem Thema dieses Threads exakt überhaupt nichts zu tun.