D T J - B B S ------------------------------------------- Does-The-Job Bulletin Board System ------------------------------------------- Copyright 1995 Andrew Bernhardt ------------------------------------------- D O C U M E N T A T I O N Revision 950307 For FREE Distribution Only ------------------------------------------------------------------ Commodore 64, Executive 64, Commodore 128, 1541, 1571, 1581, 1660, 1660, 1670 are trademarks of Commodore Business Machines. JiffyDOS, CMD-HD are trademarks of Creative Micro Designs, Inc. Swiftlink-232 is trademark Dr. Evil Laboratories. The Right Time is trademark Ardelt Engineering, Inc. DTJ-BBS Rev. 940521 Documentation Page C-1 CONTENTS Table Of Contents CHAPTER 1 - INTRODUCTION . . . . . . . . . . . . . . . . . . . 1 1.1 Making Backups . . . . . . . . . . . . . . . . . . . 1 1.2 Shareware Policy . . . . . . . . . . . . . . . . . . 1 CHAPTER 2 - Configuration . . . . . . . . . . . . . . . . . . . 3 2.1 Planning Your System . . . . . . . . . . . . . . . . 3 2.2 Configuring Your System . . . . . . . . . . . . . . 4 CHAPTER 3 - Running The BBS . . . . . . . . . . . . . . . . . . 10 3.1 Booting The BBS . . . . . . . . . . . . . . . . . . 10 3.2 The Awaiting-Call Screen . . . . . . . . . . . . . . 11 3.3 The Terminal Mode . . . . . . . . . . . . . . . . . 13 3.4 The Local Mode . . . . . . . . . . . . . . . . . . . 14 3.5 The On-line BBS . . . . . . . . . . . . . . . . . . 15 CHAPTER 4 - Online Tour . . . . . . . . . . . . . . . . . . . . 17 CHAPTER 5 - Message Base Organization . . . . . . . . . . . . . 24 5.1 SIGS . . . . . . . . . . . . . . . . . . . . . . . . 25 5.1.1 Listing SIGs (SIGOP) . . . . . . . . . . . . . . . . 25 5.1.2 Entering A Different SIG . . . . . . . . . . . . . . 26 5.1.3 Assigning A Room To A SIG (SYSOP) . . . . . . . . . 26 5.1.4 Creating Or Changing The Name Of A SIG (SIGOP) . . . 26 5.1.5 Deleting A SIG (SIGOP) . . . . . . . . . . . . . . . 27 5.2 Rooms . . . . . . . . . . . . . . . . . . . . . . . 27 5.2.1 Getting A List Of Rooms . . . . . . . . . . . . . . 27 5.2.2 Entering A Different Room . . . . . . . . . . . . . 28 5.2.3 Creating New Rooms . . . . . . . . . . . . . . . . . 28 5.2.4 Changing The Name Of A Room (SIGOP) . . . . . . . . 29 5.2.5 Getting The Room Status (SYSOP) . . . . . . . . . . 29 5.2.6 Making A Room Read-Only (SYSOP) . . . . . . . . . . 30 5.2.7 Making A Room Read/Write (SYSOP) . . . . . . . . . . 30 5.2.8 Locking Rooms (SYSOP) . . . . . . . . . . . . . . . 30 5.2.9 Unlocking Rooms (SYSOP) . . . . . . . . . . . . . . 31 5.2.10 Making A Room Anonymous (SYSOP) . . . . . . . . . . 31 5.2.11 Forgetting A Room . . . . . . . . . . . . . . . . . 31 5.2.12 Remembering Rooms . . . . . . . . . . . . . . . . . 31 5.2.13 Deleting A Room (SYSOP) . . . . . . . . . . . . . . 32 5.3 Messages . . . . . . . . . . . . . . . . . . . . . . 32 5.3.1 Reading Messages . . . . . . . . . . . . . . . . . . 32 5.3.2 Setting The Number Of New Messages You Have . . . . 33 5.3.3 Saving Messages . . . . . . . . . . . . . . . . . . 34 5.3.4 Saving Messages To More Than One Room . . . . . . . 34 5.3.5 Saved Messages As Old or New . . . . . . . . . . . . 35 5.3.6 Unsaving The Last Message You Saved . . . . . . . . 35 5.3.7 Appending To The Last Message You Saved . . . . . . 36 DTJ-BBS Rev. 940521 Documentation Page C-2 CONTENTS 5.3.8 Re-editting Messages (SYSOP) . . . . . . . . . . . . 36 5.3.9 Moving Messages To Other Rooms (SIGOP) . . . . . . . 37 5.3.10 Deleting Messages (SIGOP) . . . . . . . . . . . . . 37 5.3.11 Appending A Message To A Textfile (SIGOP) . . . . . 38 5.3.12 Downloading A Message . . . . . . . . . . . . . . . 38 CHAPTER 6 - Electronic Mail . . . . . . . . . . . . . . . . . . 40 6.1 Reading Your Email . . . . . . . . . . . . . . . . . 40 6.2 Reading Another User's Email (SYSOP) . . . . . . . . 40 6.3 Sending Email . . . . . . . . . . . . . . . . . . . 40 6.4 Sending Bulk Email . . . . . . . . . . . . . . . . . 41 6.5 Sending Certified Email . . . . . . . . . . . . . . 42 6.6 Sending Urgent Email (SYSOP) . . . . . . . . . . . . 42 6.7 Forwarding Email To Another Account . . . . . . . . 42 6.8 Closing Your Mailbox . . . . . . . . . . . . . . . . 43 6.9 Opening Your Mailbox . . . . . . . . . . . . . . . . 43 6.10 Getting A List Of Users . . . . . . . . . . . . . . 43 CHAPTER 7 - The Editor . . . . . . . . . . . . . . . . . . . . 45 7.1 Writing Your Message . . . . . . . . . . . . . . . . 45 7.2 Listing What You've Written . . . . . . . . . . . . 46 7.3 Listing Part Of The Buffer . . . . . . . . . . . . . 46 7.4 Erasing The Buffer . . . . . . . . . . . . . . . . . 47 7.5 Correcting Mistakes . . . . . . . . . . . . . . . . 47 7.6 Exiting The Editor . . . . . . . . . . . . . . . . . 47 7.7 Getting Help . . . . . . . . . . . . . . . . . . . . 47 7.8 Inserting Control Codes In Your Text (SYSOP) . . . . 47 CHAPTER 8 - SIGfile Organization . . . . . . . . . . . . . . . 49 8.1 Getting A List Of SIG Files . . . . . . . . . . . . 49 8.2 Getting A List Of File Transfer Protocols . . . . . 49 8.3 Changing Your File Transfer Protocol . . . . . . . . 49 8.4 Downloading A SIG File . . . . . . . . . . . . . . . 50 8.5 Reading A SIG File . . . . . . . . . . . . . . . . . 51 8.6 Uploading A SIG File . . . . . . . . . . . . . . . . 51 8.7 Saving A Text SIG File (Textfile) . . . . . . . . . 52 8.8 Validating A New SIG File (SIGOP) . . . . . . . . . 53 8.9 Deleting A SIG File (SIGOP) . . . . . . . . . . . . 53 8.10 Creating & Updating A SIG Bulletin (SIGOP) . . . . . 54 8.11 Removing A SIG Bulletin (SIGOP) . . . . . . . . . . 54 8.12 Using Descriptive Directories (SYSOP) . . . . . . . 54 CHAPTER 9 - The DOS Mode (SYSOP) . . . . . . . . . . . . . . . 56 9.1 Changing Drives . . . . . . . . . . . . . . . . . . 56 9.2 Listing The Disk Directory . . . . . . . . . . . . . 56 9.3 Counting Files . . . . . . . . . . . . . . . . . . . 58 9.4 Initializing A Drive . . . . . . . . . . . . . . . . 58 9.5 Erasing Files . . . . . . . . . . . . . . . . . . . 58 9.6 Renaming Files . . . . . . . . . . . . . . . . . . . 59 9.7 Copying Files . . . . . . . . . . . . . . . . . . . 59 9.8 Combining Files . . . . . . . . . . . . . . . . . . 60 DTJ-BBS Rev. 940521 Documentation Page C-3 CONTENTS 9.9 Validating The Disk . . . . . . . . . . . . . . . . 60 CHAPTER 10 - User Access . . . . . . . . . . . . . . . . . . . 62 10.1 Logging On . . . . . . . . . . . . . . . . . . . . . 64 10.1.1 Forced Logon . . . . . . . . . . . . . . . . . . . . 64 10.1.2 Optional Logon And Relogon . . . . . . . . . . . . . 65 10.2 Validating A New User's Account (SYSOP) . . . . . . 66 10.2.1 Validating An Account While In CHAT Mode (SYSOP) . . 66 10.2.2 Validating Any Account (SYSOP) . . . . . . . . . . . 67 10.3 Killing An Account (SYSOP) . . . . . . . . . . . . . 67 10.4 Searching For New Users (SYSOP) . . . . . . . . . . 68 10.5 Changing A Password . . . . . . . . . . . . . . . . 68 10.6 Moving An Account (SYSOP) . . . . . . . . . . . . . 68 10.7 Creating The New User Questionaire . . . . . . . . . 69 10.8 Searching Accounts (SYSOP) . . . . . . . . . . . . . 69 10.9 Mass Status Change (SYSOP) . . . . . . . . . . . . . 71 CHAPTER 11 - Miscellaneous User Commands . . . . . . . . . . . 72 11.1 Paging The Sysop . . . . . . . . . . . . . . . . . . 72 11.2 Changing Your Video Width . . . . . . . . . . . . . 72 11.3 Changing Your Video Height . . . . . . . . . . . . . 73 11.4 On-Line Help . . . . . . . . . . . . . . . . . . . . 73 11.5 Reading The System Statistics . . . . . . . . . . . 73 11.6 Logging Off . . . . . . . . . . . . . . . . . . . . 74 11.7 Sending A Message To The Sysop . . . . . . . . . . . 74 11.8 Running Modules . . . . . . . . . . . . . . . . . . 74 CHAPTER 12 - Miscellaneous Sysop Commands . . . . . . . . . . . 76 12.1 Changing The Date (SYSOP) . . . . . . . . . . . . . 76 12.2 Disabling The System (SYSOP) . . . . . . . . . . . . 76 12.3 Enabling The System From Remote (SYSOP) . . . . . . 76 12.4 Changing The Time (SYSOP) . . . . . . . . . . . . . 77 12.5 Reading Your Logoff Messages (SYSOP) . . . . . . . . 77 12.6 Saving Logoff Messages To A Room (SYSOP) . . . . . . 77 12.7 Change Part Of The Configuration Online (SYSOP) . . 78 12.8 Reading Any Sequential File (SYSOP) . . . . . . . . 79 12.9 Downloading A File (SYSOP) . . . . . . . . . . . . . 79 12.10 Editing Any Sequential File (SYSOP) . . . . . . . . 79 12.11 Saving A Sequential File (SYSOP) . . . . . . . . . . 79 12.12 Appending To A Sequential File (SYSOP) . . . . . . . 80 12.13 Uploading A File (SYSOP) . . . . . . . . . . . . . . 80 CHAPTER 13 - The Support Program . . . . . . . . . . . . . . . 81 13.1 A - New Configuration . . . . . . . . . . . . . . . 83 13.2 B - Change Configuration . . . . . . . . . . . . . . 83 13.2.1 Change Configuration - A - Modem . . . . . . . . . . 84 13.2.2 Change Configuration - B - Drives/Kernal Overlay . . 86 13.2.3 Change Configuration - C - Users . . . . . . . . . . 88 13.2.4 Change Configuration - D - Editable Phrases/Menus . 90 13.2.5 Change Configuration - E - Censor Vocabulary . . . . 93 13.2.6 Change Configuration - F - Miscellaneous . . . . . . 93 DTJ-BBS Rev. 940521 Documentation Page C-4 CONTENTS 13.2.7 Change Configuration - G - BASES File (Messages/Emai 96 13.3 C - Rebuild BASES (restore messages) . . . . . . . . 98 13.4 D - Set C128 Autoboot Sector . . . . . . . . . . . . 98 13.5 E - Print Account Listing . . . . . . . . . . . . . 98 13.6 F - Mass Access Change . . . . . . . . . . . . . . . 99 13.7 G - Copy/Convert Text Files . . . . . . . . . . . . 99 13.8 H - DOS Mode . . . . . . . . . . . . . . . . . . . 100 13.9 I - Run BBS . . . . . . . . . . . . . . . . . . . 100 APPENDIX A - Command List . . . . . . . . . . . . . . . . . . A-1 APPENDIX B - Files . . . . . . . . . . . . . . . . . . . . . A-4 APPENDIX C - Audit Trail Explanation . . . . . . . . . . . . A-11 APPENDIX D - Specifications . . . . . . . . . . . . . . . . . A-13 APPENDIX E - File Server Control Codes . . . . . . . . . . . A-14 APPENDIX F - CMD Hard Drive Info . . . . . . . . . . . . . . A-18 APPENDIX G - Swiftlink-232 Configuration . . . . . . . . . . A-20 APPENDIX H - ANSI GRAPHICS CODES . . . . . . . . . . . . . . A-22 TROUBLESHOOTING . . . . . . . . . . . . . . . . . . . . . . . T-1 DTJ-BBS Rev. 940521 Documentation Page 1 CHAPTER 1 - INTRODUCTION 1 CHAPTER 1 - INTRODUCTION Congratulations on selecting the DTJ-BBS, one of the most powerful electronic bulletin board systems available for the Commodore 64 and 128 computers! Whether this is the first BBS program you've ever run, or if you have had some experience in operating a bulletin board, please read through the documentation before attempting to run the DTJ-BBS. This software is very different from other bulletin board programs. It may seem confusing at first if you are used to running other systems. But once you get the hang of it, you'll find that the DTJ-BBS practically runs itself! I wrote the DTJ-BBS to be as powerful to use as possible, but I also tried to make it easy to use and fast. Because this BBS program runs on a Commodore 64, there are some limitations to the program compared to programs running on more powerful computers. The DTJ-BBS does not support all file transfer protocols, nor does it support Commodore color graphics or online games. The DTJ-BBS was designed to be a discussion type of system. The way the system operates encourages participation in the message bases more than the file transfer section. This means you can expect more message posting on this BBS software than most other software. 1.1 Making Backups Before you do anything, you should make a backup of your BBS program and documentation disks. Then put the originals in a safe place and use the backups instead. Once you have your BBS up and running, you should make backups of your program and data disks every so often. In the event of a crash, it is better to lose only a few accounts and messages rather than the whole system. DTJ-BBS Rev. 940521 Documentation Page 2 CHAPTER 1 - INTRODUCTION 1.2 1.2 Shareware Policy As of the 1989 revisions, the DTJ-BBS is shareware. This means you may make copies for other people, and you may upload the software to bulletin board systems. A donation of no more than $35 may be sent to the address below. You must keep all files associated with the DTJ-BBS (i.e. documentation, support, etc.) together. Use ARC to save file transfer time and disk space when uploading the BBS to bulletin board systems. Revisions earlier than 890101 are NOT shareware. They remain a commercial product. Sysops who bought the commercial revisions are encouraged to run the shareware revision. You may obtain the latest revision of the DTJ-BBS (when available) by sending two blank 5.25" disks (or one 3.5" disk) and 75 cents postage to: DTJ Software P.O. Box 669 Beatty, Nevada 89003 This software is also available in ARC'ed form on the DTJ-BBS flagship system: Second Home Electronic Cottage (702) 553-2869 300/1200/2400/4800/9600 bps 24 hours The DTJ-BBS program is copyright. You may not modify the program or any copyright notices. The remaining files are public domain. I would like to thank the users of Second Home who, knowingly or unknowingly, helped test the BBS software. Thanks also to the 'Shroom, Gopher, and the older DTJ sysops for helping DTJ get off the ground in 1985-86, thanks to Tom Tyrell, Nazgul, Zone Keeper, Mike Mietzner, George Noel, and others that helped with suggestions and compatability testing. Also, thanks to Lead Vicuna for running Second Home for me for a few years after I moved out west. Thanks to the Flamingo Kid for the Punter module. And thanks to Mama Roach, who has proven you don't have to be a computer genius to run this thing! DTJ-BBS Rev. 940521 Documentation Page 3 CHAPTER 2 - Configuration 2 CHAPTER 2 - Configuration This section of the documentation describes the configuration process. When you configure the BBS, you are telling the BBS what kind of hardware you have and how you want your BBS to utilize it. 2.1 Planning Your System Before you can run your BBS, you must decide on how you want your system set up. There are many different types of systems out in "BBS Land". It is a good idea to call several systems to see what you like and what you don't like. If you have the money, you may also want to try some long distance boards. BBS systems in different parts of the country have different personalities. Some things you may want to consider are: Theme: What is the purpose of my system? Technical? Computers? Literary? Role Playing Games? Religious? Business? Fun? Ham Radio? New Users: Do I want new users to be able to post messages, download files, etc, or do I want to limit their access until I validated them. Or do I want to make my system private so only those who I want on the BBS can use it? Maintenance: How much time will I be able to devote to the maintenance of the BBS? You must also decide what kind of hardware you will run your system on. Here are some pointers: Computer: The DTJ-BBS is designed to run on a Commodore 64. It will also run on the SX64 and the C128. Even though it will run on a C128, I do not suggest doing so because you will waste much of the power of the C128. The DTJ-BBS must run in the 64 mode. It takes no advantage of the extra memory or speed of the C128. Disk Drives: You may use from 1 to 24 disk drives with the DTJ-BBS. These may be 1541's, 1571's, 1581's, ICT & CMD HD's, or compatables. As long as the drive connects to the serial port and uses the standard DOS 2.6 commands, there should be no problem. The DTJ-BBS Rev. 940521 Documentation Page 4 CHAPTER 2 - Configuration 2.1 suggested number of drives is at least 2 1541 disk drives, one 1571 or 1581 disk drive, or one hard drive. The BBS is compatable with JiffyDOS. Modem: The BBS supports the 1650, 1660, 1670, and Hayes modems. You may also use compatables. The DTJ-BBS works at 1200 and 2400 bps with modems that are capable of operating at those speeds. The 2400 bps option may not work well on some C64s. The DTJ-BBS supports speeds up to 38400bps with the Swiftlink cartridge. Printer: A printer is optional with the DTJ-BBS. If used, it will keep a printed log of callers and can be used to monitor problem users. You can also print any portion of your online session with your printer attached. The DTJ-BBS supports both CBM and ASCII printers. Phone Line: Yes, the phone line is as much a part of your system as anything else. In order for your system to be successful, you should have a dedicated phone line installed. Not many part-time systems are successful. Most importantly, in order for your system to be successful, YOU must take the time to maintain your BBS and participate in it's activities. You must also excercise control over your system. Sysoping can be alot of work. Your bulletin board is what you make it. 2.2 Configuring Your System Once you have a basic idea of what you want to do with your system, you need to decide how your hardware is to be utilized. This involves figuring out how you want your disk drives organized (i.e. which files go on which drives). If you only have one or two floppy drives, you won't have alot of flexability in this area. The first step is looking at the capabilities of your disk drives. Some common types and their features are: * 1541 floppy Slowest. Each drive can handle up to 144 files and has 664 blocks of disk space available. * 1571 floppy Slow. Each drive can be set up as one double-sided disk with up to 144 files and 1328 blocks free, or as two single-sided disks, with each holding 144 files and 664 blocks free for a total of 288 files and 1328 blocks free. DTJ-BBS Rev. 940521 Documentation Page 5 CHAPTER 2 - Configuration 2.2 * 1581 floppy Medium. The drive has a directory that can hold 296 files. Additional subdirectories can be added, each of which can also contain 296 files, but there is a total limit of 3160 blocks free on the entire disk. * CMD Hard Drive Fast. Native-mode partitions are best suited for the BBS. Each native-mode partition can handle an indefinite number of files and a maximum of 64000 blocks are available, depending on how the drive was partitioned. Each hard drive can contain more than one partition. Subdirectories may also be used but are not recommended. * CMD Ramlink Fastest. Ramlink functions the same as the CMD hard drive, but it is not recommended for storage of permanent files such as messages, accounts, email, SIGfiles, etc. All of these drives except for the 1541 can be made to act like more than one drive to the BBS. This can come in handy for storing a greater number of files. DTJ does not use normal drive numbers when it runs. It uses the letters from "a" to "z" to represent up to 26 "logical" drives. A logical drive can be one real disk drive, one side of a double-sided drive, a subdirectory on a 1581 or hard drive, or a partition on a hard drive. This allows you to more fully utilize your disk drive space. Whenever the BBS tries to read or write a file on a logical drive, it looks up in a table the device number of a real disk drive assigned to that drive letter. Then it optionally sends a DOS command to the drive to tell the drive which subdirectory, partition, or side of the disk to use. For example, to use a 1571 drive as two "logical" drives, the 1571 would be placed in singled-sided mode. Each side is accessed with a special command sent to the drive. If the 1571 is device 8, the kernal overlay may be configured as follows: Logical drive Device# DOS Command A 8 U0>H0 B 8 U0>H1 Drive "a" would be the first side of the disk, and drive "b" would be the second disk. The BBS would see drives "a" and "b" as two separate drives. (The DOS commands U0>H0 and U0>H1 select which side of the disk to use. They are described in the 1571 user's manual.) DTJ-BBS Rev. 940521 Documentation Page 6 CHAPTER 2 - Configuration 2.2 If you also have a CMD hard drive and you want to use partitions 10 through 19 as logical drives "c" through "l", your kernal overlay may look like this: Logical drive Device# DOS Command A 8 U0>H0 (1571 drive) B 8 U0>H1 : C 9 CP10 (CMD hard drive) D 9 CP11 : E 9 CP12 : F 9 CP13 : G 9 CP14 : H 9 CP15 : I 9 CP16 : J 9 CP17 : K 9 CP18 : L 9 CP19 : Any unused drive letters would be assigned the same device and DOS command as logical drive "a". This is to prevent the BBS from crashing if you try to access a logical drive that does not exist. (Only one DOS command per logical drive letter can be sent. So, the BBS will automatically return a 1581 drive to the root directory before sending it a command to switch to a subdirectory.) Now that you understand how the kernal overlay works, you need to plan the kernal overlay data to be used for your drives. The DTJ-BBS uses drive "a" for the "bases" file (a configuration file), help files, file transfer protocols, and menus. These add up to about 40 files and take up about 200 blocks of disk space. All other types of files (messages, email, etc) can be assigned to any drive. You must set up the kernal overlay so that each logical drive can handle the number and size of files that you assign to them. There are three account-related files. The total disk space used by these three files will be about 1.6 blocks per user. The default is 255 users so figure on 408 (255 x 1.6) blocks. Each piece of email takes up one file and averages about 2 to 3 blocks per file. Logoff messages are also saved to the email drive, but they all fit in one file. 25 email files is the default so your email drive needs about 75 blocks of space for email plus about 10 to 15 blocks for a logoff DTJ-BBS Rev. 940521 Documentation Page 7 CHAPTER 2 - Configuration 2.2 message file. Each message takes up one file of about 2 to 3 blocks. A different number of messages can be assigned to each drive. It is recommended that no more than 300 messages be assigned to a logical drive so that the disk drive won't have to search though a long directory to find a message. If you have a CMD Hard Drive or Ramlink, read appendix F. You will need the following information to configure your BBS: * Kernal overlay setup * Logical drive to assign the account files to * Logical drive to assign the email files to * Number of messages desired on each logical drive * Your modem type * Your printer type (if you have one) Using the kernal overlay example shown above, you may want to assign accounts and email to drive "b", and put 300 messages each on drive "c", "d", and "e" (for a total of 900 messages), and the remaining drives can be used for file transfers. (The new configuration assigns file transfers to drive "a" by default. You may change that once the BBS is configured.) To configure the BBS, do the following: 1. Hook up all disk drives and your modem that you intend on using with the BBS and turn them on. Make sure you have enough blank disks available for each disk drive. 2. Insert a copy of the BBS program disk in drive 8 and type: LOAD "SUPPORT",8 and press [RETURN]. After the support program is finished loading, type: RUN and press [RETURN]. 3. If the main support program menu appears, press "A". 4. The support program will ask you if you want it to write generic s.1 and s.3 files. Answer yes by pressing "Y". Then press RETURN. DTJ-BBS Rev. 940521 Documentation Page 8 CHAPTER 2 - Configuration 2.2 5. After the files are written, the support program will go to the kernal overlay setup screen. Type in the kernal overlay data for your hardware for each logical drive that you want to use. You must enter data for all 26 logical drives. Any unused logical drives should contain the same data as for drive "a". 6. Enter the logical drive that the account files should be written to. 7. Enter the logical drive that the email files should be written to. 8. Enter the number of messages you want assigned to each logical drive. You must enter data for all 26 logical drives. For unused logical drives or if you don't want messages on a logical drive, enter 0. The support program will keep track of the total number of messages you have assigned so far. This number must not exceed 3500. 9. Enter your modem type. <1> for 1650, <2> for 1670 or Hayes, or <3> for 1660. 10. If you have a 1670 or Hayes modem, the modem AT commands that the BBS uses are displayed. You can change them or leave them the same. See Chapter 13 for more info. 11. If you have 1670 or Hayes modem, you can select the default baudrate of your modem. Select the highest baudrate that your modem will support. 12. Select the type of printer you want to use. Select <0> if you do not have a printer. 13. Enter your name. This will be placed in your account. 14. Enter a password and write it down. This will also be placed in your account. 15. Enter the name of your BBS. 16. Make sure the BBS program disk is still in the drive and press RETURN. 17. Insert the blank data disks in each drive and press RETURN to format them. The support program will format each disk and create subdirectories if needed according to the information in the kernal overlay. The support program will then write the "bases" and DTJ-BBS Rev. 940521 Documentation Page 9 CHAPTER 2 - Configuration 2.2 account files and two textfiles. 18. Insert the BBS program disk again in it's drive and press RETURN. This will write the help, protocol, and menu files. When the files are written, you will see the C64's READY prompt. See Chapter 13 on how to assign the file transfer (SIGfile) drives. If you have a Swiftlink-232 cartridge, follow the instructions in Appendix G to use it. This completes the configuration of the BBS. The BBS is now ready to run. The program "DTJ.MOD", located on the program disk, can be used to set up the Swiftlink-232 cartridge, the no-activity time-out, the terminal mode screen colors, and set the BBS to operate in countries where 50hz power is used. To run it, type: LOAD "DTJ.MOD",8 [RETURN] RUN [RETURN] DTJ-BBS Rev. 940521 Documentation Page 10 CHAPTER 3 - Running The BBS 3 CHAPTER 3 - Running The BBS This section of the documentation shows you how to load and run (or "boot") your BBS, and how the local features of the BBS operate. 3.1 Booting The BBS To run the BBS program, make sure all disk drives are connected and turned on, and the modem is connected. Insert the BBS program disk in drive 8 and type: LOAD"BBS",8,1 then press RETURN. The BBS will load and run automatically. (You may load the BBS from other drives if you wish. Once it is loaded and running, you will be told to take out the program disk and insert all of your data disks in their appropriate drives. Do that, then press a key. After the BBS initializes itself, you will see the "Awaiting Call" screen. If you have the room, you may want to copy your BBS program files ("bbs", "s.1", and "s.3") to one of your data disks. If you do this, then the BBS will not have to stop to tell you to insert the data disks. When the BBS finishes loading, it looks for a file called "bases" on your first drive. If it isn't there, the BBS prompts you to insert the data disks and then to press any key to go on. Loading the BBS from a data disk bypasses this prompt. You may rename the "bbs" file if you want to use an autoboot cartridge to automatically reboot the BBS if the power goes out. If your modem has switches for "Originate/Answer", switch your modem to "Answer". If your modem has switches for "Full/Half", set the switch to "Full". If you have problems getting to the Awaiting-Call screen, and you have a Hayes compatable modem, try setting your modem to force DTR on. You may also get better modem results by turning command echo off (either via a DIP switch or the Hayes command ATE0&W). DTJ-BBS Rev. 940521 Documentation Page 11 CHAPTER 3 - Running The BBS 3.2 3.2 The Awaiting-Call Screen The Awaiting-Call screen is what is displayed when the BBS is waiting for a call. The screen looks like this: Does-The-Job Bulletin Board System Copyright 1995 by Andrew Bernhardt First Caller 0 0 Last Caller Calls Msgs CHT CEN MON NEW PAS CRE FUL SYS ANS ESC TWT ANO SEE BAS LST --- <0> <1> <2> <3> <4> <5> <6> <7> DSABLD Date (Press to change) 01:00PM Time (Press to change) RETURN = BBS On-Line HOME = Terminal AWAITING CALL This screen displays the name of the last caller, the number of calls (successful logons) your BBS has received, and the number of messages that have been posted since the BBS started. The date and time are also displayed on the awaiting-call screen. If the system is disabled (which it always is when you first run the BBS), the word "DISABLD" appears in place of the date. This means that the BBS will tell users that the BBS is down when they call. The first thing you should do when you run the system is set the date and time. This will enable the BBS so that users can call. To set the date, press "D". Then type in the date. Use 2 digits for the year, 2 digits for the month, and 2 digits for the day (YYMMDD), then press RETURN. If you make a mistake, the date will not change. You may set a date in the range of 1980 through 2079. To set the time, press "T". Type in 2 digits for the hour ("01" to "12"), 2 digits for the minutes ("00" to "59"), and either "A" for AM or "P" for PM, then press RETURN. The time is in 12 hour AM/PM format, NOT 24 hour "military" format! Do not type a colon (":") between the hour and minutes. The "System Control Block" switches are also displayed. These DTJ-BBS Rev. 940521 Documentation Page 12 CHAPTER 3 - Running The BBS 3.2 are thirteen 3-letter codes with the numbers 0 to 7 below them. Each switch controls a feature of the BBS. To turn a switch on or off, press the number that appears below the 3-letter code. (Press SHIFT and the number for codes ANS through SEE). A switch is "on" if the 3-letter code is highlighted. The meanings of each switch are listed below: CHT - Chat mode "On" means you are available for CHAT. CEN - Censor "On" means the profanity checker is active. MON - Monitor "On" means the BBS will monitor problem users (users who have "monitor" status). This switch also controls the auto-monitor feature of the twit detector. NEW - New Users "On" means the BBS will let new users get an account. PAS - Password Change "On" means users can change their own passwords. CRE - Create "On" means those users with "create" access can create rooms. FUL - Disk Full Check "On" means the disk is always checked for enough space before saving a file. SYS - Sysop/SIGop Commands "On" means sysop commands are available in the BBS to those with "sysop" status. ANS - ANSI Graphics Enable "On" means users can view ANSI graphics. ANSI graphics are not viewable on the local screen. ESC - ESC Input Enable "On" means users can type ANSI codes in the editor. TWT - Twit Detector "On" means the twit detector is enabled and it can change the user's status and force the user to logoff. ANO - Anonymous rooms "On" allows anonymous posts in anonymous rooms. SEE - Logon code display "On" allows you to view the logon code of users when they call. BAS - Variable/memory modification flag This allows the use of "LET" and "POKE" statements as BASIC expressions in the file server. See the DTJ programmer's guide for more info. SCN - Duplicate account scan flag This tells the BBS to not allow new users to use the same name as an existing user. If you have logoff messages waiting, the words "LOGOFF MESSAGE AVAILABLE" are displayed in red at the bottom of the screen. DTJ-BBS Rev. 940521 Documentation Page 13 CHAPTER 3 - Running The BBS 3.2 You can read the logoff messages from within the BBS. After 5 minutes of non-activity, the screen will go blank. This is to help prevent "burning" the screen of your monitor. The screen turns itself on automatically when the BBS receives a call or when a key is pressed. To keep the screen on all the time, use the SHIFT-LOCK key. To force the screen blank, use SHIFT-SPACE. 3.3 The Terminal Mode The DTJ-BBS has a built-in terminal mode that allows you to call other systems without having to take down your BBS. To use the built-in terminal mode, press the HOME key from the Awaiting Call screen. This terminal does not have any "fancy" features such as that found in other terminal programs. It cannot autodial with non-Hayes compatable modems. But it does support file transfers. While you are in the terminal mode, the function keys perform the following functions: F1 = Help (Displays function key menu) SHIFT-F2 = Exit terminal mode F3 = Zero the timer SHIFT-F4 = DOS Mode F5 = Toggles half/full duplex SHIFT-F6 = Download file SHIFT-F8 = Upload file CTRL-1 = 300 bps (or Swiftlink baudrate #1) CTRL-2 = 1200 bps (or Swiftlink baudrate #2) CTRL-3 = 2400 bps (or Swiftlink baudrate #3) CTRL-4 = (Swiftlink baudrate #4) CTRL-5 = (Swiftlink baudrate #5) CTRL-6 = (Swiftlink baudrate #6) CTRL-7 = Changes screen border color CTRL-8 = Changes screen color CTRL-9 = Changes screen character color CMDR-1/2 = Baud Fine-tune - decr/incr rcvr half-bit time CMDR-3/4 = Baud Fine-tune - decr/incr rcvr full-bit time CMDR-5/6 = Baud Fine-tune - decr/incr xmtr full-bit time The baud fine-tuning keys allow you to make adjustments to the current baud rate. This fine tuning remains in effect until you change it again or until you reboot the BBS. Fine tuning only works if you are NOT using a Swiftlink cartridge. The values displayed while fine tuning the baud rate are the DTJ-BBS Rev. 940521 Documentation Page 14 CHAPTER 3 - Running The BBS 3.3 values of the half or full bit times. The support program allows you to permanently set the fine tuning of the baud rate. To send a Hayes modem escape sequence, press the RUN/STOP key three times. (The "+++" modem escape sequence was changed to use the RUN/STOP (CTRL-C) key instead of the "+" key.) To send a control code, use the COMMODORE key instead of the CONTROL key. For the file transfer and DOS function keys, enter the drive letter, a slash, and the filename or DOS command. For file transfers, you must also type in the protocolname you want to use. Add a ",s" to the filename to save files as SEQ filetype. To abort a file transfer, press CTRL-X. All disk commands (including format) are allowed in the DOS mode. Use "$" to get a directory. Counting files is not supported. The default screen colors can be set using the "DTJ.MOD" program. 3.4 The Local Mode To go "online" to your BBS, press the RETURN key from the Awaiting Call screen. The BBS will act as if you are calling using a modem. If you have the old model 1670 modem (with 3 dip switches), you should disconnect your phone line or take your phone off the hook while you call this way so that you won't get interrupted with an incoming call. Calling from the BBS keyboard is known as the "local" mode. There are a few differences in the way the BBS operates when you call this way compared to calling over the modem. These differences are: * You automatically have sysop access without having to logon. * The F5 key allows you to send everything that normally goes to the screen to your printer instead. When the printer is used this way, a "P" will appear at the top of the screen. * The online time limit is disabled. * Video width defaults to 40. * You cannot transfer files. Except for these differences, the BBS operates the same way in local mode as it does when a user calls over the modem. DTJ-BBS Rev. 940521 Documentation Page 15 CHAPTER 3 - Running The BBS 3.5 3.5 The On-line BBS While the BBS is "online" (either using "local" mode or if the system receives a call), the BBS will display a window at the top of the screen in light blue. (Anything displayed in light blue on the local screen cannot be seen by a user calling through the modem.) The window displays the account number, status, and name of the current caller, the current time, and the amount of time the user has been on. The window also displays the status of the CHT switch ("1" means CHT is on, "0" means it's off), and the "twit" level of the user. All of this information is updated on a real-time basis. This means, the time updates every minute, the twit level increases, etc. While a user is calling your system, you will see the same things that the user sees on your screen. You can also use your keyboard at the same time that a user is on so you can demonstrate your BBS to new users. There are some keys that perform special functions that the user cannot do. With the exception of the SHIFTed function keys, the user will not know when you press these keys. You may use them at an input prompt, in the editor, or while the BBS is displaying a file (message, email, etc). However, with the exception of F1, SHIFT-F2, and F7, these keys will not work while in the CHAT mode. F1 Zeros twit level (in CHAT mode only). SHIFT F2 Enters and exits the CHAT mode. F3 Toggles the CHT switch on or off. SHIFT F4 Display a custom message that you can specify with option "B" of the support program. F5 This key performs two different functions: If a user is connected to the BBS over a modem, this key turns the local display of what the user sees off or on. If you are connected in local mode, this key turns printer echo mode on or off. Printer echo mode is indicated by a "P" in the blue window. Printer output is always sent in 80 columns. SHIFT F6 Disconnects the user. F7 Allows you to edit the currently logged-on user's account. This only works while in the CHAT mode! DTJ-BBS Rev. 940521 Documentation Page 16 CHAPTER 3 - Running The BBS 3.5 SHIFT F8 Disconnects the user and disables the system. The current user's status may be changed by using the Commodore key: COMMODORE A Changes the user's status to "A" (deletes the account when the user logs off) COMMODORE N Changes the user's status to "N" (marks account as new) COMMODORE V Changes the user's status to "V" (indicates user is validated... this does NOT change the user's access) COMMODORE S Changes the user's status to "S" (activates sysop commands) COMMODORE M Changes the user's status to "M" (system will monitor user on the printer) COMMODORE T Changes the user's status to "T" (disables CHT for this user only) Some of the Commodore 64 keys have been redefined to more closely match a standard ASCII keyboard. The characters displayed on the local screen may not match up exactly to their ASCII equivalents but the modem users will see them ok. To get a: Type: ----------- ------------ Back slash British pound sign Caret Up-arrow Underline Left-arrow Reverse apostrophe SHIFT * Opening brace SHIFT + Vertical line COMMODORE - Closing brace SHIFT - Tilde SHIFT Up-arrow DTJ-BBS Rev. 940521 Documentation Page 17 CHAPTER 4 - Online Tour 4 CHAPTER 4 - Online Tour To get you aquainted with the on-line operation of the BBS, we'll run through the BBS and show you how some of the major sections operate. The purpose of this "tour" is to help you get a feel for the way parts of the BBS operate. Don't expect to learn everything there is to know just from this section. This is just a quick run-through of the BBS. Details on all of the commands in the BBS are given in later chapters. At the "Awaiting Call" screen press RETURN to go into "local" mode. (The BBS will take most modems off-hook automatically at this point to prevent interference from incoming calls.) The screen will go black and after a few seconds, the BBS "title" will appear just as if you were calling by modem: DTJ-BBS Revision 950307 @ Console Copr. 1995 by Andrew Bernhardt Sunday May 21, 1995 on 8:34PM Welcome to: Second Home BBS ----------------------------------- You must logon to use this system. If you don't have a logon code, press RETURN by itself at the prompt. [ The Welcome Mat 0 ] [ General Info ] [ 0 messages ] COMMAND (Press RETURN for menu) : If you don't see this screen, you didn't set the date and time. Wait about 10 seconds and the Awaiting Call screen should reappear where you can set the date and time. See the previous chapter if you don't know how to do this. After the welcome file is shown, you come to the COMMAND prompt. This is the equivalent of the main menu on other systems. The first line contains the name of the room (message base) you are in ("The Welcome Mat") and the number of new messages you have in that room ("0"). The second line shows the SIG that the DTJ-BBS Rev. 940521 Documentation Page 18 CHAPTER 4 - Online Tour 4 room belongs to ("General Info") and the total number of messages that are in the room ("0"). These two lines are always displayed unless you are not in a room (a rare occurance). The third line and the ":" just tells you that you are at the COMMAND prompt and that you may press the RETURN key to get a menu. If you press RETURN, you'll see the main menu: [ The Welcome Mat 0 ] [ General Info ] [ 0 messages ] COMMAND (Press RETURN for menu) : Enter: [C]hat [R]ead [E]ditor [S]ave [G]oto Room [T]erminate (BYE) [H]elp [+] Next Room [L]ogon [-] Previous Room [N]ext-New [.] Sysop Press RETURN after selection. [ The Welcome Mat 0 ] [ General Info ] [ 0 messages ] COMMAND (Press RETURN for menu) : Unlike most BBS programs, this menu is never displayed automatically. It is only displayed when you need it by pressing the RETURN key (or on some computers, the ENTER key). This allows users to move quickly through the system, without having to wait for menus to be displayed. Each menu option has a letter shown in brackets. You select the menu option you want by pressing the letter that is within the brackets. The command will be spelled out for you when you press the key. Press the "+" key now. You should see the words "Next Room" appear. In order for the BBS to do what the command says, you must press the RETURN key. The reason for this is that it gives you a chance to undo the command in case you pressed the wrong key. To erase the command, press the DEL key (BACKSPACE on some other computers). You should see the words "Next Room" disappear leaving only a ":" on the line. Once you've pressed DEL, you can select another command just as if you never pressed "+". At all input prompts, the BBS will wait for 3 minutes for the DTJ-BBS Rev. 940521 Documentation Page 19 CHAPTER 4 - Online Tour 4 user to type something in. If the 3 minute time limit is exceeded, the BBS will log the user off. This timeout may be adjusted with the "dtj.mod" program on the BBS program disk. The first thing a user should do is logon. If you haven't customized your BBS yet, when a user calls, the BBS will automatically ask for the user's logon code. (This is known as a "forced logon" because the user must logon to get into the BBS.) However, in some custom configurations, logging on can be made optional. When you call from the local mode as you are now, logging on is also optional. This is because the BBS expects you to be the sysop since you're calling from the system's keyboard. You automatically get full access, so there is no need to logon. However, there's a couple of advantages to logging on in the local mode (mainly you must logon to read your email and also to have the BBS know which messages you've already read) so we'll do it anyway. Press "L". You should see the following: :Logon (ID Code or RETURN): Type in "1/" and the password you choose when you configured your BBS. Then press the RETURN key. The BBS will look up account number 1 and if the password matches, you will be logged onto the system. The logon sequence looks something like this: :Logon (ID Code or RETURN): 1/PASSWORD John Doe logged on Your Status : Sysop [E] [V]ideo Width : 80 [E] [H] Height : 0 [E] [P]assword : PASSWORD [E] [X]-protocol : XMODEM [E] [@] ANSI : Off. [S] [E]mail Acct. : [-] 1. Date & Time : 950521 at 8:41PM Date Last Called : 000000 Time Online Today : 0 out of 255 min. Previous Caller : First Caller Logged On Calls : 0 of 0 Messages Posted : 0 of 0 New Messages : 0 Available Memory : 2201 Downloads/Uploads : 0/ 0 DTJ-BBS Rev. 940521 Documentation Page 20 CHAPTER 4 - Online Tour 4 The sysop is out. 255 minutes left. [ The Welcome Mat 0 ] [ General Info ] [ 0 messages ] COMMAND (Press RETURN for menu) : If you have mail waiting, you will also see the message: You have mail. Press [R] [E] to read. Notice the window at the top of your screen. You should see the following: 001 S JOHN DOE 08:42P 00:02A 0=CHAT TWIT LEVEL=000 The window shows information about the current user. It is always located at the top of the screen when the BBS is online. The three digit number is the user's account number, the letter after that is the user's STATUS code. After the status code comes the user's name, the current time, and the amount of time since the user called. The second line shows the status of the CHT switch (0 means it is off and "1" means it is on). When CHT is on, it means you are available for CHAT if the user wants to talk to you. If it is off, the system will tell the user you are not available if the user tries to chat with you. The last item in the window is the "twit" level of the user. The DTJ-BBS has some self-defense mechanisms which are triggered when this value reaches certain levels. The twit detector can be "fine tuned" using option "B" of the support program. Now that you are logged on, let's post a message in "The Welcome Mat" room. First you must write the message. To do that, we'll use the EDITOR command. Press "E" and then RETURN. You'll see this: :Editor Enter a blank line to end. ------ You are now in the editor. Type your message just as if you were typing it on a typewriter. Use the DEL key to backspace if you make a mistake. Press the RETURN key only at the end of DTJ-BBS Rev. 940521 Documentation Page 21 CHAPTER 4 - Online Tour 4 paragraphs; don't press it at the end of each line. The DTJ-BBS will not split up words once the message is saved. Once you are finished writing your message, press RETURN twice. You will come to the EDIT COMMAND prompt: EDIT COMMAND (Press RETURN for menu) : To see your message before you save it (to check spelling, etc), press "L" and RETURN. This will LIST your message to the screen then return you to the EDIT COMMAND prompt. You can [P]ause the listing if it goes by too fast for you. (Note that when the BBS is "paused", the screen color will turn to light grey. Pressing a key other than "P" will start the list moving again. Pause automatically stops after 3 minutes if no key is pressed.) If you find a mistake in your message, you can correct it by using the EDIT command. Press "E" and return. Type in the mistake, press RETURN, then type in the correction and press RETURN. Once you are satisfied that your message is ready to save, press "S" for SAVE and then "M" for MESSAGE. Then press RETURN. The message will be saved to the room you are in, then you will be brought back to the main COMMAND prompt: EDIT COMMAND (Press RETURN for menu) :Save Message: Saving... [ The Welcome Mat 0 ] [ General Info ] [ 1 messages ] COMMAND (Press RETURN for menu) : At this point, you will notice that there is a message in the room. To read the message, press "R", "I", and RETURN. You will see the following: :Read Individual # [A]bort / [P]ause Message 1 From: John Doe (1) on 950521 at 8:50PM Your message blah.. blah.. blah... blah.. blah... blah... DTJ-BBS Rev. 940521 Documentation Page 22 CHAPTER 4 - Online Tour 4 [ The Welcome Mat 0 ] [ General Info ] [ 1 messages ] COMMAND (Press RETURN for menu) : The next several chapters tell you how to do just about anything you would want to do on your BBS. So, for now, we'll move onto a different subject, the CHAT mode. If you want to talk to a user on your system, you can do it directly by entering the CHAT mode. Press SHIFT-F2 now. This takes the user out of the main part of the BBS and into a mode where you can type to the user and the user can type to you. There is no limit to the amount of time you can spend while in CHAT mode; chat mode time is not counted against the user's online time. While you are in the CHAT mode, you can edit the user's account by pressing the F7 key. Do this now. You should see the account editor: A..Account: 1 B...Status: S C...Access: SSSSSSSSSSSSSSS D.....Name: John Doe E.Password: PASSWORD F....Video: 39 G....Limit: 255 H.Email to: 1 I.Protocol: XMODEM Calls: 1 Msgs: 1 Date: 000000 Bad: 0 Dloads: 0 Uloads: 0 [S]ave, [L]ist, RETURN or letter : You can access the account editor from CHAT mode to make it easier to validate a user's account online. The chapter on User Access describes what all of this information stands for and how to change it. So for now, we'll just exit the account editor by pressing RETURN. You'll find yourself back in the CHAT mode. To exit CHAT mode, press SHIFT-F2 (the same key used to enter CHAT mode). You'll find yourself back at the COMMAND prompt. To exit the BBS, press "T" and RETURN. This selects the TERMINATE command. You will be asked if you want to leave a DTJ-BBS Rev. 940521 Documentation Page 23 CHAPTER 4 - Online Tour 4 message for the sysop. Since you are the sysop, there really isn't a need to leave a message so answer the question with an "N" for NO. You are then logged off of the system. After a short while, the BBS returns to the Awaiting Call screen. DTJ-BBS Rev. 940521 Documentation Page 24 CHAPTER 5 - Message Base Organization 5 CHAPTER 5 - Message Base Organization This section of the documentation describes how the message base system is organized, how to read messages, how to save messages, how to create rooms, and how to maintain the message base. The message base structure of the DTJ-BBS is pretty unique. It has some similarities to the way the Citadel BBS message bases are organized. Each message base is called a "room". Rooms can be created on-line. A large number of rooms (up to 50) can be maintained on the system at one time. This makes it easy to separate different topics of discussion in each room. When a certain type of room is needed, it can easily be created without having to take the BBS down. These are features that are common to both the Citadel and DTJ programs. Even many of the commands are the similar. However, there are differences in the way the programs operate. Most bulletin board programs have a message base operation that is commonly called "circular". What this means is each message base is configured to hold a specific number of messages. Once this number is reached, each additional message saved will cause the oldest message in the base to be erased. This prevents the disk from getting full. The DTJ-BBS program has a circular message base structure but instead of placing a limit on the number of messages in each room, it places a limit on the total number of messages in all rooms. When a message is saved, the oldest message in the entire BBS is erased, no matter what room it is in. Obviously, if certain rooms get used more, they will have more messages in them. Unused rooms will gradually come to have less and less messages until there are no messages in them. When that occurs, the BBS usually deletes the empty rooms automatically. Since users can create rooms online, the net effect is that the BBS contains only the more successful rooms. This automatic room deletion feature can be disabled for rooms that you want to keep by "locking" the room with the [.] SYSOP [R]OOM CONTROL command. Each room belongs to a SIG. SIG stands for "Special Interest Group". The DTJ-BBS uses SIGs as a means of dividing the rooms up into different generalized subject areas. For example, a SIG for computers might have different rooms for each computer type. Another SIG for literature might have different rooms for DTJ-BBS Rev. 940521 Documentation Page 25 CHAPTER 5 - Message Base Organization 5 each type of literature (i.e. science fiction, romance, etc). You can think of SIGs as different mini-BBSs within your BBS. Each SIG has it's own set of message bases (rooms) and it's own file transfer area. SIGs also tell the BBS which users have access to which rooms. Each user has access to certain SIGs. If a user has access to a computer SIG, then the user has access to all of the rooms and downloads within that SIG. If a user doesn't have access to a certain SIG, then the user doesn't have access to the rooms and downloads that are in that SIG. In fact, the user won't even know that that particular SIG and it's rooms exist. The "bases" file that was created when you configured your BBS is located on your first data disk. It contains essential information about your message bases. If it is ever lost or corrupted, the BBS maintains a backup copy on the drive A disk called "bases.old". If the backup copy is also bad, the "support" program can rebuild the most important parts of the "bases" file for you. See the chapter describing the "support" program on how to reconstruct the "bases" file. The BBS will not boot without the "bases" file on your drive A data disk! The "How-To" section follows for the message base commands. When typing a command, type only the letters in brackets. The command name will be spelled out for you when you press the key. Follow each command with a RETURN. 5.1 SIGS This section describes the commands relating to SIGs in the BBS. DTJ-BBS Rev. 940521 Documentation Page 26 CHAPTER 5 - Message Base Organization 5.1.1 5.1.1 Listing SIGs (SIGOP) To get a list of all SIGS, use this command: [E]DITOR [S]IGNAME Each SIG will have it's SIG letter displayed next to it. The SIG letter is used to reference the different SIGs when you are renaming them. SIGs without a name ("deleted" SIGs) will not be displayed. 5.1.2 Entering A Different SIG To go to a specific SIG, use this command: [G]OTO There must be at least one room assigned to the SIG you want to go to. 5.1.3 Assigning A Room To A SIG (SYSOP) To assign a room to a different SIG, use this command: [.] SYSOP [R]OOM CONTROL This has the effect of changing the privacy level of the room. DTJ-BBS Rev. 940521 Documentation Page 27 CHAPTER 5 - Message Base Organization 5.1.4 5.1.4 Creating Or Changing The Name Of A SIG (SIGOP) To name or rename a SIG, first get a list of the SIGs so that you can see which one you want to rename, then type this command: [E]DITOR [S]IGNAME The letter is the letter of the SIG you want to change. To change the name of the first SIG, you would use the letter "a". To change the name of the second SIG, "b" would be used. You may use letters "a" through "o". SIGops can change only the SIGnames that they have SIGop access to. 5.1.5 Deleting A SIG (SIGOP) SIGs cannot be deleted. However, you can blank out the name of a SIG which will prevent that SIG (and any rooms associated with that SIG) from being displayed. (Rooms will then be considered "hidden".) [E]DITOR [S]IGNAME This command is the same used to rename a SIG. However the slash and name is left out. SIGops can delete only SIGs that they have SIGop access to. 5.2 Rooms This section describes the commands relating to message bases (or "rooms"). DTJ-BBS Rev. 940521 Documentation Page 28 CHAPTER 5 - Message Base Organization 5.2.1 5.2.1 Getting A List Of Rooms The DTJ-BBS can maintain up to 50 rooms. Unlike most bulletin board systems, rooms are referenced by NAME, not by number. Use the following command to see what rooms are available: [G]OTO All rooms that you have access to will be displayed along with the number of new messages in each room. They are grouped by the different SIGs that they belong to. You many [P]ause or [A]bort the listing. Rooms belonging to a "deleted" SIG will not appear in the room list but they may be entered with the [G]oto command if the full roomname is known. 5.2.2 Entering A Different Room When you go on-line, you are automatically placed into the first room that you have access to. To enter a different room, you may use any of the following commands: [G]OTO Use this command when you want to go to a specific room. You don't have to type in the complete roomname. Only the first few letters is usually sufficient. ("Hidden" rooms are the exception; you must type in the full name of a hidden room to enter a hidden room.) [+] NEXT ROOM This command moves you to the next room in the BBS. [-] PREVIOUS ROOM This command moves you to the room just before the one you are in. These two commands skip past "hidden" rooms. DTJ-BBS Rev. 940521 Documentation Page 29 CHAPTER 5 - Message Base Organization 5.2.3 5.2.3 Creating New Rooms To create a new room online, use this command: [G]OTO The BBS will tell you the room is not found and will ask you if you want to create the room. Answer [Y]ES. If the BBS doesn't ask you if you want to create the room, then the BBS has reached it's 50 room limit, or the CRE switch is off, or you don't have "create" access, or the room already exists in a SIG you don't have access to. Once the room is created, you must either save a message to the room or lock the room to prevent the room from disappearing. Unlocked rooms with no messages in them will be deleted by the BBS. 5.2.4 Changing The Name Of A Room (SIGOP) To change the name of a room, use this command while you are in the room: [E]DITOR [R]OOMNAME You should be careful not to give the room a name that already exists. DTJ-BBS Rev. 940521 Documentation Page 30 CHAPTER 5 - Message Base Organization 5.2.5 5.2.5 Getting The Room Status (SYSOP) To see what the status of the current room is, enter this command: [.] SYSOP [R]OOM CONTROL You will see something similar to this: Status: R/W LOCKED Logoff Messages The first group of letter after the word "Status" represents the read/write status of the room. If the room is an anonymous room, then "Anon." follows. After that appears the lock status of the room, and finally, if the room is being used to save logoff messages, then "Logoff Messages" will appear. 5.2.6 Making A Room Read-Only (SYSOP) To change the status of a room so that nobody can write messages in it, use this command: [.] SYSOP [R]OOM CONTROL [R] 5.2.7 Making A Room Read/Write (SYSOP) To change the status of a room so that users can write messages in it, use this command: [.] SYSOP [R]OOM CONTROL [W] This is the default status of the room when it is created. 5.2.8 Locking Rooms (SYSOP) To lock a room so that it won't disappear if all of the messages in it are gone: [.] SYSOP [.] ROOM CONTROL [L] DTJ-BBS Rev. 940521 Documentation Page 31 CHAPTER 5 - Message Base Organization 5.2.9 5.2.9 Unlocking Rooms (SYSOP) To unlock a room, use this command: [.] SYSOP [R]OOM CONTROL [U] This is the default status of a newly created room. 5.2.10 Making A Room Anonymous (SYSOP) To make a room an anonymous-post room, use this command: [.] SYSOP [R]OOM CONTROL [A] User's names will not appear in the messages posted in anonymous rooms. Enter this command again to turn the anonymous status off for a room. 5.2.11 Forgetting A Room To make the BBS automatically skip rooms that you don't want to enter, use this command in the room you want to forget: [N]EXT-NEW [F]ORGET Each user can forget any room(s) he likes and the rooms will remain forgotten through future sessions. The BBS will not track new messages in forgotten rooms. DTJ-BBS Rev. 940521 Documentation Page 32 CHAPTER 5 - Message Base Organization 5.2.12 5.2.12 Remembering Rooms To have the BBS remember a forgotten room, enter the forgotten room and read any message in that room: [G]OTO [R]EAD [I]NDIVIDUAL 5.2.13 Deleting A Room (SYSOP) Normally, the BBS will automatically get rid of unused rooms. However, if you want to kill a room manually, use this command: [.] SYSOP [R]OOM CONTROL [K] All messages in the room will be deleted and the room will become unlocked and deleted. You should not kill the logoff message room without first unlocking the room manually. 5.3 Messages This section describes the commands that have to do with messages in the BBS. DTJ-BBS Rev. 940521 Documentation Page 33 CHAPTER 5 - Message Base Organization 5.3.1 5.3.1 Reading Messages You have several different ways of reading messages: [R]EAD [F]ORWARD Reads messages in chronological order starting with the message number you specify. [R]EAD [I]NDIVIDUAL Reads any single message. [R]EAD [R]EVERSE Reads messages in reverse chronological order. [R]EAD [N]EW MESSAGES This command reads any new messages you may have in the current room. If you don't have any, the BBS will tell you that you there are "No new messages". [N]EXT-NEW This is the easiest way to read messages in the DTJ-BBS. It will read your new messages in the current room, or if there are no new messages, it will go to the next room that has new messages and read those automatically. Message numbers are optional with the first three commands. If left out, [R]ead [F]orward will start at the first message, [R]ead [R]everse will start at the last message, and [R]ead [I]ndividual will read the last message in the room. While the BBS is displaying a message (or any other text file), if the CEN switch is on, the profanity checker will blank out each word that matches a word in the profanity checker's vocabulary. The profanity checker is fast and most users will not notice any slowdown in the BBS when the profanity checker is active versus when it is inactive. See Chapter 13 to see how to edit the profanity checker's vocabulary. DTJ-BBS Rev. 940521 Documentation Page 34 CHAPTER 5 - Message Base Organization 5.3.2 5.3.2 Setting The Number Of New Messages You Have To set the total number of new messages you want to read in the entire system, use this command: [E]DITOR [N]EW MESSAGES This command is useful if you haven't called a DTJ-BBS system in a while and all your messages are new. Just use this command to set the number of new messages you want, and all of the other messages will be considered "old". The number you enter may be different than the number of new messages you will have because some of the new messages may be in rooms you don't have access to. 5.3.3 Saving Messages To save a message to a room, first you must write the message in the editor using the editor command: [E]DITOR Type your message and when you're finished, press RETURN twice to tell the BBS you are finished writing. Then, at the EDIT COMMAND prompt, type: [S]AVE [M]ESSAGE The message will save to disk and the oldest message in the BBS will automatically be deleted if necessary. Note that this command also works at the main COMMAND prompt. DTJ-BBS Rev. 940521 Documentation Page 35 CHAPTER 5 - Message Base Organization 5.3.4 5.3.4 Saving Messages To More Than One Room The procedure to save a message to more than one room is similar to saving a message to a single room. First, write your message using the editor command: [E]DITOR Type your message in the usual manner. Then when done, use the "Keep" option of the message saving command to save the message the first time: [S]AVE [K]EEP [M]ESSAGE The "Keep" option prevents the edit buffer from being erased after the save is complete. This allows you to enter other rooms and save the message again as many times as you like. On your last save, use the normal message save command so that the buffer will be erased: [S]AVE [M]ESSAGE 5.3.5 Saved Messages As Old or New When a user saves a message, the BBS makes that message "old" so that the [R]ead [N]ew or [N]ext-New command will skip that newly saved message. To make saved messages considered as "new", enter this command: [E]DITOR [N]EW MESSAGES [Y] To reverse this, enter this command: [E]DITOR [N]EW MESSAGES [N] DTJ-BBS Rev. 940521 Documentation Page 36 CHAPTER 5 - Message Base Organization 5.3.6 5.3.6 Unsaving The Last Message You Saved To move the last message you saved from the disk back into the editor buffer, use this command: [E]DITOR [M]ESSAGE The message will be taken out of the room it was saved in and put back into the editor buffer. This will only work for the last message saved and only if you haven't logged off or relogged on. This command is useful if you accidentally saved mail as a message. You can also use this command to make corrections to a saved message. 5.3.7 Appending To The Last Message You Saved If you wish to add more information to the end of the last message that you saved, go back into the editor and write the additional information, then append it to your message with this command: [S]AVE [A]PPEND This command will only work if you saved a message during your current session and your account status is "V" or "S". To disable this command, use the support program to set the size of the editor buffer to less than 16 blocks. DTJ-BBS Rev. 940521 Documentation Page 37 CHAPTER 5 - Message Base Organization 5.3.8 5.3.8 Re-editting Messages (SYSOP) To change the content of an existing message, first load the message into the edit buffer: [E]DITOR [M]ESSAGE After the message has been loaded, you will be placed in the editor at the EDIT COMMAND prompt. Use the editor commands to change the message. Then, when you want to save the message back, use the message saving command: [S]AVE [M]ESSAGE Any title you enter will be ignored. The old title will be used. The re-saved message will appear in place of the old message. If you decide not to resave the message, erase the edit buffer with the [D]ELETE command. If you do not erase the edit buffer, then the next message save will overwrite the editted message. 5.3.9 Moving Messages To Other Rooms (SIGOP) To move a message from one room to another, use this command: [.] SYSOP [M]OVE The message number must be separated from the roomname with a slash. The account number of the user who moves, edits, deletes, or archives a message will be inserted into the message filename. DTJ-BBS Rev. 940521 Documentation Page 38 CHAPTER 5 - Message Base Organization 5.3.10 5.3.10 Deleting Messages (SIGOP) To delete an existing message, use this command: [.] SYSOP [K]ILL The filename of the message will change to indicate it was killed. The messages in the room will be renumbered so that it will appear that the message never existed. To delete all of the messages in a room, enter "ALL" for the message number. This will also kill the room if the room is not locked. 5.3.11 Appending A Message To A Textfile (SIGOP) To add a message to the end of a textfile (SIGfile), the textfile must be readable from the same room that the message is in. (If the message is in a room belonging to a different SIG, move the message to a different room.) [.] SYSOP [A]DD This is a useful command for archiving messages. Messages that are appended to textfiles in this way have the textfile name inserted into the message header so you'll know which messages have been appended without having to read the textfile. Also, only as much of the message that can fit in the editor buffer can be archived. So, large messages that were created with the [S]AVE [A]PPEND command may be truncated. The BBS will create the textfile if it does not exist. If it does exist, then only the first few letters of the textfile name is usually necessary. DTJ-BBS Rev. 940521 Documentation Page 39 CHAPTER 5 - Message Base Organization 5.3.12 5.3.12 Downloading A Message A single message may be downloaded via a protocol with the following command: [R]EAD [X]FER MSG# For example, to download message number 12 in the current room you would type: [R]EAD [X]FER MSG#12 Note that messages are stored as CBM ASCII files. DTJ-BBS Rev. 940521 Documentation Page 40 CHAPTER 6 - Electronic Mail 6 CHAPTER 6 - Electronic Mail This section of the documentation describes how the private Email section works. Any validated user can send Email to any other validated user. Users may keep mail that they have already read in the system for later re-reading. The BBS will not delete mail unless the user wants the mail deleted, or the user's account is deleted, or there is not enough room for new email in which case the oldest piece of email is deleted (this is a "circular" email system). 6.1 Reading Your Email If you have email, you will be told when you logon. Use this command to read (or re-read) your email: [R]EAD [E]MAIL Each piece of mail will be shown, one at a time. You may reply to, re-read or delete each piece of mail individually. You may also load mail into the editor so you can forward it. 6.2 Reading Another User's Email (SYSOP) To read any user's email, use this variation of the email reading command: [R]EAD [E]MAIL This command will allow you to read any user's email just as if you are the recipient. The only difference is that if the mail is certified, a certification notice will not be mailed to the sender. You may reread, reply to, and delete mail. DTJ-BBS Rev. 940521 Documentation Page 41 CHAPTER 6 - Electronic Mail 6.3 6.3 Sending Email To send Email to another user, you must have write access to at least one SIG. First you must write your message in the editor using the editor command: [E]DITOR Once you have finished writing the message, press RETURN twice to get to the EDIT COMMAND prompt and type one of the following: [S]AVE [E]MAIL or [S]AVE [E]MAIL If you use the user's account number, the BBS will be able to find the user faster. But it is usually easier to send email by name. And if you use the name, only the first few letters of the name are necessary. If a user wants to send a message to the sysop without having to logoff, send the mail to "SYSOP". 6.4 Sending Bulk Email The procedure for sending Email to more than one user is the same as for sending email to one user, except that the save-keep option is used: [S]AVE [K]EEP [E]MAIL or [S]AVE [K]EEP [E]MAIL The last piece of Email saved should be saved normally (without the keep option) to erase the buffer after the save. Note that each piece of mail sent takes up an entry in the disk directory. If you want to send mail to all users, you should use the message bases, not the mail system. Another way to send bulk email is much easier but you can only use it to send email by account number. You may type in more DTJ-BBS Rev. 940521 Documentation Page 42 CHAPTER 6 - Electronic Mail 6.4 than one account number in the same command if you separate the numbers with slashes or commas: [S]AVE [E]MAIL 6.5 Sending Certified Email If you want to be notified when a user has received your mail, send it certified using the following command: [S]AVE [C]ERTIFIED or [S]AVE [C]ERTIFIED This command works in the same way as [S]ave [E]mail (i.e. you can send bulk certified email if you wish.) Each certification notice mailed back to the sender takes up an entry in the email queue. You may want to increase the number of email entries your system can handle. 6.6 Sending Urgent Email (SYSOP) Urgent email is displayed automatically when the recipient logs on. Once urgent email is displayed, it changes automatically into regular email so that the user can re-read it. [S]AVE [U]RGENT or [S]AVE [U]RGENT This command works in the same way as [S]ave [E]mail (i.e. you can send bulk urgent email if you wish). Urgent email is a special form of certified email. DTJ-BBS Rev. 940521 Documentation Page 43 CHAPTER 6 - Electronic Mail 6.7 6.7 Forwarding Email To Another Account If you have more than one account on the BBS, you may want to have all of your email forwarded to the same account. This way you don't have to logon under each account to check your mail. [S]AVE [E]MAIL [-] The negative account number is the account number you want your email sent to. When someone sends email to your account, it will be sent to the forwarded account instead. To send email back to your normal account again, just forward it to your own negative account number. 6.8 Closing Your Mailbox If you don't want to receive any mail, type this command: [S]AVE [E]MAIL "CLOSE" When a user attempts to send mail to you, they will get the message "Mailbox closed". 6.9 Opening Your Mailbox To reopen your mailbox, use the procedure for forwarding mail to your account, or use the command: [S]AVE [E]MAIL "OPEN" This command will open your mailbox and set all mail to forward to your normal account. DTJ-BBS Rev. 940521 Documentation Page 44 CHAPTER 6 - Electronic Mail 6.10 6.10 Getting A List Of Users There are a couple of ways to get a list of users: [R]EAD [U]SERLIST This command displays all validated users of the BBS. [R]EAD [U]SERLIST This command displays all validated users whose names begin with . [R]EAD [U]SERLIST "ACCESS" This command displays a list of all validated users who have access to the current SIG. [S]AVE [E]MAIL This does the same thing as reading the full userlist. Note that whenever you search the account file for a name, such as in the [R]ead [U]serlist, [S]ave [E]mail and [E]ditor [A]ccount commands, you may use the question mark as a wildcard character in the name. For example, if you want to list all users that have an "e" in the second position of their names, you would enter the command: [R]EAD [U]SERLIST ?e The "?" in the first position tells the computer you don't care what the first character in the name is. DTJ-BBS Rev. 940521 Documentation Page 45 CHAPTER 7 - The Editor 7 CHAPTER 7 - The Editor This section describes how to use the editor. It also shows you how to insert control codes in your files. The DTJ-BBS Editor is based on the message editor found in the Citadel BBS. It is a free-form message editor that allows you to type in lines of any length which when read back, are displayed using word-wrapping in the reader's video width. The edit buffer (where messages are stored in memory) is 4096 characters long. This is about 3 to 4 times more memory than most BBS systems give you. There are no line numbers in the editor; editting (correcting mistakes) is done by a search and replace technique. The editor is written in machine language, so the operation is fast, even with a large message. Listing what was written in the edit buffer is just like reading the message after it is saved: word-wrapping is in effect and the listing can be [P]aused or [A]borted. You can also exit the editor and use another part of the BBS without erasing what is in the buffer. If you are replying to a previous message and you need to read the message again, you can exit the editor, read the message, come back to the editor and continue where you left off. Any sequential file may be loaded into the edit buffer (as long as it fits), and the buffer may be saved as any sequential file. This makes it easy to maintain files like system announcements. To access the editor, use the [E]DITOR command from the COMMAND prompt. If the edit buffer is empty (which it is when you first logon), you will automatically be put in the message writing mode. Otherwise you will come to the EDIT COMMAND prompt. The Editor commands function in the same way that the regular BBS commands do. You can get a menu by pressing RETURN by itself. DTJ-BBS Rev. 940521 Documentation Page 46 CHAPTER 7 - The Editor 7.1 7.1 Writing Your Message From the COMMAND prompt, use the [E]DITOR command to go to the message writing mode. You automatically enter this mode when you enter the editor if the edit buffer is empty. If you come to the EDIT COMMAND prompt instead, the edit buffer is not empty. Use the [D]ELETE ALL command to erase the buffer and start over. When you write messages, use the DEL key to backspace; don't use the cursor keys. The cursor keys should not be used at all with the DTJ-BBS. You can DEL back to the beginning of the current paragraph. This is the reason word-wrapping is not in effect while you are writing your message. The RETURN key is used to end paragraphs. Don't press it at the end of each line. There is no limit to the length of a line. To exit the message writing mode, press RETURN twice. This will send you to the EDIT COMMAND prompt. 7.2 Listing What You've Written To see what you've written, at the EDIT COMMAND prompt, type: [L]IST and press RETURN. You will see the edit buffer listed the way it will look once it is saved. You may use [P]ause or [A]bort if you wish. 7.3 Listing Part Of The Buffer To list the buffer from a certain word or phrase, type: [L]IST and press RETURN. This is useful if you are writing a long message and you only want to see the last part of the message. DTJ-BBS Rev. 940521 Documentation Page 47 CHAPTER 7 - The Editor 7.4 7.4 Erasing The Buffer To erase what you have written without saving it, at the EDIT COMMAND prompt type: [D]ELETE ALL and press RETURN. Then press "Y" to erase the buffer or "N" to abort. 7.5 Correcting Mistakes If you typed in a wrong word or phrase, you may correct it by typing: [E]DIT and pressing RETURN. The BBS will ask you for the string to search. Enter the incorrect word or phrase. Then the BBS will ask for the string to replace. Enter the correct word or phrase. 7.6 Exiting The Editor You can get out of the editor in one of two ways. You can save the buffer using the [S]AVE command, or you can get back to the main COMMAND prompt without saving by using the E[X]IT command. If you use the E[X]IT command, the buffer is NOT erased. 7.7 Getting Help There is a [H]elp command in the editor which explains how to write messages and what all the editor commands do. DTJ-BBS Rev. 940521 Documentation Page 48 CHAPTER 7 - The Editor 7.8 7.8 Inserting Control Codes In Your Text (SYSOP) If you have sysop status, you may insert any control code in your message except for a NULL (ASCII 0). These codes may be typed in anywhere in the editor. To type in a control code, press CTRL-P, then the 2 character hexadecimal equivalent of the code. These codes may be embedded anywhere in the text and even in the search or replacement strings of the [E]dit function. After you type in the code, you will see a "&" sign. Note that due to CBM/ASCII translation, some codes may not output to the modem. Listed on the next page are special codes you may want to use. Remember to press CTRL-P before the 2 character code. Intelligent use of some of these codes can give your BBS a more professional appearence. For example, in some textfiles, you may want to pause output after each screen full of text is displayed. You would do this by inserting the message: -Press any key to continue- followed by the code for pause at each place you want the text to pause at. You could also insert a screen clearing code immediately after the pauses so that when the user presses a key to continue, the screen is cleared before more of the file is displayed. Another handy use for typing in these codes, in conjunction with the [E]dit function, is that you can insert or delete paragraphs because you can insert or delete the RETURN code. See Appendix E for a list of special codes that the BBS recognizes. DTJ-BBS Rev. 940521 Documentation Page 49 CHAPTER 8 - SIGfile Organization 8 CHAPTER 8 - SIGfile Organization This section describes SIG file which include downloads, uploads, and textfiles. Downloads and textfiles are the same. They have the same type of filename. Uploads have slightly different filenames so that they can't be downloaded or read until you validate them. 8.1 Getting A List Of SIG Files To see what files are available for downloading or reading, use one of the following commands: [R]EAD [X]FER or [R]EAD [T]EXTFILE 8.2 Getting A List Of File Transfer Protocols To see what file transfer protocols are available, use the command: [E]DITOR [X]FER-PROTOCOL All available protocols will be displayed. (This command displays a file named "p-", which should be located on drive A.) DTJ-BBS Rev. 940521 Documentation Page 50 CHAPTER 8 - SIGfile Organization 8.3 8.3 Changing Your File Transfer Protocol The DTJ-BBS supports various file transfer protocols. These protocols are stored as protocol files on your drive A disk. (Protocol filenames begin with "p-".) Whenever a user starts a file transfer, the BBS loads a protocol file which contains the machine language required to run the file transfer. The DTJ-BBS defaults to XMODEM protocol. If a user wants to use a different protocol, he must use the following command to select that protocol before starting any file transfers: [E]DITOR [X]FER-PROTOCOL The entire protocol name must be typed in with this command. If the protocol is available, then the word "Done." will be displayed, otherwise "Unknown protocol" will be displayed. Once a different protocol has been selected, then the BBS will use that protocol for that user in future sessions. If a protocol file becomes unavailable later, when the user attempts to use that protocol, "Module not found" will be displayed. The protocol modules are loaded into the same area of memory as the edit buffer. Therefore, any text in the edit buffer will be lost whenever a file transfer takes place. DTJ-BBS Rev. 940521 Documentation Page 51 CHAPTER 8 - SIGfile Organization 8.4 8.4 Downloading A SIG File To download a file from the BBS, you must use a terminal program with a file transfer protocol that the DTJ-BBS supports. Once you know which file you want to download, use this command to tell the BBS which file to download: [R]EAD [X]FER (Your current protocol will be displayed in place of "[X]FER".) Once the BBS has found the file, you must set up your terminal program for downloading. The download process will abort if you press CTRL-X. It should also abort automatically in 90 seconds if the transfer isn't started in time. 8.5 Reading A SIG File To read a file, use this command: [R]EAD [T]EXTFILE If the file doesn't exist in the current SIG, the BBS will check for it in the first SIG. This applies to the [R]EAD [X]FER command also. Some special textfiles are: LOGBOOK - List of the day's callers. OLDLOG - List of yesterday's callers. POLICY - New user policy (displayed when a user requests an account.) WELCOME - Opening BBS message. BULLETIN - SIG Bulletin (displayed when the user first enters the SIG.) DTJ-BBS Rev. 940521 Documentation Page 52 CHAPTER 8 - SIGfile Organization 8.6 8.6 Uploading A SIG File To upload a file, you must have a terminal program with a protocol that the DTJ-BBS supports. Use this command to start the transfer: [S]AVE [X]FER (Your current protocol will be displayed in place of "[X]FER".) If the file is ASCII text, the filename should end with either ".ASC" or ".TXT". This tells the BBS that it is ASCII text (as opposed to CBM ASCII text) so that when it is read using the [R]EAD [T]EXTFILE command, the BBS will be able to display it properly. Files are normally uploaded as PRG files. However, if you need a file uploaded as a SEQ file, put a ".SEQ", ".DOC", or ".TXT" on the end of the filename. The filetype is unimportant to the BBS, but it may be important if you intend on using the file with a program other than the BBS. Just before a file is uploaded, the BBS checks the upload drive to see if there is enough room for a file. This check is always done regardless of the setting of the FUL switch. If the FUL switch is off, then the disk space is checked by reading an abbrievated disk directory. During the upload process, the BBS keeps track of the number of blocks uploaded and will abort the upload when less than 12 blocks are free. After the upload, a description of the file is placed in the logoff message file. 8.7 Saving A Text SIG File (Textfile) To create a textfile online, use the editor first to create the text: [E]DITOR When complete, press RETURN twice to get to the EDIT COMMAND prompt, then type: [S]AVE [T]EXTFILE The file will save to disk just as if it were uploaded. After the save is complete, a description of the file is asked for. This description is saved as a logoff message so that you DTJ-BBS Rev. 940521 Documentation Page 53 CHAPTER 8 - SIGfile Organization 8.7 will know that a textfile has been saved to the system. 8.8 Validating A New SIG File (SIGOP) Except for files uploaded by sysops or SIGops, once a SIG file has been uploaded or saved, it needs to be validated in order for the users to be able to download it or read it. To validate a SIG file, use this command: [.] SYSOP [V]ALIDATE where "filename" is the SIGfilename as it would appear in the SIGfile directory. This command will change the name of the upload to a valid SIGfile name and, if necessary, copy it to the applicable drive. You must be in the SIG the file belongs to to validate it. If you leave the filename out of the command, you will get a list of SIG files in the current SIG that need to be validated. (In order for this command to work, the uploaded file must be located on the upload drive and the filename must consist of a lowercase SIG letter, a "^" (up-arrow), and the SIG filename in uppercase.) If the validated file needs to be copied to the download drive, then the edit buffer will be erased. 8.9 Deleting A SIG File (SIGOP) Although the validate command is used primarily to validate new SIG files, it can also be used to delete SIG files. Enter the command just as if you are going to validate a new file: [.] SYSOP [V]ALIDATE At the "Replace?" prompt, answer [Y]es. The SIGfile will be deleted and the BBS will display "file not found" indicating there was no replacement file. DTJ-BBS Rev. 940521 Documentation Page 54 CHAPTER 8 - SIGfile Organization 8.10 8.10 Creating & Updating A SIG Bulletin (SIGOP) A SIG bulletin is a textfile (called "BULLETIN") that is automatically displayed when a user first enters a SIG. SIG bulletins are useful to explain a policy or announcement in a particular SIG. To create a SIG bulletin, first you must create a textfile called "BULLETIN" within the SIG. Then you must enter this command to tell the BBS to automatically display the SIG bulletin: [E]DITOR [S]IGNAME For example, the command for the 3rd SIG would be: [E]DITOR [S]IGNAME c/1 This command tells the BBS that there is a new SIG bulletin. If you don't enter this command, then the SIG bulletin won't be displayed automatically. If you want the SIG bulletin to be displayed automatically every time the user enters the SIG for the first time during each session, change the "1" to a "2": [E]DITOR [S]IGNAME 8.11 Removing A SIG Bulletin (SIGOP) To remove a SIG bulletin, erase the SIG bulletin textfile, and then enter this command to tell the BBS that the SIG bulletin is not available: [E]DITOR [S]IGNAME Note the "0" is used in place of the "1". DTJ-BBS Rev. 940521 Documentation Page 55 CHAPTER 8 - SIGfile Organization 8.12 8.12 Using Descriptive Directories (SYSOP) When a SIGfile listing is displayed, the BBS extracts the information from the disk directory. This information includes the name of the SIGfile and the size of the file in kilobytes. The number of free bytes on the drive is displayed at the end of the directory. If you wish to create your own directory file to be read in place of the automatic directory, write the file using the editor, and save it in the appropriate SIG: [S]AVE [T]EXTFILE "DIR" (This creates a file consisting of the SIG letter and a period. This is the filename of a textfile without the name that normally appears after the period.) Then, you must tell the BBS to read this file instead of the disk directory by setting the appropriate drive letter in the SIG/Drive configuration to UPPERCASE. You may also upload a description file: [S]AVE [X]FER "DIR" The disadvantage of using a directory file is that you must update the file whenever you add or delete a SIGfile in that SIG. Note that when a descriptive directory file is used, sysops and SIGops can still display an automatic directory by typing in the commands: [R]EAD [T]EXTFILE "DIR" or [R]EAD [X]FER "DIR" DTJ-BBS Rev. 940521 Documentation Page 56 CHAPTER 9 - The DOS Mode (SYSOP) 9 CHAPTER 9 - The DOS Mode (SYSOP) The DOS mode allows those with sysop access to send DOS commands to the disk drives in a manner similar to the Commodore DOS "WEDGE". The DOS mode allows you to send any DOS command except "NEW" (disk formatting command). You can also read the disk directories and count files. To enter the DOS mode, at the COMMAND prompt, type: [.] SYSOP [D]OS and press RETURN. The drive is a letter from "a" to "z". While you are in the DOS mode, you will see the status of the drive (usually "OK"). You will also see the letter of the drive you are accessing, and a ">". This is the DOS command prompt. To get out of the DOS mode, press RETURN by itself. You may also use the RUN/STOP or CTRL-C key. While in the DOS mode, you may enter any ASCII character using the CTRL-P method as described in Chapter 7. 9.1 Changing Drives To access a different drive in the DOS mode, just type the letter of the drive and press RETURN. DTJ-BBS Rev. 940521 Documentation Page 57 CHAPTER 9 - The DOS Mode (SYSOP) 9.2 9.2 Listing The Disk Directory To get a disk directory, use the "$" sign. You may use pattern matching to get a selected directory if you wish. Some examples of directory commands are listed below: To get a full directory, type: $ To only see the number of blocks free on the disk: $: To see all files that begin with "x": $:x* To get a list of all PRG files: $:*=p To get a list of all SEQ files: $:*=s To get a list of all SEQ files that begin with "ab": $:ab*=s To get a list of all files that begin with "ab" or "x": $:ab*,x* To get a list of files in which the 3rd and 4th letters are "qw": $:??qw* If you find a file with a "*" just before the file type (known as a "splat" file), you must validate the disk, or your BBS files could become corrupted. These files are caused by improperly closing the files after they are written. The only times this may occur are when the BBS crashes while it is writing to the disk, or when the disk becomes full. DTJ-BBS Rev. 940521 Documentation Page 58 CHAPTER 9 - The DOS Mode (SYSOP) 9.3 9.3 Counting Files To have the BBS count files, use a "?". You can use the "?" in the same way as the "$" to count certain types of files. Here are some more examples: To count all files on a disk: ? To count all files that begin with "m": ?:m* 9.4 Initializing A Drive Sometimes you way want to initialize a drive. This causes the disk drive to read in the BAM information on the disk into it's memory. If you ever get a "disk full" condition, and you know the disk has plenty of disk space left, try this command. To send the initialize command, type: i0 You must type the "0" after the "i" otherwise the BBS will think you want to change to drive "i". You should not initialize a 1581 drive while in a sub- directory because this causes the drive to switch back to the main directory without the BBS knowing. DTJ-BBS Rev. 940521 Documentation Page 59 CHAPTER 9 - The DOS Mode (SYSOP) 9.5 9.5 Erasing Files To erase a file, use this command: s0:filename You may use pattern matching if you wish. For example, to erase all files that begin with "p", type: s0:p* Be careful with this command. You could end up erasing the whole disk! To erase more than one file, separate the filenames with commas: s0:file1,file2,file3 After the erasing is complete, the number after the "ok" will show the number of files that were actually erased. 9.6 Renaming Files To change the name of a file, type this: r0:newname=oldname 9.7 Copying Files To copy a file onto the same drive, use this command: c0:newfile=oldfile If you want to copy a file to a different drive, you must exit the DOS mode and at the COMMAND prompt, use the [.] SYSOP [C]OPY command: [.] SYSOP [C]OPY where "source" is the drive letter that the file is on, "destination" is the drive letter you want to copy the file to, "filename" is the name of the file, and "filetype" is the type of file you want the copied file to be ("p" for PRG or DTJ-BBS Rev. 940521 Documentation Page 60 CHAPTER 9 - The DOS Mode (SYSOP) 9.7 "s" for SEQ.) For example, to copy a file called "dummy" from drive A to drive B, and make the new file a SEQuential file type: [.] SYSOP [C]OPY a/b/dummy/s Note that this command will not copy RELative files (like the account file "a-main"), but you can copy the data in a relative file to a sequential file by specifying an "s" for the filetype. Use of this command erases the edit buffer. This command may be slow, but it does allow you to copy a file between partitions of the same physical drive (i.e. from one side of a 1571 disk to the other). No stand-alone copy program that I know of will allow you to do this. 9.8 Combining Files To combine two or more files into one, type: c0:bigfile=file1,file2,file3 You must have enough room on the disk to contain both the new combined file, and the original files. The original files must exist on the same drive. 9.9 Validating The Disk When a disk is validated, the disk drive goes through all of the files on the disk so that the drive knows which parts of the disk are used and which parts aren't. It also erases "splat" files (improperly closed files). To send this command, type: v0 This may take several minutes for a full disk. The DTJ-BBS properly closes all files that it opens. So, this command does not need to be entered very often. Once a month is good enough. If a drive 8 disk is validated, the BBS will reallocate the C128 autoboot sector so that it won't be overwritten. You DTJ-BBS Rev. 940521 Documentation Page 61 CHAPTER 9 - The DOS Mode (SYSOP) 9.9 will see two disk status messages. The first is for the validation, the second is for the reallocation. DTJ-BBS Rev. 940521 Documentation Page 62 CHAPTER 10 - User Access 10 CHAPTER 10 - User Access This section describes the account files, how the user access system works, and how to edit accounts. Unless you are running a totally open system where first-time callers can post messages, send email, and use the file transfer section, each user must have an account in order to use the BBS. If a new user wants an account, the BBS can create one for the user, but the sysop must validate the account before the user gets full access to the BBS. Each user has an account that contains the following information: STATUS: Indicates what kind of account the user has. "A" - Available (unused account. nobody can logon to an account with this status.) "N" - New User (unvalidated account) "V" - Validated (a normal user) "M" - Monitor (a list of this user's actions will be printed on the system printer) "T" - Twit (CHAT will always appear inactive for this user) "S" - Sysop (this user has access to the sysop commands) Any other character is considered an "A". ACCESS: Indicates what kind of access the user gets to each SIG. The access code is 15 characters long, one character for each SIG. Each character can be: "N" - No access to this SIG. "R" - Read-only access to this SIG. "W" - Normal read/write access to this SIG. "C" - User can create rooms belonging to this SIG. "S" - User has access to SIGop commands in this SIG. NAME: Up to 20 characters. Upper and lowercase. PASSWORD: Up to 10 characters. Uppercase only! VIDEO: Indicates the user's video width (20-140 or 0). LIMIT: Indicates how many minutes a user is allowed on the BBS for the day. EMAIL TO: The account the user's email is forwarded to. CALLS: The number of calls the user has made. MSGS: The number of messages that the user has posted. DATE: The date that the user called last. BAD: How many non-standard logoff's the user has made. DLOADS: The number of files the user has downloaded. ULOADS: The number of files the user has uploaded. DTJ-BBS Rev. 940521 Documentation Page 63 CHAPTER 10 - User Access 10 PROTOCOL: The user's current file transfer protocol. The accounts also keep track of which messages were read in each room so that the [R]EAD [N]EW command will work properly, which SIG bulletins were read and if the user wants his messages saved as new or old. The first seven items listed and the user's protocol are editable from the BBS account editor. The status code determines what kind of account the user has. This code does NOT determine what kind of access the user has. It serves to group your users into different catagories. When the BBS sets up an account for a new user, the BBS looks for the first account with a status code of "A", which means the account is "available". It puts the new user's information in that account and changes the status to "N", which means the account is a "new" user's account. When you upgrade that user's account, you change the status to a "V" to tell the BBS that you have "validated" the account. Instead of a "V", you can use an "M" which also means you have validated the account, but the BBS will also keep a printed log (or "audit trail") of all commands that that user types. Users with a status code of "T" will always be told you are not available for CHAT if they try to chat with you. And a status code of "S" means that the user is a sysop or cosysop and allows the user to use the sysop commands. The access code determines which SIGs (and therefore rooms) the user has access to. The access code consists of 15 characters, each of which represent one of the 15 possible SIGs. Each position in the access code can be one of 5 letters. An "N" means that the user has no access to that particular SIG and the BBS will give no indication to the user that the SIG exists. An "R" means that the user can read messages posted in rooms belonging to that SIG but cannot write messages in that SIG. A "W" means the user has normal "read/write" access to the SIG. A "C" means that the user has "create" access and any rooms that the user creates will be assigned to this SIG. An "S" means the user is a SIGop (or "SIG manager"). A SIG manager has access to some of the sysop commands pertaining to message base management. In order for the user to be able to get to the COMMAND prompt, the user must have access (at least read-only) to one or more SIGs. If the user has no access and is not logged on, the BBS will force the user to logon. If the user has no access and is logged on, the BBS will disconnect the user. By using the support program, you can set what kind of access new and unlogged-on users get. If you set the unlogged-on user access to "NNNNNNNNNNNNNNN", the BBS will force the user to logon (otherwise logon is optional). If you set the new user access to "NNNNNNNNNNNNNNN", then new users will not be able to use DTJ-BBS Rev. 940521 Documentation Page 64 CHAPTER 10 - User Access 10 the BBS until you validate them. The default access codes are "NNNNNNNNNNNNNNN" for unlogged-on users and "RNNNNNNNNNNNNNN" for new users. The user's name can be from 2 to 20 characters using upper and/or lowercase letters. A name cannot begin with a number. The user's password can be up to 10 characters long. The password is forced to uppercase. The user's video width tells the BBS how wide the user's screen is so that it can perform word-wrapping correctly. The BBS automatically subtracts 1 from this value internally to prevent blank lines from appearing in the middle of paragraphs. The value displayed is always the original value entered. The user's time limit indicates in minutes how long a user is allowed on the BBS. This number may range from 0 (which immediately disconnects the user after logon) to 255 (which effectively means no limit). 10.1 Logging On The purpose of logging onto a BBS is so that the BBS knows who you are and what kind of access you are supposed to have. In the default configuration, the BBS will automatically ask for a user's logon code when they call. However, you can customize the BBS so that logon is optional. 10.1.1 Forced Logon In the default configuration, the BBS will ask for the user's logon code like this: Enter your logon code or press RETURN if you don't have one: The logon code consists of an account number and a password separated with a slash. When entering the logon code, the user will not see what he types in, however, the code will be shown on the local screen if the SEE switch is on. The account number and password may be entered separately. If only the account number is entered, the BBS will ask for the password. DTJ-BBS Rev. 940521 Documentation Page 65 CHAPTER 10 - User Access 10.1.1 If the code is incorrect, the user has 2 more tries at the code before the BBS hangs up (in the default configuration). When a logon is successful, the user is logged onto the system. The user's name is entered in a textfile called "LOGBOOK". This textfile also keeps track of the time that the user logged on. (At midnight, the information in the "LOGBOOK" textfile is transfered to another textfile called "OLDLOG" and then the "LOGBOOK" file is started over.) Then the user's "mailbox" is checked for email and if the user logged off during his previous session with data in the edit buffer, that information will be reloaded back into edit buffer. (This information was saved to a file on the email drive.) If the user is out of time for the day, the BBS will not allow the user to logon. If the user has sysop status, then the BBS will also check for logoff messages, and if available, the message "Logoff messages available" will be displayed. If the user does not have a logon code, then pressing RETURN without entering a logon code will have the BBS set up an account for the user. (The user may also type the word "NEW" or "GUEST" in.) However, if the System Control Block NEW switch is off, then the BBS will not set up an account for the user, making the system private. The BBS searches for duplicate accounts and will not allow two users to have the same name unless the SCN switch is off. 10.1.2 Optional Logon And Relogon For configurations where logging on is optional, or if you want to relogon, use this command at the COMMAND prompt: [L]OGON The logon code is in the same format as for a forced logon. Leaving the logon code out will have the BBS set up a new account. If a user does not logon, the user's name will be "Anonymous" and the BBS will only ask for the user's name if the user leaves a logoff message. DTJ-BBS Rev. 940521 Documentation Page 66 CHAPTER 10 - User Access 10.2 10.2 Validating A New User's Account (SYSOP) In order for a new user to get full access to your BBS, you must validate the user's account. This involves changing the user's STATUS from NEW to VALIDATED, upgrading the user's access, and increasing the user's time limit. To validate a user's account, use the Account Editor. There are two ways to get to the Account Editor: you can edit the current user's account while in CHAT mode, or you can use the Account Editor command to edit any account if you have sysop access. 10.2.1 Validating An Account While In CHAT Mode (SYSOP) If the user whose account you want to validate is currently logged on and in CHAT mode, press F7 and you will see the Account Editor screen: A..Account: 43 B...Status: N C...Access: RNNNNNNNNNNNNNN D.....Name: John Doe E.Password: QWERTY F....Video: 39 G....Limit: 15 H.Email to: 43 I.Protocol: XMODEM Calls: 0 Msgs: 0 Date: 000000 Bad: 0 Dloads: 0 Uloads: 0 [S]ave, [L]ist, RETURN or letter : The first nine lines (lettered A to I) show information that you can change. The first line shows the account number of the user. Normally, you will not change this number. However, you can change it in case you want to move the user to a different account number. To validate the user's account, change the status code to "V" by pressing "B", then "V" and RETURN. Then change the user's access by pressing "C" and entering the 15 character access code and RETURN. Then change the user's time limit by pressing "G" and entering DTJ-BBS Rev. 940521 Documentation Page 67 CHAPTER 10 - User Access 10.2.1 the time limit desired (in minutes) and press RETURN. Save the account by pressing "S". You will be returned to CHAT mode. The account information is saved in memory and will be saved to disk when the user logs off or relogs on. The password is only displayed on the local screen and only if the SEE switch is on. 10.2.2 Validating Any Account (SYSOP) To validate any user's account, use this command to access the Account Editor from the COMMAND prompt: [E]DIT [A]CCOUNT Once the account is found, follow the instructions given on the previous page for validating an account. When you save the account, the information will be written to the disk and you will be returned to the COMMAND prompt. If you want to edit more than one account, you may enter a series of account numbers separated by slashes or commas: [E]DIT [A]CCOUNT 10.3 Killing An Account (SYSOP) To kill an account, enter the account editor: [E]DIT [A]CCOUNT change the status code to "A", then save the account. There is no need to change any other information. When you save the account, any email waiting to be received by that user will automatically be deleted. When you kill an account, the statistical information for that user is reset to zero. If you want to reset this information for a user but you don't want to kill the user's account, just change the account status to "A", then change it back. Note that you can also change the status of a user's account while he is online by holding down the COMMODORE key and pressing A, N, V, S, T, or M. (This method does NOT work in CHAT mode.) DTJ-BBS Rev. 940521 Documentation Page 68 CHAPTER 10 - User Access 10.4 10.4 Searching For New Users (SYSOP) To get a list of new accounts, use the account editor command like this: [E]DIT [A]CCOUNT N The BBS will print a list of all accounts with a status code of "N". (You can also use this method to get a list of accounts with any other status code by substituting that status code for "N".) 10.5 Changing A Password A user can change his own password with this command: [E]DIT [P]ASSWORD This command is active only when the System Control Block PAS switch is on. If you don't want your users to be able to change their own passwords, turn the PAS switch off. 10.6 Moving An Account (SYSOP) To move an account from one number to another, use the account editor to view the old account: [E]DIT [A]CCOUNT Then change the account number by pressing "A" and typing in the new number. Then save the account. This action overwrites the account information that was at the new account number so make sure you are copying to an unused account. When the move is complete, kill the old account otherwise you will have a duplicate account. When assigning a new account number, make sure all accounts DTJ-BBS Rev. 940521 Documentation Page 69 CHAPTER 10 - User Access 10.6 before the new number exist (even if they have "A" status). If there are blank accounts in the middle of the account file, then the BBS will not be able to scan through the entire file when performing scanning functions like when the userlist is displayed. 10.7 Creating The New User Questionaire When a new user requests an account, the BBS automatically asks the new user for his name, video width, and a password. You may have the BBS ask the new user up to 10 additional questions by placing those questions in a file called "a-ask". The answers to these questions will be appended to a file called "a-info". Both of these files must be located on your account drive. You may use the editor to create the "a-ask" file. The file should be in this format: "question #1",## "question #2",## Your questions should be in quotes. After each question comes a comma, followed by the number of characters you want for a response (no more than 80). For example, to ask the user what his age is: "What is your age?",3 (The age won't be any more than 3 digits, so a "3" was placed after the question.) Save the file using the [S]ave [*] File command. DTJ-BBS Rev. 940521 Documentation Page 70 CHAPTER 10 - User Access 10.8 10.8 Searching Accounts (SYSOP) You may search the account file by status, name, password, date or access. You may search for accounts that match or don't match the information you request. You may also use the question mark as a wildcard character in the information you request. This makes the account search a very powerful account maintenance tool. To search accounts that match information you type in: [E]DITOR [A]CCOUNT