msim Alternative programieren

Status
Für weitere Antworten geschlossen.
Das werde ich mal auf meinem P3 700 ausprobieren, ob DOS in ner VM läuft :D

Mir ist immer noch schleierhaft, was du genau vor hast... ich hatte auch mal mit BBS rumgespielt, war mit meiner HW Lösung aber kein Problem.

Um ehrlich zu sein bin ich nicht unbedingt scharf darauf mich mit der Entwicklung rumzuschlagen, da ich auch noch andere Dinge zu tun habe. Wie bereits mehrfach gesagt, sehe ich mir mal an, was das ungefähr für ein Aufwand wäre aber ich kann dir nichts versprechen!

Edit: Okay, mein Post bezog sich jetzt auf deinen original-Post. Nur ein Programm was RING, CONNECT, etc. sendet ist da schon deutlich einfacher!
 
@bingo88

Das solltest Du noch lesen; Bin nämlich auf eine Idee gekommen

Im Primzip brauhe ich ja garkeine comportemulation. Die kann ich ja auch mit Com0Com haben.

Ich brauche eigentlich NUR ein kleines Progrämmchen welches so tut als sei es ein Modem indem es die Modemmeldungen RING und OK und CONNECT von Com2 zu COM3 z.b. sendet. Die virtuellenports kann ich ja mit COM0Com einrichten.

d.h. ich lasse dein Tool auf COM2 laufen. So dein Tool sendet jetz´t von com2 kommend zu com3 immer die Modemmeldungen OK CONNECT und RING. Und mit Kommunikationssoftware wie Binkleyterm lasse ich dann diese Meldungen erscheinen indem ich Binkleyterm auf COM3 einstelle.

und Binkleyterm glaubt dann es hätte wirkloch eine Verbindung weil es ja dann die Modemmeldung CONNECT bekäme.

Und wenn ich mit einem anderen rechner meinen Binkleyrechnr anwähle kommt bei mir ein RING weil dein programierter Modemsimulator ja dann die RING Meldung sendet.

So stell ich mir den Ablauf des Programms vor.

D.h. Du brauchst garkeine COMportemulation zu programieren. Nur einenkleinen Modemsimulator der das tun soll was ich Dir mit diesem Post beschrieben habe. Und das wird woh´l keinen Monat dauern oder?
 
Ja das ist jetzt was anderes. Da kann ich evtl. eher was machen. Müsste mir mal ansehen, wie die Kommandos übertragen werden (AT-Befehle?).
 
Okay, hier mal ne erste Version.
Die COM-Ports sind hart codiert, die werden nicht automatisch erkannt. Musst halt den richtigen auswählen (1 bis 8). Zum Starten musst du außerdem das .Net Framework in mindestens der Version 2.0 installiert haben.

Das Programm reagiert auf ATDxxx Meldungen mit <cr><lf>CONNECT<cr><lf>, auf alles andere mit <cr><lf>OK<cr><lf>. <cr><lf>RING<cr><lf> kann man mittels eines Buttons generieren.

Ich habe es mit Putty auf seriell mittels com0com getestet, die Meldungen werden generiert. Ich möchte aber anmerken, dass ich das alles zügig zusammengeklempnert habe, daher könnten hier und da noch ein paar Fehlerchen lauern ^^
 
Ist das Programm eine Konsolenanwendung oder eine Windowsanwendung?

Und die Meldungen kommen dann auf COM3 z.b. an wenn ich sie von com2 losschicke?

Und Vielen Dank für Deine Mühen
 
Du musst com0com entsprechend einstellen (z. B. COM1 und COM2). Dann wählst du bei der Anwendung (ist ne Win-Anwendung) z. B. COM1 und drückst "Anwenden", woraufhin der Port geöffnet wird. Mit deinem Clienten dann über COM2 verbinden.
 
Ich könnte das auch dahingehend anpassen, dass man die Antwort selbst eingeben kann. Das ist kein Aufwand.
 
Was passiert wenn man auf RING drückt?

Wird dann die Meldung RING an COM3 weitergeleitet?
Die Weitlereitung wird ja über com0com gemacht. Mein Programm sendet und empfängt nur an dem angegebenen Port (hier z.B. COM1). Du musst halt com0com so konfigurieren, dass der z. B. an COM2 die Sachen annimmt.
 
Im Moment reagiert das Programm so:
Eingehende Nachricht empfangen (zeichenweise). Wenn return (0x0C) erkannt wird -> Puffer ausgeben (z. B. "Empfangen: ATD12345"). Dabei wird geprüft, ob ATD vorkommt. Wenn ja, sende automatisch "CONNECT" ansonsten sende "OK".
Und wenn du auf RING drückst wird halt "RING" gesendet. Mehr macht das Programm nicht.

Mit manueller Eingabe meine ich jetzt, dass die Automatik raus fliegt und man selbst eine Antwort eintippen kann, die dann gesendet wird.
 
Ist im Moment nicht nötig kann ruhig drinbleiben.

Wenn ich die Meldungen OK und CONNECT ausgeben möchte muss ich den COMport auswählen und dann auf Anwenden klicken oder?
 
Die Meldungen werden nur generiert, wenn das von einer Clientanwendung (z.b. Hyperterm) gefordert wird.

Bsp:
- Du startest das Programm auf COM1.
- Du verbindest Hypertrm mittels COM2 (COM1-COM2-Brücke mittels com0com).
- Du tippst in Hypertrm ATD1234 <enter>
- Programm erkennt enter und ATD*
- Programm generiert CONNECT Meldung
- Du gibst in Hypertrm irgendwas ein + <enter>
- Programm generiert OK Meldung
- Du drückst auf RING, Programm generiert RING Meldung

So läuft das atm
 
Ja das will ich jetzt erstmal hoffen, sonst muss ich nochmal ran ;)
Aber mir ist jetzt halt nicht klar, was du damit vor hast. Das Programm unterstützt nämlich keinen Datentransfer, also außer den Tansfer dieser Nachrichten meine ich jetzt.
 
Also heißt das jetzt, da sollen Daten übetragen werden? Die Meldungen laufen jetzt so schon ab, wie da beschrieben ist (zumindest der Großteil).
 
Ja also da werden die Meldungen RING CONNECT und OK übertragen vom Modemsimulator zum Binkleyterm z.b.

Lis Dir außerdsem nochmals diese Readme durch da wird MSIM erklärt

Sysops, die an ihrer Mailbox-Konfiguration basteln, kennen das
Problem: Änderungen k”nnen nur online begutachtet werden und das
kostet so manche Tarifeinheit. Natürlich könnte man zum Testen
verschiedene Rechner per Nullmodem-Kabel verbinden, doch viele
Kommunikations-Programme, wie zum Beispiel BinkleyTerm,
benötigen die Modem-Meldungen RING oder CONNECT. Msim arbeitet
mit einem Fossil-Treiber zusammen, simuliert diese Meldungen bei
Verbindungen über Nullmodem-Kabel und spart so eine Menge Geld
beim Testen.
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück