@8` ATAR-Z-MODEM 1.2 An Atari Implementation of the Zmodem Protoco}l (c)1994 by Larry Black --------------------- WHAT IS ATAR-Z-MODEM? }--------------------- Atar-Z-Modem (referred to as 'Z' from this point on within this documentation) is a Sh}areware implementation of the receive portion of the Zmodem Protocol for the Atari 8-bit computers. Although 'Z' is not} designed as a 'self-contained' terminal program, its main purpose and intent is to be used as an external receive p }rotocol; specifically in conjunction with BobTerm terminal program written by Bob Puff. 'Z' should run on an }y Atari computer that will also run BobTerm. It has been tested with various Disk Operating Systems (DOS), including } the following: Atari DOS 2.0s & 2.5; Spartados 3.2d; Mydos 4.5; SmartDOS 8.2; TOP-DOS 1.5+; Mach DOS 3.7a. Lock-ups di }d occur with SuperDOS 4.4, for unknown reasons. In order to get the maximum use from 'Z' as a functional Zmodem pro }tocol, it does use the cartridge area however. This is the memory area from $A000 to $BC1F. I believe SpartaDOS X u}sers have a 'need to know' of this info. -------------------- CONFIGURING YOUR 'Z' --------------------} Although 'Z' will operate in some cases without a configuration file, you still need to create one so that '}Z' will know what default options you prefer to run it with. The configuration file, ATZMODE.CNF, is a simple text }file containing these default options that best suit you and your system's needs. Configuration is really quite sim}ple. Load ATZMODE.CNF into a text editor or word processor and edit the default setting to fit your circumstances. Here }is what your configuration file might look like: -------------------------------------- 24 ;Baud rate (o}r 30 12 48 96 19) ASCII ;Translation (or ATARI) FULL ;Duplex (or HALF) ON ;Auto Zstart (or OFF) } ON ;Overwrite filename (or OFF) 35 ;Buffer size in Kilobytes D8: ;Default DL drive (D: - D9:) D}:RS232.COM ;R: software handler file -------------------------------------- BAUD RATE Baud rate may be} entered with first two digits or full baud rate. i.e. 96 or 9600. Page -1- } Atar-Z-Modem 1.2 TRANSLATION Translation default can be set to Atari (no t}ranslation) or Ascii (light translation). DUPLEX Duplex can be set to default either to Full Duplex or} Half Duplex. AUTO ZSTART Auto Zstart OFF would require user to press the [SELECT] console key to begi}n file transfer. ON will start transfer automatically; needing no user interaction. OVERWRITE FILENAME } Overwrite filename ON would delete any existing file on user designated download disk that exactly matches the filename} being received. Overwrite OFF would SKIP a file that matched the filename on user designated download disk. } BUFFER SIZE Buffer size minimum is 1K; maximum varies with DOS configuration and low memory pointers. If a l}arger number than maximum buffer size is entered in the configuration file, then 'Z' will set the buffer size to it }s maximum. Most DOS will permit approximately 30-kilobytes in the buffer. Smaller than maximum size may or may not be re!}quired if excessive time is required to save the entire buffer to floppy disk. Although highly unlikely, it is poss"}ible that some of the poorer written Zmodem send protocols might time-out during a long buffer dump to disk, thus a#}borting the transfer. If this situation should occur with a particular system, consider setting disk write with verify o$}ff. Refer to your particular DOS manual on how to turn disk write verify off. Another option is to experiment with %}smaller buffer sizes. Then set your default buffer to a size that you found to be most reliable. DEFAULT DOWN&}LOAD DRIVE Default download drive could be any drive from D1: to D9: or even D:. D: would select the default driv'}e for Mydos and SpartaDOS X, which could be a sub-directory within a hard drive. Should your system not req(}uire a modem handler loaded from disk by BobTerm, then type spaces over the 'D:' in front of the RS232.COM name, so)} that 'Z' will not attempt to load an R: handler from disk. More on handlers later. All of the above defaults, ex*}cept for the handler filename, can be changed from the keyboard once 'Z' has been loaded. After you have entered +}all your default settings, save the text file as ATZMODE.CNF on the default disk for your system, or drive 1 if you ,} are not using Mydos or SpartaDOS X. DO NOT SAVE ANY PRINTER CODES WITH THE FILE. -} Page -2- Atar-Z-Modem 1.2 HANDLER If you use an MIO, Black.} Box, or 850 Interface, you will NOT need a disk handler with 'Z'. Space over the 'D:' in the handler filename in y/}our configuration file, as previously mentioned. If you require a disk handler (D:RS232.COM), for running BobTer0}m, then you will need the same handler for 'Z'. There are some versions of the P:R: that 'Z' will load its 1}ROM handler from, while yet other versions require the 12 sector PRC.SYS handler from the P:R: software disk. Whate2}ver handler you use with BobTerm, will work with 'Z' as well. One problem was found with a borrowed Atari 13}030 modem when loading the XM.COM handler file. Whenever the handler was loaded while connected with another modem 4}(on-line), the modem disconnected (NO CARRIER). This is most likely a quirk of the XM.COM handler itself but would 5}preclude loading and using 'Z' while on-line with the 1030 modem. It may also apply to the XM301 modems, but has not bee6}n tested. Those modem types are better off using Xmodem at 300 baud anyway. The turnaround time after a CRC error o7}r any other error at 300 baud using the Zmodem protocol can be devastating. --------------- MODIFY8}ING Z.COM --------------- If you want Z.COM to load the ATZMODE.CNF file from a ramdisk or drive other 9}than "D:" then you will have to modify the main program, using TextPRO. Let's assume you want to copy Z.COM :}and ATZMODE.CNF to your ramdisk, D8:, and then load it from there. First load TextPRO and then load Z.COM into the ;}TextPRO buffer. Do not use other word processors or editors as they may change some characters during the save. <} 1. On the top line you will see the name of the configuration file, D:ATZMODE.CNF, followed by TWO Atari EOL (Return)=} characters. Place the cursor over the colon and insert an '8' so it reads D8:ATZMODE.CNF 2. Place the c>}ursor over the EOL (Return) character following the filename. Delete one of the Return characters with CTRL_Delete. By ?} adding an '8' and deleting one Return character, you have not changed the length of the file. 3. Save the@} modified file to disk with CTRL_S. Suggest you use a different name like Z8.COM to indicate you modified it to read theA} config file from drive 8. Page -3- AtarB}-Z-Modem 1.2 Textpro will indicate the file length is unchanged by turning the status line to green when you prC}ess CTRL_S to save the file. If the status line does not turn green, then you should start over since the file sizeD} has been changed. -------------------- HOW TO LOAD YOUR 'Z' -------------------- 'Z' is thE}e external Zmodem receive protocol. In addition to the protocol, it contains a 'no-frills' terminal mode and a Help MenuF} of key commands. 'Z' is NOT intended to be used as a full featured terminal program. Its design and nature is to pG}ermit you to select filenames for download, reply to prompts and to log off the system at the completion of file trH}ansfer(s). Use BobTerm as your terminal program for dialing, log-on macros, word wrap, capture, and all theI} other 'goodies'. You'll not find a better featured and well written terminal program. Trust me! But should you desJ}ire to download files using the Zmodem protocol, you may do so at any point. Quit to DOS from the BobTerm command menu aK}nd binary load 'Z' from your DOS menu or prompt. You will be in the Terminal mode. Check the two status lines at thL}e top of the screen to insure you have the correct baud rate, duplex, and translation settings. --------M}----------- HOW TO USE YOUR 'Z' ------------------- The [HELP] key or [SHIFT_CTRL_SPACE] keys will disN}play the Help Menu of key commands. Here are the [SHIFT_CTRL] key combinations used in the Terminal Mode: O} SHIFT_CTRL Function D ...... Duplex (Full/Half toggle) F ...... Translation (Ascii/Atari) P} O ...... Overwrite filename ON/OFF Q ...... Quit to DOS R ...... Resume Mode ON/OFF toggle S .Q}..... Speed (Baud 300 to 19.2K) = .(dn). Decrease buffer size 1K - .(up). Increase buffer size 1K 1-R}9 ...... Receive to drive D1:-D9: 0 ...... Receive to default D: [RETURN].... Auto Zstart ON/OFF toggle [SS}PACE] .... Commands List [HELP] Menu Only from the HELP menu, can you access the disk directory function, uT}sing the keys 0-9. Pressing 0 reads the directory of D:*.*, the default drive for Mydos and SpartaDOS X, or drive 1 for U}other DOS. Pressing [ESC] from the directory screen returns to terminal mode.Any other key returns back to the HelpV} Menu. Page -4- Atar-Z-Modem 1.2 CONSOW}LE KEYS: [HELP] ..... Commands List HELP Menu [SELECT] ... Begin File Transfers (if Auto Zstart is off) X}[START] .... ABORT File Transfer [OPTION] ... not used There are single-key commands in the Help menu that Y}substitute for the [SHIFT_CTRL] keys used in the Terminal Mode. Try the various key options on the Help Menu and waZ}tch the status lines at the top of the screen to see the effect. Pressing the [ESC] or [RETURN] key exits you from [}the Help Menu to the Terminal mode. It is important that you have pre-set the destination drive number. Zmo\}dem is a batch file transfer, making it very easy to fill a disk with files, causing a disk-full error. 'Z' does NOT che]}ck to see if adequate disk space is available for the next file. Make sure you have sufficient free sectors on your^} save disk for the files you have selected to transfer. Changing destination drive is done simply by pressing [SHIF_}T+CTRL] and the desired drive number. It can be done at any point, PRIOR to file transfer, from either the Help Menu or `}the Terminal screen. Zmodem, similarly with Ymodem, is a batch file protocol. Both use the '1-block' ma}ethod to send filename, file length, file date and other valuable information. That is where the similarities stop b}though. With 'Z', once the files have been selected from the sender's system, file transfer will begin automatically if c}you have Auto Zstart selected (an "A" is displayed at the box on the far left of the second status line). If the bod}x is blank, then you must press [SELECT] to begin file transfer; just like with BobTerm. You may ask why not just he}ave Auto Zstart on with no user option. In some of the more 'rare' occasion, the autostart sequence that Zmodem uses, maf}y be passed erroneously, thereby beginning file transfer accidently. I have yet to find this occurence, but have heg}ard of it happening. FILE TRANSFER DISPLAYS When file transfer begins, most of the screen will blank,h} except for a few lines at the top of the screen. These lines contains indication of transfer status, and is mostlyi} for user consumption. The other parts of the screen were blanked to speed up receiver processing. Since this is thj}e heart of the program, time is essential and blanking the screen provides the extra time needed. Here are what those k} indicators are: Dev:filename and file size are displayed on the first line of the File Transfer screen. l}The next line has "Stat:" "Pkt Len:" and "Save". Page -5- m} Atar-Z-Modem 1.2 "Stat:" indicates any number of keywords, informing you of the 'Status' n}of the transfer while it occurs. Here are some of the more common ones: Zinit - An indicator to the sender,o} that it is ready to begin a Zmodem session. Zfile - Receiving file information data. Zack - Acknowledge p}(ack). This occurs at two points, only one of which will be visible to you. Its more common occurence is post buffer q} dumps. The less common occurence it prior to increasing the packet length (more on that later). Znak - Not ackr}nowledge (nak). Normally an error during Zinit and Zfile blocks. Zrepos - Reposition string telling the sender whs}ere to begin resending its data; normally at the start of file (0) or after a CRC error. Zdata - Actual filt}e data being received. Just following the "Zdata" display is a single space where the data is being 'echoed' as they areu} being received. This is just to let you know that everything is working, especially if you have a modem that does v}not have status lights such as "RD" for receive data indicator. Zsynch - Synchronize in actuality is a purge of uw}nwanted incoming data, until the sender stops the stream so that a Zrepos command can be sent back to resume data fx}low. This occurs when receiving from a sender that has NOT followed the Zmodem specifications, and IGNORES the buffy}er-size request from the receiver. In this case, 'Z' will send a stop sequence (CAN CAN) before dumping the buffer to diz}sk. If sender has a large modem output buffer, it may still be spewing the contents of its buffer when you are read{}y to resume the next segment of the file. Zsynch purges the extraneous data until the sender stops. Zferr - File|} error. It's followed by the error number, i.e. Zferr162 for disk full error. Zfinish- End of Session. }} There are many others, including Zabort, Zskip, Zchall, etc. but you get the idea. "Pkt Len:" is the len~}gth or size of each "packet" of data. <256 means less than 256 bytes being sent between checksums. Maximum length i}s dependent on baud rate and frequency of checksum errors encountered. Normally, 1024 (1K) byte packets are the maximum }at 9600 baud or below. I don't have 19.2K baud, but Zmodem specifications state 2048 (2K) is maximum packet length }at higher speeds. In many of the zmodem implementations, a Zack response is required prior to raising the packet le}ngth size. This is the 'silent Zack' that you never see, and is sent while receiving the next packet. This follows }the Zmodem specifications as well. Don't confuse Packets with "Blocks" that Xmodem and Ymodem use. Packets do not stop f}or acknowledgment, while Blocks do. Packets are merely an indicator of how many bytes are being sent between checks}ums. Page -6- Atar-Z-Modem 1.2 "Sa}ve" is the number of bytes actually saved to disk. It is updated each time a buffer dump to disk occurs. Compare it to t}he bytes in the file "Size:" block on the screen to see how much progress is being made. ZMODEM RESUME } Starting with version 1.2, 'Z' now supports the RESUME function, which is one of the most powerful options of} the Zmodem protocol. The RESUME option is used mostly for continuing a file transfer in the event of only getting }a partial file. A partial file can be as a result of an abort for various reasons; including a disk full error, dro}pped carrier, timeout limitation, etc. Some may have noticed that on previous releases of 'Z', that the files from parti}al transfers were not deleted or erased. This is to allow for the RESUME option to be implemented. In the case of p}artial file saves, ONLY the part of the file that has successfully matched the CRC checksum, will be saved. Any par}t of the file that may have been received, but could not be verified by a CRC checksum, is discarded. This is to insure }file integrity and accuracy for a possible RESUME of the file. To select a RESUME of a partial file, press the [SH}IFT_CTRL] R keys in combination from Terminal Mode, or R from the Help Menu. An 'R' at the top left of the first st}atus line (same place as the 'O' for Overwrite appears) will signify when RESUME is in effect. With RESUME on, the }Overwrite option becomes moot, and selection of overwrite on or off will not be acted upon. ONLY use RESUME to continue }partial files. Deselect RESUME for any other type of file transferring. Make sure your default download drive is se}lected to where the partial file is. Do NOT rename a partial file for ANY reason, if you wish to later resume it. } When you are prompted from the sender which file you wish to download, enter the same filename you had when origina}lly downloading the file. If all criteria that was previously mentioned is met, then the transfer will resume at th}e same place it was aborted at. Upon completion of the resume, you should have the file complete and intact. }There are a few limitations with the RESUME function, in conjunction with the Atari computer. If you are downloading to }a ramdisk or hard drive, these limitations would not be of any concern, and should be used whenever available. Some} limitation may exist with the Happy or USDoubler, but only on extremely large file. Same will hold true with the X}F551 drive when high speed I/O is in effect. Should you not have high speed drives or drives in slow mode, then limitati}on of the size of the file to be resumed may have an effect of the success or failure of a partial file resume. Thi}s is due to 'Z' reading the partial file, to get the EXACT file length for positioning, and then reopened for Appen}d. If too much time is spent while the drive is reading the file, it will timeout and abort. All I can offer in this typ}e of situation, is to copy the partial file to a faster device, such as a ramdisk or hard drive. In most ca}ses, the RESUME function will get the remainder of that partial transfer; giving you the complete file without having to} download the entire thing all over again. Page -7- } Atar-Z-Modem 1.2 In a case of large files and slow drives, RESUME may not work due to the structure of the} Atari computers Operating System. In which case all I can offer in the form of assistance is my condolence. } ILLEGAL FILENAME CHARACTERS I try to keep 'Z' as optionally functional without regard to the DOS type }an individual may prefer. With this fact in mind, 'Z' will rename any and all illegal filename characters to the letter }"Z". I used the standard AtariDOS 2.5 as a guideline, since it has the more conservative file naming method. So if }you selected to download a file named F-14.GIF for example, then 'Z' would rename it to FZ14.GIF; replacing the das}h character with the Z character. In the event you get an entire file, rename it to suit your particular DOS filename } capabilities and your own personal preference. In the event you only get a partial file, do NOT rename it, until you }have a successful RESUME of the file. ---------- CONCLUSION ---------- I would li}ke to conclude this documentation with a bit of how I began to write 'Z'. As anyone who knows me will tell you, I own tw}o computer types, and am not partial to either. My first computer was the Atari, and I acquired a clone later on as} the years went by. To this day, I have both on the same desk, setting side by side, and at times, communicating fi}les to one another via null modem. I program in assembly language on both computer types, and enjoy the both of them } immensely. I began hearing the moaning and groaning from fellow Atarians, asking why it was impossible for the Atari t}o use the Zmodem protocol. This got my curiosity up. I wanted to know for sure, that it was totally impossible, bef}ore giving in to those that either didn't know or didn't care to know, and was just shooting off at the mouth. So I} got as much information concerning the inner workings of the protocol itself, and began to study. And study, and study }some more. To my amazement, I found out that what I was hearing about Zmodem and the Atari, were somewhat 'half-tru}ths', but only barely. Here is my conclusion. Zmodem was designed for the computer types with UART chips. To those }that don't know what that means, it means the computer can do Disk AND Modem Input and Output at the same time. The Atar}i does NOT have a UART chip, but communicates to its peripheral devices using the SEMAPHORE method. Semaphore meani}ng one BIT at a time, to one device at a time. Although the Atari does not have the UART chip, it is still an amazi}ng computer. With the hindsight that the founder of the Zmodem protocol (Chuck Forsberg) had, he added a bit to the } protocol that allows those computers that cannot do disk and modem I/O at the same time, allowances for buffer size, UA}RT capability, etc. I decided to try and tackle a Zmodem receive, using this new found knowledge, just to prove to }myself that it could be done. 'Z' is the result of those efforts. I am still learning about my } Page -8- Atar-Z-Modem 1.2 computers. I think that's what has kept me} interested in them and continues to do so. I hope you enjoy using 'Z' as much as I have enjoyed writing it. } Special thanks go to Frank Walters, for whom this program would never had seen the light of day. }If you find 'Z' useful, interesting, radically different or just can't plain stand it, then a donation of $5 dollars wou}ld show to me that there is a public interest in this area, and more powerful updated versions would ensue. } Send any/all donations, compliments, complaints and other "hob-knobing" to: Larry Black 23}37 Douglas Rd. Panama City, FL 32405-5902 ---------------------- DISCLAIMER DIS}CLAIMER ---------------------- Atar-Z-Modem, 'Z', Larry Black or any affiliated beta tester, cannot and} will not be help liable or responsible for the actions of the user and this program. Other than occupying disk space, t}here is no guarantee or warranty, either written or implied of its use. By using this program or any affiliated par}ts thereof, the user understands and agrees to these terms, and said user takes sole and explicit responsibility of} its use and actions. "You can't teach an old dog, new tricks." (Unknown) "And they said it couldn't be} done..." (Larry Black-1994) } Page -9-> History.Doc ------------- Version 1.0 Released 04/03/94;First release-------------------}------------------Version 1.1 Interim Beta release 05/01/94;Fixed a bug in the filename CRC checking.----------------}---------------------Version 1.2 Released 05/29/94;Added the RESUME function.;Added filename checking for illegal char}acters.;Fixed bug in internal PR: rom handler loading.: BOB TERM v1.2 Documentation } A ShareWare Terminal Program by }Robert Puff 04/27/90 CIS Mail Address: 76702,1076 GEnie Mail Address:} BOB.PUFF Suite 222 2117 Buffalo Road Rochester, NY 14624 } BobTerm 1.2 Docs Page 1 INTRODUCTION BobTerm i}s a fully featured multi-tasking terminal program for ANY Atari 8 bit machine with at least 48K of memory. BobTerm has bee}n fully tested under MYDOS, SpartaDOS, SpartaDOS X, TopDos, and Atari DOS 2, along with many others. BobTerm }supports XModem, XModem-CRC, 1K-XModem, CIS Fast XModem, YModem (batch) and FModem (batch) protocols. Also supported are f}loating buffer size (depending on your machine and DOS), a chat window with recall, online/real-time clock, RTime8 suppor}t, a dialing system, full DOS support, the ability to load modules for additional features (such as XEP80 and SpartaDOS c}ommand line support), both RS232 ports on the 850 and P:R:, and much more! SETTING UP BOBTERM BobTerm i}s compatible with all known RS-232 interfaces, and most direct-connect modems. If your modem is connected to a Black Box o}r MIO, no set-up is necessary. If you are using an 850 interface or P:R: Connection, BobTerm will automatically load the} handler from the interface; no disk handler should be used. When using any other type of interface or direct-connect mo}dem, a disk-based handler is necessary. Handlers have been provided for the Atari 835/1030/XM301 modems, and the Supra/MPP} 1000x modems. Also included is a generic R:Verter handler. This is to be used with the Atari SX-212 modem connected wi}th the SIO port, with the Supra 1200 baud modem (using the SupraVerter), and any modem connected through a R:Verter or si}milar interface. To use a disk-based handler, rename it to "RS232.COM," and place it in your "default directory," which is} drive 1 for most DOSes. To create a BobTerm boot disk, boot up your DOS and format a blank disk. Write DOS }files to that disk. Now copy the BOBTERM.COM file to this disk, and rename it to AUTORUN.SYS. If you need a modem handler}, copy the appropriate file (XM.COM for 835/1030/XM301 modems, MPP.COM for the Supra/MPP 1000x, etc.) to this disk, and r}ename it to RS232.COM. Users of the Black Box, MIO, 850, or P:R: connections do not need and should not have a RS232.COM }file, since the handlers for those interfaces are built-in. Your BobTerm boot disk has now been created. If you want to u}se any of the module programs for BobTerm, they should be placed on this disk as well. See the section entitled MODULES }for more information. BobTerm loads a default dialing list when it first boots (D:BOBTERM.PH1), so after adding all the }entries to your dialing list, save it to this disk. BobTerm looks to the "default" drive for all support files, s}o MYDOS and SpartaDOS X users can place all files for the term in a separate subdirectory for convenienc}e. All other DOSes will look to drive 1 for these files, which is why it is a good idea to make up a boot disk as descri}bed above. BobTerm loads right from DOS as a binary file. Use the [L]oad BobTer}m 1.2 Docs Page 2 Binary File option of your DOS menu, or consult your DOS manual for the correct command. Intern}al BASIC will be automatically disabled, but no language cartridges should be present. Use the 'X' command to load the t}erm from the SpartaDOS X command line. HELP MENU FUNCTIONS Modem Parameters } Note: Unless otherwise stated, the command within the [] brackets is the character typed to toggle the command parameters}. [A] TRANSLATION AND PARITY Changes your translation between ASCII, ATARI, VT-52E and VT-52O. ASCII is th}e universal text standard, and should be used on most national telecommunications networks, and non-Atari 8 bit Bulletin Bo}ards (When in doubt, use ASCII). ATARI is the Atari-specific ATASCII text mode only usable on boards which support it (t}ypically, only Atari 8 Bit Bulletin Boards). The two VT-52 modes provide the basic ASCII translation plus many of the ex}tended cursor control commands provided in the DEC VT-52 terminal. BobTerm's VT-52 mode is designed to also emulate CompuSe}rve's VIDTEX mode. VIDTEX is used in some of the online games available on CIS. It does not support graphics; only curso}r positioning. When using VIDTEX on CIS, do a "GO TERMINAL" and set your page length to 23 and columns to 40. }The VT-52 mode also supports some of the Atari ST-specific subset of commands, for further compatibility. Parit}y is determined by the translation mode. BobTerm does not check incoming parity; it is only generated. The Parity of ASCI}I mode is None; in VT-52E it is Even, and in VT-52O it is Odd. Parity is non-existent in ATARI translation. }The translation and parity may also be changed while in terminal mode by pressing Shift Control F. [B] BAUD RATE } Baud rate is the speed at which your modem and the other system's modem can receive information. Rates supported ar}e from 300 baud to 19.2K BAUD, but of course you cannot go any higher than your modem is capable. Note that some modem in}terfaces (namely the 850 and P:R: Connection) will not support 19.2K BAUD. Baud rates like 9600 and 19.2K are used mostly }for "null-modem" transfers, where you hook up the output of your RS-232 interface to another computer's RS-232 port, thro}ugh a special cable or adaptor. [D] DUPLEX Duplex controls how characters appear on your screen, that is,} whether they are put on your screen by the terminal program, or echoed back BobTerm 1.2 Do }cs Page 3 from the host computer. Full Duplex means that the characters are echoed from the host. Half Duplex me }ans the characters are sent from your keyboard to the screen. Full Duplex is used on most all BBSes and online services }(except GEnie), so unless otherwise stated, try Full Duplex first. If you can not see what you are typing, go into Half Dup }lex. The duplex improperly set to Half will be characterized by seeing double of each character you type. BobTerm also }supports "Echoplex". This is enabled by holding [START] while pressing [D]. This will cause everything to be reflected, } just as a BBS does. Echoplex is handy for answering a call, when the other person is in full duplex. Remember to switch }into echo mode ONLY after connecting, and out of it after disconnecting. You may change the duplex while in ter }m mode by pressing Shift Control D. Dialing Commands [E] DIALING MENU } Provides you with various lists from which you pick the phone number(s) you wish to call. See "The Autodialer and Entrie }s" below. [F] ORIGINATE Allows your terminal program and modem to connect to another modem sending a carri }er. An example of this is if you originally connected using a voice line, then wished to use your modem. Use this command } to connect to a BBS if you are dialing manually (with a telephone). [G] SEND CARRIER Known on other termi }nal programs as "ANSWER MODE," this will send an answering carrier to the other computer. If connecting to another person } also using a term, one should Originate, and the other should "Answer," or send carrier. [H] HANG UP Thi }s will disconnect your modem from the telephone line. BobTerm first drops the DTR line; if it sees that a carrier is still } present, it will send a +++, wait, then ATH. This should take care most all modem configurations. The online timer wil }l stop. The timer will restart when dialing manually, or if Shift Control T is pressed. } System Commands [C] CAPTURE BUFFER The "Capture Buffer" is a feature that lets you record whatever you } are receiving. If there is a special message or something you want to save, simply enable your capture ahead of time. W }hen you type [C], it will ask you for the destination filename. Capture will then be turned on; } BobTerm 1.2 Docs Page 4 characterized by the screen's border color turning red. You may toggle the capturi }ng by pressing [OPTION]. To close the capture (ending it), use this same option. It will ask you "[C]lose Capture, [V]iew }, or [ESC]?" Press [C], and it will save the buffer to disk. Note that you can also view the contents of the b }uffer by pressing [V] at this prompt. Use [CONTROL] [1] or the SPACE BAR to pause the listing. You may only view what i }s currently in the buffer; any data that was previously saved cannot directly be viewed. You would have to close the cap }ture, then use the DOS Function of View a File, and look that way. BobTerm's capturing capability is not limited }to just the buffer size. While you are capturing data, you will see the buffer count on the top status line slowly decre }ase. When it gets to around 256 bytes left, it will pause the other end, save the buffer to disk, and resume operation. }This will continue until you temporarily stop capturing (by hitting SELECT), or close the buffer. You cannot change the di }sk in the drive to which you are capturing until the capture is closed. You may also start capturing by simply }pressing [OPTION] (without first setting it up). When the buffer fills, it will prompt you for the destination filename. } If you want to cancel the save, simply press [ESC]. Note that the destination capture name usually is a disk filename, bu }t you could use "P:", sending it to your printer directly. If you want to erase the buffer (say you turned on c !}apture, but you really don't want to save it), you can clear the buffer by selecting [C]. Hit [C] again to select Close, "}and press [ESC] at the filename prompt. Now hit [ESC] again to return to terminal mode. [Q] QUIT TO DOS T #}his will exit to DOS WITHOUT dropping carrier, allowing you to copy files, run other programs, such as ARC or UNARC, all wi $}thout hanging up! To return to online, just reload BOBTERM (you may need to change translation, baud rate and duplex). I %}f capturing was enabled, it will be saved before exiting. BobTerm will NOT perform the BOOTUP.BTM modem initialization f &}unction if it sees that you are re-entering BobTerm, so no junk data will be sent if you reload the term while the modem is '} online. BobTerm now will 'unlink' any modem handler that it loaded, resetting LOMEM to whatever it was prior t (}o entering the term. For this reason it is best to let BobTerm load any disk-based modem handler itself. This un-linking )} should 'clean up' memory usage, thus increasing compatibility. [R] RECEIVE FILE Use this when Downloadin *}g, or receiving a file or files from the host computer using a transfer protocol of XModem, XModem-CRC, 1K-Xmodem, YModem +}, CIS Fast XModem, and FModem. See below for "Send and Receive files explained". [S] SEND FILE ,} BobTerm 1.2 Docs Page 5 This is the entry point for Uploading, or sending files TO the host co -}mputer. In addition to the protocols listed above, you may also do a simple text upload (the exact opposite of capturing). .} See below for "Send and Receive files explained." [J] SYSTEM CONFIGURATION This sets your bootup termin /}al and system defaults, as well as macro editing. See "[J] System Configuration" below. [K] DOS FUNCTIONS 0} This takes you to a menu which supports the most common DOS functions. Use them just as you would from your DOS menu. No 1}te that the subdirectory commands may not be supported in your DOS (they work under MYDOS and SpartaDOS). The letters ch 2}osen for the DOS function commands are those of DOS 2.X / MYDOS menu options, so they should be easy to memorize. These a 3}re the options: [A] View a File: Allows you to view text files. Use [CONTROL] [1] or the SPACE BAR to pau 4}se, and [ESC] to quit. [B] Set Directory: Used to set a working directory under a DOS that supports subdirect 5}ories. [C] Copy a single File: This option is handy when copying a file from your RAMdisk to a floppy, or vic 6}e versa. Remember it can only copy one file at a time. The first filename entered should be the source. 7} It may contain wildcards; the first file found will be the one copied. The second filename entered wil 8}l be the destination name. Do NOT use wildcards on the destination. [D] Delete a File: Asks for a filename. 9} [E] Rename File: Format is: OLDNAME.EXT,NEWNAME.EXT Remember to type both names on the same line. [F] :} Lock a File: Asks for a filename. [G] Unlock a File: Asks for a filename. [H] Load a File: Use this to load the ;}Sparta XINIT file to format disks. This may also be used in the future to load utility programs for BobT <}erm. Do NOT use this function with TOPDOS. [I] Format Disk: Prompts for device number to format. It =} will format under the current DOS. SpartaDos X users are taken to the SDX format menu. This will format a disk >} in DOS 2 format if using disk-based SpartaDOS. [J] Create Directory: Creates a new subdirectory under a DOS ?}that supports them. [1-9] DISK DIRECTORIES Pressing the appropriate disk device number will pro @}mpt you for a "PATH NAME or RETURN". Simply pressing [RETURN] will display the main directory of the drive. If your DOS A} supports subdirectories, you may enter the subdirectory name, followed by a [>]. If you wanted to look at all B} BobTerm 1.2 Docs Page 6 files ending with .BAS, you could enter "*.BAS". This function pauses C} at each page: pressing [RETURN] will continue, [ESC] will abort. [J] System Configuratio D}n This area allows to set such things as macros, screen colors, modem port, etc., and optionally save them so t E}hat they will be loaded each time you use BobTerm. There are two sub-menus that you encounter when you select this optio F}n. The first sub-menu allows you to select from: [1] EDIT MACROS, ETC.: Takes you to the second menu area. [2] RELOAD G} DEFAULT PARAMETERS: Lets you reload the way BobTerm was set up by your BOBTERM.CNF file. [3] SAVE DEFAULT PARAMETER H}S: Saves your settings to a file called BOBTERM.CNF on the DEFAULT drive. The second sub-menu is entered b I}y pressing the [1] key above. This menu is the one that actually allows you to edit your macros, screen colors, and mode J}m port. To modify your screen colors, use the arrow keys (without holding CONTROL) until the screen color and i K}ntensity is pleasing to you. BobTerm supports a total of 16 macros. A macro is a series of keys which, when pr L}essed, will send out a pre-defined message. The macros in BobTerm are grouped by size and type of access. The macros may M}be chained together, allowing a very large string to be sent. [A]-[H] Allows you to set the "Large Macros" of B N}obTerm. These macros may be up to 31 characters long. Large Macros are accessed by pressing the SHIFT, CONTROL, and a n O}umber key (from 1 to 8) all at the same time. (In these docs, holding SHIFT and CONTROL while typing another character w P}ill be referred to as 'SHIFT CONTROL x', where x is the character.) To define a large macro, just press the letter from A- Q}H and type in the macro that you wish to store. Note that you can use the standard Atari editing keys; use [SHIFT] [DELE R}TE] to clear out whatever is on the line. Press [RETURN] when you are finished entering the macro text. One special note S} about Large Macros A, B, and C: These macros are updated by the dialing list. Any macros set by your BOBTERM.CNF file wil T}l be over-written by the dialing list, if used. You may, however, reload the defaults AFTER dialing, and restore these t U}hree macros. [I]-[P] Allows you to define the "Small Macros" of BobTerm. These macros are limited to 15 charac V}ters and are accessed by pressing the CONTROL and a number key (from 3 to 0) at the same time. Entering these macros is W}the same as the Large Macros. [Q]-[U] Allows you to define five special one character macros that are controlle X}d by the joystick in port #1 of the computer. Typical uses for this would be the CONTROL-S or CONTROL-Q character to stop Y}and start text flow on most BBSes. To execute these macros, simply move the joystick or press the fire button. Z} BobTerm 1.2 Docs Page 7 SPECIAL MACRO CHARACTERS There are five "special" cha [}racters that may be included in the Large and Small Macros. These are: CONTROL-P will cause a 3 second delay in t \}he sending of the macro, then resume. You may stack as many of these characters as you need. ]} CONTROL-D will cause a 1/2 second delay. This is useful when sending the "HHH" string necessary fo ^}r GEnie. CONTROL-, (little heart) will cause the macro to execute as normal, but it will NOT send a _}RETURN at the end of it. (Normally a RETURN is sent at the end.) CONTROL-M will send a RETURN, but `}still continue with the rest of the macro. CONTROL-N will cause the macro to link to chain to the ne a}xt macro in line. The Shift Control 8 macro will chain to the Control 3 macro. The Control b}N should be the last character in the string. Note that a RETURN is not sent when chaining, c}so a Control M may be needed. An example of using the special macro characters might be to call a BBS, send a R d}ETURN, wait, send your name, wait, then send your password. This would be coded in a macro as: ^M^P^Pmy name^M^P^P e}password (note that the ^P means CONTROL-P, and ^M means CONTROL-M.) One of the features of the Dialer is th f}e ability to send a macro upon connection. Here's an example of a macro for automatic logon onto GEnie: ^Ph^Dh^ g}Dh^Puserid,password For CompuServe, try something like this: ^P^C^P70000,1000\password (replacing 70000 q}bATZMODE DOCbHISTORY DOCbDOCS TXTbBwUPDATE TXTbREAD COM,1000 with your PPN) If you are using an Atari 850 or P:R: Connection, BobTerm will let you use serial port r}#2. This is useful when null-modeming between the Atari and other machines, because you can leave your null-modem cable s}connected to port #2, and your modem to port #1. No cable swapping is need now! Pressing [V] in this config menu will alt t}ernate between ports 1 and 2. This has no effect if you are not using an 850 or P:R:. Many other parameters of u} the term are saved in the configuration file. It is best to run through all functions of the term before saving the con v}fig, since for many functions, it 'learns' as you are using it. BobTerm 1.2 Docs Page 8 w} If you want to restore your saved defaults, use the Reload Default Parameters option of the System Configura x}tion sub-menu. Note that config files from previous versions of BobTerm are NOT compatible with this new version, and sh y}ould be erased. Items Saved in BOBTERM.CNF Upload pathname (drive number) Upload protocol Download pathname D z}ownload protocol Capture pathname Phone list filename Last number dialed Long Distance code Tone/Pulse dialing mode {} Terminal translation/parity Terminal duplex Term Baud rate Delay Rate used in ASCII Send protocol Status of keyboa |}rd CAPS lock (in upper case or lower) Type of time being displayed (On=Online, or Rt=Real Time) Screen colors Key Click }} flag Chat Buffer status (on or off) Word Wrap status Fine Scroll status Left Margin status RS232 Modem port number ~} Joystick characters All 16 Macros [S] Send Files and [R] Receive Files Explained The }first thing you will be asked is the protocol that you wish to use to transfer a file. This choice is based on what the ot }her computer or system supports, and your Baud rate. XMODEM is recommended for 300 baud, 1K XMODEM or YMODEM for higher }rates. When in doubt, try standard XMODEM, since almost all hosts support this. The choices you have and a brief desc }ription of each are: [1] STANDARD XMODEM This is a 128 byte block size with a mathematical checksum for erro }r detection and correction. It is supported by almost all BBSes and telecommunications networks. [2] XMODEM-CRC } A 128 byte block size with a Cyclic Redundancy Checksum (CRC) for error detection and correction. This protocol i }s supported by the vast BobTerm 1.2 Docs Page 9 majority of BBSes and telecommunica }tions networks. Whenever possible, you should use XModem-CRC over Standard XModem because the CRC option will catch almo }st all errors. [3] CIS FAST XMODEM This is a BobTerm exclusive: when uploading or downloading from CompuServe, us }e this protocol; yet tell CIS that you are using XModem. This modification to the XModem protocol dramatically increases t }he transfer speed for the CIS host, but should only be used on a noise-free line. In some instances, it is actually fast }er than CIS Quick B! This protocol should be used ONLY on CIS, as it will not work correctly on any other system. [ }4] 1K-XMODEM This protocol is basically XModem-CRC with a 1K (1024 bytes) block size. The advantage to 1K XModem is th }at there are fewer "header" bytes sent per file, therefore, making 1K-XModem about 15% faster than XModem-CRC. Note that } some systems incorrectly call this "YModem"; the difference being YModem is 1k XModem with batch capabilities. [5] YM }ODEM (batch) YModem is a modified 1K-XModem that allows the transfer of multiple files at one time. The file name and } size are sent in a header block that BobTerm decodes for you. This way, you can set up a transfer of as many files as y }ou like, and the filenames will be automatically taken from the sender. You only set up the transfer once, and there are n }o limits (except your disk space) to the number of files you can receive! [6] FMODEM This protocol is used on som }e ST BBS programs and in the Puff BBS. It is basically YModem with a 4K block size. Note that this protocol is also cap }able of batch file transfers, as is YMODEM. This is best used for null-modem transfers, because it gives the highest throu }ghput of all protocols. [7] SEND ASCII (XON/XOFF) This is a send ONLY protocol (use "Capture Buffer" to receive) }that simply dumps ASCII text to the other computer. Since this is not an actual protocol, there is no error checking tha }t can be done. Use this to upload messages while in the BBSes message editor, etc... You can specify a delay rate of 0 }through 9; 0 is no delay, and 9 is the largest. A value of 3 should be sufficient for most purposes. XON/XOFF control is }supported (^S to pause, ^Q to resume). The Send Ascii function 'expands blank lines'. Some message editors r }eformat the text you enter, and can remove the formatting you entered. By inserting a SPACE character between successive R }ETURN characters, your original formatting is preserved, yet without affecting the rest of the text. } BobTerm 1.2 Docs Page 10 HOW TO SEND/RECEIVE FILES For tran }sfers using XMODEM, XMODEM-CRC, CIS FAST XMODEM, and 1K-XMODEM, the following applies: R }ECEIVE or DOWNLOAD 1. Instruct the host to send (download) a file with the appropriate protocol. 2. Press [R] fro }m the BobTerm main menu. 3. Select the appropriate protocol on BobTerm. 4. Type the entire filename for the file, as you }want it to appear on your disk, and press [RETURN]. You will be returned then to terminal mode. 5. Press [SELECT] } to begin the transfer. SEND or UPLOAD 1. Instruct the host to receive (upload) a f }ile with the appropriate protocol. 2. Press [S] from the BobTerm main menu. 3. Select the appropriate protocol on Bo }bTerm. 4. Enter the source filemask and filename, if you know what it is. If not, you can enter "*.*". Bobterm will } prompt you for each file it finds. Type [Y] to send that file, [N] to keep looking, or [ESC] to re-enter the sourc }e filemask. Once you have selected a file, you will be returned to terminal mode. 5. Press [SELECT] to begin the } transfer. For transfers using YMODEM and FMODEM protocols, the following applies: } RECEIVE or DOWNLOAD 1. Instruct the host to send a file in the appropriate protocol. For batch transfers, see the }host documentation for how to specify more than one file. Most often it is done by "marking" the files you want to } download, then issuing the command to download. 2. Press [R] from the BobTerm main menu. 3. Select the appropriate }protocol on BobTerm. 4. Provide the device name, and path name ONLY. BobTerm will take care of the filenames. (An ex }ample of a pathname is "D1:" or "D2:DLS>".) You will be returned then to terminal mode. 5. Press [SELECT] to beg }in the transfer. SEND or UPLOAD 1. Instruct the host to receive a file in the appro }priate protocol. For batch transfers, see the host documentation for how to BobTerm 1.2 } Docs Page 11 specify more than one file. Batch sending is rarely used on a BBS; it is meant more for term- }to-term communications. 2. Press [S] from the BobTerm main menu. 3. Select the appropriate protocol on BobTerm. 4. Prov }ide the pathname (and filename, if known) for the files that you wish to send, one at a time. If you used wildcards, } BobTerm will display each file found and query you if you wish to send it. Press [Y] to add it to the list, [N] } to skip it, or [ESC] to enter a new pathname. Pressing [A] will mark all the remaining files in the subdirectory and m }ask entered. Depending on the size of your path and filenames, you may be able to mark up to 100 or more files to b }e sent all at once! Note that the memory used to hold the dialing list is used for this list of files, so you will } have to reload the dialing list to dial a new number. To end entering filenames, simply press [RETURN] at the "En }ter filemask" prompt. You will be returned to terminal mode. 5. Press [SELECT] to begin the transfer. The fol }lowing applies to ASCII sends: 1. Instruct the host to receive ASCII text. 2. Press [S] from the BobTerm menu. 3. Se }lect item 7 for SEND ASCII. 4. Provide path and filename to send. 5. Provide a delay rate. The delay rate determines the } time between each character sent. You will need to experiment with different BBSes and telecommunications service }s to determine what the delay rate should be. A delay of 0 is none, 9 is the greatest. A value of 3 usually words } ok for most BBS message editors. You will then be returned to terminal mode. 6. Press [SELECT] to begin the tra }nsfer. FEATURES COMMON TO ALL TRANSFERS BobTerm is the ONLY 8 bit terminal to remove the excess double- } padding added to files by the online services. The timing used in the protocols should be loose enough for any system, ye }t tight enough to maintain fast transfers. To abort any transfer, hold down the [START] key. To retry an abo }rted transfer, press [SELECT]. This will try the exact same transfer again. Note: if the transfer aborted because of an e }rror on your end (like a wrong protocol, disk error, etc...) that has not been corrected, the transfer will simply abort }again. Once you begin a transfer, the top three lines of the screen will display the transfer status. Any bad }bytes rejected by the protocol will be displayed below the status lines on the main term screen. The top line of the fil }e transfer window displays the file name including path, followed by the file size in bytes (for batch receives only). The } line under that BobTerm 1.2 Docs Page 12 shows the status of the transfer, the blo }ck number being transferred, and the number of tries for the current block. The only time you will not see this display }is when you are doing an ASCII send (you will stay in term mode for ASCII sends). If the transfer is aborted be }cause of a disk error on your end, the transfer will first abort, then the disk error message will be displayed. Press [R }ETURN] twice to return to terminal mode. If the transfer was aborted from the other side or timed out, you will be returne }d to term mode, and the top status line will display "Xfer Aborted!". Holding [SHIFT] when entering the protocol } number will select the ASCII <-> ATASCII translation mode. This is used for text files only! When sending files, ATASCI }I files will be converted to ASCII format (CR/LF). When receiving, ASCII will be converted back to ATASCII (CR, CR/LF, o }r just LF). This allows you to let BobTerm handle the translations so you do not have run separate translation programs! }Just be sure you don't accidentally enable the translation on a file that is NOT a text file, else your file will be corr }upted. When receiving files, BobTerm will automatically adapt to the sender's protocol, so selection is not cri }tical. The CIS Fast XModem protocol is designed to cause CompuServe to 'send ahead' of itself. Error checking }is still performed, but on downloads any error will cause the transfer to abort. Thus if you have a noisy line, it would } be better to use one of the other protocols. CompuServe now supports the XModem 1k protocol, although it is not } listed on the menu choices. If you are connected at 1200 baud or higher, I suggest using this protocol WHEN DOWNLOADING. } (For uploads, tell CIS you're using standard XModem.) Use "DOW PRO:X1K" at the disposition prompt. Now select the Fas }t CIS XModem protocol on BobTerm, and start the transfer. This is extremely fast, giving the highest throughput possible. } Setting up BOOTUP.BTM Some Hayes-compatible modems default to some parameters } that are not what you want for standard terminal use. For this reason, BobTerm will send whatever is in a file called B }OOTUP.BTM on the default drive (drive 1 for most users) to the modem at the default baud rate, when the term first loads. } (Note: the term will send this only once - if you quit to DOS and reload the program again without rebooting, it will NOT } send it again.) It will input a line, send it to the modem, wait 1 second, then input again, etc., until it reaches the } end of file. A control M is not needed at the end of each line. My suggestion might be to have something like this in }your BOOTUP.BTM file: ATX3 V1 L2 M1 E1 S7=30 &C1 &D2 You could change S registers to perhaps increase dial }ing speed, etc. Remember it is not necessary to have this file present; it's just there in case you have need of it. } BobTerm 1.2 Docs Page 13 Keyboard Command Summary } CONTROL 3-0: 15 byte macros. SHIFT CONTROL: 1-8: 31 byte macros (1-3 are the ones the Dialer updates) Q: Re }calls last two chat buffers (alternates between the 3). W: Toggle word wrap, E: Toggle the chat window in and out. R: R }eset the online time counter. T: Start/stop the online time counter. Y: Swap the online counter/real time on the top stat }us line. O: Takes a snapshot of the term screen, and saves it in the buffer. P: Does a screen dump of the term mode scree }n to your printer, replacing any non-printable characters with a period. M: Toggle left margin between 0 and 2. S: T }oggles fine scrolling. Note that a slower scroll is used for 300 baud than at higher baud rates.. 9: Toggles the key }click sound. When Word wrap is enabled, words will not be split if the text you are reading is formatted for so }mething over 40 columns. This has no effect on captures; it simply makes reading text a little easier, especially if the } text is formatted for 80 columns. BobTerm also accounts for backspacing in word wrap; so if it is enabled and you are typ }ing a message, you can backspace to the previous line without fear of deleting too many characters, as is the case with o }ther term programs. Word Wrap is toggled by pressing Shift Control W, and its status is seen by the first character in t }he top status line. You may change the left margin to 2 (incase your TV has overscan) by pressing Shift Control } M. Note that this does NOT affect the edit window; the edit window remains in 40 columns. Fine scrolling, whe }n enabled, causes the screen to smoothly scroll vertically when the cursor is at the bottom of the screen. The disadvant }age is quite a bit of time is taken to perform the scroll. At 1200 baud and higher, a faster scroll is used, but data may }still be lost if it contains many RETURN characters in a row. It is best used for conferencing, or any situation where d }ata is not sent at 'full speed'. [E] The Autodialer and Entries Pressing [E] from }the BobTerm main menu will take you to the Dialing Menu. The dialing menu has a number of choices as follows: [A] ADD } AN ENTRY This option allows you to add a telephone number to your dialing menu. You will be prompted for the }name of the entry, the telephone BobTerm 1.2 Docs Page 14 number, 3 macros (See sec }tion on System Configuration), the Baud Rate, the Translation, the Duplex, and the wait (amount of time to wait for the oth }er computer to answer - should be 25-30 for average local calls). You may also cause the dialer to send the first macro }upon connection by setting the last parameter to Yes. If you use this feature, it is recommended that the first characte }r of the macro be a Control P for a pause. [D] DIAL TAGGED This option will continuously scan the "tagged" e }ntries looking for a terminal connection. To tag an entry, use the arrow keys to move to the entry, and press the SPACE }BAR to tag it. You will see a ">" in front of each tagged entry. To clear the tag, press the SPACE BAR again. [K] KI }LL AN ENTRY To delete an entry from your phone list, use the arrow keys to move to the entry, and press [K]. } [M] MANUAL DIAL By pressing [M], you may enter a phone number to dial from the keyboard. Note, the current }system configuration will be used for this number (ie: baud rate, translation), and a wait time of 45 seconds will be use }d. [S] SAVE LIST This option will save your phone list to disk. You will be prompted for a device and fil }ename, or you may use the last name used (by simply pressing [RETURN]). [V] VIEW ENTRY This option will al }low you to just look at the entry. [X] LONG DISTANCE CODE This is the code that is used by long distance dia }ling services such as MCI, Sprint, etc... Although it is not needed much anymore because of "equal access," some long di }stance telcos still have special numbers to call and require a special code. Use this feature for those cases. To execu }te the long distance code, simply insert an exclamation point (!) in the phone number at the appropriate place (normally in } the very beginning). When you enter your long distance code from the dialing menu, it is saved as part of your configura }tion file. For example: LD code: 950-1111,,,,123456781 Dial: !716-247-8355 would do the following: Di }al 950-1111, wait 4 seconds, dial 123456781 (your LD code would be here), followed by 716-247-8355. } BobTerm 1.2 Docs Page 15 If you are using a Long Distance service that requires you to enter y }our special code after the number being dialed, insert a $ symbol in the LDX code where the number to be dialed should be p }ositioned. This will cause the remainder of the phone number to be inserted in place of the $ symbol. For example: } LD Code: 950-0111,,,,1$12345678 Dial: !716-247-8355 would do the following: Dial 950-0111, wait, dial 1, t }hen 716-247-8355, then 12345678 (your LD code). Another use for the LD code is for those who have call waiting. } Insert an [!] before every number in your list, and make the LD code be the numbers you have to dial to disable the call } waiting feature. If you ever want to dial the number without disabling the call waiting, simply erase the LD code. } [C] CLEAR LIST This will erase the current list from memory. [E] EDIT ENTRY This option allows }you to make changes to any of the entries in the dialing menu. First, select the entry to edit (by using the arrow keys), } then hit [E]. Each item will be available for editing; press [RETURN] when done, or [ESC] to exit. [L] LOAD LIST } Use this to load a new phone list from your disk. This may be used to load something other than the default (if }you have more than 1 list), or if you have batch sent some files (since the batch send function will wipe out the list in } memory). [P] TONE/PULSE Pressing this key toggles the dialing mode between Pulse and Touch-Tone. Pulse d }ialing may be used on most any telephone line, but tone dialing is usually an extra feature. Wheen using Pulse mode, you m }ay need to increase the Wait time, since the timer starts the minute dialing is initiated, and pulse dialing can be slow. } [ESC] Exits back to the main BobTerm menu. [RETURN] Dials the entry highlighted. (Use the } arrow keys to move the bar to BobTerm 1.2 Docs Page 16 the desired entry.) } To interrupt the dialing process at any time, press the SPACE BAR. Any messages from the modem will be displayed on } the status line in the middle of the screen (BUSY, NO DIALTONE, etc...). If NO CARRIER is returned, then "Operation Abo }rted" will be displayed. The term will keep re-dialing until it either connects, or is interrupted by a SPACE BAR. Press }ing RETURN will enter terminal mode immediately. The Terminal Mode Status Line Wh }ile in terminal mode, the upper line of your screen is being used as follows: WRAP:DUPLEX:TRANSLATION:BAUD RATE:BU }FFER TOTAL:ONLINE/REAL-TIME CLOCK The second line in the header is the changing status, which tells you if ther }e are transfers pending, errors have occurred, etc... Miscellaneous Notes On }e of the unique features of BobTerm is its multi-tasking. You are ALWAYS in term mode; that is, any modem input is being p }rinted to the term screen, even if you are not viewing that screen. The only exceptions to this are disk I/O and file tr }ansfer. You can be capturing, go do a disk directory, edit macros, and come back to term mode all without losing any dat }a (assuming the other end supports XON/XOFF)! Another feature is the extremely fast text screen handler. Term }mode can keep up with text at 19.2K baud, even while capturing! When BobTerm expects input from the user, [RETURN }] will accept whatever is on the screen, and [ESC] will abort. On any filename or other line-input needed, you can use t !}he standard Atari cursor control to edit. To delete the entire line, press [SHIFT] [DELETE/BACK SPACE]. The edi "}t window is another unique feature. Used mostly for the "conference" section on the online services, this buffer is actual #}ly 3 buffers in one. When you press SHIFT CONTROL E, you will see three lines at the bottom. You may now type away in t $}he buffer. Nothing will be sent out until you hit [RETURN]; then the whole buffer will be dumped. The only exception to %} this is control characters: they will be sent immediately, so that you can send a ^S to pause the sender, etc. By pressin &}g SHIFT CONTROL Q, BobTerm will cycle through the last two "buffers" you typed and the current one. Once you press [RETU '}RN], the current buffer gets copied into buffer 2, buffer 2 into 3, and buffer 1 is cleared. If you type [ESC] then pres (}s [RETURN], the data in the window up to the ESC will be sent, with no RETURN after it. Another feature that mi )}ght come in handy is the buffer screen command. Let's say you are on a BBS, and you're viewing a file that you *} BobTerm 1.2 Docs Page 17 just decided you want to capture, yet you don't have the capture turn +}ed on. Simply press [OPTION], then press SHIFT CONTROL O. That last keypress will take a "snapshot" of the screen, placi ,}ng it in the buffer. Pressing [OPTION] turned the buffer on, so now you will have saved everything that was on your scre -}en, plus everything that will be coming, till you disable the capture (by hitting [OPTION] again). When you [C]lose the ca .}pture or if the buffer fills, you will be prompted for the filename to save the buffer. In the ASCII and VT-5 /}2 translation modes, there are some characters displayed a little differently on the term screen. The Atari 8-bit does n 0}ot have the curly brace characters, or the tilde. The curly braces are translated to Control A and Control D characters. 1}To send the braces, simply type Control A for open brace, and Control D for close brace. The Tilde is translated to a ca 2}rat symbol (^). The $7F Ascii character is absorbed, since GEnie uses this in various places for no apparent reason. 3} Modules BobTerm allows the loading of modules to allow for new features to 4} be added to the program without having to come out with special versions. Two modules have been included with this versio 5}ns: a XEP-80 driver, and a SpartaDOS command processor interface. When the term first loads, it looks on the de 6}fault drive for MODULE1.BTM. If it finds this module, it will continue and look for MODULE2.BTM, etc., up to MODULE9.BTM 7}. This is the only reliable way modules should be loaded into BobTerm, although you may have limited success with the LO 8}AD A FILE option of the DOS functions. It is not necessary to have modules present, but if you do have any, they should be 9} consecutively named (module1, 2, etc.). Place the modules you wish to use in the same directory/drive as BOB :}TERM is located, and RENAME them to MODULEx.BTM, where x is a number between 1 and 9. There is no special number that need ;}s to be assigned to a given module, only that the modules be sequentially numbered, and start with 1. The fol <}lowing is a description of the two modules included with BobTerm 1.20: XEP80.BTM This is a driver for the =}XEP-80 80 column box from Atari. The driver directs ONLY the term mode screen to both the XEP and the standard term scre >}en. It takes up 256 bytes of buffer space, so you will see your buffer size decrease when it initializes. The driver does ?} not display any menus or the exit window. The XEP is just too slow to keep re-drawing the term mode screen and help scr @}eens, and does not have the capability of scrolling in one window and not in another. This is unfortunate. In A}any event, you will need two monitors to see the term mode screen on the XEP, and the help/e B}diting BobTerm 1.2 Docs Page 18 screens on your computer's output. The XEP driver C}will update both screen simultaneously, without blanking the computer's screen. Have your XEP-80 plugged into joystick p D}ort #2! The driver makes a valiant attempt at supporting the VT-52 translation. Other terminal types (such as E}VT-100, etc. may be partially supported - experimentation is the best advice). All VT-52 commands are supported, but a c F}ouple of them take a bit of time for the XEP to perform, and result in lost bytes if the data rate is high. A few of the s G}pecial function VIDTEX/VT-52 commands will only affect the XEP's screen, and will not affect the computer's screen. H} The XEP can handle 2400 baud and perhaps 4800, but no higher. The VT-52 translation functions perfectly at 300 and I}1200 baud, but two of the special commands will cause lost characters at 2400 or higher. CP.BTM This mo J}dule is for SpartaDOS users only. It replaces the DOS functions with a command processor interface, so that you have acces K}s to DOS while online. Since it replaces the old DOS functions, it takes up no additional memory. You can quit to DOS, L}do whatever is necessary, then reload the term to do the same thing, but this is quicker, especially if you are using flo M}ppy drives. SpartaDOS 3.2 and SpartaDOS X are the only two versions supported. When you type [K] to g N}et to the DOS functions, you will see the familiar Dx: prompt. Operation is basically the same as if you were really in O}the DOS's command processor, except that you may not move the cursor to the previous line and edit it. Pressing ESC at the P} command line prompt will return you to BobTerm. Most all functions should work here, including COPY, AINIT, CW Q}D, etc.. You may load XINIT, but do NOT select any DOSes to be written to the disk. BobTerm allows the use of memory fr R}om around $51FF down to LOMEM, so as long as programs don't use anything higher than $51FF, everything is safe. S} It is best to LOAD COMMAND.COM prior to running BobTerm when using SDX. This eliminates certain memory conflicts with h T}andlers, although you can get away without loading COMMAND.COM if you are using a Black Box or MIO. Note that in order t U}o keep the screen on in SDX, I had to modify part of DOS in lower memory. There is no reason SDX should have turned the V}screen off, but after wasting over a solid week on the problem, I ended up modifying two bytes in the DOS itself. This sho W}uld work find for version 4.20; if you have an earlier version, you're on your own - it may or may not work. X} Support Shareware BobTerm has taken a fair chunk of my time, but has been very Y} BobTerm 1.2 Docs Page 19 rewarding. It started out to be just a transfer utility for null- Z}modeming files between an 8 bit and ST, but it kept growing! This updated version fixes all known bugs with the [} earlier versions, as well as adds a few more features, view capture buffer and copy files being the two most requested. \} The ZMODEM protocol is something I plan on doing someday, as well as an editor that will allow the capture buffer to be ]} edited. As it stands, BobTerm 1.20 is coded in very tight machine code. Compare it to other term programs of e ^}ven larger byte counts that contain not even half of the features. This will probably be the last version of BobTerm for _} all 8-bits, due to memory constraints. Any future major modifications will probably be on a version that will only run on `} expanded memory machines. There is enough of a userbase of upgraded 800, XL, and XE owners that I feel this will not be a} severely limiting the userbase. I sincerely hope SpartaDOS X users appreciate the literal weeks worth of time b}spent making the term work so well with this incompatible DOS. Making the CP interface work with the disk version 3.2 of S c}parta took time, but making it work with SDX took more than ten times the work. SDX in itself can be flaky, so if you ex d}perience random problems and glitches, use another DOS. There have been a few requests of vector tables in BobT e}erm, and of writing modules for the term, yet no one has yet come forth with the source code. Due to the multi-tasking e f}nvironment, writing code for the term can be very tricky. However, my offer still stands. If anyone has a small utility g} that they would like to add into the term, provide me with the ML source code (it must be 100% machine language), and I wi h}ll see what can be done. Providing complete technical documentation would require extensive writing, something I unfortu i}nately have no time for at the present. I am releasing this program as "shareware," which means this: BobTerm i j}s my copyrighted property. I grant you the license to use it and pass it around to your friends, on two conditions: the co k}mplete package (term, docs, and modules) are included UNALTERED!, and that the disk may not be sold for more than four US l} dollars. If you use the program regularly, consider the time that went into writing such a program, and send a donation m} ($15 suggested) to the address listed at the top. If you have any questions/comments, please feel free to drop me a note n}on my BBS, CompuServe, or GEnie. Paper mail usually gets a very slow reply. Thank you! Enjoy the term. B o}ob Puff Support BBSes for BobTerm Computer World (716) 247-8355 (my p}BBS) BobTerm 1.2 Docs Page 20 The Moose BBS (716) 381-5139 The Breakfast q} Club BBS (916) 331-4722 Many thanks to all those who helped in getting all those nasty bugs out! Special thanks to Ma r}rty & Gayle Albert and Glenn Garman for the documentation & testing; the CompuServe 8 bit sysops Keith Joins, Don Lebow a s}nd Bill Aycock for their many hours of testing, suggestions, and downloading MANY versions of the term; Jeff "Alfred" Willi t}ams for the dialer code, and Frank Walters for his many calls and helping to get things totally bug-free. I h u}ave also received many letters and messages from helpful people, too numerous to list. A big THANK YOU goes out to them! v} BobTerm 1.2 Docs Page 21h The following is a list of changes from version 1.10 of BobTerm to the current 1.20 version: Bugx} Fixes: ---------- 1. Connects at 19200 Baud within the dialer will no longer switch down to 1200. 2. The dy}elay between redials has been increased to work with a wider range of modems and settings. 3. The line editor now alloz}ws full ATASCII cursor editing (editing filenames, macros, etc...). 4. The first character of a macro may be any chara{}cter, including a pause. 5. ATASCII<->ASCII protocol translation with MIO problem fixed. 6. FModem upload to FoReM|} boards finally fixed. 7. A couple bugs that caused the header and first blocks of each file in a batch transfer to be}} repeated were tracked down and fixed. 8. Obscure XModem padding problem fixed. 9. Fixed various lockup points when u~}sing the MIO. 10. When saving the capture buffer, a disk error now causes an error message to be displayed (none was sh}own before). 11. RAM-based OSes may now be used. An example of this is the HAPPYXL program that gives high speed data }transfer with modified 1050 drives. 12. A lockup problem occurring when capturing and using the XEP driver was fixed. } 13. The filename entry prompt for a full capture buffer makes sure the name you enter is good before saving (it used to }just erase the buffer). 14. Doing a COPY E: in the command processor interface for SpartaDOS 3.2 now works. 1}5. The 835/1030/XM-301 modem handler has been re-written to properly tone dial, as well as respond with the proper message}s in the proper timing. Enhancements/Modifications: --------------------------- 1. The non-batch receiv}e protocols are self-adapting, in that they will automatically adjust to the sender's protocol (If you select a CRC pro}tocol). 2. Protocol sends are slightly faster. 3. The FAST CIS XMODEM receive protocol now supports 1k block sizes. }I suggest you use the 1k block sizes (by specifying the protocol to CompuServe with PRO:X1K), as it causes the data str}eam to be continuous. 4. In the batch file selection area, pressing "A" at a file query will mark ALL the rest of the }files in the directory mask you have entered. This saves having to hold "Y" for all the entries. 5. Separate pathnames} are stored in the config for upload, download, and capture. This saves having to type the path all the time. 6. Sepa}rate upload and download default protocols. 7. Spaces are inserted between successive RETURN characters in ASCII Sends}, so your formatting will be preserved in message editors that normally 'eat' the blank lines. 8. Fine Scr}olling is now available. Use Shift Control S to toggle. Its status is saved in the system config. 9. The Word Wrap f}lag is now saved in the system config. 10. Parity is now supported. Use the VT-52E for Even, VT-52O for Odd, and ASCII} for No parity. Vidtex has not been eliminated, use the VT-52O for CIS Vidtex emulation. 11. The VT-52 emulation is mo}re compatible with VT-100, ANSI, and a few other emulation modes. It does not support the entire VT-100 command set, b}ut its better than it was before. 12. The timer/clock will keep the proper time on 50Hz PAL systems. 13. Internal BASIC} is automatically disabled for all DOSes. This took some serious probing into SpartaDOS to make work. Also, OSS carts ar}e also disabled under all DOSes except Sparta. 14. The Dialer's Print List option has been removed, and the buffer size} has been decreased by 256 bytes. This had to be done to make room for the new features. If you wish to make a hardco}py of your dialing list, you may use an older version of the term for this. The dialing list format is the same. 15}. The Capture buffer may now be viewed before it is saved. The view function is accessed by the [C] command from the main} term menu. 16. The TONE/PULSE selection was moved from the main menu to the dialer, where it was actually used. 17.} The modem's result messages returned when using the dialer are now displayed. (BUSY, NO DIALTONE, etc...) 18. The dia}ler now depends upon the modem's result codes rather than the carrier detect signal, and so should work with just about an}y hayes-compatible modem, regardless of configuration (the messages have to be returned in verbal as opposed to numeri}c). 19. The dialer now has an option of sending the first macro upon connection. This can be used for automatic logons}. I suggest adding one or two Control Ps in the beginning of the first macro to account for the time needed for the ot}her modem to properly connect. 20. The Long Distance code feature now supports the ability to embed the BBS number with}in the LDX code. See the main documentation for information. 21. When a DOS function is completed, you are returned ba}ck to the DOS Functions menu. 22. The DOS Functions have been assigned letters instead of numbers, the letters corre}sponding to the same ones used by DOS 2.x. This should make operation friendlier and easier. 23. The Command Processor} interface for SpartaDOS now has a feel much more like the real DOS. 24. The ability to copy a single file is now avail}able in the DOS functions! 25. The Atari 850 Interface handler is loaded every time; you don't have to power it down} prior to coldstarting. 26. Any handler BobTerm loads will be unlinked when the term is exited. This should prevent ran}dom lockups that happened with various DOS and handler combinations. Note: it is recommended you use the [Q]uit command } to exit the term, rather than pressing RESET. 27. The Control 1 function to start/stop printing may now be used in the } View a file, View capture buffer, and command processor interface functions. 28. The macro processor has been enhance}d with two new functions: a Control D will cause a 1/2 second delay. This is useful for generating the HHH} sequence for logging on to GEnie. 29. A Control N in a macro will cause it to link to the next macro. Thus, you are n}o longer limited to 31 characters in a macro! Note that neither the Control N nor the RETURN that follows it will be sent}. 30. The curly brace characters in the Ascii character set are translated to Control A and Control D characters (for o}pen and close). The braces may be sent by pressing the same keys. 31. The chat buffer may now be sent without a RETURN} at the end. Type an ESC prior to hitting RETURN. 32. The $7F character in the Ascii character set is now ignored. Th}is serves no useful function, and caused problems on GEnie. 33. Attract mode is disabled while the dialer is busy diali}ng numbers. 34. The messages on the top status line have been enhanced. 35. The term screen is displayed while using a }transfer protocol. It was found that BobTerm could keep up with 19200 Baud transfers with the screen fully on; so the }top three lines indicate the transfer status, and the rest of the screen displays the term screen. Note that any bad byte}s received while in the transfer are sent to the term screen, so if you start a transfer while the other side is still }sending, you will be able to see the incoming data. 36. The BOBTERM.CNF file is now larger, and is not compatible with }config files created by older versions. Delete any old config files you may have. That's all I have }documented that was changed. Its possible that there may be a couple minor things that have slipped past me. Please be } sure to read the main documentation for more detail on the enhancements. When uploading BobTerm to a BBS or g}iving it to a user, upload the whole ARC file, or make sure the disk contains ALL the data files unaltered. Thank you.} Bob Puff 04/27/90 Suite 222 2117 Buffalo Rd Rochester, NY 14624 CompuServe Mail: 76702,1076 GEni}e Mail: BOB.PUFF (00L 10s0Must be used with SpartaDos 3.2!Use READ Dx:Filename.extFile not found!䮠}x0y0P01u00t0L0$u00t0L0>u00t0L0 B VR Bu0Dt0EIH V`Nu00t0R}8v0x0z0w0y0{0LLL0 L0 B VBJKDE VL0 1L1 Bx0Dy0Ez0H}{0I V012|0`Hz0I{0|0x0mz0v0y0m{0w0`}00x0˭y0 ?3ɛ9ɍF { ɠ0 0 2}0?'}ȹ 50 3L10 3 2}0L10 3 2 2}0L1L00ʽ09 0'+00'000 300}0L100 3L2`318v0~0w0 ~0`|0}0`0 3`0 10x0˭y0` BD0EIH V}00`0/BIH} VTU`hhL0C