diff --git a/html/faq.html b/html/faq.html index b616a5fc..7c46fc5c 100644 --- a/html/faq.html +++ b/html/faq.html @@ -15,7 +15,7 @@
MBSE BBS FAQ and Howto.
-+Last updated 11-May-2002
Last updated 09-Jun-2002
Author: P.E. Kimble aka King Kimerud kimerud@bayhaus.org @@ -54,9 +54,16 @@
BBS Setup -
+- How do I run DOS doors under MBSE BBS?
-- How do I to set up MBSE for ISDN?
-- How do I use GoldED together with MBSE?
+- How do I to set up MBSE for ISDN?
+- How do I use GoldED together with MBSE?
++
Doors Setup ++
@@ -288,10 +295,175 @@ responsiblity of the system administrator!- How do I run DOS doors under MBSE BBS?
+- Dosemu compile tips
+- Setting up for InterBBS games.
+- Door Maintenance.
4. BBS setup.
-
+Q 4.1 -How do I run DOS doors under MBSE BBS? + Q 4.1 +How to set up MBSE for ISDN. A 4.1 +Contributed by: J. Beekhuizen, 2:280/1018 + +Of course, you have to configure and build your kernel for ISDN support +and the correct drivers for your card. It is beyond the scope of this +document to explain how to do that. +
+To your /etc/inittab file add the following lines for your ISDN devices +ttyI0 and ttyI1. +
+# ISDN lines +I1:23:respawn:/usr/local/sbin/mgetty -x 4 -i /opt/mbse/etc/issue ttyI0 +I2:23:respawn:/usr/local/sbin/mgetty -x 4 -i /opt/mbse/etc/issue ttyI1 + ++To your mgetty.config file +[/usr/local/etc/mgetty_sendfax/mgetty.config on my system] +set up the ttyI0 and ttyI1 ports. With AT&E you set the +MSN/EAZ the device should listen to. This should for an MSN be +your telephone number with the area code but +without the leading 0. For an EAZ the last digit of your EAZ. ++The ISDN ports +
+port ttyI0 +modem-type data +init-chat "" ATZ OK AT&E714015437&W0 OK AT&B512 OK + +port ttyI1 +modem-type data +init-chat "" ATZ OK AT&E714017198&W0 OK AT&B512 OK + ++From the mbsetup menu #5 "Edit Modem types" configure the ISDN modem +type. ++ +Modem type ISDN Linux +Init string ATZ\r +Init string +Init string +OK string OK +Hangup \d\p\p\p+++\d\p\p\pATH0\r +Info command ATI2\r +Dial command ATD\T\r +Connect CONNECT 64000 +Connect CONNECT +[...] +Reset cmd ATZ\r +Error string BUSY +Error string NO CARRIER +Error string NO DIALTONE +Error string NO ANSWER +Error string RING\r +Error string ERROR +Error string +Error string +Error string +Error string +Cost offset 0 +EMSI speed 28800 ! not relevant for ISDN +Strip dashes No +Available Yes + ++And from #6 "Edit TTY lines info" the ISDN lines ++ +TTY name ISDN Line 1 +Device name ttyI0 +Phone or DNS 31-71-4015437 +Line speed 64 kbits +Fido flags CM,XA,MO,X75 +Equipment ISDN +Available Yes +Auth. log No +Honor ZMH Yes +Callout Yes +Modem type ISDN Linux +Locked speed 0 ! not relevant for ISDN +EMSI name The Wizard's ISDN line 1 + +TTY name ISDN Line 2 +Device name ttyI1 +Phone or DNS 31-71-4017198 +Line speed 64 kbits +Fido flags CM,XA,MO,X75 +Equipment ISDN +Available Yes +Auth. log No +Honor ZMH Yes +Callout Yes +Modem type ISDN Linux +Locked speed 0 +EMSI name The Wizard's ISDN line 2 + ++T-t-that's all folks :)) ++
+ + +
+
++ Q 4.2 +How do I use GoldED together with MBSE? + A 4.2 +Since MBSE BBS version 0.33.12 GoldED and MBSE BBS can be used together +without problems as long as you use it to read the sysop mail. The +mbsetup program can export a file called /opt/mbse/etc/golded.inc which +will contain your main Aka's, Aka matching, sysop name and all your mail +areas. This file is only (re)created if you change the global settings or +one of the mail areas. The first time you must force this by making a change +somewhere. + +Now create /opt/mbse/etc/golded.cfg, here is what I wrote: +
+ +; GoldED.cfg +; +; Internet Addressing +; +INTERNETADDRESS Michiel_Broek@f2802.n280.z2.fidonet.org +INTERNETGATE UUCP 2:292/875 +; +; +OUTBOUNDPATH /opt/mbse/var/bso/outbound +REPLYLINK chain +STYLECODES yes +; +; +; MESSAGE READER +; +DISPMSGSIZE KBYTES +DISPATTACHSIZE KBYTES +DISPLOCALHIGH YES +DISPPAGEBAR YES +VIEWHIDDEN YES +VIEWKLUDGE NO +VIEWQUOTE YES +; +INCLUDE /opt/mbse/etc/golded.inc +; +; The end. + ++Put in /opt/mbse/.profile the following line: +export GOLDED=$HOME/etc ++When you now start GoldED you use it as the sysop. Make sure that the sysop's +userrecord is the first user in the MBSE BBS userbase. If not, the lastread +pointers are not right. The GoldED nodelist compiler can be added to the setup +in menu 18. +
+
+ +
+5. Doors setup.
+ ++
-+ Q 5.1 +How do I run DOS doors under MBSE BBS? + A 5.1 Written by: Redy Rodriguez, sysop of Parolas BBS 2:348/609 Fidonet: Redy rodriguez 2:348/609 Email: redy@users.sourceforge.net @@ -473,7 +645,7 @@ in /opt/mbse/bin: # by Redy Rodriguez and Michiel Broek. # DOOR=`basename $0` -COMMANDO="\"door $DOOR $*\r\"" +COMMANDO="\" door $DOOR $*\r\"" /usr/bin/sudo /opt/mbse/bin/bbsdoor.sh $DOOR $1 /usr/bin/sudo /opt/dosemu/bin/dosemu.bin \ @@ -586,168 +758,233 @@ Now we execute mbsetup and enter the menu setup to add an entrance like thisAnd that is everything...+
![]()
-
-Q 4.2 -How to set up MBSE for ISDN. + - Q 5.2 +Dosemu compile tips A 4.2 -Contributed by: J. Beekhuizen, 2:280/1018 + A 5.2 +Dosemu still exhibits some file locking behaviour and this needs to be +overcome, especially if you are running multinode door games. The +following information was written by Bob Newell of Chung Kuo BBS (telnet +chungkuo.org) and I reiterate it here. -Of course, you have to configure and build your kernel for ISDN support -and the correct drivers for your card. It is beyond the scope of this -document to explain how to do that. +There is an issue in that Linux file locking does not map precisely to +DOS file locking. You need to patch DOSEMU and build a special version +to deal with this problem. Find the file "dosext/mfs/mfs.c" in your +DOSEMU source tree. Locate the following lines: +
+case DENY_ANY: + fl.l_type = F_RDLCK; + +Change the second line to + fl.l_type = !writing ? F_RDLCK : F_WRLCK; + ++and build a new version of DOSEMU.-To your /etc/inittab file add the following lines for your ISDN devices -ttyI0 and ttyI1. +To solve a problem of slow screen painting, locate "base/async/int.c" +in your source tree. Locate
-# ISDN lines -I1:23:respawn:/usr/local/sbin/mgetty -x 4 -i /opt/mbse/etc/issue ttyI0 -I2:23:respawn:/usr/local/sbin/mgetty -x 4 -i /opt/mbse/etc/issue ttyI1 +case 0x2C: + +and just below, comment out or delete the line + +usleep(INT2F_IDLE_USECS);-To your mgetty.config file -[/usr/local/etc/mgetty_sendfax/mgetty.config on my system] -set up the ttyI0 and ttyI1 ports. With AT&E you set the -MSN/EAZ the device should listen to. This should for an MSN be -your telephone number with the area code but -without the leading 0. For an EAZ the last digit of your EAZ. --The ISDN ports -
-port ttyI0 -modem-type data -init-chat "" ATZ OK AT&E714015437&W0 OK AT&B512 OK +and rebuild your DOSEMU. -port ttyI1 -modem-type data -init-chat "" ATZ OK AT&E714017198&W0 OK AT&B512 OK - --From the mbsetup menu #5 "Edit Modem types" configure the ISDN modem -type. -- -Modem type ISDN Linux -Init string ATZ\r -Init string -Init string -OK string OK -Hangup \d\p\p\p+++\d\p\p\pATH0\r -Info command ATI2\r -Dial command ATD\T\r -Connect CONNECT 64000 -Connect CONNECT -[...] -Reset cmd ATZ\r -Error string BUSY -Error string NO CARRIER -Error string NO DIALTONE -Error string NO ANSWER -Error string RING\r -Error string ERROR -Error string -Error string -Error string -Error string -Cost offset 0 -EMSI speed 28800 ! not relevant for ISDN -Strip dashes No -Available Yes - --And from #6 "Edit TTY lines info" the ISDN lines -- -TTY name ISDN Line 1 -Device name ttyI0 -Phone or DNS 31-71-4015437 -Line speed 64 kbits -Fido flags CM,XA,MO,X75 -Equipment ISDN -Available Yes -Auth. log No -Honor ZMH Yes -Callout Yes -Modem type ISDN Linux -Locked speed 0 ! not relevant for ISDN -EMSI name The Wizard's ISDN line 1 - -TTY name ISDN Line 2 -Device name ttyI1 -Phone or DNS 31-71-4017198 -Line speed 64 kbits -Fido flags CM,XA,MO,X75 -Equipment ISDN -Available Yes -Auth. log No -Honor ZMH Yes -Callout Yes -Modem type ISDN Linux -Locked speed 0 -EMSI name The Wizard's ISDN line 2 - --T-t-that's all folks :))+
+
+ + +
+
++ Q 5.3 +Setting up for InterBBS games. + A 5.3 +With most BBS games you will need 2 directories in your dos filesystem +area. One for the inbound packets and one for netmail messages door +games produce to send outbound packets. + +The easiest way to solve this is by creating symlinks from your MBSE +directories into the directory where your dos doors live (c:\doors). The +2 directories you wish to link are /opt/mbse/var/inbound and +/opt/mbse/var/msgs - link them into your dos directories doors directory +with the same names ie: "inbound" and "msgs". Now according to dosemu +you will have a c:\doors\inbound and a c:\doors\msgs +
+For my example I will use the InterBBS dos door game called Barren +Realms Elite (BRE for short). +
+3a. I install Bre in c:\doors\bre and setup the necessary files for its +execution as a dos door from MBSE as per the dos doors faq. +
+3b. I tell Bre (in its BBS.CFG) that the path for inbound packets is +c:\doors\inbound and the netmail path is c:\doors\msgs +Bre will now automatically process all inbound packets it finds in the +inbound directory for itself. It needs no assistance as it merely +searches for the correct filename in the directory. +
+3c. We need a script to process the Bre outbound packets and add them to +MBSE's outbound path so they are sent. A perl script on how to do this +follows (with comments ). +
+This script should be owned by user "mbse" and have the permissions +(chmod 755) -rwxr-xr-x. It is best kept in /opt/mbse/bin with your dos +game executing scripts. I call this script "dos_poll" +
+------------------------------------------------------------------------ +#!/usr/bin/perl -U +use File::Basename; + + +# Define the variable for the outbound file that this script +# must create. See Note 1. +$bre48_file = "/opt/mbse/var/bso/outbound/028003ba.flo"; +# Define the linux path to Bre's outbound directory +$bre48_path = "/opt/mbse/dos/doors/bre48/OUTBOUND"; +# Define the linux path to the "msgs" directory +$msg_path = "/opt/mbse/var/msgs"; + + opendir(DIR, "$bre48_path") || die; + @dirlist = readdir(DIR); + closedir(DIR); + + foreach $filename (@dirlist){ + ($filenameOnly, $pathname, $fileExtension) = fileparse($filename, '\..*'); + +# Below '048b0201' is the packet name Bre creates. You can find out what +# your packet name is by running BRE PLANETARY and then checking inside +# the Bre OUTBOUND directory - note no ext on name. + + if($filenameOnly eq "048b0201") { + $bre48 = "^$bre48_path/$filename"; + open(FILE, ">>$bre48_file"); + print FILE "$bre48\n"; + close(FILE); + } + chmod 0664, "$bre48_file"; + } + + opendir(DIR, "$msg_path") || die; + @dirlist1 = readdir(DIR); + closedir(DIR); + + foreach $filename (@dirlist1){ + ($filenameOnly, $pathname, $fileExtension) = fileparse($filename, '\..*'); + if($fileExtension eq ".msg") { + unlink "$msg_path/$filename"; + } + } +system "touch /opt/mbse/sema/scanout"; + +------------------------------------------------------------------------ + ++Note 1. To find out what the outbound file is simply send a netmail +attach via MBSE to your uplink system for the Bre game. MBSE will create +a file in your outbound directory as a series of numbers with the +extension .flo (or hlo). Inside this file will merely be the path to the +file attached, but it is the name of the flo file that we require. No +matter what file you attach or when you attach it, the outbound flo file +will always have the same name as it represents the node number it is +being sent to. Thus if you were file attaching to 3:640/954 your flo +file would be "028003ba.flo" as in the example. Once you find out the +filename substitute it in the script above. ++What the above script does: +
+The perl script merely reads the Bre outbound directory and looks for +files with the name of the that you tell it (sample one is 048b0201). +The script removes the extension from the filenames to get a match. +If it finds a match it creates a file, the "$bre48_file", which is the +.flo you specified in the correct outbound directory. Inside this file +it merely gives the path to the Bre outbound attach file and adds a ^ +before it (so MBSE deletes it after sending). +
+Then it goes into your "msgs" directory and deletes everything in there. +It does not use the netmails written by the games at all, it just +deletes them to stop them filling up your hard drive. +
+Then it tells MBSE to scan the outbound. If it created a flo file and +that system is a direct or crash link MBSE will poll and send the file +straight away. +
+If you have more InterBBS games the procedure is the same, just copy and +edit the first part (relating to BRE) and add new variables for other +games. The script only needs to clear the msgs directory once and to +scan the outbound once. You only need one script to service a multitude +of games. +
![]()
-
-Q 4.3 -How do I use GoldED together with MBSE? + - Q 5.4 +Door Maintenance. A 4.3 -Since MBSE BBS version 0.33.12 GoldED and MBSE BBS can be used together -without problems as long as you use it to read the sysop mail. The -mbsetup program can export a file called /opt/mbse/etc/golded.inc which -will contain your main Aka's, Aka matching, sysop name and all your mail -areas. This file is only (re)created if you change the global settings or -one of the mail areas. The first time you must force this by making a change -somewhere. - -Now create /opt/mbse/etc/golded.cfg, here is what I wrote: +
A 5.4 +Ok, so you can setup doors, run inbound and outbound for interbbs games. +So how do you do maintenance? +
+Again by scripts. Again I will use BRE as an example. First I create a +maintenance batch file in my C: root directory. I have called it +maint.bat and for the bre game it looks like this:-; GoldED.cfg -; -; Internet Addressing -; -INTERNETADDRESS Michiel_Broek@f2802.n280.z2.fidonet.org -INTERNETGATE UUCP 2:292/875 -; -; -OUTBOUNDPATH /opt/mbse/var/bso/outbound -REPLYLINK chain -STYLECODES yes -; -; -; MESSAGE READER -; -DISPMSGSIZE KBYTES -DISPATTACHSIZE KBYTES -DISPLOCALHIGH YES -DISPPAGEBAR YES -VIEWHIDDEN YES -VIEWKLUDGE NO -VIEWQUOTE YES -; -INCLUDE /opt/mbse/etc/golded.inc -; -; The end. +cd \doors\bre +BRE INBOUND +BRE SCORES +BRE REQUEST +BRE PLANETARY +exitemu-Put in /opt/mbse/.profile the following line: -export GOLDED=$HOME/etc +if you are familiar with Bre you will know this to be a standard sort of +maintenance except for the "exitemu" at the end. That is there because +we are going to use a script to start dosemu and call the maint.bat - so +afterwards we need it to exit dosemu. +
+Now a maintenance script to be called from your cron or whatever else +you are using to execute events on your system. I call this script +"dos_maint" and it also lives in /opt/mbse/bin ++ +#!/bin/sh +# +COMMANDO="\" maint \r\"" + +/usr/bin/sudo dosemu -dumb -E dir > /opt/mbse/log/dos.log -quiet -I "`echo keystroke $COMMANDO`" + + +/opt/mbse/bin/dos_poll + ++You will notice this script starts dosemu and calls maint.bat, and then +when its finished there it calls the dos_poll script discussed earlier. +Please note the second line is all ONE line, it has most probably +wrapped here.-When you now start GoldED you use it as the sysop. Make sure that the sysop's -userrecord is the first user in the MBSE BBS userbase. If not, the lastread -pointers are not right. The GoldED nodelist compiler can be added to the setup -in menu 18. +You will notice that the script calls dosemu and not dosemu.bin, this is +because we need to tell dosemu to open a dumb terminal and not display +to a console or screen. By use of the redirection we redirect the normal +console output to a file, here I have used /opt/mbse/log/dos/log as that +is where all of MBSE's other logs reside. +
+Once "dos_maint" is run via the cron it will run maintenance on your dos +doors, process inbound/outbound interBBS game packets and get MBSE to +poll to send packets. Thats about all ther is to do :) +
+Have fun! +
+Rick Van Ruth 3:640/954 (ricta@ricta.net)
+
![]()