Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
util:svdm [2022/06/09 13:00] – [AT Command Set] ATZ now re-reads the .ini file digital manutil:svdm [2024/03/25 16:34] (current) – [Configure] Add new options MainLoopDelay and SocketSelectTimeout digital man
Line 1: Line 1:
 ====== Synchronet Virtual DOS Modem ====== ====== Synchronet Virtual DOS Modem ======
-SVDM is a MODEM emulator for Windows which utilizes the Synchronet Virtual UART/FOSSIL Driver (''DOSXTRN.EXE/SBBSEXEC.DLL'') to enable support for DOS communications programs on Windows NT-based operating systems. 64-bit Windows support is enabled by also installing [[http://www.columbia.edu/~em36/ntvdmx64.html|NTVDMx64]].+SVDM is a MODEM emulator for Windows which utilizes the Synchronet Virtual UART/FOSSIL Driver (''DOSXTRN.EXE/SBBSEXEC.DLL'') to enable support for DOS communications programs on Windows NT-based operating systems. 64-bit Windows support is enabled by also installing [[https://mendelson.org/ntvdmx64.html|NTVDMx64]].
  
 SVDM should run on 32-bit and 64-bit editions of Windows XP and later. SVDM should run on 32-bit and 64-bit editions of Windows XP and later.
Line 128: Line 128:
   AT&ZL?   AT&ZL?
  
-Save dial strings (numbers) can be dialed by using the ''ATDSn'' command:+Saved dial strings (numbers) can be dialed by using the ''ATDSn'' command:
   ATDS0   ATDS0
  
 If your DOS terminal program of choice has trouble dialing long dial strings (e.g. accommodating long DNS hostnames or IPv6 addresses), try using the saved number storage feature to resolve that limitation. After enter the following command, dialing "S0" as a "phone number" would actually connect to "telnet:vert.synchro.net:23". If your DOS terminal program of choice has trouble dialing long dial strings (e.g. accommodating long DNS hostnames or IPv6 addresses), try using the saved number storage feature to resolve that limitation. After enter the following command, dialing "S0" as a "phone number" would actually connect to "telnet:vert.synchro.net:23".
   AT&Z0=telnet:vert.synchro.net:23   AT&Z0=telnet:vert.synchro.net:23
 +  
 +Another option for dialing longer dial strings is to specify "aliases" in the ''[alias]'' section of your ''svdm.ini'' file. Any combination of printable ASCII characters may be used for a dial string alias, except for the colon ('':'') and equals (''='') characters.
 +<code ini>
 +[alias]
 +vertrauen=telnet:vert.synchro.net:23
 +</code>
 +  ATDvertrauen
  
 ===== Configure ===== ===== Configure =====
Line 159: Line 166:
 | //Root//     | ''IpFilterFile''  | //blank//  | Path/filename of file containing lists of IP addresses/patterns/ranges to reject incoming connections from | | //Root//     | ''IpFilterFile''  | //blank//  | Path/filename of file containing lists of IP addresses/patterns/ranges to reject incoming connections from |
 | //Root//     | ''clientFile''    | ''client.ini'' | File to write incoming connected client information (e.g. IP address), blank to disable | | //Root//     | ''clientFile''    | ''client.ini'' | File to write incoming connected client information (e.g. IP address), blank to disable |
 +| //Root//     | ''MainLoopDelay''       | ''0'' | Milliseconds to yield CPU in application main loop |
 +| //Root//     | ''SocketSelectTimeout'' | ''0'' | Milliseconds to wait for receive data on TCP socket |
 | ''Modem''    | ''AutoAnswer''    | ''false''  | Automatically answer/accept incoming TCP-connection attempts (''ATS0'') | | ''Modem''    | ''AutoAnswer''    | ''false''  | Automatically answer/accept incoming TCP-connection attempts (''ATS0'') |
 | ''Modem''    | ''CallerID''      | ''false''  | Incoming/client IP address reporting between RING results (''AT+VCID'' or ''AT#CID'') | | ''Modem''    | ''CallerID''      | ''false''  | Incoming/client IP address reporting between RING results (''AT+VCID'' or ''AT#CID'') |
Line 175: Line 184:
 | ''UART''     | ''IRQ''           | //depends// | Hardware interrupt request (IRQ) line to virtualize, e.g. 4 | | ''UART''     | ''IRQ''           | //depends// | Hardware interrupt request (IRQ) line to virtualize, e.g. 4 |
 | ''UART''     | ''Address''       | //depends// | Hardware I/O port base address (use ''0x'' prefix for hexadecimal notation, e.g. ''0x3f8'') | | ''UART''     | ''Address''       | //depends// | Hardware I/O port base address (use ''0x'' prefix for hexadecimal notation, e.g. ''0x3f8'') |
 +| ''alias''    | various                      | Each key is a unique dial string alias (e.g. ''mybbs = protocol:address:port'') |
 | ''sockopts'' | various                      | See ''[[config:sockopts.ini]]'' | | ''sockopts'' | various                      | See ''[[config:sockopts.ini]]'' |
  
-Settings changed via modem AT command take precedence over command-line options which take precedence over .ini file settings.+Settings changed via modem AT command take precedence over command-line options which take precedence over ''.ini'' file settings.
  
 Settings in the //Root// section may also be specified in a program-specific section (named after the program itself), to create program-specific settings. Settings in the //Root// section may also be specified in a program-specific section (named after the program itself), to create program-specific settings.