============================================================================== [ THE KAY*FOG RBBS | CPM-CC03.ART | posted 01/18/86 | 492 lines 24k ] The CP/M Connection Originally published in by Computer Currents Ted Silveira 2550 9th Street (copyright and all rights reserved) Berkeley, CA 94710 April 9, 1985 FINDING YOUR WAY AROUND AN RCP/M If you want to get a lot of public domain software quickly, your best bet is to pillage the library of a local users' group--there you can fill up disk after disk, usually for free. But if you want to find the newest, the best, and the rarest, you need to haunt the computer bulletin boards. In the CP/M world, a bulletin board may be called an RBBS (Remote Bulletin Board System), a CBBS (Computer Bulletin Board System), or just a BBS. But most often, a bulletin board that has public domain software is called an RCP/M, a Remote CP/M system. That title is misleading these days, as most RCP/Ms also have public domain software for IBM PC and MS/DOS computers. RCP/Ms can be exciting places (hundreds of programs, dozens of commands) but also confusing ones (dozens of commands, hundreds of programs). So, for those of you who are new to the game, I'm going put off reviewing public domain software for a moment and show you around a typical RCP/M. To get started, you need your computer, a phone line, a modem to allow your computer to transmit over the phone line, and a modem program to control all this hardware. The modem program should be one that can use the XMODEM protocol, like MEX112, MDM740, and the other programs I covered last issue. GET READY Here's a final checklist before you make your call. You have your computer hooked to your modem, and your modem hooked to the phone line. You have a modem program ready to run, and you know the whole combination works. You also have the phone numbers of some local RCP/Ms (if not, look at the "Networks and User Groups" section in the back of Computer Currents). Get the documentation for your modem and modem program and before calling, review the procedures for --dialing a call, --making a connection when the RCP/M answers (most modems now handle this automatically, but some don't), --getting from command mode (where you give instructions to your modem program) to terminal mode (where you talk to the RCP/M) and back again, --capturing the data from your screen into a disk file, --and receiving files by the XMODEM protocol. Keep this documentation nearby during your calls. Make sure you have at least 100K of free disk space, either on the disk that holds your modem program or on a blank disk an another drive. You may think that's excessive, but you'll fill it sooner than you think, especially if you have a high speed modem. Place a notepad and pencil nearby to write down instructions, numbers of messages you want to read, and so forth. GET SET Start up your modem program, and set your transmission speed (called the baud rate, roughly equal to bits-per-second). If you have a high speed modem that can run at 1200 (or even 2400) baud, make sure the RCP/M you're calling can handle that speed. If you're not sure, call at 300 baud first. You must also be sending and receiving data in the proper format for an RCP/M--1 start bit, 8 data bits, no parity, 1 stop bit. This format is so common that almost all public domain and commercial modem programs use it as the default setting. Following your modem program's instructions, open a disk file to capture your coming RCP/M session into a disk file. Later, you can print the file and look it over at your leisure. GO Dial the phone number. It will probably be busy. But if you're lucky, the phone will ring, and the computer at the other end will answer. If the phone rings more than three times, it usually means the RCP/M is down (not working), either temporarily or permanently. If the RCP/M answers the phone, its modem will give a high-pitched whistle. Your modem will answer, either automatically or at your urging, with a whistle of its own and make the connection. Even if you can't hear the process, your modem program should tell you when you're connected. Once you're connected, hit several carriage returns quickly, so that the RCP/M can lock on to your speed. Usually the RCP/M responds after just two or three carriage returns, but some take about 15 seconds to wake up. If you get no response after 15 seconds, there's a problem at the other end; hang up and try another system. If the RCP/M does respond, your sign- on will begin. THE SIGN-ON First, the RCP/M will probably ask, "How many nulls do you need (0- 9)?" If you're using a computer to call this RCP/M, answer 0 (zero). The nulls add a delay to the end of each line so that slow teletype terminals can do their carriage return. Computers are so fast that they don't require any delay, but if you find you're losing characters at the beginning of each line, increase the number of nulls. (I've never had to.) If you're going to save this session into a disk file, start now. Next, the RCP/M will display its sign-on and welcome messages, usually including a few house rules, and then it will ask for your name. Unlike some other bulletin boards, almost all RCP/Ms require your real name, and unceremoniously erase users who sign in with fakes. Once you've given your name, the RCP/M will check to see if it knows you. If it doesn't, it will take you to a registration routine for new users. Though many RCP/Ms allow new users access on the first call, many others now require a verified registration. You may have to send a letter to the sysop (the SYStem OPerator) giving your name, address, and phone number; the sysop will send your verification and password by return mail. This system is a pain for you, the user, and even more so for the sysop, who must process all these requests. Most sysops feel they've been forced to use registration by people, kids and adults both, who try to crash and otherwise abuse their systems. (I ran a small RCP/M for a while and found that people did indeed try to crash the system. Every day.) If the RCP/M recognizes your name (because you've called before), it asks for your password and then shows you the latest bulletins, including system news and other things of interest. Most of the time, you can cancel the bulletins by typing ^K. THE MESSAGE SYSTEM Once the bulletins are finished, you'll find yourself in the message system, the real "bulletin board" of the RCP/M. As you enter (see Listing 1), the system will tell you when you last called, what the high message number was then, what the present high message is, and whether you have any messages waiting. It will then give you its command prompt; you can get a menu of commands by typing a question mark (?). An RCP/M may use one of several different message systems: Metal, Oxgate, XBBS, RBBS, CBBS, or some other. On most systems, in most cases, the major commands are the same as those in the Oxgate RCP/M menu (see Listing 2). The commands you'll use most often are S and R, for scanning and reading messages; E, for entering messages of your own; and G and C (or J), for leaving the message system. SCANNING AND READING MESSAGES When I sign on to an RCP/M, I always scan the messages left since my last visit, and I suggest you do also. For this visit to Oxgate, Listing 1 shows that my previous high message was 970, so I can scan all the messages left since then by typing "S;970" at the command prompt. When you connect with any system for the first time, all the messages will be new, of course, so you can type "S;1" to scan everything. The summary command will show you the date, sender, receiver, and subject of all the public messages left, starting with whatever number you specified. As the summary scrolls by, jot down the numbers of any that look interesting so you can go back and read them. When the summary is done, type "R" (for "read") at the command prompt. When the system asks for a message number, type in the number of the first message you want to read. When you've read that message, most systems will prompt you for the next message number. When you're done, hit a carriage return to get back to the command prompt. ENTERING A MESSAGE To enter a message of your own, type "E" at the command prompt. The system will ask for the name of the person you're sending a message to ("ALL" for the general public, "SYSOP" for the system operator). Make sure you spell the name right or else the person won't be alerted to the message. Next the system will ask for the subject of your message. You have only about 20 characters to describe it, but try to be informative. Many people may be interested in your subject and want to enter the discussion (or just follow along), and I've gotten a lot of valuable information from reading other people's exchanges. It's not considered impolite to read other people's public messages, and it is perfectly acceptable to break in with a comment or question of your own. Then the system will give you a chance to make the message private or public and to attach a password or not. Private messages can only be read by the addressee, you, and the sysop (who can read everything); public (normal) messages can be read by everyone, whether they're addressed to ALL or to a particular person. A message with a password can only be killed (erased) by the sender, receiver, or sysop, while a message without a password can be killed by anyone. Some systems now automatically restrict the killing of a message to the sender, receiver, and sysop. Finally, you get to the actual message entry section. Most systems limit the number of characters per line and the number of lines per message; know these limits before you launch into a detailed message. You enter your message one line at a time; if you make a mistake, you can backspace and retype it, as long as you're still on the same line. Once you start a new line, though, you can't go back--you'll have to finish your message and then use the edit function to correct your mistake. Hit two carriage returns in a row to end a message, and then you'll be asked if you want to list (review), edit, continue, abort, or save it. You'll find the editing functions pretty primitive on most systems. You'll have to give the number of the line you want to edit, and then, in many cases, your only option will be to retype the entire line. If you want to add some more lines to the end of your message, you can use the continue command. Once you're done with your message, use the list command to check it over and then the save command (what else?) to save it. Some RCP/Ms have very few messages, but the active ones have messages of all kinds--pleas for help, discussions (technical and otherwise), user tips, announcements and for-sale notices, bug reports, and general chit- chat. These systems also have an informal etiquette. If you have any information, even a little, that might help someone else, leave a message-- it's part of your contribution to the system. If you ask for help (which is how most people get started), be specific about what your problem is, when it occurs, and what equipment you're using. Make your messages public, unless you have a good reason not to, so that other people can learn, too. And remember, even when you're alone, talking to some RCP/M 3000 miles away in the middle of the night, you're in a public place; be on your good behavior. LEAVING THE MESSAGE SYSTEM Every message system has other commands available (see Listing 2) but I'll leave you to explore these on your own, except for the commands to exit the message system. Typing "G" (for good-bye) at the command prompt will log you off the RCP/M completely. Most RCP/Ms can recover if your connection is suddenly broken by accident or a noisy phone line, but the log off procedure resets the system more quickly and avoids any chance that the RCP/M might get confused. Typing "C" (for "CP/M") or sometimes "J" (for "Jump to CP/M") will move you into CP/M, where all file transfers take place. The RCP/M will close out your session on the message system and give you information on what commands are available while in the CP/M section (see Listing 3). Some systems also show you a map listing what kinds of programs are in the different disk and user areas. The next thing you see will be the CP/M A> prompt. CP/M Once you see the RCP/M's A> prompt (or it may be A0>), you should feel right at home. Most commands now operate just as they do on your own computer except that a few have been disabled (ERA, REN, and SAVE) and a few have new capabilities (like DIR and TYPE). You're now in the drive and user area (drive A, user area 0) where most of the programs used to run the RCP/M are kept. If you type "DIR" at the A> prompt, you'll probably see a number of COM files, including DIR.COM, TYPE.COM, XMODEM.COM, and the main message system program, which will be called RBBS.COM, OXGATE.COM, METAL.COM, etc., depending on which system you've called. If you're brand new to RCP/Ms, look for a program called HELP.COM, which will give you information on how to use the system; just type HELP at the A> prompt. If you don't find HELP.COM, look for a text file called NEWUSER.TXT, HOWTOUSE.DOC, or something similar. If you find it, view it on the screen by entering "TYPE NEWUSER.TXT" at the A> prompt. In either case, make sure that you capture all this information into a disk file so you can look at it later. FINDING OUT WHAT'S WHERE If the RCP/M didn't show you a disk map as you entered CP/M, look for a program called SYSMAP.COM or MAP.COM. This program will list the different types of software available (utilities, games, business) and show where each is located so that you can go straight to the files you're interested in. If you want to see every file on the system, type "DIR *.* $U0AD" at the CP/M prompt; this command will show you the directory of files in every user area on every disk, one by one. Some RCP/Ms use the shorter command "DIR *.* $AD" but also accept the longer form. WARNING--if you're running at 300 baud and you're on an RCP/M with massive storage, it may take 20 minutes or more to complete this command, though you can always abort it with a ^C. Make sure you save the results to disk. GETTING AROUND An RCP/M may have up to 15 disks (A-O), though most have only 2-4, and each disk may be divided into as many as 16 user areas (0-15). You move from one disk to another just as you do on your own system. For example, typing "B:" at the A> prompt moves you over to disk B: and the prompt becomes B>. How you move to a new user area on the same disk varies from system to system. On some, typing "USER 1" at the A> prompt moves you to user area 1 of disk A. A>USER 1 A1> Notice that the prompt becomes A1>. On other systems, you just type the new user number followed by a colon: A>1: A1> Most systems let you change disks and user areas at the same time, so you can move from A1: to B3:, for example, with one command. On some systems, you enter the new drive and user number followed by a colon: A1>B0: B0> On other systems, you enter the new drive, a colon, a space, and then the new user number: A1>B: 0 B0> You'll have to experiment to find out which method applies on the system you've called. WHAT TO DO WHEN YOU GET THERE Once you've moved into a drive/user area that looks interesting, type "DIR" at the CP/M prompt to get an alphabetized directory of files in that area (see Listing 4). It's not always easy to figure out what you've found even after you get the directory, so here are a few hints. Files with the file type OBJ, like FILT6.OBJ, are ready-to-run programs. All you do, after downloading them, is change the file type from OBJ to COM (FILT6.OBJ becomes FILT6.COM). Sysops use the OBJ file type to keep people from running these programs while connected and crashing the RCP/M. Files with the type DOC or INF, like FILT6.DOC, are text files that document (give information about) a program. Using the TYPE command, you can scan FILT6.DOC, for example, to find out what the program FILT6.OBJ does. If you decide you want FILT6, download both the OBJ and the DOC files. Files with the type ASM, like MAGE31.ASM, are assembly language source files, usually ones that can be turned into runnable programs by the CP/M assembler ASM.COM that came with your CP/M system. ASM files are text files, so you can view them with the TYPE command. They usually have comments at the beginning to explain what the program does. Squeezed files are files that have been compacted by a special process so they take up less space. When a file is squeezed, the middle letter of its file type is changed to Q: FILT6.DOC becomes FILT6.DQC, MAGE31.ASM becomes MAGE31.AQM, and so forth. Ordinary CP/M commands and programs can't handle squeezed files; they'll just fill your screen with junk. The RCP/M's TYPE command will let you view squeezed files on the screen, but to unsqueeze the file after you've downloaded it, you need a program called USQ (for UnSQueeze) or NUSQ (for New UnSQueeze). Most RCP/Ms have a file called SQ/USQ.DOC or SQUEEZE.DOC which explains how to deal with squeezed files. A file with the type LBR is a library file, a group of smaller files collected into a master file that CP/M treats as a single file. For example, the files FILT6.OBJ and FILT6.DQC might be grouped into the file FILT6.LBR. Once you've downloaded an LBR file, any one of several programs--DE-LBR, LU300, NULU11--will let you extract the member files so you can use them. But how do you find out what's in the LBR file before you download it? RCP/Ms use one of two systems for dealing with LBR files. Some have a program called LDIR, which will give you a directory of a particular library. If you want to know what's contained in FRONT41.LBR (see Listing 4), you type B0>LDIR FRONT41 Notice that you don't use the LBR extension. These systems usually have an accompanying program, LTYPE, which lets you view a text file member of a library on the screen. If you want to look at README.DOC, which is inside FRONT41.LBR, you type B0>LTYPE FRONT41 README.DOC That is, you specify the name of the library (with no LBR extension) followed by the name of the file within the library. (On some systems, the regular TYPE command will also handle LBR files just as LTYPE does.) If you forget what to do, type "LDIR" or "LTYPE" at the CP/M prompt for instructions. Other RCP/M systems use a program called LUX. On these systems, type LUX followed by the name of the LBR file (such as LUX FRONT41), and LUX will actually put you INSIDE the LBR file. You can then use DIR to get a directory of the library, TYPE to view library members, SEND to download a member from the library, HELP to get instructions, and control-C to exit LUX. UP AND DOWN WITH XMODEM Once you've decided what files you want, you'll use the program XMODEM to download them. If you type "XMODEM" at the CP/M prompt, you'll get a brief description of how to use the program. To tell XMODEM to SEND the file FRONT41.LBR to you (to download the file, in other words), you type B0>XMODEM S FRONT41.LBR XMODEM will sign on, tell you the size of FRONT41.LBR and the time it will take to download at your speed, and signal that it's ready to send. At this point, you must set your modem program to receive the file. Do this quickly, as XMODEM will abort if you don't get going in about 30 seconds. During the download, XMODEM will resend (up to 10 times) any section of the file that isn't received cleanly. If you just want to download one file from inside an LBR file (like README.DOC from FRONT41.LBR), type B0>XMODEM L FRONT41 README.DOC Note that you specify the name of the LBR file, without the LBR extension, followed by the name of the file you want to download from the library. Everything else will proceed as with the XMODEM S command. If you have a file that the RCP/M doesn't have, you also use XMODEM to upload the file. To tell XMODEM to RECEIVE the file SUPERZAP.OBJ from you, type B0>XMODEM R SUPERZAP.OBJ XMODEM will sign on, tell you where it's going to put the file, and signal that it's ready to receive. Set your system to send the file, and everything else will go as with downloading. IMPORTANT FILES TO DOWNLOAD RCP/Ms have many squeezed files and LBR files, so you must be able to deal with these once you've downloaded them. I suggest you immediately download USQ (or NUSQ, which is smaller and faster) and DE-LBR, along with their associated DOC files. USQ will let you unsqueeze any squeezed file, and DE-LBR will extract the member files from an LBR file. Many RCP/Ms keep these and a few other basic programs in a special disk/user area labelled STARTER.KIT or U-NEED. RCP/M ETIQUETTE RCP/Ms are busy 24 hours a day, so most have a strict limit (usually one hour a day) on the amount of time you can spend on the system. Please follow it--other people want to use the system, too. Almost all RCP/Ms automatically keep track of when you called, how long you stayed on, and what you downloaded or uploaded. Do your part to help the RCP/Ms you call keep up their public domain software collection: upload some files to balance out the ones you download. You don't have to write the programs yourself; just pass on good public domain programs you've found on other systems. Always check before you upload to make sure the system doesn't already have the program you want to send, and don't upload any commercial programs. LEAVING CP/M Once you've finished you're uploading and downloading, you can re- enter the message system by typing RBBS (or OXGATE or METAL, depending on what message system is in use). Or you can log off the RCP/M system completely by typing BYE at the CP/M prompt; the system will say good-bye and then reset itself for the next caller (who will probably be there about 10 seconds after you hang up). Please take the few seconds required to make this orderly exit; it makes everything run more smoothly. Sometimes when you type BYE, you'll be given the option of leaving a note for the sysop before exiting. (Say thanks once in a while; these people work hard in a good cause.) Next issue, I'll cover the basic public domain utilities that everyone should have. ------------------------------------------------------------------------------ Ted Silveira is a freelance writer and contributing editor to several computer-oriented publications. He appreciates suggestions or feedback and can be reached through the KAY*FOG RBBS (415)285-2687 and CompuServe (72135,1447) or by mail to 2756 Mattison Lane, Santa Cruz, CA 95065. ------------------------- End of CPM-CC03.ART Text -------------------------