Forum: PC Hard- und Software Fifo abschalten unter Windows 10?


von Chris (Gast)


Lesenswert?

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
von Peter D. (peda)


Lesenswert?

Ä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.

von Chris (Gast)


Lesenswert?

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

von thorsten (Gast)


Lesenswert?

Statt eine komplette VM laufen zu lassen, würde ich es mal mit

    https://www.dosbox.com/

probieren.

von Chris (Gast)


Lesenswert?

hab ich auch probiert...gleiches Ergebnis :-(

von Bernd Strobel (Gast)


Lesenswert?

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.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Was macht denn dieses uralte DOS-Programm? Vielleicht gibt es 
vergleichbare Funktionalität auch mit etwas neuzeitlicheren Programmen, 
die auf das direkte Hardwaregefrickel verzichten?

von Chris (Gast)


Lesenswert?

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?

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

> 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.

von Georg (Gast)


Lesenswert?

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

von Chris (Gast)


Angehängte Dateien:

Lesenswert?

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....

von Chris (Gast)


Lesenswert?

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 ;-)

von Soul E. (Gast)


Lesenswert?

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.

von Chris (Gast)


Lesenswert?

Das hab ich schon ausprobiert... hat leider nichts genützt :-(

von Jürgen D. (poster)


Lesenswert?

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.

von Bernd Strobel (Gast)


Lesenswert?

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.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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).

von Chris (Gast)


Lesenswert?

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...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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?"

von Eriwan (Gast)


Lesenswert?

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.

von Georg (Gast)


Angehängte Dateien:

Lesenswert?

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

von Peter D. (peda)


Lesenswert?

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.

von Chris (Gast)


Lesenswert?

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!

von Eriwan (Gast)


Lesenswert?

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 
:-)

von michael_ (Gast)


Lesenswert?

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?

von Chris (Gast)


Lesenswert?

>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

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

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.

von superdepp (Gast)


Lesenswert?

Besorg dir eine Docking Station für den Laptop. Dann ist der echte com 
Port wieder da ...

von Peter II (Gast)


Lesenswert?

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.

von H.Joachim S. (crazyhorse)


Lesenswert?

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.

von Jürgen D. (poster)


Lesenswert?

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.

von michael_ (Gast)


Lesenswert?


von helfried (Gast)


Lesenswert?

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?

von (º°)·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.· (Gast)


Lesenswert?

Besorg Dir eine JetDirect-Karte fuer Deinen HP und gudd iss.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

helfried schrieb:
> Besitze HP 4000 Laser Jet, mit Renkforce Cetronics Anschlußkabel

Das hat mit dem Thema dieses Threads exakt überhaupt nichts zu tun.

Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.