home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
BBS_UTIL
/
BM0406_A.ZIP
/
DOCS.ZIP
/
FIXES.DOC
< prev
next >
Wrap
Text File
|
1992-07-05
|
12KB
|
328 lines
07-05-92 FIXES.DOC
As I was working on the UGLY merges, I noticed a few fixes that needed to
be made, and they're included in the UGLY .MRGs. Things tagged with
UG070501 are simply cosmetic, and don't affect the operation of the BBS.
Other UG0705xx's are actual fixes. Here's what the fixes are:
===========================[ UG070502 ]====================================
Problem: New users have the "Since" date for listing new files set to
"0000 0".
Solution: Set it to 1/1/91
Change RBBS-PC.BAS as follows:
(line 760)
...
CALL Protocol
ZUserXferDefault$ = "N"
ZProtoPrompt$ = "None"
LSET ZListNewDate$ = CHR$(91) + CHR$(1) + CHR$(1) ' UG070501
IF ZNewUserSetsDefaults THEN _
...
===========================[ UG070503 ]====================================
Problem: When personal mail notification is set to "None," RBBS still
prompts as to whether to check messages. If the user says yes, it loads
the messages instead.
Solution: Skip the prompt if there's no mail notification.
Change RBBS-PC.BAS as follows:
1895 IF TurboLogon THEN _
RETURN
IF ActionFlag THEN _ ' UG070503
GOTO 1897 ' UG070503
ZOutTxt$ = "Check mail in " + ZConfName$ + " ([Y],N)"
GOSUB 12999
IF ZNo THEN _
SkipMain = ZTrue : _
RETURN
ZUserIn$(0) = LEFT$("NEW ",-4*LogonMailNew)
===========================[ UG070504 ]====================================
Problem: Nonsensical message for new users: "At least 0 new files"
Solution: Fix it.
Change RBBSSUB3.BAS as follows:
... (Line 58150)
IF Upld(NumNewFiles,1) < 1 THEN _
NumNewFiles = NumNewFiles - 1
IF BaseDate <= Upld(NumNewFiles,1) AND NumNewFiles > 0 THEN _ ' UG070504
RptPrefix$ = "At least" _
ELSE RptPrefix$ = ""
END SUB
===========================[ UG070505 ]====================================
Problem: Code could be ever-so-slightly better.
Solution: Make it ever-so-slightly-better.
Change RBBS-PC.BAS as follows:
1950 IF NOT MailReported THEN _
ZOutTxt$ = "Sorry, " + _
ZFirstName$ + _
", No " + ZUserIn$(0) + "mail for you" : _
GOSUB 12975
IF MsgsFromUser = 0 OR NOT ZMsgReminder OR ActionFlag THEN _ ' UG070505
GOTO 1961
' IF ActionFlag THEN _ ' UG070505
' GOTO 1961 ' UG070505
ZOutTxt$ = "Mail you left"
GOSUB 12976
===========================[ UG070506 ]====================================
Problem: Personal files can't display comment lines. They used to be
able to...
Solution: Fix it.
Change RBBSSUB3.BAS as follows:
58170 IF ZExtendedOff THEN _ ' Extended description
GOTO 58168 _
ELSE IF LastOK OR ZPersonalDnld THEN _ ' UG070506
GOTO 58175 _
ELSE IF ZJumpSearching THEN _
GOTO 58187 _
ELSE IF SearchString$ <> "" AND (NOT WildSearch) AND FailedSearch THEN _
GOTO 58187 _
ELSE GOTO 58168
58171 IF Category$ = "***" OR ZPersonalDnld THEN _ ' display line ' UG070506
GOTO 58176 _
ELSE HoldCat$ = "," + Category$ + "," : _
IF INSTR(Categories$,HoldCat$) > 0 THEN _
GOTO 58176 _
ELSE GOTO 58168
===========================[ UG070507 ]====================================
Problem: RBBS clears the screen when exiting to a transfer, which wipes
out info the SysOp might want to see.
Solution: Skip a few lines instead.
Change RBBSSUB4.BAS as follows:
62628 WasX$ = LEFT$(ZUserIn$,INSTR(ZUserIn$+" "," ")-1)
IF WasX$ = "" THEN _
EXIT SUB
CALL FindIt (WasX$)
IF NOT ZOK THEN _
ZOutTxt$ = "Missing door program" : _
CALL UpdtCalr (ZOutTxt$ + " " + WasX$,1) : _
ZSnoop = ZTrue : _
CALL LPrnt (ZOutTxt$,1) : _
EXIT SUB
ZOutTxt$(1) = "" ' UG070507
GOSUB 62633
ZOutTxt$(2) = "ECHO" + ZOutTxt$
ZOutTxt$(3) = ZDiskForDos$ + _
"COMMAND /C " + _
ZUserIn$
ZOutTxt$(4) = ZRBBSBat$
ZPrivateDoor = ZTrue
CALL QuickTPut1 ("Exiting to External Pgm for Transfer")
LOCATE 25,1
CALL LPrnt(ZLineFeed$,0)
CALL DoorInfo
CALL RBBSExit (ZOutTxt$(),4)
62629 GOSUB 62633
' CLS ' UG070507
CALL LPrnt (ZOutTxt$,2) ' UG070507
CALL ShellExit (ZUserIn$)
===========================[ UG070508 ]====================================
Problem: Inefficient code.
Solution: Change RBBSSUB4.BAS as follows:
62670 ZOutTxt$ = Prompt$
ZMacroMin = 99
ZHidden = ZTrue
CALL PopCmdStack
ZHidden = ZFalse
IF ZSubParm < 0 OR ZWasQ = 0 THEN _
EXIT SUB
ZOutTxt$ = "" ' UG070508
IF LEN(ZUserIn$) > 15 THEN _
ZOutTxt$ = "15 chars max" ' UG070508
IF INSTR(ZUserIn$,";") > 0 THEN _
ZOutTxt$ = "Cannot use ';'" ' UG070508
IF DisallowSpaces THEN _
IF ZUserIn$ = SPACE$(LEN(ZUserIn$)) THEN _
ZOutTxt$ = "Not all blanks" ' UG070508
IF ZOutTxt$ <> "" THEN _ ' UG070508
CALL QuickTput1(ZOutTxt$) : _ ' UG070508
GOTO 62670 ' UG070508
CALL AllCaps (ZUserIn$)
ZWasZ$ = ZUserIn$
END SUB
===========================[ UG070509 ]====================================
Problem: RBBS should abort text file displays when a single key (when in
TurboKey mode) or a carriage return (non-TurboKey) is hit. It sometimes
doesn't.
Solution: CHANGE RBBSSUB2.BAS as follows:
1476 IF ASC(ZWasY$) < 127 THEN ' UG070509
ZCommPortStack$ = ZCommPortStack$ + ZWasY$
IF ZTurboKey OR (NOT ZTurboKey AND ZWasY$ = ZCarriageReturn$) THEN ' UG070509
ZRet = ZTrue ' UG070509
END IF ' UG070509
END IF ' UG070509
RETURN
END SUB
Change RBBSSUB4.BAS as follows:
58304 IF ZRet THEN ' UG070509
IF ZFossil THEN ' UG070509
CALL FosTxPurge(ZComPort) ' UG070509
CALL SkipLine (1) ' UG070509
CALL QuickTPut (ZEmphasizeOff$,0) ' UG070509
END IF ' UG070509
EXIT SUB ' UG070509
END IF ' UG070509
IF ZLinesPrinted < ZFF THEN _
GOTO 58307
===========================[ UG070510 ]====================================
Problem: RBBS should abort all prompts under the same conditions as
described above. The problem is that this disables type ahead for the
"More" prompt, where people might like to respond while the display is
still coming.
Solution: Abort prompts and text files, but only if the user isn't replying
to a more prompt.
Change RBBSSUB2.BAS as follows:
(Line 1500)
ZNo = ZFalse
ZNonStop = (ZPageLength < 1)
IF ZOutTxt$ = "" THEN _
GOTO 1525
IsMore = (LEFT$(ZOutTxt$,4) = "More") OR (LEFT$(ZOutTxt$,6) = "Press ") ' UG070510
IF ZHidden THEN _
ZOutTxt$ = ZOutTxt$ + " (dots will echo)"
IF (NOT ZVerifying) OR HoldA$ = "" THEN _
CALL ColorPrompt (ZOutTxt$) : _
1545 WasX$ = ZWasY$
IF ZFossil AND _ ' UG070510
NOT IsMore AND _ ' UG070510
(ZTurboKey OR (NOT ZTurboKey AND ZWasY$ = ZCarriageReturn$)) THEN ' UG070510
CALL FosTxPurge(ZComPort) ' UG070510
CALL PutCom(ZEmphasizeOff$ + ZEmphasizeOff$) ' UG070510
END IF ' UG070510
ZAutoLogoffReq = ZFalse
IF INSTR(ZLineEditChk$,ZWasY$) > 5 _
GOTO 1635
IF ZWasY$ < " " AND ZWasY$ <> ZCarriageReturn$ THEN _
GOTO 1525
IF ZWasY$ = "^" THEN _
GOTO 1525
IF ZWasY$ = ZCarriageReturn$ THEN _
GOTO 1547 _
ELSE GOSUB 1550
IF ZTurboKey < 1 THEN _
GOTO 1546
IF ZWasY$ = " " THEN _
ZWasY$ = ""
IF ZWasY$ <> "/" THEN _
ZUserIn$ = ZWasY$ : _
ZWasY$ = ZCarriageReturn$ : _
WasX$ = ZWasY$ : _
GOTO 1547
ZTurboKey = 0
GOTO 1525
===========================[ UG070511 ]====================================
Problem: RBBS should add a "-R" to the baud string in the DORINFOx.DEF file
when a user is on with an error correcting modem. It doesn't.
Solution: Add it.
Change RBBSSUB4.BAS as follows:
10991 ' $SUBTITLE: 'DoorInfo -- Write info for doors to file'
SUB DoorInfo STATIC
CLOSE 2
OPEN "O",2,"DORINFO" + _
ZNodeFileID$ + _
".DEF"
PRINT #2,ZRBBSName$
PRINT #2,ZSysopFirstName$
PRINT #2,ZSysopLastName$
IF ZLocalUser THEN _
PRINT #2,"COM0" _
ELSE PRINT #2,ZComPort$
ZUserIn$ = MID$(ZBaudParity$, INSTR(ZBaudParity$, " BPS")+4) ' UG070511
PRINT #2,ZTalkToModemAt$;" BAUD";ZUserIn$
PRINT #2,ZNetworkType
IF ZGlobalSysop THEN _
PRINT #2,"SYSOP" : _
PRINT #2,"" _
ELSE PRINT #2,ZFirstName$ : _
PRINT #2,ZLastName$
PRINT #2,ZCityState$
PRINT #2,ZWasGR
PRINT #2,ZUserSecLevel
CALL TimeRemain (MinsRemaining)
CALL CheckInt (ZDoorTime$)
IF ZErrCode = 0 AND ZTestedIntValue > 0 THEN _
IF MinsRemaining > ZTestedIntValue THEN _
MinsRemaining = ZTestedIntValue
PRINT #2,INT(MinsRemaining)
PRINT #2,ZFossil
CLOSE 2
END SUB
===========================[ UG070512 ]====================================
Problem: When downloading from the personal directory, a M)arked file isn't
found unless it's in upper case. Also, when it's not found, RBBS displays
the nonsense message "M not found - omitted"
Solution: Uppercase the filename before searching and save it into the
correct variable.
Change RBBSSUB3.BAS as follows:
58188 IF ProcessedNew OR MarkingFiles OR NOT ZListOnly THEN _
ProcessedNew = ZFalse : _
RETURN
ZUserIn$(0) = ""
WasI = ZAnsIndex ' check whether in dir
WHILE WasI <= ZLastIndex
CALL AraAllCaps (ZUserIn$(),WasI)
ZWasZ$ = ZUserIn$(WasI)
CALL UnMarkItems (ZMarkedFiles$,WasI,ZLastIndex,WasX,ZTrue)
CALL AllCaps (ZUserIn$(WasI)) ' UG070512
ZWasZ$ = ZUserIn$(WasI) ' UG070512
Temp$ = ZUserIn$(WasI)
'print "wasi=";wasi;" temp$=<";temp$;"> Zdef=<";zdefaultxfer$;">"
IsProto = (LEN(Temp$) = 1 AND _
INSTR(ZDefaultXfer$,Temp$) > 0)
...