SatLink Satellite Communications Program by Jesse Buckwalter, NZ3F This is SatLink version 951023. This is a fully operational program. However, there are likely to be defects in the program. Use at your own risk. However, please report any difficulties that you are having. SatLink is a character-based (read non-Windows) replacement for PB and PG. Additionally, SatLink provides a simulation mode with which the user can demonstrate many of the SatLink functions without actually receiving satellite transmissions. SatLink is compatible with PB data files. SatLink directory files are names PB__????.PFH. SatLink uses an SLIST.DAT file with the same format as PB. All .HOL and ACT. download files are identical to those that PB produces, as is the PFHDIR.HOL file. The help file is named SATLINK.HLP, but the format is the same as PB.HHH. To set up SatLink: 1. You can put SATLINK.EXE anywhere. If it is in a subdirectory that is in the DOS directory search path, then you do not need to qualify SATLINK.EXE when you execute it. Otherwise, you must fully qualify SATLINK.EXE with a path or change to the subdirectory where it resides. 2. Modify the example SATLINK.CFG file. You can name the file anything you wish and put it anywhere. You will need one version for each satellite as you do with PB. Most of the parameters are very similar to those that PB uses. However, there are a number of additional parameters. Please review the example SATLINK.CFG file. There are three subdirectory paths that you can specify. These are: workDir - where SatLink puts the PB__????.PFH files, SLIST.DAT, PFHDIR.HOL, and expects to find the SATLINK.HLP file. dlDIr - where SatLink puts *.ACT, *.HOL, and *.OHL files. SatLink also puts *.CAP files (screen capture) and *.SLP (SLIP files, know as *.KSS files by PB) in this directory. ulDir - where SatLink looks for *.OUT and *.PUL files to upload. 3. Modify any INIT.TNC and TERM.TNC files that you require. These are optional and SatLink will use them only if it finds them. You must specify the path and file names that you are using in the configuration file. I recommend that you initialize the TNC so that it doesn't monitor anything. SatLink does everything using the KISS mode. Some TNC's have a hard time switching between what I call Terminal Mode and KISS Mode when the TNC is receiving lots of data. Data reception preempts mode switching. 4. Execute SatLink: [path]satlink[.exe] A configuration file MUST be included. There is no default. Any valid name is acceptable. 5. The SATLINK.HLP files describes the SatLink keystrokes. 6. Running SatLink in the simulation mode. Set the "simulate" parameter in the configuration file to 1. Put a data file named *.SLP in the "dlDir" subdirectory specified in the configuration file. You may use an *.KSS file created by PB and rename it to *.SLP or an *.SLP file created by SatLink. The *.KSS and the *.SLP files are essentially the same except the .SLP files may also contains data SENT by SatLink as well as data received by SatLink. This includes KISS commands to the TNC, so be aware that KB5MU's "kissfilt.exe" program will not work correctly with *.SLP files. See the "log" parameters in the example SATLINK.CFG file. If you have a fast computer, you can slow things down by using the "simulationDelay" parameter in the configuration file. Alt-P will pause the simulation. Successive Alt-P keystrokes will step the program by processing approximately 512 bytes of data at a time. If you have "logInFrames" during a pass in which you uploaded a file, the *.SLP file will contain the connected-mode responses to you from the satellite. If you have files ready for uploading in the "ulDir", SatLink will simulate a connected mode upload. 7. You can switch between Terminal Mode and KISS Mode by pressing Alt-T and Alt-K respectively. This has little value. However, if you cannot do this manually, then SatLink cannot successfully do it automatically. The same code is executed whether modes are switched manually or automatically. Note: If you switch in the middle of a "hot" pass, you may not be able to switch back for the reason mentioned earlier. Commentary: This program is for general distribution. Feel free to use it, and please report any problems. I will endeavor to correct problems, and I will consider requests for enhancements as time allows. SatLink seems to be reasonably stable, however, I have made many coding changes. Therefore, I may have introduced problems where they did not exist in the 950120 version. At this time I am releasing the code for SatLink. The code is contained in a separate archive. The code is compilable as-is under both Borland C++ 1.0 and C++ 4.02. I have made no effort to make the code transportable, but you can probably convert it to Microsoft with little difficulty. The executable file was compiled using a commercial communications library. The source code archive contains similar functions to enable you to compile without the library. See comments in that archive. Jesse Buckwalter, NZ3F 525 Third Street Annapolis, MD 21403, USA Pacsats: ko-23, ko-25 Internet: nz3f @ amsat.org jebuckwalter @ attmail.com