home *** CD-ROM | disk | FTP | other *** search
/ Monster Disc 2: The Best of 1992 / MONSTER1.ISO / bbs / rbbs / rfix0704.zip / RSB20704.MRG < prev    next >
Text File  |  1992-07-04  |  9KB  |  226 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against C:\174\RBBSSUB2.BAS to produce D:\SOURCE\RBBSSUB2.BAS
  3. * C:\174\RBBSSUB2.BAS:  Date 6-20-1992  Size 140947 bytes
  4. * ------------[ Created 07-04-1992 21:49:35 ]------------
  5. * REPLACING old line(s) by new
  6. 109 '  $SUBTITLE: 'VarInit - subroutine to initialize system variables'
  7. '  $PAGE
  8. '
  9. '  NAME    --  VarInit
  10. '
  11. '  INPUTS  --  PARAMETER           MEANING
  12. '              NONE
  13. '
  14. '  OUTPUTS --  NONE
  15. '
  16. '  PURPOSE --  To initialize system variable
  17. '
  18.       SUB VarInit STATIC
  19.     DEF SEG                            ' Point to BASIC
  20.     WIDTH 80                           ' Set Screen Width
  21.     KEY OFF                            ' Line 25 turned off
  22. ' ********************* Variable Definitions *******************************
  23.     ZMsgDim = 99
  24.     WasMM = 999
  25.     WasBX = 75
  26.     WasJ = 60
  27.     REDIM ZOptSec(WasJ)
  28.     DIM ZWorkAra$(WasJ)
  29.     DIM ZGSRAra$(WasJ)
  30.     DIM ZCategoryName$(WasBX),ZCategoryCode$(WasBX),ZCategoryDesc$(WasBX)
  31.     DIM ZOutTxt$(ZMsgDim)                      ' Message line table
  32.     DIM ZUserIn$(ZMsgDim)                      ' Message line table
  33.     DIM ZMsgPtr(WasMM,2)                       ' Message pointers
  34.     ZAcknowledge$ = CHR$(6)
  35.     ZAckChar$ = "C" + _
  36.             ZAcknowledge$
  37.     ZActiveMenu$ = "B"
  38.     ZActiveMessage$ = CHR$(225)
  39.     ZBackSpace$ = CHR$(8) + _
  40.                  CHR$(32) + _
  41.                  CHR$(8)
  42.     ZBackArrow$ = CHR$(29) + _
  43.                   CHR$(32) + _
  44.                   CHR$(29)
  45.     ZBaudRates$ = "      300  450 1200 2400 4800 7200 96001200014400168001920038400"
  46.     ZBellRinger$ = CHR$(7)
  47.     ZBulletinMenu$ = ""
  48.     ZWasCL = 24
  49.     ZCancel$ = CHR$(24)
  50.     ZColorReset$ = CHR$(27) + _
  51.                    "[00;37;40m"
  52.     ZConfigFileName$ = "RBBS-PC.DEF"
  53.     ZCarriageReturn$ = CHR$(13)
  54.     ZDeletedMsg$ = CHR$(226)
  55.     ZEndTransmission$ = CHR$(4)
  56.     ZEscape$ = CHR$(27)
  57.     ZExpectActiveModem = 0
  58.     ZFalse = 0
  59.     ZF1Key = 59
  60.     ZF10Key = 68
  61.     ZConfName$ = "MAIN"
  62.     CALL SetHiLite (ZTrue)
  63.     ZHomeConf$ = ""
  64.     ZInConfMenu = -1
  65.     ZLastCommand$ = "M "
  66.     ZLimitMinsPerSession = 0
  67.     ZLineFeed$ = CHR$(10)
  68.     ZLineFeeds = NOT ZFalse
  69.     ZLineEditChk$ = CHR$(9) + _
  70.                     ZLineFeed$ + _
  71.                     CHR$(11) + _
  72.                     CHR$(12) + _
  73.                     CHR$(127) + _
  74.                     CHR$(8) + _
  75.                     ZBellRinger$ + _
  76.                     CHR$(26) + _
  77.                     CHR$(227)
  78.     ZLineMes$ = SPACE$(78)          ' fixed length string workspace
  79.     ZLockStatus$ = "UM UU UB UD"
  80.     ZMenuIndex = 2
  81.     ZNAK$ = CHR$(21)
  82.     ZNoAdvance = ZFalse
  83.     ZPageLength = 23
  84.     ZParseOff = ZFalse
  85.     ZPressEnter$ = " (Press [ENTER] to quit)"
  86.     ZPressEnterExpert$ = " ([ENTER] quits)"
  87.     ZPressEnterNovice$ = ZPressEnter$
  88.     ZPrivateDoor = ZFalse
  89.     ZRightMargin = 72
  90.     ZReturnLineFeed$ = ZCarriageReturn$ + _
  91.                         ZLineFeed$
  92.     ZSmartTable$ = "CS PB NS FN LN SL DT TM TR TE TL RP RR CT " + _
  93.                    "C1 C2 C3 C4 C0 DD BD DB UB DL UL FI VY VN " + _
  94.                    "TY TN BN ND FS LS CN"
  95.     ZStartOfHeader$ = CHR$(1)
  96.     ZTimeLoggedOn$ = SPACE$(8)
  97.     ZTrue = NOT ZFalse
  98.     ZUpInc = -1
  99.     ZXOff$ = CHR$(19)
  100.     ZXOn$ = CHR$(17)
  101.     ZInterrupOn$ = CHR$(11) + ZCancel$ + ZXOff$ + ZXOn$ + ZCarriageReturn$
  102.     ZOptionEnd$ = ZReturnLineFeed$ + " ,("
  103.     ZCrLf$ = ZCarriageReturn$ + ZLineFeed$
  104. * ------[ first line different ]------
  105.     ZVersionID$ = "17.4A/0704"
  106.     ZWasLG$(1) = "Registration Check Failed"
  107.     ZWasLG$(2) = "Sysop name attempted"
  108.     ZWasLG$(3) = "Locked out attempt"
  109.     ZWasLG$(4) = "Password Attempt Failed"
  110.     ZWasLG$(5) = "Auto Lockout done"
  111.     ZWasLG$(6) = "Name in use on another Node!"
  112.     ZWasLG$(7) = ""
  113.     ZWasLG$(8) = "Locked reason read!"
  114.     ZWasLG$(9) = "Expired Registration"
  115.     CALL GetCommand (ZDebug,ZNetTime$,ZNetBaud$,ZNetReliable$)
  116.     ZSubParm = 1
  117.     CALL ReadDef (ZConfigFileName$)
  118.     REDIM ZWorkAra$(ZMaxWorkVar)
  119.     REDIM ZGSRAra$(ZMaxWorkVar)
  120.     ZUseTPut = (ZUpperCase OR ZXOnXOff)
  121.     ZOrigCallers$ = ZCallersFile$
  122.     ZOrigMsgFile$ = ZMainMsgFile$
  123.     ZOrigUserFile$ = ZMainUserFile$
  124.     ZOrigSysopFN$ = ZSysopFirstName$
  125.     ZOrigSysopLN$ = ZSysopLastName$
  126.     ZPromptBell = ZPromptBellDef
  127.     ZSecretName$ = ZSysopPswd1$ + " " + ZSysopPswd2$
  128.     END SUB
  129. '
  130. * REPLACING old line(s) by new
  131. 1654 ' $SUBTITLE: 'SetBaud - sub to set the baud rate in the RS232'
  132. ' $PAGE
  133. '
  134. '  NAME    -- SetBaud
  135. '
  136. '  INPUTS  --     PARAMETER                    MEANING
  137. '             ZBaudRateDivisor   NUMBER TO DIVIDE THE 8250 CHIP'S
  138. '                                 PROGRAMABLE CLOCK TO ADJUST THE
  139. '                                 BAUD RATE TO THE USER'S BAUD
  140. '                                 RATE (INDEPENDENT OF THE BAUD
  141. '                                 RATE USED TO OPEN THE COMM. PORT)
  142. '
  143. '        DESIRED BAUD        DIVISIOR (DECIMAL) TO OBTAIN DESIRED BAUD RATE
  144. '            RATE              PCjr         PC AND XT
  145. '              50             2237             2304
  146. '              75             1491             1536
  147. '             110             1017             1047
  148. '             134.5            832              857
  149. '             150              746              768
  150. '             300              373              384
  151. '             600              186              192
  152. '            1200               93               96
  153. '            1800               62               64
  154. '            2000               56               58
  155. '            2400               47               48
  156. '            3600               31               32
  157. '            4800               23               24
  158. '            7200          not available         16
  159. '            9600          not available         12
  160. '           19200          not available          6
  161. '           38400               "                 3
  162. '  OUTPUTS -- BAUD RATE SET IN THE RS232 INTERFACE
  163. '
  164. '  PURPOSE -- To set the baud rate in the RS232 interface
  165. '             inpependent of the baud rate the communications port
  166. '             was opened at
  167. '
  168.       SUB SetBaud STATIC
  169.      IF ZCBaud$ = "" THEN _
  170. * ------[ first line different ]------
  171.         ZCBaud$ = MID$(ZBaudRates$,(-5 * ZBPS),5) : _                ' BH070401
  172.         CALL Trim (ZCBaud$)                                          ' BH070401
  173.      Temp! = VAL(ZCBaud$)
  174.      IF Temp! > 0 THEN CALL SetBPS (Temp!,ZCBPS)
  175.      IF (ZCBPS = 0 OR Temp! = 0) THEN ZCBPS = ZBPS
  176.      IF NOT ZKeepInitBaud THEN _
  177.         ZTalkToModemAt$ =  MID$(ZBaudRates$,(-5 * ZBPS),5) _
  178.      ELSE ZTalkToModemAt$ = ZModemInitBaud$
  179.      CALL Trim (ZTalkToModemAt$)
  180.      IF LEN(ZTalkToModemAt$) < 5 THEN _
  181.         ZTalkToModemAt$ = SPACE$(4 - LEN(ZTalkToModemAt$)) + _
  182.                             ZTalkToModemAt$
  183.      IF ZEightBit THEN_
  184.         Parity = 2 : _                                    ' No PARITY
  185.         DataBits = 3 : _                                  ' 8 DATA BITS
  186.         StopBits = 0 _                                    ' 1 STOP BIT
  187.      ELSE Parity = 3 : _                                  ' EVEN PARITY
  188.           DataBits = 2 : _                                ' 7 DATA BITS
  189.           StopBits = 0                                    ' 1 STOP BIT
  190.      ComSpeed! = VAL(ZTalkToModemAt$)
  191.      IF ComSpeed! > 19200 THEN _
  192.         IF ZFossil THEN _
  193.            WasI = &H9600 _
  194.         ELSE WasI = 19200 _
  195.      ELSE WasI = ComSpeed!
  196.      IF ZFossil THEN _
  197.         CALL FosSpeed(ZComPort,WasI,Parity,DataBits,StopBits) : _
  198.         EXIT SUB
  199.      IF ComSpeed! = 2400 THEN _
  200.         ZBaudRateDivisor = &H30 + (1 * (ZComputerType = 2)) _
  201.      ELSE IF ComSpeed! = 1200 THEN _
  202.         ZBaudRateDivisor = &H60 + (3 * (ZComputerType = 2)) _
  203.      ELSE IF ComSpeed! = 9600 THEN _
  204.         ZBaudRateDivisor = &HC _
  205.      ELSE IF ComSpeed! = 300 THEN _
  206.         ZBaudRateDivisor = &H180 + (11 * (ZComputerType = 2)) _
  207.      ELSE IF ComSpeed! = 450 THEN _
  208.         ZBaudRateDivisor = &H100 + (8 * (ZComputerType = 2)) _
  209.      ELSE IF ComSpeed! = 4800 THEN _
  210.         ZBaudRateDivisor = &H18 _
  211.      ELSE IF ComSpeed! = 19200 THEN _
  212.         ZBaudRateDivisor = &H6 _
  213.      ELSE IF ComSpeed! = 38400 THEN _
  214.         ZBaudRateDivisor = &H3
  215.      MostSignifByte = FIX (ZBaudRateDivisor / 256)
  216.      LeastSignifByte = ZBaudRateDivisor - (MostSignifByte * 256)
  217.      LineCntlStatus = INP(ZLineCntlReg)
  218.      MSBSave = INP(ZMSB)
  219.      OUT ZMSB,0
  220.      OUT ZLineCntlReg,LineCntlStatus OR 128
  221.      OUT ZLSB,LeastSignifByte
  222.      OUT ZMSB,MostSignifByte
  223.      OUT ZLineCntlReg,LineCntlStatus
  224.      OUT ZMSB,MSBSave
  225.      END SUB
  226.