INTERLINK (INTERLNK und INTERSVR) mit VMWare Workstation Player nur 9600 Baud ?

  • Heute war ich einerseits froh das INTERSVR.EXE und INTERLNK.EXE auch mit MS-DOS 7.1 (von Windows 98SE) läuft, andererseits habe ich mich stark darüber geärgert das trotz korrekten Parameter beim Start von INTERSVR auf der virtuellen Maschine nur 9600 Baud gehen (zumindest mit dem USB->COM Adapter !).


    Gestartet wurde auf der virtuellen Maschine des modernen Rechners: INTERSVR /COM1 /X=A /BAUD:115200


    Gestartet wurde auf dem Client (ein realer Pentium Rechner): INTERLNK /COM1 /NOPRINTER /DRIVES:1 /BAUD:115200 /NOSCAN


    Der Kram verbindet sich auch tatsächlich, habe genau ein Laufwerk D: auf dem Client.

    Leider zeigt aber, und das erklärt die Langsamheit der Übertragung, der Server unten in der Statuszeile "Geschwindig.=9600" an, sobald die Verbindung genutzt wird.


    D.h. es werden nur 9600 Baud ausgehandelt, obwohl 115200 angegeben wurden. Wenn ich statt der 115200 nur 19200 beim Starten des INTERLINK Servers angebe, werden es immerhin 19200 Baud. Das scheint aber die Schallmauer zu sein, gebe ich mehr ein, sind es wieder 9600.


    Nutze ich KERMIT-95 (also keine virtuelle Maschine!) auf dem modernen Rechner und stelle 115200 Baud ein, und nutze auf dem alten Rechner MSKERMIT für DOS ebenfalls mit 115200 Baud, flutscht es wie geschmiert, d.h. die 115200 Baud werden spielend erreicht (auf beiden Rechnern!).


    P.S.: Der "MODE" Befehl unterstützt übrigens unter DOS nur 19200 Baud maximal als Einstellungsparameter.


    Liegt es also am Drecks-VMWare ?

    Wenn ja, ist für den Zweck VirtualBox eventuell besser und unterstützt höhere Baudraten ?

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Mit Hilfe eines Tricks komme ich auf 38400:

    Ich setze zuerst im Gerätemanager den Port auf 115200 Baud.

    Wenn ich dann VMWare Workstation Player mit DOS und INTERSVR starte, komme ich auf 38400 (siehe Statusmeldung):


    Mit VirtualBox komme ich gar nicht so weit.

    Bei der Einstellung des seriellen Ports COM4 kommt gleich eine Fehlermeldung - aber nur dann wenn man den seriellen Port als Namen in der Pfadangabe mit "COM4:" nicht angibt. Ansonsten das gleiche Bild, 9600 Baud kommt bei Baudraten > 19200.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

    Einmal editiert, zuletzt von Peter z80.eu ()

  • Da mein B450-Mainboard tatsächlich noch eine COM-Schnittstelle besitzt, habe ich nach einem 10-pin Adapterkabel und einem Slotblech gesucht, und gefunden. Dann diese "echte" COM1 mit VMWare benutzt, und siehe da, 115200 Baud sind auf einmal auch kein Problem:

    Da steht's: "Geschwindig.=115200" ...


    Ich lerne darauf, mit dem USB-Seriell-Adapter gewinnt man keinen Blumentopf, trotz FTDI Chip und sofortiger Erkennung durch Windows.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Ich lerne darauf, mit dem USB-Seriell-Adapter gewinnt man keinen Blumentopf, trotz FTDI Chip und sofortiger Erkennung durch Windows.

    Ich habe mich nie damit auseinandergesetzt, wie Interlink genau funktioniert. Aber kann es nicht einfach sein, dass bei den USB-Adaptern zusätzliche Leitungen fehlen, die von Interlink verwendet werden? Voll belegt sind diese USB-Adapter doch alle nicht.


    Ich habe mehrere USB/RS232-Adapter im Einsatz, aber nur für normale serielle Kommunikation. Da gibt es wenig Probleme.

    FTDI ist für mich kein Qualitätsmerkmal. Ich schaue immer, dass möglichst ein CH330 drin ist. Damit habe ich die wenigsten Treiberprobleme.


    Und seit der Geschichte mit den brickten FTDI-Clones traue FTDI nicht mehr über den Weg.


    Zu VMware: Leider habe ich hier keinen Rechner mit echter RS232-Schnittstelle, auf dem VMware oder VirtualBox vernüftig laufen würden.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

    2 Mal editiert, zuletzt von detlef ()

  • Meines Wissens könnte es damit zusammenhängen das über die USB-Teile angeblich immer nur komplette Blöcke übertragen werden. Das hat z.B. zur Folge, dass ein RS232 Atmel Einfachprogrammer plötzlich mal 1/4 Stunde braucht um einen µC zu flashen, obwohl das mit einer echten Schnittstelle innerhalb weniger Sekunden erledigt ist...

    Dabei ist's wohl auch egal ob's ein FTDI, PL2303 oder ähnliches ist...


    :)Franky

  • Ich denke nicht, dass es per se am USB-Seriell-Adapter liegt, da er mit nativen Windows-Anwendungen ja die volle Leistung bringt.

    Es ist eher die Kombination von USB-Seriell-Adapter und VMWare respektive VirtualBox und dem Guest-OS "DOS" mit "Interlink".

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Hier gibt es eine Übersicht hinsichtlich der notwendigen Kabelbelegung für Interlnk.

    Ich vermute auch, das das USB Adapterchen diese Verbindungen nicht alle zur Verfügung stellt.

    Gruß Torsten

    BFZ MFA, ZX80Core, AX81, ZX81, ZX81NU, Spectrum+, Harlequin, MSX VG8010, Amstrad NC100, Cambridge Z88, C64, C128D, Amiga 500 & 1200, Atari Portfolio, HP200LX, IBM PC5155, TP755c, TP755cx, T20, T41, T61, PS/2 (Model 40SX), PS/2E, Accura 101, Apple //e, Sharp PC1401 & PC1403H, TI59 m. PC-100c, HP48SX & HP48GX


    An die Person, die meine Schuhe versteckt hat, während ich auf der Hüpfburg war: Werd' erwachsen! :motz:


    ::matrix::

  • Das würde aber nicht erklären, wieso Kermit-95 unter Windows 10 keine Probleme hat, die 115200 Baud zu nutzen.

    Denke es liegt weiterhin an der Art und Weise, wie VMware oder VirtualBox die serielle Schnittstelle des Hosts nutzen kann.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Meines Wissens könnte es damit zusammenhängen das über die USB-Teile angeblich immer nur komplette Blöcke übertragen werden. Das hat z.B. zur Folge, dass ein RS232 Atmel Einfachprogrammer plötzlich mal 1/4 Stunde braucht um einen µC zu flashen, obwohl das mit einer echten Schnittstelle innerhalb weniger Sekunden erledigt ist...

    Dabei ist's wohl auch egal ob's ein FTDI, PL2303 oder ähnliches ist...


    :)Franky

    Nö, nö. So ist das nicht. Über einen USB/RS232-Wandler kann man genauso einzelne Zeichen verschicken, wie über eine echte RS232-Schnittstelle. Das ist völlig transparent. Sonst würde das ja im Terminalbetrieb überhaupt nicht funktionieren.


    Ich habe eine USB-Debuggersoftware für Windows, da sieht man sehr schön, wie schnell aufeinander folgende Zeichen zu Blöcken zusammengefasst gesendet werden, während einzelne Zeichen auch einzeln über die Leitung gehen. Ich denke, das hängt damit zusammen, wie die Daten von der Anwendung an die Windows API geschickt werden (Block oder einzeln).


    Allerdings kann es natürlich auf dem Weg über VMware und Windows und den USB-Treiber zu beliebigen Timingproblemen (Verschiebungen, Delays) kommen, die die Kommunikation von Interlink aus dem Tritt bringen können.


    Aber ist der Atmel-Programmer denn ein RS232-Adapter? Üblicherweise verwendet man zum Flashen doch SPI-Adapter. Das ist was völlig anderes. Da ist noch ein Prozessor mit drauf, mit eigener Firmware.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

    3 Mal editiert, zuletzt von detlef ()

  • Aber ist der Atmel-Programmer denn ein RS232-Adapter? Üblicherweise verwendet man zum Flashen doch SPI-Adapter. Das ist was völlig anderes. Da ist noch ein Prozessor mit drauf, mit eigener Firmware.

    Nee, nee - das ist schon rein seriell. Findest du etliche wenn Du in der Google Bildersuche nach atmel rs232 programmer suchst. Das hier ist z.B. so einer:

    https://core.st/projects/Serial_programmer/

    Ist aber doch an den SPI-Pins vom Atmel angeschlossen. Das ist ein SPI-Programmer.


    Da läuft keine RS232-Kommunikation sondern die SPI-Pins werden über RS232-Pins angesteuert.

    Wundert mich, dass sowas überhaupt über einen USB/RS232-Adapter funktioniert. Dafür sind die definitiv nicht vorgesehen.


    Da empfehle ich definitiv einen echten SPI-Programmer. Die sind auch nicht viel teurer.


    Aber wir triften vom Thema ab. ;)

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Ist aber doch an den SPI-Pins vom Atmel angeschlossen.

    Ach so meinst Du das - jepp, das Teil simuliert SPI. Funzt aber an einem echten Port ohne Probleme.

    Ja, weil man bei einer echten RS232-Schnittstelle die Leitungen direkt ansteuern kann. Über die Register des Floppy-Controllers UART-Bausteins.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

    Einmal editiert, zuletzt von detlef ()

  • Ja, weil man bei einer echten RS232-Schnittstelle die Leitungen direkt ansteuern kann. Über die Register des Floppy-Controllers.

    Über die Register des Floppycontrollers?

    Quatsch. Das kommt, wenn man an mehreren Themen parallel dran ist. ;)

    Ich meinte natürlich den UART-Chip.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Das würde aber nicht erklären, wieso Kermit-95 unter Windows 10 keine Probleme hat, die 115200 Baud zu nutzen.

    Denke es liegt weiterhin an der Art und Weise, wie VMware oder VirtualBox die serielle Schnittstelle des Hosts nutzen kann.

    Daran liegt es sicher nicht. Es liegt daran, dass DOS-Software von einem i8250 oder 16450 UART bzw. 16550 FIFO Chip ausgeht, Registerkompatiblität usw. Der USB-Chip ist aber sowas nicht. Das wird dann seitens Windows oder VMWare dann nur als virtueller Chip emuliert und auf die Funktiuon des USB-Adapters "übersetzt". Diese Emulation ist wohl nicht so perfekt, und ich schätze, da wird es auch keine Verbesserungen mehr geben.

  • 1ST1 - da sehe ich keinen Widerspruch zu meiner Aussage. Denke auch die Emulation der Hardware hat halt seine Grenzen. Kann man leider aber nirgends nachlesen, Versuch und Irrtum immer zuerst :(

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Ergänzung: Interlink Server (=INTERSVR) unter Windows XP (32Bit) läuft zwar (Programm hängt sich nicht auf und bedient vordergründig auch die serielle Schnittstelle), aber kommt natürlich mit dem Dateisystem nicht klar (NTFS schon mal gar nicht, aber auch kein FAT32). FAT16 formatierte Partitionen werden nur dann erkannt, wenn es NUR FAT16 Partitionen gibt, ist mind. eine anders formatierte Partition bspw. mit NTFS dabei, wird es wieder nichts.

    Mit VirtualPC 2004 oder 2007 (auf XP) sowie DOS und FAT16-formatierter virtueller Platte funktioniert das wieder, aber die Baud-Rate ist wieder wechselnd.

    Da hilft also dann doch nur das gute alte Windows 98SE (oder älter) auf einem Rechner.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Wenn ich nicht die Notwendigkeit hätte, würde ich am Liebsten die sogar vorhandenen, aber nicht aktivierbaren Macronix 98715 Netzwerk-Karten nutzen.

    Der Rechner (eine Watchguard FB 1000) hat aber als einzig nutzbare Schnitstelle (Parallelport ist zwar auch vorhanden, aber mit einer internen, nicht-Standard-Steckerleiste) nur die serielle Schnittstelle. Bringe ich als Ausstellungsstück auch mit zur CC 2022 nach Lingen, kannst Du Dir dann anschauen.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.