home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
BBS_UTIL
/
BM0406_A.ZIP
/
0406.ZIP
/
RSB50406.MRG
< prev
Wrap
Text File
|
1994-04-06
|
125KB
|
2,407 lines
* ------------[ BLED merge (c) Ken Goosens ]-------------
* Merge this against RBBSSUB5.BAS to produce RBBSSUB5.BAS
* RBBSSUB5.BAS: Date 6-20-1992 Size 116575 bytes
* BusiMod (tm) mods for RBBS v17.4 - (c) 1993,94 by respective authors
* RBBS v17.4 (c) 1986,1992 by D Thomas Mack
* ------------[ Created 04-06-1994 22:00:00 ]------------
* REPLACING old line(s) by new
' $linesize:132
' $title: 'RBBSSUB5.BAS 17.4, Copyright 1986 - 92 by D. Thomas Mack'
' Copyright 1991 by D. Thomas Mack, all rights reserved.
' Name ...............: RBBSSUB5.BAS
' First Released .....: June 21, 1992
' Subsequent Releases.:
' Copyright ..........: 1986 - 1992
' Purpose.............: The Remote Bulletin Board System for the IBM PC,
' RBBS-PC.BAS utilizes a lot of common subroutines. Those that do not
' require error trapping are incorporated within RBBSSUB 2-5 as
' separately callable subroutines in order to free up as much
' code as possible within the 64K code segment used by RBBS-PC.BAS.
' Parameters..........: Most parameters are passed via a COMMON statement.
'
' Subroutine Line Function of Subroutine
' Name Number
* ------[ first line different ]------
' BreakFileName 63300 Break file name into component parts
' ChkAddedTime 63056 Check whether ok to extend time remaining ' SK01601
' CmdStackPushPop 63500 Save/Restore command stack
' DoorReturn 63100 Process door requests
' FdMacExe 63462 Executes a found macro
' FileSystem 20117 File System for RBBS-PC
' FileLister 65009 To handle list of files for uploading ' BTCH174
' HSAddFileSearch 65110 Search additional U/L files for duplication ' BTCH174/RM111001
' HSFile 65099 Checks XFER%node%-DEF for extra HS uploaded files ' BTCH174
' MultiFile 91000 Check user entry for a range of numbers' ' DGS110301-DS
' NoExt 65140 Rejects files with extensions SysOp defines ' NEXT174/RM112001
' RestoreCom 63310 Restore comm port after external program
' ReadMacro 63330 Read and process macro
' TStats 65004 Display file transfer stats ' XFER174
' WildDown 50 Find matches to input for download
' WildMark 90000 edit marked files after wildcard marking ' DGS102703-DS
' WildShow 87000 Show the marked wildcard files to the user ' DGS102703-DS
'
' $INCLUDE: 'RBBS-VAR.BAS'
'
* INSERTING new line(s)
50 ' $SUBTITLE: 'WildDown - searches for wildcard files'
' $PAGE
'
' NAME -- WildDown
'
' INPUTS -- PARAMETER MEANING
'
'
'
' OUTPUTS -- List of files matching wilcard input string
'
'
' PURPOSE -- To search the directories listed in CONFIG, the
' Location Index and the WildDown configuration file
' for files which match the string input by the user
'
' * Originaly by Richard Todd (1:3612/299)
' * Changes for BusiMods by Dan Shore and Richie Molinelli
' *
'
' *** WILDDOWN - Find matches to input for download ***
'
'
' * read in the config file
'
100 SUB WILDDOWN (FilName$,MarkedFiles$,FastFileList$,Found) ' RM03139401
Found = ZFalse
IF LEN(MID$(FilName$,1,INSTR(FilName$,".") - 1)) > 8 THEN _
CALL QuickTPut1 (ZFG6$ + "File search string " + ZFG7$ + FilName$ + _
ZFG6$ + " exceeds allowable characters!" + ZEmphasizeOff$) : _ ' RM03259401
EXIT SUB
CALL QuickTPut (ZFG5$ + "Looking for Matches to " + _
ZFGB$ + FilName$ + ZFG5$ + SPACE$(3) + ZEmphasizeOn$ + _
"(<CTRL-X> Aborts)" + ZEmphasizeOff$,0)
NumDots = 0
CfgFileName$ = LEFT$(FastFileList$, INSTR(FastFileList$, ".") -1) + ".CFG" ' RM03279401
CALL LinesInFile (CfgFileName$,LineCount) ' RM03059401
IF LineCount < 10 THEN _ ' RM03199401
LineCount = 10 ' RM03199401
IF UBOUND(ZOutTxt$) < LineCount THEN _ ' RM03289401
REDIM ZOutTxt$(LineCount) ' RM03059401
FilNum = FREEFILE ' RM03049401
CALL OpenWork (FilNum,CfgFileName$) ' RM03049401
CALL ReadDir (FilNum,1) ' RM03049401
MaxFiles = VAL(MID$(ZOutTxt$,1,INSTR(ZOutTxt$,",")-1)) ' DGS101801-DS
IF MaxFiles > 100 THEN _ ' RM03289401
MaxFiles = 100 ' RM03289401
IF UBOUND(ZUserIn$) < MaxFiles THEN _ ' RM03289401
REDIM PRESERVE ZUserIn$(MaxFiles) ' RM03289401
Comma = INSTR(ZOutTxt$,",") ' DGS101801-DS
IF Comma > 0 THEN _ ' DGS101801-DS
MaxLines = VAL(MID$(ZOutTxt$,Comma+1)) _ ' DGS101801-DS
ELSE MaxLines = 9999 ' DGS101801-DS
'
' * check for previously marked files
'
IF LEN(MarkedFiles$) > MaxFiles * 13 THEN ' RM03279401
CALL SkipLine (1)
CALL QuickTPut1(ZFGF$ + ZBG4$ + _
"Too Many Files Already Marked!" + _
ZEmphasizeOff$)
FilName$ = "" ' RM03139401
CLOSE FilNum ' RM03049401
EXIT SUB
END IF
'
' * save the current list of marked files
'
HoldMarkedFiles$ = MarkedFiles$ ' RM03279401
'
' * read in the directories from the FIDX.CFG and check Security Level
'
Index = 1
DO WHILE NOT EOF(FilNum) ' RM03049401
CALL ReadDir (FilNum,1) ' RM03049401
Level = INSTR(ZOutTxt$,",")
IF ZUserSecLevel >= VAL(LEFT$(ZOutTxt$,Level-1)) THEN
ZOutTxt$(Index) = RIGHT$(ZOutTxt$,LEN(ZOutTxt$)-Level)
Index = Index + 1
END IF
LOOP
CLOSE FilNum ' RM03049401
'
' * search in the Upload and Download Directories listed in the FIDX.CFG
'
200 TotalMatch = 0
SearchDir = 1
MarkedFiles$ = "" ' RM03279401
DO WHILE SearchDir < Index
GOSUB 700
IF KillSearch THEN GOTO 400
MatchFile$ = ""
FILESPEC$ = ZOutTxt$(SearchDir) + FilName$ ' RM03139401
IF SearchDir = 1 THEN
CALL SkipLine (1)
CALL QuickTPut (ZFG5$ + "Searching " + _
ZFGB$ + "for Files ",0)
END IF
CALL MarkTime (NumDots)
MatchFile$ = DIR$(FILESPEC$) ' RM03039401
IF MatchFile$ <> "" THEN
IF INSTR(MarkedFiles$,MatchFile$) > 0 OR _ ' RM03279401
INSTR(HoldMarkedFile$,MatchFile$) > 0 THEN _ ' RM03039401
GOTO 210 ' RM03039401
CALL Trim(MatchFile$)
MarkedFiles$ = MarkedFiles$ + MatchFile$ + _ ' RM03279401
SPACE$(12-LEN(MatchFile$)) + CHR$(13)
TotalMatch = TotalMatch + 1
210 MatchFile$ = DIR$ ' RM03039401
DO WHILE MatchFile$ <> ""
IF INSTR(Markedfiles$,MatchFile$) > 0 OR _ ' RM03279401
INSTR(HoldMarkedFile$,MatchFile$) > 0 THEN _ ' RM03039401
GOTO 220 ' RM03039401
CALL MarkTime (NumDots)
CALL Trim(MatchFile$)
MarkedFiles$ = MarkedFiles$ + MatchFile$ + _ ' RM03279401
SPACE$(12-LEN(MatchFile$)) + CHR$(13)
TotalMatch = TotalMatch + 1
220 MatchFile$ = DIR$ ' RM03039401
IF TotalMatch => MaxFiles THEN
CALL QuickTPut (ZBackSpace$,0)
CALL SkipLine (1)
CALL QuickTPut1(ZFGF$ + ZBG4$ + _
"Too Many Matching Files!" + _
ZEmphasizeOff$)
FilName$ = "" ' RM03139401
GOTO 400
END IF
LOOP
END IF
SearchDir = SearchDir + 1
LOOP
CALL QuickTPut (ZBackSpace$,0)
300 IF NOT ZFastFileSearch THEN _
GOTO 400
TFastFileList$ = FastFileList$ ' RM03279401
GOSUB 310 ' setup FFS System and search for matches
GOTO 400 ' exit routine and display number of matches
310 FSize = 21
FilNum = FREEFILE ' RM03049401
CALL OpenRSeq (TFastFileList$,HighRec&,WasX,21,FilNum) ' DGS011701-DS/RM03049401
FIELD #FilNum, 12 AS SearchFile$, _ ' RM03049401
4 AS SearchPath$, _
3 AS SearchDate$, _
2 AS SearchCrLf$
GET FilNum,1 ' RM03049401
IF SearchCrLf$ <> ZCRLf$ THEN
FSize = 18
CALL OpenRSeq (TFastFileList$,HighRec&,WasX,18,FilNum) ' DGS011701-DS/RM03049401
FIELD #FilNum, 12 AS SearchFile$, _
4 AS SearchPath$, _
2 AS SearchCrLf$ ' RM03049401
END IF
'
' Set the LowRec value to 1 before checking for the tabs file low value.
'
LowRec& = 1 ' DGS-050401/DS
'
' See if the Tabs File exists by checking for the proper size.
' The file ZFastTabs$ is created in line 108 of RBBS-PC.
'
IF LEN(ZFastTabs$) < 160 THEN _ ' DGS101801-DS
GOTO 350 ' DGS-050401/DS
'
' Now check to see if the first letter is not a wildcard, to make
' the searching of the FIDX file by the first letter, instead of
' a sequential search. This code was taken from SUB5 with
' variable names changed to work in this sub with no conflict.
'
FirstLetter$ = LEFT$(FilName$,1) ' DGS101801-DS/RM03139401
FirstLet = INSTR("!#$0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_",FirstLetter$) ' DGS101801-DS
IF FirstLet > 0 THEN _ ' DGS101801-DS
LowRec& = CVL(MID$(ZFastTabs$,1+4*(FirstLet-1),4)) - 1 : _ ' DGS101801-DS
IF FirstLet < 40 THEN _ ' DGS101801-DS
HighRec& = CVL(MID$(ZFastTabs$,1+4*FirstLet,4)) ' DGS101801-DS
IF LowRec& = 0 THEN _ ' DGS021501-DS
LowRec& = 1 ' DGS021501-DS
350 FOR Count& = LowRec& TO HighRec& ' DGS101801-DS
GET FilNum, Count& ' DGS011701-DS/RM03049401
GOSUB 700
IF KillSearch THEN EXIT FOR
CALL MarkTime (NumDots)
FileName$ = SearchFile$
CALL Trim (FileName$)
CALL WildFile (FilName$,FileName$,DoesMatch) ' RM03139401
IF DoesMatch AND (VAL(SearchPath$) <= MaxLines) AND _
INSTR(MarkedFiles$,FileName$) = 0 AND _ ' RM03279401
INSTR(HoldMarkedFiles$,FileName$) = 0 THEN ' DGS101801-DS/RM03049401
MarkedFiles$ = MarkedFiles$ + FileName$ + _ ' RM03279401
SPACE$(12-LEN(FileName$)) + CHR$(13)
TotalMatch = TotalMatch + 1
END IF
IF TotalMatch => MaxFiles THEN
CALL QuickTPut (ZBackSpace$,0)
EXIT FOR
END IF
NEXT
RETURN
400 CALL QuickTPut (ZBackSpace$,0)
'
' * display number of matches found and end sub
'
600 FilName$ = "" ' RM03139401
CLOSE FilNum ' DGS102601-DS/RM03049401
FilNum = FREEFILE ' RM03049401
CALL KillWork (ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF") ' DGS102601-DS
CALL OpenWorkB (FilNum,ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF") ' DGS102601-DS/RM03049401
CALL PrintWorkB (FilNum,MarkedFiles$) ' RM03049401/RM03279401
CLOSE FilNum ' RM03049401
CALL SkipLine(1) ' DGS021002-DS
ZOutTxt$ = ZFGE$ + STR$(TotalMatch) + ZFGA$ + " Matches Found" ' DGS021002-DS
IF TotalMatch => MaxFiles THEN _ ' DGS021002-DS
ZOutTxt$ = ZOutTxt$ + ZFGF$ + " - " + ZFGC$ + _ ' DGS021002-DS
"Maximum Allowed Matches Reached!" ' DGS021002-DS
ZOutTxt$ = ZOutTxt$ + ZEmphasizeOff$ ' DGS021002-DS
Call QuickTPut1 (ZOutTxt$) ' DGS021002-DS
IF MarkedFIles$ <> "" THEN _ ' RM03279401
Found = ZTrue
MarkedFiles$ = HoldMarkedFiles$ ' RM03279401
EXIT SUB
'
' * routine to find user break
'
700 CALL FindFKey
KillSearch = ZFalse
IF ZKeyPressed$ = CHR$(24) THEN _
KillSearch = ZTrue
IF ZLocalUser THEN _
RETURN
IF ZCommPortStack$ <> "" THEN _
IF LEFT$(ZCommPortStack$,LEN(ZCommPortStack$)-1) = CHR$(24) THEN _
KillSearch = ZTrue
CALL EofComm (Char)
IF Char <> -1 THEN _
CALL GetCom (WasX$) : _
IF WasX$ = CHR$(24) THEN _
KillSearch = ZTrue
CALL FlushCom (ZCommPortStack$)
RETURN
END SUB
'
* REPLACING old line(s) by new
20117 ' $SUBTITLE: 'FileSystem -- subroutine for RBBS-PC's file system'
' $PAGE
'
' NAME -- FileSystem
'
' INPUTS -- PARAMETER MEANING
' ZFileSysParm = 1 LIST THE SYSOP'S COMMENTS FILE
' 2 L)IST DIRECTORY COMMAND
' 3 D)OWNLOAD COMMAND
' 4 RETURN FROM EXTERNAL PROTOCOLS
' 5 U)PLOAD COMMAND
' 6 S)CAN DIRECTORY COMMAND
' 7 P)ERSONAL FILES COMMAND
' 8 N)EW FILES COMMAND
' 9 RETURN FROM EXTENDED DESCRIPTION
'
' OUTPUTS -- ZFileSysParm = 1 COMMAND PROCESSED SUCCESSFULLY
' 2 RECYCLE TO TOP OF RBBS-PC (202)
' 3 PROCESS NEXT COMMAND (1200)
' 4 DENY USER ACCESS (1380)
' 5 HANDLE EXTENDED DESCRIP. (2008)
' 6 USER'S TIME EXCEEDED (10553)
' 7 Carrier DROPPED (10595)
'
' PURPOSE -- To handle the RBBS-PC file system commands
'
SUB FileSystem STATIC
ZFF = ZFileSysParm
ZFileSysParm = 1
* ------[ first line different ]------
CALL SaveUserActivity("F", ZNodeRecIndex, ZFalse) ' RCHAT401
ZActiveFMSDir$ = ""
UploadFirst = ZFalse ' BTCH174
DownloadFirst = ZFalse ' BTCH174
BatchOff = 0 ' BTCH174/RM101501
ON ZFF GOSUB 20119, _ ' HANDLER TO LIST COMMENTS TO SYSOP
20150, _ ' L)IST DIRECTORY COMMAND HANDLER
20180, _ ' D)OWNLOAD COMMAND HANDLER
20263, _ ' RETURN FROM EXTERNAL Protocol'S
20400, _ ' U)PLOAD COMMAND HANDLER
21800, _ ' S)CAN DIRECTORY COMMAND HANDLER
21850, _ ' P)ERSONAL FILES COMMAND HANDLER
21860, _ ' N)EW FILES COMMAND HANDLER
20705, _ ' RETURN FROM EXTENDED DESCRIPTIONS ' RM01179401
20202 ' Download marked files exiting subboard ' RM01179401
GOTO 21920
* REPLACING old line(s) by new
20140 LastOK = ZTrue
* ------[ first line different ]------
CALL ColorDir (ZOutTxt$,"Y") ' DGS
GOSUB 21650
IF ZFileSysParm > 1 THEN _
RETURN
IF ZLinesPrinted > MaxPrint THEN _
ZTurboKey = -ZTurboKeyUser : _
CALL AskMore (",M)ark",ZTrue,ZTrue,ZAnsIndex,ZFalse) : _
IF ZNo THEN _
ZErrCode = 0 : _
RETURN _
ELSE Temp$ = ZUserIn$(1) : _
CALL AskItems ("M",Temp$,ZTrue,"file",ZMarkedFiles$,ZPersonalDnld) : _ ' RM01209401
ZUserIn$(1) = ""
IF ZJumpSearching THEN _
IF LEFT$(ZOutTxt$,1) <> " " THEN _
PrevSearch$ = WasRS$ : _
PrevCK = WasCK : _
WasCK = 2 : _
WasRS$ = ZJumpTo$
IF NOT ZRet THEN _
GOTO 20124
* REPLACING old line(s) by new
20155 IF ListNew OR ZAnsIndex > 255 THEN _
RETURN
* ------[ first line different ]------
IF ZFileSysParm = 4 THEN _ ' RM01049401
RETURN ' RM01049401
CALL GetDirs (ShowDirOfDir)
IF ZWasQ = 0 THEN _
RETURN
IF ZUserIn$(ZAnsIndex) = "P" THEN _ ' RM032601
GOTO 21850 ' RM032601
ShowDirOfDir = ZFalse
CALL ConvertDir (ZAnsIndex)
WasQX = ZLastIndex
* REPLACING old line(s) by new
20159 IF ZAnsIndex < ZLastIndex THEN _
GOTO 20155
ZSearchingAll = ZFalse
CALL CmdStackPushPop (1)
ZLastIndex = 0
IF ZNo OR InFMS OR (ZFileNameHold$ = ZDirPrefix$) THEN _
GOTO 20155
GOSUB 20178
CALL QuickTPut (ZEmphasizeOff$,0)
ZTurboKey = - ZTurboKeyUser
ZOutTxt$ = "End list. L)ist, M)ark, D)nld, [Q]uit"
GOSUB 21667
CALL AraAllCaps (ZUserIn$(),1)
IF ZUserIn$(1) = "L" THEN _
ZUserIn$(ZAnsIndex) = WasA1$ : _
GOTO 20161
Temp$ = ZUserIn$(1)
Temp = (ZUserIn$(1) = "D")
* ------[ first line different ]------
CALL AskItems ("MD",Temp$,ZTrue,"file",ZMarkedFiles$,ZPersonalDnld) ' RM01209401
IF ZWasQ = 0 OR ZUserSecLevel < ZOptSec(19 - 20 * (ZMenuIndex = 6)) THEN _
GOTO 20160
IF Temp$ = "M" THEN _ ' RM01229401
RETURN ' RM01229401
IF Temp THEN _
GOSUB 20202 _
ELSE IF LEN(ZUserIn$(1)) > 1 THEN _
ZAnsIndex = 1 : _
GOSUB 20202
* REPLACING old line(s) by new
20162 CALL CmdStackPushPop (1) ' save dir list list processing
CALL FMS (ZWasZ$,SearchString$,SearchDate$,InFMS, _
ZCategoryName$(),ZCategoryCode$(),ZCategoryDesc$(),_
DnldFlag,CatFound,ZAnsIndex)
* ------[ first line different ]------
IF ZFileSysParm = 4 THEN _ ' RM01209401
RETURN ' RM01209401/RM01229401
WHILE DnldFlag > 0 AND ZSubParm > -1
GOSUB 20202
IF ZFileSysParm > 1 THEN _
RETURN
WasX$ = ZCategoryCode$(CatFound)
CALL DispUpDir (WasX$,SearchString$,SearchDate$,DnldFlag,ZAnsIndex)
IF ZFileSysParm = 4 THEN _ ' RM01209401
RETURN ' RM01209401
CALL CheckTimeRemain (MinsRemaining)
IF ZSubParm = -1 THEN _
ZFileSysParm = 6 : _
RETURN
CALL Carrier
WEND
IF ZSubParm = -1 THEN _
ZFileSysParm = 7 : _
RETURN
IF ZAnsIndex > 255 OR ZRet THEN _
ZLastIndex = 0 : _
RETURN
CALL CmdStackPushPop (2) ' restore dir list list processing
ZActiveFMSDir$ = ""
IF InFMS THEN _
GOTO 20159
IF ZUserSecLevel < ZMinSecToView THEN _
IF ZFileNameHold$ = ZUpldDirCheck$ THEN _
ZFileNameHold$ = "of uploads" : _
GOTO 20172
ZFileNameHold$ = ZUserIn$(ZAnsIndex)
IF ZLimitSearchToFMS THEN _
GOTO 20166
IF NOT ZSearchingAll THEN _
IF ZFileNameHold$ = "ALL" OR ZFileNameHold$ = "A" THEN _
ZSearchingAll = ZTrue : _
GOSUB 21890 : _
GOTO 20157
CALL BadFile (ZFileNameHold$,BadFileNameIndex)
ON BadFileNameIndex GOTO 20163,20172,20176
* INSERTING new line(s)
20177 Call WildShow (WildMarkedFiles$,WildParm) ' WildCard Support ' DGS/WILDCARD/RM03279401
CALL Carrier ' DGS/WILDCARD
IF ZSubParm = -1 THEN _ ' DGS/WILDCARD
EXIT SUB ' RM03139401
RETURN ' RM03129401
* REPLACING old line(s) by new
20178 ZListOnly = ZFalse
ZExtraDnldTime = 0
ZFreeDnld = ZFalse
ZPersonalDnld = ZFalse
RETURN
* ------[ first line different ]------
* INSERTING new line(s)
20179 ZBatchTransfer = ZFalse ' BTCH174
ZCmdTransfer$ = "" ' BTCH174
CALL KillWork (ZDownloadWorkFile$) ' BTCH174
CALL KillWork (ZDownloadWorkFile$ + ".DET") ' MARK174
CALL KillWork (ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF") ' RM03199401
IF ZCDRom THEN _ ' RM03249401
CALL KillCDWork ' RM03249401
ZErrCode = 0 ' BTCH174
RETURN ' BTCH174
'
' * D - COMMAND FROM FILES MENU (SEARCH FOR FILE TO DOWNLOAD)
'
* REPLACING old line(s) by new
20180 Temp$ = "D"
* ------[ first line different ]------
IF NOT ZGlobalSysOp THEN ' RM032603
ZFileName$ = ZHelpPath$ + "DNMSG.HLP" ' RM032603
CALL Graphic2 (ZFileName$) ' RM032603/RM03199402
IF ZOK THEN _ ' RM03199402
ZNonStop = ZTrue : _ ' RM032603
CALL BufFile2 (ZFileName$, ZWasX) ' RM032603/RM08259301/RM03199402
ZFileName$ = "" ' RM08259301
END IF ' RM03199402
CALL AskItems ("D",Temp$,ZFalse,"file",ZMarkedFiles$,ZPersonalDnld) ' RM01209401
GOSUB 20178
IF ZFileSysParm > 1 THEN _
RETURN
IF ZWasQ = 0 THEN ' BTCH174/RM040301
IF ZHighSpeedTransfer AND UploadFirst THEN _ ' BTCH174/RM040301
ZOutTxt$ = "Continue with transfer ([Y],N)" : _ ' BTCH174/RM040501
ZTurboKey = -ZTurboKeyUser : _ ' BTCH174/RM040501
GOSUB 21668 : _ ' BTCH174/RM040501
IF NOT ZNo THEN _ ' BTCH174/RM040501
UploadFirst = ZFalse : _ ' BTCH174/RM040301
GOTO 20501 ' BTCH174/RM040301
GOSUB 20179 ' BTCH174/RM040301
RETURN ' BTCH174/RM040301
ENDIF ' BTCH174/RM040301
* REPLACING old line(s) by new
20202 IF (ZTimeLock AND 2) AND (NOT TimeLockExempt) AND NOT ZHasPrivDoor THEN _
CALL TimeLock : _
IF NOT ZOK THEN _
RETURN
LastDnld = ZLastIndex
FirstDnld = ZAnsIndex
ZCmdTransfer$ = ""
IF ZAutoDownYes THEN _
ZCmdTransfer$ = "X"
ZAutoDownInProgress = ZAutoDownYes
ZAnsIndex = ZLastIndex
GOSUB 20470
* ------[ first line different ]------
LastDnld = LastDnld + (WasX > 0) ' BTCH174/RM082501
BatchBytes# = 0
BatchBlocks# = 0
ZDownFiles = 0
CALL KillWork (ZDownloadWorkFile$) ' BTCH174
CALL KillWork (ZDownloadWorkFile$ + ".DET") ' MARK174
CALL KillWork (ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF") ' RM03199401
IF ZCDRom THEN _ ' RM03249401
CALL KillCDWork ' RM03249401
ZErrCode = 0
ZAnsIndex = FirstDnld
* REPLACING old line(s) by new
20203 IF ZAnsIndex > LastDnld THEN _
GOTO 20204
* ------[ first line different ]------
IF ZMarkedFiles$ <> "" AND ZAnsIndex = FirstDnld THEN ' RM01049401/RM03139401
IF UCASE$(ZUserIn$(LastDnld)) <> "M" AND UCASE$(ZUserIn$(FirstDnld)) <> "M" THEN ' RM01099401
Temp$ = UCASE$(ZUserIn$(FirstDnld)) ' RM04099401
ZLastIndex = LastDnld ' BTCH174/RM082802
CALL SkipLine (1) ' RM01049401
ZOutTxt$ = ZFG5$ + "ADD your Marked Files to this DOWNLOAD? [Y]" + _
ZFG5$ + ",N " + ZEmphasizeOff$ ' RM01049401/DGS011201-DS/RM03069401
GOSUB 21660 ' RM01049401
IF NOT ZNo THEN _ ' RM01049401
ZWasZ$ = "M" : _ ' RM01049401
ZLastIndex = ZLastIndex + 1 : _ ' RM01049401
LastDnld = ZLastIndex : _ ' RM01049401
CALL UnMarkItems (ZMarkedFiles$,LastDnld,ZLastIndex,FoundMarked,ZTrue) : _ ' RM01049401
LastDnld = ZLastIndex
ZUserIn$(FirstDnld) = Temp$ ' RM04099401
ZAnsIndex = FirstDnld ' RM04099401
END IF ' RM04099401
END IF ' RM04099401
GOSUB 20470
GOSUB 20205
IF ReStart THEN _
Restart = ZFalse : _
GOTO 20202
' ZCmdTransfer$ = ZWasFT$
CALL Line25
IF ZFileSysParm > 1 OR ZInternalProt$ = "N" THEN _
GOTO 20204
ZAnsIndex = ZAnsIndex + 1
GOTO 20203
* REPLACING old line(s) by new
* ------[ first line different ]------
20204 ZLastIndex = 0 ' BTCH174
LastDnld = 0 ' BTCH174
GOSUB 20179 ' BTCH174
RETURN
' ' WILD
' * WildCard Download Support ' WILD
' ' WILD
* REPLACING old line(s) by new
* ------[ first line different ]------
20205 ZFileName$ = ZUserIn$(ZAnsIndex)
CALL Remove (ZFileName$,", ")
CALL AllCaps (ZFileName$) ' BTCH174
IF INSTR(ZMarkedFiles$,ZFileName$) > 0 THEN _ ' RM01069401
CALL QuickTPut1 (ZFG3$ + ZFileName$ + ZFG5$ + " is already " + _
"marked for downloading!" + ZEmphasizeOff$) : _ ' RM01069401
RETURN ' RM01069401
IF INSTR(ZFileName$,"*") <> 0 THEN ' WILD
FileName$ = ZFileName$ ' RM03139401
IF INSTR(FileName$, ".") = 0 THEN ' DGS020701-DS/RM03139401
FileName$ = FileName$ + ".*" ' DGS020701-DS/RM03139401
END IF ' DGS020701-DS
IF ZWildDownOK AND NOT ZPersonalDnld THEN ' WILD
ZSuspendAutoLogoff = ZTrue ' RM03279401
CALL WildDown(FileName$,WildMarkedFiles$,ZFastFileList$,Found) ' WILD/RM03139401/RM03279401
IF Found THEN ' WILD
CALL CmdStackPushPop (1) ' RM03129401
GOSUB 20177 ' DD030301/WILD/RM03129401
CALL CmdStackPushPop (2) ' RM03129401
CALL KillWork (ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF") ' DGS102702-DS
IF WildParm <> 0 THEN ' RM03129401
ZWasZ$ = "M" ' RM03129401
CALL UnMarkItems (WildMarkedFiles$,ZAnsIndex,LastDnld,FoundMarked,ZTrue) ' RM03129401/RM03279401
ZFileName$ = ZUserIn$(ZAnsIndex) ' RM03139401
ZLastIndex = LastDnld ' RM03139401
ELSE ' RM03139401
FirstDnld = FirstDnld + 1 ' RM03139401
END IF ' RM03129401
END IF ' WILD
ZSuspendAutoLogoff = ZFalse ' RM03279401
END IF ' WILD
END IF ' WILD
MarkingTime = (ZAnsIndex = FirstDnld OR NOT ZConcatFIles)
ZViolation$ = "Download "
IF ZListOnly THEN _
CALL BreakFileName (ZFileName$,DR$,ZWasY$,WasX$,ZTrue) : _
ZFileNameHold$ = ZWasY$ + _
WasX$ : _
GOTO 20235
ZFileNameHold$ = ZFileName$
CALL BadFile (ZFileName$,BadFileNameIndex)
ON BadFileNameIndex GOTO 20220,20231,20233
* REPLACING old line(s) by new
20225 IF ZOK THEN _
GOTO 20235
* ------[ first line different ]------
IF ZAbort THEN _ ' RM03219401
ZAbort = ZFalse : _ ' RM03219401
IF ZBatchTransfer AND ZAnsIndex >= LastDnld THEN _ ' RM03219401
GOTO 20262 _ ' RM03219401
ELSE ZAutoLogoffReq = ZFalse : _ ' RM03219401
RETURN ' RM03219401
IF ZDotFlag THEN _
RETURN
IF FileNameAlt$ <> "" THEN _
ZFileName$ = FileNameAlt$ : _
FileNameAlt$ = "" : _
ZFileNameHold$ = ZFileName$ : _
GOTO 20222
* REPLACING old line(s) by new
20231 ZOutTxt$ = ZFileNameHold$ + _
" not found!"
CALL UpdtCalr (ZOutTxt$,2)
IF ZAutoDownInProgress THEN _
ZOutTxt$ = ZOutTxt$ + _
" during AUTODOWNLOAD" : _
GOSUB 21640 : _
RETURN
ZOutTxt$ = ZOutTxt$ + _
" Correct name"+ZPressEnterExpert$
ZSuspendAutoLogoff = ZTrue
GOSUB 21660
ZSuspendAutoLogoff = ZFalse
IF ZFileSysParm > 1 THEN _
RETURN
IF ZWasQ=0 THEN _
IF ZBatchTransfer AND ZAnsIndex >= LastDnld THEN _
GOTO 20262 _
* ------[ first line different ]------
ELSE ZAutoLogoffReq = ZFalse : _
RETURN
ZUserIn$(ZAnsIndex) = ZUserIn$(1)
GOTO 20205
* REPLACING old line(s) by new
20247 ZWasDF = 0
CALL BreakFileName (ZFileName$,DR$,WasX$,Extension$,ZFalse)
IF ZAutoDownInProgress THEN _
ZUserIn$(ZAnsIndex) = WasX$ + "." + Extension$ : _
ZOutTxt$ = "Transferring -- " + _
ZUserIn$(ZAnsIndex) : _
GOSUB 21640 : _
IF ZFileSysParm > 1 THEN _
RETURN
* ------[ first line different ]------
IF INSTR("...WRK.FW .ARC.EXE.COM.OBJ.WKS.LBR.ZIP.PAK.ZOO.LZH.ARJ.GIF.MAC.","."+Extension$+".") > 2 OR _ ' BTCH174/RM040601
MID$(Extension$,2,1) = "Q" OR _
(ZRequireNonASCII AND Extension$ = "BAS") THEN _
ZWasDF = ZTrue
* REPLACING old line(s) by new
20248 ZOutTxt$ = ""
IF ZBatchTransfer THEN _
IF ZAnsIndex < LastDnld THEN _
GOTO 20260
* ------[ first line different ]------
IF ZHighSpeedTransfer AND UploadFirst THEN _ ' BTCH174
GOTO 20260 ' BTCH174
CALL XferType (2,ZTrue)
IF ZFF THEN _
GOTO 20260
CALL XferType (1,ZTrue)
IF ZSubParm = -1 THEN _
ZFileSysParm = 7 : _
RETURN
* REPLACING old line(s) by new
* ------[ first line different ]------
20260 IF ZHighSpeedTransfer AND NOT UploadFirst THEN _ ' BTCH174
DownLoadFirst = ZTrue ' BTCH174
ZTransferFunction = 1
GOSUB 21790
IF ZFileSysParm > 1 THEN _
RETURN
ZBatchTransfer = (ZBatchProto AND (LastDnld > FirstDnld))
IF ZBatchTransfer AND ZCmdTransfer$ = "" THEN _
ZCmdTransfer$ = ZWasFT$
ON INSTR("AXCYN",ZInternalProt$) GOTO _
20340, _ ' ASCII DOWNLOAD
20290, _ ' Xmodem
20290, _ ' Xmodem CRC
20270, _ ' YMODEM
21700 ' NONE - CANCEL
'
' * EXTERNAL Protocol Downloads/Uploads
'
* REPLACING old line(s) by new
20262 IF ZBatchTransfer THEN _
IF ZAnsIndex < LastDnld THEN _
RETURN _
ELSE ZBlocksInFile# = BatchBlocks# : _
ZBytesInFile# = BatchBytes# : _
ZNumDnldBytes! = BatchBytes# : _
IF ZBytesInFile# < 1 THEN _
RETURN _
ELSE GOSUB 20780 : _
IF ZFileSysParm > 1 OR NOT ZOK THEN _
RETURN
IF ZAutoDownInProgress THEN _
CALL SendName : _
IF ZAbort THEN _
DnldCompleted = ZFalse : _
GOSUB 21760 : _
RETURN
GOSUB 20337
* ------[ first line different ]------
IF BatchOff <> ZFalse THEN _ ' BTCH174
ZAutoLogoffReq = BatchOff ' BTCH174
IF ZHighSpeedTransfer AND DownloadFirst THEN _ ' BTCH174
CALL SkipLine (1) : _ ' BTCH174
ZSuspendAutoLogoff = ZTrue : _ ' RM101501
LastDnld = 0 : _ ' RM03069401
GOTO 20400 ' BTCH174
* REPLACING old line(s) by new
* ------[ first line different ]------
20263 IF ZWasBatchTransfer THEN _ ' BTCH174
CALL UpdtCalr ("Batch Upload started at " + ZTime$,2) ' BTCH174
CALL Transfer
IF ZExtFileSysProcessor THEN _ ' RM02269401
CALL KillWork ("XFER-" + ZNodeID$ + ".DEF") : _ ' RM02279401
ZGetDescAfterTransfer = ZGetDescAfterTransferSave : _ ' RM02269401
RETURN ' RM02269401
IF ZPrivateDoor THEN _
ZCmdTransfer$ = ZWasFT$ : _
CALL XferType (2,ZTrue) : _
ZCmdTransfer$ = ""
CALL OpenWork (2,"XFER-" + ZNodeID$ + ".DEF")
IF ZErrCode <> 0 THEN _
GOTO 20267
CALL ReadParms (ZWorkAra$(), ZFailureParm, 1)
IF ZErrCode <> 0 THEN _
CLOSE 2 : _ ' BTCH174
CALL KillWork ("XFER-" + ZNodeID$ + ".DEF") : _ ' BTCH174
GOTO 20267
CLOSE 2
IF NOT ZFakeXRpt THEN _ ' XFER174
CALL TStats ' XFER174
IF ZHighSpeedTransfer OR ZWasBatchTransfer THEN _ ' BTCH174/RM082902
CALL HSFile ' BTCH174
CALL KillWork ("XFER-" + ZNodeID$ + ".DEF")
* REPLACING old line(s) by new
20265 IF ZTransferFunction = 2 THEN _
IF INSTR(ZWorkAra$(ZFailureParm),ZFailureString$) <> 1 THEN _
* ------[ first line different ]------
CALL QuickTPut1 (ZEmphasizeOn$ + "UPLOAD successful!" + ZEmphasizeOff$) : _ ' BTCH174
GOTO 20700 _
ELSE _
AutoLogoffReq = ZFalse : _ ' BTCH174
GOTO 20730 ' BTCH174
IF ZTransferFunction = 1 THEN _
DnldCompleted = (INSTR(ZWorkAra$(ZFailureParm),ZFailureString$) <> 1)
GOSUB 21760
CALL Carrier
IF ZSubParm = -1 THEN _
ZFileSysParm = 7
RETURN
'
' * XFER FILE NOT Found
'
* REPLACING old line(s) by new
20330 IF ZAutoDownInProgress THEN _
RETURN
GOSUB 20337
* ------[ first line different ]------
ZOutTxt$ = ZFG6$ + ZProtoPrompt$ +ZFG7$ + _
" " + WasA1$ + ZFG6$ + _
" of " + ZFG7$ + _
ZFileNameHold$ + ZFG6$ + _
" ready. <Ctrl X> aborts" + ZEmphasizeOff$ ' RM052301
GOSUB 21650
* REPLACING old line(s) by new
* ------[ first line different ]------
20400 ZUpBatchTransfer = ZFalse ' BTCH174
ZWasBatchTransfer = ZFalse ' BTCH174
ZGetExtDesc = ZFalse ' BTCH174
ZWhoToSet = ZFalse ' BTCH174
IF ZHighSpeedTransfer AND DownloadFirst THEN _ ' RM03069401
ZAnsIndex = ZLastIndex ' RM03069401
IF DownloadFirst THEN _ ' RM101501
BatchOff = ZAutoLogoffReq ' BTCH174
Temp$ = "U" ' BTCH174
IF NOT ZSysOp THEN ' UPMSG2/RM022103
ZFileName$ = ZHelpPath$ + "UPMSG.HLP" ' UPMSG2
CALL Graphic2 (ZFileName$) ' UPMSG2/RM03199402
IF ZOK THEN _ ' RM03199402
ZNonStop = ZTrue : _ ' UPMSG2
CALL BufFile2 (ZFileName$, ZWasX) : _ ' UPMSG2/RM03199402
CALL Delaytime (2) ' RM021301/RM08259301
ZFileName$ = "" ' RM08259301
END IF ' RM03199402
CALL AskItems ("U",Temp$,ZFalse,"file",ZMarkedFiles$,ZFalse) ' BTCH174/RM01209401
IF ZFileSysParm > 1 THEN _ ' BTCH174
RETURN ' BTCH174
IF ZWasQ = 0 THEN ' BTCH174/RM040501
IF ZHighSpeedTransfer AND DownloadFirst THEN _ ' BTCH174/RM040301
ZOutTxt$ = "Continue with transfer ([Y],N)" : _ ' BTCH174/RM040501
ZTurboKey = -ZTurboKeyUser : _ ' BTCH174/RM040501
GOSUB 21668 : _ ' BTCH174/RM040501
IF NOT ZNo THEN _ ' BTCH174/RM040501
DownloadFirst = ZFalse : _ ' BTCH174/RM040301
GOTO 20263 ' BTCH174/RM040301
LastDnld = 0 ' RM03069401
RETURN ' BTCH174/RM040301
ENDIF ' BTCH174/RM040501
FirstUpld = ZAnsIndex ' BTCH174
LastUpld = ZLastIndex ' BTCH174
CALL KillWork (ZNodeWorkFile$) ' BTCH174
CALL KillWork (ZUploadWorkFile$) ' BTCH174
CALL KillWork (ZNodeWorkDrvPath$ + "NODE" + ZNodeID$ + "FUP.LST") ' BTCH174
CALL KillWork (ZNodeWorkDrvPath$ + "NODE" + ZNodeID$ + "DIZ") ' BTCH174/RM102901
ZErrCode = 0 ' BTCH174
ZAlreadyGiven = ZFalse ' BTCH174
CALL TimeBack (1) ' BTCH174
GOTO 20430
* REPLACING old line(s) by new
* ------[ first line different ]------
20420 RETURN ' BTCH174
'
' * SEARCH FOR DUPLICATE FILENAME
'
* REPLACING old line(s) by new
20430 ZAnsIndex = ZLastIndex
* ------[ first line different ]------
GOSUB 20470 ' BTCH174
ZLastIndex = ZLastIndex + (WasX > 0)
LastUpld = ZLastIndex
IF FirstUpld <> LastUpld THEN _ ' BTCH174
ZUpBatchTransfer = ZTrue ' BTCH174
IF NOT DownloadFirst THEN _ ' BTCH174/RM101501
BatchOff = ZAutoLogoffReq ' BTCH174
ZAutoLogoffReq = 0 ' BTCH174
* REPLACING old line(s) by new
20432 FOR ZAnsIndex = FirstUpld TO LastUpld
IndexSave = ZAnsIndex
GOSUB 20471
GOSUB 20435
FirstUpld = FirstUpld + 1
IF ZFileSysParm > 1 THEN _
IndexSave = LastUpld + 1
ZAnsIndex = IndexSave
NEXT
* ------[ first line different ]------
ZWasBatchTransfer = ZFalse ' BTCH174
ZUpBatchTransfer = ZFalse ' BTCH174
ZWhoToSet = ZFalse ' BTCH174/RM102701
GOSUB 20179 ' BTCH174
RETURN
* REPLACING old line(s) by new
20435 ZFileNameHold$ = ZUserIn$(ZAnsIndex)
ExtSrch = ZFalse
IF INSTR(ZFileNameHold$,".") = 0 THEN _
ZFileNameHold$ = ZFileNameHold$ + "." + ZDefaultExtension$
CALL AllCaps(ZFileNameHold$)
ZFileName$ = ZFileNameHold$
* ------[ first line different ]------
CALL NoExt (ZFileName$,Found) ' NEXT174/RM112001
IF Found THEN _ ' NEXT174/RM112001
RETURN ' NEXT174/RM112001
ZViolation$ = "Upload "
CALL NoPath (ZFileName$,BadFileNameIndex)
IF BadFileNameIndex THEN _
GOTO 20451
CALL BadFile (ZFileName$,BadFileNameIndex)
ON BadFileNameIndex GOTO 20440,20451,20515
* REPLACING old line(s) by new
20440 CALL RotorsDir (ZFileName$,ZSubDir$(),ZSubDirCount,ZTrue,"U")
* ------[ first line different ]------
IF NOT ZOK AND (ZSysOp OR ZUserSecLevel >= ZMinSecPersUpld) THEN ' RM01209401
CALL BreakFileName (ZFileName$,DR$,WasX$,Extension$,ZTrue) ' RM01209401
Temp$ = ZPersonalDrvPath$ + WasX$ + Extension$ ' RM01209401
CALL FindFile (Temp$,ZOK) ' RM01209401
IF ZOK THEN _ ' RM01219401
ZFileName$ = Temp$ ' RM01219401
END IF ' RM01219401
IF ZAbort THEN _ ' RM03219401
GOTO 20476 ' RM03219401
* REPLACING old line(s) by new
20450 IF Extension$ <> Check$ THEN _
CALL RotorsDir (WasX$ + "." + Check$,ZSubDir$(),ZSubDirCount,ZTrue,"U") : _
IF ZOK THEN _
ExtSrch = ZTrue : _
GOTO 20452
* ------[ first line different ]------
IF ZAbort THEN _ ' RM03219401
GOTO 20476 ' RM03219401
GOTO 20447
* REPLACING old line(s) by new
* ------[ first line different ]------
20454 CALL QuickTPut1 (ZFG6$ + "Thanks, but we already have " + ZFG7$ + _
ZFileNameHold$ + ZEmphasizeOff$) ' RM052001
CALL UpdtCalr ("Upload duplicate " + ZFileNameHold$,1)
RETURN
* REPLACING old line(s) by new
20455 ZOutTxt$ = "Add new directory entry (Y,[N])"
ZTurboKey = - ZTurboKeyUser
GOSUB 21660
IF ZFileSysParm > 1 THEN _
RETURN
IF NOT ZYes THEN _
RETURN
* ------[ first line different ]------
ZAddingDescOnly = ZTrue ' RM01289401
ZUpBatchTransfer = ZFalse ' BTCH174/RM112501
ZWasBatchTransfer = ZFalse ' BTCH174
ZWasFT$ = "l"
IF ZGetDescAfterTransfer THEN _ ' RM02269401
CALL FileLister (1) _ ' RM02269401
ELSE _ ' RM02269401
CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(),ZLinesInMsg,1) ' BTCH174
IF ZAbort THEN _ ' BTCH174/RM102201
ZAddingDescOnly = ZFalse : _ ' BTCH174/RM102201/RM01289401
ZAbort = ZFalse : _ ' BTCH174/RM102201
RETURN ' BTCH174/RM102201
IF ZWhoTo$ = "" AND NOT ZGetDescAfterTransfer THEN _ ' BTCH174/RM103101/RM02269401
IndexSave = LastUpld + 1 : _ ' BTCH174/RM103101
RETURN ' BTCH174/RM102701
GOSUB 20702
ZWhoToSet = ZFalse ' BTCH174/RM112501
RETURN
* REPLACING old line(s) by new
20460 ' ' BTCH174/RM102701
* REPLACING old line(s) by new
20475 ZWasZ$ = ZUpldDriveFile$
CALL FindFree
IF VAL(ZFreeSpace$) < 4096 THEN _
GOSUB 21895 : _
IndexSave = ZLastIndex + 1 : _
RETURN
* ------[ first line different ]------
IF (NOT ZUpBatchTransfer) OR (ZUpBatchTransfer AND ZAnsIndex >= LastUpld) THEN _ ' RM03019401
ZOutTxt$ = "Upload disk has" + _
ZFreeSpace$ : _ ' RM03019401
GOSUB 21640 _
ELSE _ ' RM03019401
CALL SkipLine (1) ' RM03019401
IF ZFileSysParm > 1 THEN _
RETURN
IF ZGetDescAfterTransfer THEN _ ' RM02269401
CALL FileLister (1) _ ' RM02269401
ELSE _ ' RM02269401
CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(),ZLinesInMsg,1) ' BTCH174
* INSERTING new line(s)
20476 IF ZAbort THEN _ ' BTCH174
IF NOT ZUpBatchTransfer OR (ZUpBatchTransfer AND ZAnsIndex = LastUpld) THEN _ ' BTCH174
GOSUB 20179 : _ ' BTCH174
ZAbort = ZFalse : _ ' BTCH174
RETURN _ ' BTCH174
ELSE _ ' BTCH174
ZAbort = ZFalse : _ ' BTCH174
RETURN ' BTCH174
IF NOT ZGetDescAfterTransfer THEN _ ' RM02269401
IF ZWhoTo$ = "" THEN _ ' BTCH174/RM103101
IndexSave = LastUpld + 1 : _ ' BTCH174/RM103101
RETURN ' BTCH174/RM102701
IF ZUpBatchTransfer AND ZAnsIndex < LastUpld THEN _ ' BTCH174
RETURN ' BTCH174
ZLine25$ = "(U) " + _
ZFileNameHold$
ZSubParm = 2
CALL Line25
ZOutTxt$ = ""
ZOK = ZTrue
* REPLACING old line(s) by new
* ------[ first line different ]------
20477 IF ZHighSpeedTransfer and DownloadFirst THEN _ ' BTCH174
GOTO 20500 ' BTCH174
CALL XferType (2,ZTrue) ' BTCH174
IF ZFF THEN _
GOTO 20500
CALL XferType (1,ZTrue)
IF ZSubParm = -1 THEN _
ZFileSysParm = 7 : _
RETURN
* REPLACING old line(s) by new
* ------[ first line different ]------
20500 IF ZHighSpeedTransfer THEN ' BTCH174
IF NOT DownloadFirst THEN _ ' BTCH174
UploadFirst = ZTrue : _ ' BTCH174
CALL SkipLine (1) : _ ' BTCH174
GOTO 20180 ' BTCH174
ZAutoLogoffReq = BatchOff ' RM101501
ZSuspendAutoLogoff = ZFalse ' RM101501
GOTO 20263 ' BTCH174
END IF ' BTCH174
* INSERTING new line(s)
20501 ZTransferFunction = 2 ' BTCH174/RM040501
ZAutoDownInProgress = ZFalse
GOSUB 21790
IF ZFileSysParm > 1 THEN _
RETURN
IF ZInternalProt$ <> "N" THEN _
IF NOT ZGetDescAfterTransfer THEN _ ' RM02269401
IF ZWhoTo$ = "" THEN _ ' BTCH174/RM102701
GOTO 20735
ON INSTR("AXCYN",ZInternalProt$) GOTO _
20560, _ ' ASCII UPLOAD
20542, _ ' Xmodem
20542, _ ' Xmodem CRC
20542, _ ' YMODEM
20735 ' NONE - CANCEL
GOTO 20261
* REPLACING old line(s) by new
20560 LineACK = (ZDefaultLineACK$ <> "")
IF LineACK THEN _
ZOutTxt$ = "Acknowledge each line ([Y],N)" : _
ZTurboKey = - ZTurboKeyUser : _
LineACK = NOT ZNo : _
GOSUB 21660 : _
IF ZFileSysParm > 1 THEN _
RETURN
GOSUB 20337
CALL QuickTPut1 ("Transfer MUST end with a <Ctrl-K>")
* ------[ first line different ]------
CALL QuickTPut1 (ZFG6$ + ZProtoPrompt$ + ZFG7$ + " RECEIVE" + ZFG6$ + _
" of " + ZFG7$ + ZFileNameHold$ + ZFG6$ + " ready" + ZEmphasizeOff$) ' RM052301
ZOK = ZFalse
XOff = ZFalse
CALL OpenOutW(ZFileName$)
IF ZErrCode <> 0 AND ZErrCode <> 53 THEN _
ZWasEL = 20560 : _
GOTO 21900
GOSUB 20510
IF ZFileSysParm > 1 THEN _
RETURN
* REPLACING old line(s) by new
* ------[ first line different ]------
20700 IF ZExtFileSysProcessor THEN _ ' RM02269401
RETURN ' RM02269401
GOSUB 21780 ' RM02269401
IF ZFileSysParm > 1 THEN _
RETURN
* REPLACING old line(s) by new
* ------[ first line different ]------
20702 CALL FileLister (2) ' BTCH174/RM111502
IF NOT ZAddingDescOnly THEN _ ' RM01289401
ZUpldSubDir$ = ZUpldSubDirTemp$ ' RM01219401/RM01289401
* INSERTING new line(s)
20703 IF NOT ZGetExtDesc THEN _ ' BTCH174
ZPrivateDoor = ZFalse : _
GOTO 20710
ZMsgHeader$ = "Extended Description for " + ZFileNameHold$
ZSysopComment = ZTrue
ZMaxMsgLines = ZMaxExtendedLines
WasLL = ZRightMargin
ZRightMargin = 30 + ZMaxDescLen
IF ZRightMargin > 74 THEN _
ZRightMargin = 74
MParm = 12 ' RM02279401
CALL MsgSys (MParm, ActionFlag, LogOff$, LogonMailNew, UtilMarginChange) ' RM02279401
* REPLACING old line(s) by new
20705 ZMaxMsgLines = ZMaxMsgLinesDef
ZRightMargin = WasLL
* ------[ first line different ]------
CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(),ZLinesInMsg,3) ' BTCH174
* REPLACING old line(s) by new
* ------[ first line different ]------
20710 ZAddingDescOnly = ZFalse ' RM01289401
RETURN ' BTCH174/RM101501
* REPLACING old line(s) by new
20730 GOSUB 21780
* ------[ first line different ]------
CALL QuickTPut1 (ZEmphasizeOn$ + "Upload aborted" + ZEmphasizeOff$) ' RM052001
LastUpld = 0
ZPrivateDoor = ZFalse
* REPLACING old line(s) by new
* ------[ first line different ]------
20750 IF ZCDRom AND ZUseCDWorkDrive THEN ' RM03239401/RM03299401
CALL SkipLine (1) ' RM03249401
CALL QuickTPut1 (ZFG6$ + "Please be patient..Copying " + ZFG7$ + _
ZFileNameHold$ + ZFG6$ + " from CD-ROM to Download Directory..." + ZEmphasizeOff$) ' RM03239401
CALL SkipLine (1) ' RM03249401
X = 1 ' RM03259402
WasX = 0 ' RM04099401
NoticeSent = ZFalse ' RM04099401
* INSERTING new line(s)
20754 CALL Findfile ("CDWORK" + ZLibDrive$ + ".WRK",Found) ' RM03259402
IF Found THEN ' RM03259402
CALL Carrier ' RM04099401
IF ZSubParm = -1 THEN _ ' RM04099401
EXIT SUB ' RM04099401
IF NOT NoticeSent THEN _ ' RM04099401
CALL QuickTPut (ZFG3$ + "CD ROM Drive is busy...please wait" + _
ZEmphasizeOff$,0) : _ ' RM04099401
NoticeSent = ZTrue ' RM04099401
CALL Delaytime (1) ' RM03259402
CALL MarkTime (WasX) ' RM04099401
X = X + 1 ' RM03259402
IF X = 30 THEN _ ' Allow 30 seconds for clear ' RM03259402
CALL QuickTPut1 (ZEmphasizeOn$ + "File " + ZFileNameHold$ + _
" currently unavailable..notify SysOp!" + _
ZEmphasizeOff$) : _ ' RM03259402
GOTO 20792 _ ' RM03259402
ELSE _ ' RM03259402
GOTO 20754 ' RM03259402
END IF ' RM03259402
CALL CopyFile (ZFileName$,ZCDRomWorkDir$,1) ' RM03239401
END IF ' RM03259401
ZStartOfHeader$ = CHR$(1 - (ZInternalProt$ = "Y")) ' RM04059401
CALL OpenRSeq (ZFileName$,MaxBlock,ZWasDF,ZFLen,2) ' RM01139402
* REPLACING old line(s) by new
20760 IF ZErrCode <> 0 THEN _
CALL QuickTPut1 ("Unable to access "+ZFileNameHold$) : _
CALL UpdtCalr ("Unable to access "+ZFileName$,2) : _
ZOK = ZFalse : _
ZErrCode = 0 : _
ZBytesInFile# = 0 : _
RETURN
ZBytesInFile# = LOF(2)
ZNumDnldBytes! = LOF(2)
ZOK = ZTrue
IF SizeOnly THEN _
SizeOnly = ZFalse : _
RETURN
ZBlocksInFile# = MaxBlock
* ------[ first line different ]------
CALL OpenWorkB (10,ZDownloadWorkFile$) ' BTCH174
CALL PrintWorkB (10,ZFileName$) ' BTCH174
CLOSE 10 ' BTCH174
Blocks# = ZBlocksInFile# / _
VAL(MID$("00000300045012002400480072009601200144016801920216024002640288038405760", -4 * ZCBPS, 4)) ' RM08269301/BB09039301/RM11279301
Blocks# = Blocks# * ZFLen / ZSpeedFactor! ' MARK174
Estimate$ = RIGHT$(SPACE$(5) + STR$(INT(Blocks#/60)),5) + ":" + _
RIGHT$(STRING$(2,48) + _
LTRIM$(STR$(INT(Blocks#-(INT(Blocks# / 60) * 60)))),2) ' MARK174
CALL OpenWorkB (11,ZDownloadWorkFile$ + ".DET") ' MARK174
CALL PrintWorkB (11,ZFilenameHold$ + SPACE$(14-LEN(ZFilenameHold$)) + _ ' RM05199301
STR$(ZBytesInFile#) + _
SPACE$(12-LEN(STR$(ZBytesInFile#))) + _
Estimate$) ' MARK174/RM05199301
CLOSE 11 ' MARK174
IF ZBatchTransfer THEN _ ' BTCH174
BatchBlocks# = BatchBlocks# + ZBlocksInFile# : _
BatchBytes# = BatchBytes# + ZBytesInFile# : _
ZDownFiles = ZDownFiles + 1 : _
RETURN
ZDownFiles = 1
* REPLACING old line(s) by new
20780 ZOutTxt$ = "File Size :"
ZOK = ZTrue
IF ZBlockSize > 0 THEN _
* ------[ first line different ]------
ZOutTxt$ = ZFG5$ + ZOutTxt$ + ZFG7$ + _
STR$(FIX(ZBlocksInFile#)) + ZFG5$ + _
" blocks " ' RM052001
* REPLACING old line(s) by new
20785 ZBlocksInFile# = ZBlocksInFile# / _
* ------[ first line different ]------
VAL(MID$("00000300045012002400480072009601200144016801920216024002640288038405760", -4 * ZCBPS, 4)) ' BB08219301/BB09039301/RM11279301
ZBlocksInFile# = ZBlocksInFile# * ZFLen / ZSpeedFactor!
IF (ZAnsIndex > 1 AND ZConcatFIles) THEN _
RETURN
ZOutTxt$ = ZOutTxt$ + ZFG7$ + _
STR$(ZBytesInFile#) + ZFG5$ + _
" bytes" + ZEmphasizeOff$ ' RM052001
GOSUB 21650
IF ZFileSysParm > 1 THEN _
RETURN
IF ZBytesInFile# < 1 THEN _
RETURN
* REPLACING old line(s) by new
20790 ZSubParm = 2
CALL Line25
* ------[ first line different ]------
ZOutTxt$ = ZFG5$ + "Transfer Time:" + ZFG7$ + _
STR$(INT(ZBlocksInFile# / 60)) + ZFG5$ + _
" min," + ZFG7$ + _
STR$(INT(ZBlocksInFile# - (INT(ZBlocksInFile# / 60) * 60))) + _
ZFG5$ + " sec (approx)" + ZEmphasizeOff$ ' RM052001
GOSUB 21650
IF ZFileSysParm > 1 THEN _
RETURN
* REPLACING old line(s) by new
20791 CALL CheckTimeRemain (MinsRemaining)
IF ZSubParm = -1 THEN _
ZFileSysParm = 6 : _
RETURN
ZOK = ZTrue
Temp = ZExtraDnldTime
CALL ChkAddedTime (Temp)
Temp = MinsRemaining + Temp
ZWasA = INT(ZBlocksInFile# / 60) + 1
IF ZWasA <= Temp THEN _
GOTO 20793
* ------[ first line different ]------
ZOutTxt$ = ZFG5$ + "Not enough time left! Need" + ZFG7$ + STR$(ZWasA) + _
ZFG5$ + " mins. and you have" + ZFG7$ + STR$(Temp) + _
ZFG5$ + " mins." + ZEmphasizeOff$ ' RM052501
CALL QuickTPut1 (ZOutTxt$)
IF ZTimeBankInActive THEN _ ' RM09039301
ZOutTxt$ = ZFG5$ + "Time Bank NOT available at this time!" + ZEmphasizeOff$ : _ ' RM09039301
CALL QuickTPut1 (ZOutTxt$) ' RM09039301
IF NOT ZTimeBankInActive THEN ' BB09039301
IF ZGlobalBankTime + temp > ZWasA THEN _ ' QWK-N-EZ
Temp = ZGlobalBankTime : _ ' QWK-N-EZ
IF Temp > 0 THEN _ ' QWK-N-EZ
ZOutTxt$ = ZFG7$ + _ ' QWK-N-EZ
" - Access the Time Bank ([Y]" + ZFG5$ + ",N) " + _ ' QNQWK-N-EZ
ZEmphasizeOff$ : _ ' QWK-N-EZ
ZTurboKey = -ZTurboKeyUser : _ ' QWK-N-EZ
CALL TGet : _ ' QWK-N-EZ
IF ZSubParm = -1 THEN _ ' QWK-N-EZ
ZFileSysParm = 7 : _ ' QWK-N-EZ/RM03309401
RETURN _ ' QWK-N-EZ
ELSE IF NOT(ZNo) THEN _ ' QWK-N-EZ
CALL BankTime : _ ' QWK-N-EZ
IF ZGlobalBankTime < Temp THEN _ ' QWK-N-EZ
GOTO 20791 ' QWK-N-EZ
ENDIF ' BB09039301
IF ZDownFiles < 2 THEN _
GOTO 20792
ZLastIndex = 0
ZOutTxt$ = "Edit files to download ([Y],N)"
ZTurboKey = - ZTurboKeyUser
GOSUB 21668
IF ZNo THEN _
LastDnld = 0 : _
GOTO 20792
Temp = 0
CALL OpenWork (2,ZDownloadWorkFile$ + ".DET") ' MARK174
CALL SkipLine (2) ' MARK174
CALL QuickTPut1 (ZFG6$ + "Files you marked for DL are as follows ..." + ZCrLF$) ' MARK174
CALL QuickTPut1 (ZFG7$ + "FileName Bytes DL Time" + ZCrLf$ + _
ZFG5$ + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + ZEmphasizeOff$) ' yb040193
WHILE NOT EOF(2) ' MARK174
LINE INPUT #2, FilesMarked$ ' MARK174
CALL QuickTPut1 (ZFG4$ + FilesMarked$ + ZEmphasizeOff$) ' MARK174
WEND ' MARK174
CLOSE #2 ' MARK174
CALL SkipLine (2) ' MARK174
CALL OpenWork (2,ZDownloadWorkFile$) ' BTCH174
WHILE NOT EOF(2)
CALL ReadDir (2,1)
CALL BreakFileName (ZOutTxt$,DR$,ZWasY$,WasX$,ZTrue)
ZFileName$ = ZWasY$ + WasX$
ZOutTxt$ = "Download " + ZFileName$ + " (Y,[N])"
ZTurboKey = - ZTurboKeyUser
GOSUB 21668
IF ZYes THEN _
Temp = Temp + 1 : _
ZOutTxt$(Temp) = ZFileName$
WEND
CLOSE 2
ZCmdTransfer$ = ZWasFT$ ' RM03199401
ZAnsIndex = 1
ReStart = (Temp > 0)
LastDnld = Temp
ZLastIndex = Temp
FOR WasX = 1 TO Temp
ZUserIn$(WasX) = ZOutTxt$(WasX)
NEXT
* REPLACING old line(s) by new
20850 CALL CheckTime (ZDelay!, TempElapsed!, 1)
* ------[ first line different ]------
IF TempElapsed! > 0 THEN _ ' RM08089302
CALL GoIdle : _ ' RM08089302
GOTO 20840
* REPLACING old line(s) by new
20900 WasX$ = ""
Sec = 1
'CALL OpenOutW (ZFileName$)
IF ZFLen > ZWriteBufDef THEN _
WriteBuf = ZFLen _
ELSE WriteBuf = ZWriteBufDef
* ------[ first line different ]------
CALL OpenRSeq (ZFileName$,WasY,ZWasDF,WriteBuf,2) ' RM01139402
IF ZErrCode <> 0 AND ZErrCode <> 53 THEN _
ZWasEL = 20900 : _
GOTO 21900
FIELD #2, WriteBuf AS ZUpldRec$
RecsWrit = 0
NumInBuff = 0
TransferAbort! = TIMER + ZWaitBeforeDisconnect
Year$ = " " + _
CHR$(1) + _
CHR$(2) + _
ZEndTransmission$ + _
ZCancel$
* REPLACING old line(s) by new
21220 IF NumInBuff < 1 THEN _
GOTO 21225
WasWK$ = LEFT$(ZUpldRec$,NumInBuff)
* ------[ first line different ]------
CALL OpenRSeq (ZFileName$,MaxBlock,ZWasDF,128,2) ' RM01139402
IF ZErrCode > 0 THEN _
ZWasEL = 21220 : _
GOTO 21900
LastBlock = MaxBlock
FIELD #2, 128 AS ZUpldRec$
MaxBlock = CDBL(RecsWrit) * WriteBuf / 128
FOR WasI = 1 TO NumInBuff/128
CALL PutWork (MID$(WasWK$,128*WasI-127,128),MaxBlock,128)
IF ZErrCode > 0 THEN _
ZWasEL = 21220 : _
GOTO 21900
NEXT
CLOSE 2
* REPLACING old line(s) by new
21415 CALL EofComm (Char)
IF Char <> -1 THEN _
GOTO 21420
GOSUB 21460
IF ZFileSysParm > 1 THEN _
RETURN
IF ZKeyPressed$ = ZEscape$ THEN _
RETURN
* ------[ first line different ]------
CALL GoIdle ' RM01109403
CALL CheckTime (TransferAbort!, TempElapsed!, 1)
ON ZSubParm GOTO 21415,21455
* REPLACING old line(s) by new
21470 CALL QuickLPrnt ("OK Sent Blk #",WasSO)
* ------[ first line different ]------
CALL GoIdle ' RM01109403
* REPLACING old line(s) by new
21700 ZErrCode = 0
ZLastIndex = 0
* ------[ first line different ]------
GOSUB 20179 ' BTCH174
RETURN
'
' **** COMMON LOCAL DISPLAY PRINT ***
'
' (formerly lines 1315 to 1320 in RBBS-PC.BAS
* REPLACING old line(s) by new
21760 GOSUB 21780
IF ZFileSysParm > 1 THEN _
RETURN
IF ZBatchTransfer THEN _
* ------[ first line different ]------
CALL LinesInFile (ZDownloadWorkFile$,ZDownFiles) _ ' BTCH174
ELSE ZDownFiles = 1
IF NOT DnldCompleted THEN _
ZAutoLogoffReq = ZFalse : _
ZWasDF$ = " Aborted" : _
GOTO 21768
CALL LogPDown (ZPersonalDnld,1+ZAnsIndex-FirstDnld)
WasX = ((ZRatioRestrict# > 0) AND ZEnforceRatios AND ZFreeDnld)
IF NOT WasX THEN _
ZDnlds = ZDnlds + ZDownFiles : _
ZGlobalDLToday! = ZGlobalDLToday! + ZDownFiles : _
ZGlobalDnlds = ZGlobalDnlds + ZDownFiles : _
ZDLBytes! = ZDLBytes! + ZNumDnldBytes! : _
ZGlobalDLBytes! = ZGlobalDLBytes! + ZNumDnldBytes! : _
ZDLToday! = ZDLToday! + ZDownFiles : _
ZBytesToday! = ZBytesToday! + ZNumDnldBytes! : _
ZGlobalBytesToday! = ZGlobalBytesToday! + ZNumDnldBytes!
ZNumDnldBytes! = 0
CALL Muzak (6)
ZWasDF$ = " Downloaded"
IF (ZAnsIndex = LastDnld OR NOT ZConcatFIles) THEN _
CALL SkipLine (1) : _
CALL QuickTPut1 (ZFG8$ + "Download successful!" + ZEmphasizeOff$) : _ ' RM052001
IF WasX THEN _
CALL QuickTPut1 (ZFG5$ + "but not counted against ratios" + ZEmphasizeOff$) ' RM052001
* REPLACING old line(s) by new
21770 CALL AMorPM
* ------[ first line different ]------
CALL OpenWork (2,ZDownloadWorkFile$) ' BTCH174
IF ZErrCode > 0 THEN _
RETURN
ZWasQ = 0
WHILE NOT EOF(2)
CALL ReadAny
ZWasQ = ZWasQ + 1
ZUserIn$(ZWasQ) = ZOutTxt$
WEND
* REPLACING old line(s) by new
21772 IF ZWasQ < 1 THEN _
ZBatchTransfer = ZFalse : _
* ------[ first line different ]------
GOTO 21775 ' BTCH174
CALL OpenWork (2,ZUserIn$(ZWasQ))
IF ZErrCode > 0 THEN _
ZErrCode = 0 : _
ZWasQ = ZWasQ - 1 : _
GOTO 21772
ZBytesInFile# = LOF(2)
ZFileName$ = ZUserIn$(ZWasQ)
* REPLACING old line(s) by new
* ------[ first line different ]------
21774 IF ZMenuIndex = 6 AND NOT ZCDRom THEN _ ' RM03259401
IF DnldCompleted THEN _
ZOutTxt$ = WasX$ : _
ZSubParm = 5 : _
CALL Library
* INSERTING new line(s)
21775 IF ZHighSpeedTransfer THEN _ ' BTCH174
GOTO 20700 ' BTCH174
RETURN ' BTCH174
'
' ***** TURN ON INTERMEDIATE ECHO ****
'
' (formerly line 50620 in RBBS-PC.BAS
* REPLACING old line(s) by new
* ------[ first line different ]------
21810 ZOutTxt$ = ZFG9$ + "Search string or filename (wildcards OK), [ENTER]" + _
ZFG9$ + " quits)" + ZEmphasizeOff$ ' RM10079303
ZMacroMin = 99
GOSUB 21668
IF ZWasQ = 0 THEN _
RETURN
* REPLACING old line(s) by new
21820 WasRS$ = ZUserIn$(ZAnsIndex)
* ------[ first line different ]------
IF LEN(WasRS$) > 30 THEN _ ' RM031201
CALL SkipLine (1) : _ ' RM031201
CALL QuickTPut1 (ZFG5$ + "Search String Too Long! (Max. " + _
ZFG7$ + "30" + ZFG5$ + " chrs)" + ZEmphasizeOff$) : _ ' RM031201
ZAnsIndex = ZLastIndex : _ ' RM031201
RETURN ' RM031201
WildSearch = (INSTR(WasRS$,"*") > 0 OR INSTR(WasRS$,"?") > 0)
CALL AllCaps (WasRS$)
IF RIGHT$(WasRS$,1) = "*" THEN _
IF RIGHT$(WasRS$,2) <> ".*" THEN _
WasRS$ = WasRS$ + ".*"
SearchString$ = WasRS$
SearchDate$ = ""
ZJumpSearching = ZFalse
WasA1$ = WasRS$
ZExtendedOff = ZFalse
GOTO 21867
'
' ***** P - personal download ****
'
' (formerly lines 52950 to 52952 in RBBS-PC.BAS
* REPLACING old line(s) by new
21850 IF ZPersonalBegin < 1 OR ZPersonalLen < 1 THEN _
RETURN
DnldFlag = 0
ZPersonalDnld = ZTrue
* ------[ first line different ]------
ZFileWaiting = ZFalse ' RM032601
ZFreeDnld = ZPersonalDnld ' RM032601
ZListOnly = ZPersonalDnld ' RM032601
ZExtraDnldTime = -60 * ZPersonalDnld ' RM032601
* REPLACING old line(s) by new
21852 ZActiveFMSDir$ = ZPersonalDir$
* ------[ first line different ]------
IF ZSysOp THEN _ ' RM02049403
Temp$ = "SYSOP" _ ' RM02049403
ELSE _ ' RM02049403
Temp$ = MID$(ZUserRecord$,ZPersonalBegin,ZPersonalLen) ' RM02049403
CALL PersFile (Temp$,DnldFlag) ' RM02049403
IF ZFileSysParm = 4 THEN _ ' RM01209401
RETURN ' RM01209401
IF ZSubParm = -1 THEN _
ZFileSysParm = 7: _
RETURN
IF ZAnsIndex > ZLastIndex OR ZRet THEN _ ' BTCH174/RM041001
GOTO 21854
ZConcatFIles = ZPersonalConcat
ZStopInterrupts = ZTrue
TimeLockExempt = ZTrue
GOSUB 20202
IF ZFileSysParm > 1 THEN _
GOTO 21854
TimeLockExempt = ZFalse
ZConcatFIles = ZFalse
GOTO 21852
* REPLACING old line(s) by new
* ------[ first line different ]------
21854 GOSUB 20178 ' RM032601
RETURN
'
' * WasN - COMMAND FROM FILES MENU (DISPLAY NEW FILES SINCE Last DIR DISPLAY)
'
' (formerly lines 53000 to 53070 in RBBS-PC.BAS
* REPLACING old line(s) by new
21862 WasA1$ = RIGHT$(ZWasLM$,4) +_
LEFT$(ZWasLM$,2)
* ------[ first line different ]------
ZOutTxt$ = ZFG9$ + "Files on/after MMDDYY, [S]" + ZFG9$ + "ince = " + _
ZFG7$ + WasA1$ + ZEmphasizeOff$ ' RM10079303
GOSUB 21668
CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
IF ZWasQ = 0 OR ZUserIn$(ZAnsIndex) = "S" THEN _
WasRS$ = ZWasLM$ : _
GOTO 21866
* REPLACING old line(s) by new
* ------[ first line different ]------
21867 DirPromptSave$ = ZDirPrompt$ ' RM02049404
ZDirPrompt$ = MID$(ZDirPrompt$,1,(INSTR(ZDirPrompt$,"P") - 1)) + _
MID$(ZDirPrompt$,INSTR(ZDirPrompt$,"P") + 6,LEN(ZDirPrompt$) - (INSTR(ZDirPrompt$,"P") + 5)) ' RM02049404
* INSERTING new line(s)
21869 CALL GetDirs (NOT ZExpertUser)
IF ZWasQ = 0 THEN _
ZDirPrompt$ = DirPromptSave$ : _ ' RM02049404
RETURN
IF ZUserIn$(ZAnsIndex) = "P" THEN _ ' RM02049404
GOTO 21869 ' RM02049404
* REPLACING old line(s) by new
21880 WasQX = ZAnsIndex
GOSUB 20157
IF ZFileSysParm > 1 THEN _
RETURN
ZAnsIndex = ZAnsIndex + 1
IF ZAnsIndex <= ZLastIndex THEN _
GOTO 21875
* ------[ first line different ]------
ZDirPrompt$ = DirPromptSave$ ' RM02049404
ListNew = ZFalse
SearchString$ = ""
SearchDate$ = ""
RETURN
* REPLACING old line(s) by new
* ------[ first line different ]------
21895 CALL QuickTPut1 (ZEmphasizeOn$ + "No room for uploads. Try tomorrow" + ZEmphasizeOff$) ' RM052001
RETURN
'
' * MAIN FILE SYSTEM ERROR TRAP - ALL ERRORS PASS THROUGH THIS ROUTINE
'
' (formerly lines 13000 to 13500 in RBBS-PC.BAS
* REPLACING old line(s) by new
63100 ' $SUBTITLE: 'DoorReturn - Subroutine to process requests from a door'
' $PAGE
'
' NAME -- DoorReturn
'
' INPUTS -- PARAMETER MEANING
' DOUTx.DEF File of requests
'
' OUTPUTS -- ZUserSecLevel Revised Security Level
'
' PURPOSE -- To give Doors a stable way to make requests
' to the host.
'
SUB DoorReturn STATIC
IF NOT ZExitToDoors THEN _
EXIT SUB
CALL OpenUser (ZHighestUserRecord)
FIELD 5, 128 AS ZUserRecord$
FIELD 5,31 AS ZUserName$, _
15 AS ZPswd$, _
2 AS ZSecLevel$, _
14 AS ZUserOption$, _
24 AS ZCityState$, _
* ------[ first line different ]------
1 AS MachineType$, _ ' DROP174
1 AS ZDropTimes$, _ ' DROP174
1 AS ZBankTime$,_
4 AS ZTodayDl$, _
4 AS ZTodayBytes$, _
4 AS ZDlBytes$, _
4 AS ZULBytes$, _
14 AS ZLastDateTimeOn$, _
3 AS ZListNewDate$, _
2 AS ZUserDnlds$, _
2 AS ZUserUplds$, _
2 AS ZElapsedTime$
ZSubParm = 6
CALL FileLock
GET 5,ZUserFileIndex
ZTimesLoggedOn = CVI(MID$(ZUserOption$,1,2))
CALL SetSysOp
CALL SetUserPref
CALL SetUserUpDn
ZGlobalsSet = ZFalse
CALL SetGlobalUpDn
ZElapsedTime = CVI(MID$(ZUserRecord$,127,2))
ZFileName$ = "DOUT" + ZNodeID$ + ".DEF"
CALL FindIt (ZFileName$)
IF NOT ZOK THEN _
GOTO 63197
* REPLACING old line(s) by new
63110 WasX$ = LEFT$(ZOutTxt$(2),1) ' ZWasSL = Security Level
CALL CheckInt (ZOutTxt$(2))
IF ZErrCode > 0 THEN _
GOTO 63105
IF WasX$ = "+" OR WasX$ = "-" THEN _
ZWasA = ZUserSecLevel + ZTestedIntValue _
ELSE ZWasA = ZTestedIntValue
IF ZWasA < ZSysopSecLevel THEN _
ZAdjustedSecurity = (ZWasA <> ZUserSecLevel) : _
IF ZAdjustedSecurity THEN _
ZUserSecLevel = ZWasA : _
MID$(ZUserRecord$,47,2) = MKI$(ZWasA) : _
CALL QuickTPut1 ("Security changed to" + STR$(ZWasA)) : _
* ------[ first line different ]------
CALL UpdtCalr ("Door reset security to "+STR$(ZWasA),2) : _ ' SS01229401
CALL SetPrivileges ' SS01229401
GOTO 63105
* DELETING old line(s)
63200
63285
63286
63287
63288
63289
* REPLACING old line(s) by new
63310 ' $SUBTITLE: 'RestoreCom - sub to restore comm port'
' $PAGE
'
' NAME -- RestoreCom
'
' INPUTS -- none
'
' OUTPUTS -- none
'
' PURPOSE -- To restore communications port after an external
' program may have left it in altered state
'
* ------[ first line different ]------
SUB RestoreCom ' RM11159302
Parity$ = MID$(",N,8,1,E,7,1",7 + 6 * ZEightBit,6)
IF ZLocalUser THEN _
EXIT SUB
CALL SetBaud
IF NOT ZFossil THEN _
CALL OpenCom(ZTalkToModemAt$,Parity$)
END SUB
* DELETING old line(s)
63320
* REPLACING old line(s) by new
63330 ' $SUBTITLE: 'ReadMacro - sub to read macro'
' $PAGE
'
' NAME -- ReadMacro
'
' INPUTS -- PARAMETER MEANING
'
' OUTPUTS -- ZOutTxt$ LINE TO PROCESS IN MACRO
' ZMacroActive FLAG WHETHER IN A MACRO
'
' PURPOSE -- Reads in a line from macro file (#6) and processes
' macro commands, which are:
' *0 - display what follows, no carriage return
' *1 - display what follows with carriage return
' *B - display block that follows
' *F - display File
' WT - wait specified # of seconds
' >> - append following block to specified file
' ST - stack following (with carriage return)
' ON - define case
' == - case value that applies to following block
' M! - execute following macro
' M@ - abort macro processing
' EY - Echo on (yes)
' EN - Echo off (no)
' /* - comment line skipped in processing
' TK - Turbo key on (if user preference)
' << - Read from file into a form
' := - Assign value to work variable
' LO - Set the location of a file
* ------[ first line different ]------
' AT - Abort a file transfer ' RM03219401
'
SUB ReadMacro STATIC
IF ZMacroTemplate$ <> "" THEN _
GOTO 63392
IF ZDistantTGet = 2 THEN _
GOTO 63349
* REPLACING old line(s) by new
63336 GOSUB 63395
IF NOT ZMacroActive THEN _
ZMacroEcho = ZTrue : _
EXIT SUB
IF CompareVar > 0 THEN _
IF NOT CaseExecute THEN _
IF LEFT$(ZOutTxt$,3) = ZSmartTextCode$+"==" THEN _
WasX$ = RIGHT$(ZOutTxt$,LEN(ZOutTxt$)-3) : _
GOTO 63370 _
ELSE IF LEFT$(ZOutTxt$,7) = ZSmartTextCode$ + "END ON" THEN _
CompareVar = 0 : _
GOTO 63336 _
ELSE GOTO 63336
IF LEN(ZOutTxt$) < 3 THEN _
GOTO 63398
WasX$ = RIGHT$(ZOutTxt$,LEN(ZOutTxt$)-3)
IF LEFT$(ZOutTxt$,1) <> ZSmartTextCode$ THEN _
GOTO 63398
CALL CheckInt (MID$(ZOutTxt$,2))
IF ZErrCode > 0 THEN _
GOTO 63398
IF ZTestedIntValue > 0 AND ZTestedIntValue <= ZMaxWorkVar THEN _
ZOutTxt$ = WasX$ : _ ' Macro command ask
ZForceKeyboard = ZTrue : _
ZMacroSave = ZTestedIntValue : _
ZLinesPrinted = 1 : _
ZNonStop = (ZPageLength < 1) : _
EXIT SUB
* ------[ first line different ]------
ON (1+INSTR("*0*1*B*FWT>>STON==M!M@EYEN/*TK<<:=LVNVCVLOAT",MID$(ZOutTxt$,2,2)))\2 GOTO _ ' RM03219401
63345, _ ' Display with no Carriage Return
63347, _ ' Display with Carriage Return
63340, _ ' Display Block
63348, _ ' Display File
63343, _ ' Wait # of seconds
63350, _ ' Append to file
63355, _ ' Stack
63360, _ ' Case
63370, _ ' Case Comparison
63375, _ ' Macro execute
63380, _ ' Macro Abort
63383, _ ' Macro Echo on
63385, _ ' Macro Echo off
63336, _ ' Macro Comment
63387, _ ' Turbo Key allowed
63390, _ ' Form read
63362, _ ' Assign value to work var
63363, _ ' LV list verify
63364, _ ' NV number verify
63364, _ ' CV character verify
63367, _ ' LO assign file location
63368 ' AT abort a file transfer ' RM03219401
GOTO 63398
* REPLACING old line(s) by new
* ------[ first line different ]------
63355 CALL GlobalSrchRepl (WasX$,"|",ZCarriageReturn$,ZTrue) ' KG011201
ZCommPortStack$ = ZCommPortStack$ + WasX$ + ZCarriageReturn$ ' STack
GOTO 63336
* INSERTING new line(s)
63368 IF ZFileSysParm > 0 THEN _ ' RM03219401
ZAbort = ZTrue ' RM03219401
GOTO 63336 ' RM03219401
* DELETING old line(s)
63400
63410
63420
63422
63440
63450
63460
* REPLACING old line(s) by new
63462 ' Unconditionally executes a macro
* ------[ first line different ]------
SUB FDMACEXE STATIC ' RM061101
ZOutTxt$ = ""
ZMacroEcho = ZFalse
ZSubParm = 1
CALL TGet
END SUB
* DELETING old line(s)
63465
63470
63480
63490
63495
* REPLACING old line(s) by new
63500 ' $SUBTITLE: 'CmdStackPushPop - Save/restore command stack'
' $PAGE
'
' NAME -- CmdStackPushPop
'
' INPUTS -- Index = 1 Save command stack
' = 2 Restore command stack
' ZAnsIndex
' ZLastIndex
' ZUserIn$()
'
' OUTPUTS -- ZUserIn$() Stacked commands
' ZAnsIndex
' ZLastIndex
'
' PURPOSE -- Save restore a command stack list when need to input
' another list in middle of previous list processing
'
SUB CmdStackPushPop (Index) STATIC
* ------[ first line different ]------
ON INDEX GOTO 63501,63505
* INSERTING new line(s)
63501 Temp = UBOUND(ZOutTxt$) ' Save ZOutTxt$() original dimension ' RM03119401
Temp1 = UBOUND(ZUserIn$) ' Get dimension of ZUserIn$() ' RM03119401
IF Temp < Temp1 THEN _ ' RM03289401
REDIM ZOutTxt$(Temp1) ' Match dimesions of arrays ' RM03119401
IF Index = 1 THEN _
OrigLastIndex = ZLastIndex : _ ' save
OrigIndex = ZAnsIndex : _
FOR WasI = 1 TO OrigLastIndex : _
ZOutTxt$(WasI) = ZUserIn$(WasI) : _
NEXT : _
EXIT SUB
63505 ZLastIndex = OrigLastIndex ' restore
ZAnsIndex = OrigIndex
FOR WasI = 1 TO OrigLastIndex
ZUserIn$(WasI) = ZOutTxt$(WasI)
NEXT
IF Temp < Temp1 THEN _ ' Check to see if restore in order ' RM03289401
REDIM ZOutTxt$(Temp) ' Redimension ZOutTxt$ to orginal size ' RM03119401
END SUB
* DELETING old line(s)
63510
63520
63522
63530
63540
63542
63550
63560
* REPLACING old line(s) by new
63572 ZOutTxt$ = "Extension reduced to"+ STR$(TimeToAdd) + _
" due to " + ZOutTxt$ + " Event" : _
CALL RingCaller
END SUB
* ------[ first line different ]------
' ' XFER174
' $SUBTITLE: 'TStats --- Display Transfer Stats from XFER-? file' ' XFER174
' $PAGE ' XFER174
' ' XFER174
* DELETING old line(s)
63580
63581
63582
63583
63585
63590
63592
63594
63595
63600
63605
63610
63615
63620
63625
63630
63632
63635
63640
63645
63650
63652
63654
63656
63658
63659
63675
63700
63705
63710
63715
63720
* INSERTING new line(s)
65004 SUB TStats ' XFER174/RM11159302
CALL OpenWork (2,"XFER-" + ZNodeID$ + ".DEF") ' XFER174
CALL SkipLine (2) ' XFER174
CALL QuickTPut1 (ZFG6$ + " Stats on this Transfer are as Follows........"+ZCrLF$) ' XFER174
CALL QuickTPut1 (ZFG7$ + "FileName Bytes Dtr Rate CPS Errors " + ZCrLf$ + _ ' XFER174
ZFG5$ + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + ZEmphasizeOff$) ' XFER174
WHILE NOT EOF(2) ' XFER174
LINE INPUT #2,Stat$ ' XFER174
WasS = INSTR(Stat$,"rs ") ' XFER174
IF WasS > 0 THEN _ ' XFER174
WasX$ = MID$(Stat$,2,WasS) _ ' XFER174/RM031201
ELSE _ ' XFER174/RM031201
GOTO 65006 ' XFER174/RM031201
Match = INSTR(Stat$, ".") ' XFER174
IF Match > 0 THEN _ ' XFER174
WasZyX$ = MID$(Stat$, Match - 8, 12) ' XFER174
Match = 0 ' XFER174
Start = 1 ' XFER174
DO ' XFER174
Match = INSTR(Start, WasZyX$, "\") ' XFER174
IF Match = 0 THEN _ ' XFER174
Match = INSTR(Start, WasZyX$, "/") ' XFER174
IF Match = 0 THEN _ ' XFER174
Match = INSTR(Start, WasZyX$, " ") ' XFER174
WasZyX$ = RIGHT$(WasZyX$, LEN(WasZyX$) - Match) ' XFER174
LOOP WHILE Match ' XFER174
WasXy = LEN(WasZyX$) ' XFER174
CALL QuickTPut1 (ZFG1$ + WasZyX$ + SPACE$(15-WasXy) + _ ' XFER174
WasX$ + ZEmphasizeOff$) ' XFER174
65006 WEND ' XFER174/RM031201
CALL SkipLine (1) ' XFER174
CLOSE 2 ' XFER174
END SUB ' XFER174
65009 ' $SUBTITLE: 'FileLister - subroutine to handle list of upload files' ' BTCH174
' $PAGE ' BTCH174
' ' BTCH174
' NAME -- FileLister ' BTCH174
' ' BTCH174
' PARAMETER MEANING ' BTCH174
' ' BTCH174
' INPUTS -- ZFileName$ File name and path ' BTCH174
' ZFileNameHold$ File name ' BTCH174
' ZDesc$ file description ' BTCH174
' ZUCat$ file category ' BTCH174
' ZWhoTo$ who file is to ' BTCH174/RM111502
' WasFF 1 = store file info ' BTCH174/RM111502
' 2 = read file info ' BTCH174/RM111502
' ' BTCH174
' OUTPUTS -- ' BTCH174
' ' BTCH174
' PURPOSE -- To list files, description and category for uploading ' BTCH174
' ' BTCH174
' WRITTEN BY: R. Molinelli ' BTCH174
' ' BTCH174
65010 SUB FileLister (WasFF) ' BTCH174/RM111502/RM11159302
ON WasFF GOTO 65012,65014 ' BTCH174
65012 CALL OpenWorkA (ZNodeWorkDrvPath$ + "NODE" + ZNodeID$ + "FUP.LST") ' BTCH174
CALL PrintWorkA (ZFileName$) ' BTCH174
CALL PrintWorkA (ZFileNameHold$) ' BTCH174
CALL PrintWorkA (ZDesc$) ' BTCH174
CALL PrintWorkA (ZUCat$) ' BTCH174
CALL PrintWorkA (ZWhoTo$) ' BTCH174/RM103101
CLOSE 2 ' BTCH174
CALL OpenWorkA (ZUploadWorkFile$) ' BTCH174
CALL PrintWorkA (ZFileName$) ' BTCH174
CLOSE 2 ' BTCH174
IF ZAnsIndex = ZLastIndex AND ZUpBatchTransfer THEN _ ' BTCH174
ZUpBatchTransfer = ZFalse : _ ' BTCH174
ZWasBatchTransfer = ZTrue ' BTCH174
EXIT SUB ' BTCH174
65014 CALL KillWork (ZUploadWorkFile$) ' BTCH174
ZErrCode = 0 ' BTCH174
Temp$ = ZNodeWorkDrvPath$ + "NODE" + ZNodeID$ + "FUP.LST" ' BTCH174
CALL OpenWork (8,Temp$) ' BTCH174
IF ZErrCode = 0 THEN ' BTCH174/RM040601
WHILE NOT EOF(8) ' BTCH174
LINE INPUT #8,ZFileName$ ' BTCH174
LINE INPUT #8,ZFileNameHold$ ' BTCH174
LINE INPUT #8,ZDesc$ ' BTCH174
LINE INPUT #8,ZUCat$ ' BTCH174
LINE INPUT #8,ZWhoTo$ ' BTCH174/RM103101
Found = ZFalse ' BTCH174/RM032501
CALL FindFile (ZFileName$,Found) ' BTCH174/RM032501
IF Found THEN _ ' BTCH174/RM032501
CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(),ZLinesInMsg,2) _ ' BTCH174
ELSE _ ' BTCH174
IF ZWasBatchTransfer THEN _ ' BTCH174
CALL UpdtCalr (ZFileNameHold$ + " Aborted during Batch Upload",2) _ ' BTCH174
ELSE _ ' BTCH174
ZGetExtDesc = ZFalse : _ ' BTCH174/RM033001
CALL UpdtCalr (ZFileNameHold$ + " Aborted during Upload",2) ' BTCH174
WEND ' BTCH174
CLOSE 8 ' BTCH174
IF ZWasBatchTransfer THEN _ ' BTCH174
CALL UpdtCalr ("Batch Upload Completed at " + ZTime$,2) ' BTCH174
CALL KillWork (Temp$) ' BTCH174
ENDIF ' RM040601
ZErrCode = 0 ' BTCH174
END SUB ' BTCH174
65099 ' $SUBTITLE: 'HSFile - subroutine to check XFER-%.DEF file for extra files'
' $PAGE ' BTCH174
' ' BTCH174
' NAME -- HSFile ' BTCH174
' ' BTCH174
' PARAMETER MEANING ' BTCH174
' ' BTCH174
' INPUTS __ ' BTCH174
' ' BTCH174
' OUTPUTS -- ' BTCH174
' ' BTCH174
' PURPOSE -- To check XFER-%.DEF file for extra uploads that the ' BTCH174
' user did not tell the system he was sending. ' BTCH174
' ' BTCH174
' WRITTEN BY: R. Molinelli 8-15-92 ' BTCH174
' ' BTCH174
65100 SUB HSFile ' BTCH174/RM11159302
CALL OpenWork (10,"XFER-" + ZNodeID$ + ".DEF") ' BTCH174
IF ZErrCode <> 0 THEN _ ' BTCH174
ZErrCode = 0 : _ ' BTCH174
EXIT SUB ' BTCH174
ZFoundExtra = ZFalse ' RM082901
ZSuspendAutoLogoff = ZTrue ' BTCH174/RM101501
BatchOff = ZAutoLogoffReq ' BTCH174/RM101501
65101 WHILE NOT EOF(10) ' BTCH174
LINE INPUT #10,Line$ ' BTCH174
Match = INSTR(Line$, ".") ' BTCH174
IF Match > 0 THEN _ ' BTCH174
ZFileNameHold$ = MID$(Line$, Match - 8, 12) ' BTCH174
Match = 0 ' BTCH174
Start = 1 ' BTCH174
DO ' BTCH174
Match = INSTR(Start, ZFileNameHold$, "\") ' BTCH174
IF Match = 0 THEN _ ' BTCH174
Match = INSTR(Start, ZFileNameHold$, "/") ' BTCH174
IF Match = 0 THEN _ ' BTCH174
Match = INSTR(Start, ZFileNameHold$, " ") ' BTCH174
ZFileNameHold$ = RIGHT$(ZFileNameHold$, LEN(ZFileNameHold$) - Match) ' BTCH174
LOOP WHILE Match ' BTCH174
CALL AllCaps (ZFileNameHold$) ' RM083001
CALL OpenWork (11,ZUploadWorkFile$) ' BTCH174
IF ZErrCode = 0 THEN ' BTCH174/RM040601
WHILE NOT EOF(11) ' BTCH174
LINE INPUT #11,Line$ ' BTCH174
Match = INSTR(Line$,ZFileNameHold$) ' BTCH174
IF Match > 0 THEN _ ' BTCH174
ZFileNameHold$ = "" : _ ' BTCH174
CLOSE 11 : _ ' BTCH174
GOTO 65107 ' BTCH174/RM082902
WEND ' BTCH174
CLOSE 11 ' BTCH174
ENDIF ' BTCH174/4M040601
ZErrCode = 0 ' BTCH174/RM040601
CALL OpenWork (11,ZDownloadWorkFile$) ' BTCH174
IF ZErrCode <> 0 THEN _ ' RM082902
ZErrCode = 0 : _ ' RM082902
GOTO 65102 ' RM082902
WHILE NOT EOF(11) ' BTCH174
LINE INPUT #11,Line$ ' BTCH174
Match = INSTR(Line$,ZFileNameHold$) ' BTCH174
IF Match > 0 THEN _ ' BTCH174
ZFileNameHold$ = "" : _ ' BTCH174
CLOSE 11 : _ ' BTCH174
GOTO 65107 ' BTCH174/RM082902
WEND ' BTCH174
CLOSE 11 ' BTCH174
65102 ZFileName$ = ZUpldSubDir$ + "\" + ZFileNameHold$ ' BTCH174/RM08249301
CALL FindFile (ZFileName$,Found) ' BTCH174/RM08249301
IF NOT Found THEN _ ' BTCH174/RM08249301
GOTO 65107 ' BTCH174/RM08249301
65103 GOSUB 65109 ' BTCH174/RM082902
BatchOff = ZFalse ' BTCH174/RM101501
CALL SkipLine (1) ' BTCH174
CALL HSAddFileSearch (Found) ' BTCH174/RM111001
IF Found THEN _ ' BTCH174/RM111001
CALL QuickTPut1 (ZEmphasizeOn$ + "Additional File " + _
ZFileNameHold$ + " already exists here!" + ZEmphasizeOff$) : _ ' BTCH174/RM111001
CALL QuickTPut1 (ZEmphasizeOn$ + "Deleting file and removing credits!" + _
ZEmphasizeOff$) : _ ' BTCH174/RM111001
CALL SkipLine (1) : _ ' BTCH174/RM111001
GOTO 65107 ' BTCH174/RM111001
CALL Carrier ' BTCH174
IF ZSubParm = -1 THEN _ ' BTCH174
ZDesc$ = " >>> Description Unavailable <<< " : _ ' BTCH174
ZUCat$ = "***" : _ ' BTCH174/RM111002
ZWhoTo$ = "SYSOP" : _ ' BTCH174/RM111102
CALL OpenWorkA (ZNodeWorkDrvPath$ + "NODE" + ZNodeID$ + "FUP.LST") : _ ' BTCH174
CALL PrintWorkA (ZFileName$) : _ ' BTCH174
CALL PrintWorkA (ZFileNameHold$) : _ ' BTCH174
CALL PrintWorkA (ZDesc$) : _ ' BTCH174
CALL PrintWorkA (ZUCat$) : _ ' BTCH174
CALL PrintWorkA (ZWhoTo$) : _ ' BTCH174/RM111102
CLOSE 2 : _ ' BTCH174
GOTO 65107 ' BTCH174/RM082902
65105 IF ZWasBatchTransfer THEN _ ' BTCH174/RM082902
ZWasBatchTransfer = ZFalse : _ ' BTCH174
ZUpBatchTransfer = ZTrue: _ ' BTCH174
ZAnsIndex = 1 : _ ' BTCH174
ZLastIndex = 1 ' BTCH174
IF ZGetDescAfterTransfer THEN _ ' RM02269401
CALL FileLister(1) _ ' RM02269401
ELSE _ ' RM02269401
CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(),ZLinesInMsg,1) ' BTCH174
IF ZAbort THEN _ ' BTCH174
ZAbort = ZFalse : _ ' BTCH174
GOTO 65103 ' BTCH174/RM092902
ZFileName$ = "" ' BTCH174
ZFileNameHold$ = "" ' BTCH174
65107 ZFoundExtra = ZFalse ' RM082901
WEND ' BTCH174 old #65103
CLOSE 10 ' BTCH174
IF ZUpBatchTransfer THEN _ ' RM082901
ZUpBatchTransfer = ZFalse : _ ' RM082901
ZWasBatchTransfer = ZTrue ' RM082901
ZSuspendAutoLogoff = ZFalse ' BTCH174/RM101501
ZAutoLogoffReq = BatchOff ' BTCH174/RM101501
EXIT SUB ' BTCH174
65109 CALL SkipLine (1) ' RM082901
CALL QuickTPut1 (ZEmphasizeOn$ + "Additional File " + ZFileNameHold$ + _
" Detected!" + ZEmphasizeOff$) ' BTCH174/RM082901
ZFoundExtra = ZTrue ' RM082901
ZGetExtDesc = ZFalse ' RM082901
RETURN ' BTCH174
END SUB ' BTCH174
' ' BTCH174/RM111001
65110 ' $SUBTITLE: 'HSAddFileSearch - search for duplicate files'
' $PAGE ' BTCH174/RM111001
' ' BTCH174/RM111001
' NAME -- HSAddFileSearch ' BTCH174/RM111001
' ' BTCH174/RM111001
' PARAMETER MEANING ' BTCH174/RM111001
' ' BTCH174/RM111001
' INPUTS __ ZFileNameHold$ Found Uploaded File ' BTCH174/RM111001
' ZFileName$ File with path ' BTCH174/RM111001
' ' BTCH174/RM111001
' OUTPUTS -- Found True if file is duplicate ' BTCH174/RM111001
' ' BTCH174/RM111001
' PURPOSE -- To check additional files uploaded during a batch ' BTCH174/RM111001
' upload to see if they already exist on the system. ' BTCH174/RM111001
' If found to be duplicate(s), will delete the file(s). ' BTCH174/RM111001
' ' BTCH174/RM111001
' WRITTEN BY: R. Molinelli 11-10-92 ' BTCH174/RM111001
' ' BTCH174/RM111001
SUB HSAddFileSearch (Found) ' BTCH174/RM111001/RM11159302
Found = ZFalse ' BTCH174/RM111001
FileSearch$ = ZFileName$ ' BTCH174/RM111001
FileSearchHold$ = ZFileNameHold$ ' BTCH174/RM111001
AddTemp$ = ZUpldSubDir$ + "\NODE" + ZNodeID$ + "TMP.FIL" ' BTCH174/RM111001
NAME ZFileName$ AS AddTemp$ ' BTCH174/RM111001
CALL RotorsDir (FileSearchHold$,ZSubDir$(),ZSubDirCount,ZFalse,"") ' BTCH174/RM111001
IF ZOK THEN _ ' BTCH174/RM111001
GOTO 65120 ' BTCH174/RM111001/RM111201
IF INSTR(FileSearchHold$,".") = 0 THEN _ ' BTCH174/RM111001
NAME AddTemp$ AS ZFileName$ : _ ' BTCH174/RM111001
GOTO 65125 ' BTCH174/RM111001/RM111201
CALL BreakFileName (FileSearch$,DR$,WasX$,Extension$,ZFalse) ' BTCH174/RM111001
WasI = 1 ' BTCH174/RM111001
65115 WasJ = INSTR(MID$(ZCompressedExt$+". ",WasI),".") ' BTCH174/RM111001
IF WasJ = 0 THEN _ ' BTCH174/RM111001
NAME AddTemp$ AS ZFileName$ : _ ' BTCH174/RM111001
GOTO 65125 ' BTCH174/RM111001/RM111201
Check$ = MID$(ZCompressedExt$,WasI,WasJ-1) ' BTCH174/RM111001
WasI = WasI + WasJ ' BTCH174/RM111001
IF Extension$ <> Check$ THEN _ ' BTCH174/RM111001
CALL RotorsDir (WasX$ + "." + Check$,ZSubDir$(),ZSubDirCount,ZFalse,"") : _ ' BTCH174/RM111001
IF ZOK THEN _ ' BTCH174/RM111001
GOTO 65120 ' BTCH174/RM111001/RM111201
GOTO 65115 ' BTCH174/RM111001
65120 CALL KillWork (AddTemp$) ' BTCH174/RM111001
Found = ZTrue ' BTCH174/RM111101
CALL UpdtCalr ("Duplicate additional file " + ZFileNameHold$ + " deleted!",2) ' BTCH174/RM111101
65125 EXIT SUB ' BTCH174/RM111101
END SUB ' BTCH174/RM111001
' ' NEXT174/RM112001
65140 ' $SUBTITLE: 'NoExt - refuse file if type not permitted'
' $PAGE ' NEXT174/RM112001
' ' NEXT174/RM112001
' NAME -- NoExt ' NEXT174/RM112001
' ' NEXT174/RM112001
' PARAMETER MEANING ' NEXT174/RM112001
' ' NEXT174/RM112001
' INPUTS __ ZFileName$ File to be uploaded ' NEXT174/RM112001
' ' NEXT174/RM112001
' OUTPUTS -- Found True if file type not permitted ' NEXT174/RM112001
'
' ' NEXT174/RM112001
' PURPOSE -- To check file extension against a list of extensions ' NEXT174/RM112001
' which the SysOp has chosen to not permit. ' NEXT174/RM112001
' ' NEXT174/RM112001
' WRITTEN BY: R. Molinelli 11-20-92 ' NEXT174/RM112001
' ' NEXT174/RM112001
SUB NoExt (FileName$,Found) ' NEXT174/RM112001/RM11159302
Found = ZFalse ' NEXT174/RM112001
CALL FindFile ("NOEXT.DEF",OK) ' NEXT174/RM112001
IF OK THEN ' NEXT174/RM112001
Temp$ = "NOEXT.DEF" ' NEXT174/RM112001
CALL BreakFileName (FileName$,DR$,Body$,Ext$,ZFalse) ' NEXT174/RM112001
CALL OpenWork (8,Temp$) ' NEXT174/RM112001
WHILE NOT EOF(8) ' NEXT174/RM112001
CALL ReadDir(8,1) ' NEXT174/RM112001
CALL AllCaps (ZOutTxt$) ' NEXT174/RM112301
IF Ext$ = ZOutTxt$ THEN _ ' NEXT174/RM112001
Found = ZTrue : _ ' NEXT174/RM112001
CLOSE 8 : _ ' NEXT174/RM112001
CALL UpdtCalr ("Refused file " + ZFileName$,2) : _ ' NEXT174/RM112001
CALL SkipLine (1) : _ ' NEXT174/RM112001
CALL QuickTPut1 (ZFG3$ + "Sorry, we do not permit " + ZFG7$ + _
"." + Ext$ + ZFG3$ + " files here." + ZEmphasizeOff$) : _ ' NEXT174/RM112001
CALL SkipLine (1) : _ ' NEXT174/RM112001
CALL DelayTime (2) : _ ' NEXT174/RM112001
EXIT SUB ' NEXT174/RM112001
WEND ' NEXT174/RM112001
CLOSE 8 ' NEXT174/RM112001
END IF ' NEXT174/RM112001
65150 END SUB ' NEXT174/RM112001
'
87000 ' $SUBTITLE: 'WildShow - Show the marked wildcard files to the user' ' DGS102703-DS
' $PAGE
'
' NAME -- WildShow
' MEANING
' INPUTS --
'
' OUTPUTS -- WildParm 0 = No files Marked
' 1 = File(s) Marked
'
' PURPOSE -- To show the files that matched the WildCard Download
' search and give the user an opportunity to select
' which files to add to their marked file list.
' The user can also edit the marked file list
' which only contains the files from WildCard marking
' as the "other" marked file list is kept in a temp
' variable to be combined after the user quits the
' wildshow function.
'
SUB WildShow (FileList$,WildParm) ' RM03279401
WildParm = 0
WildMenu$ = "WILD.MNU" ' DGS022001-DS/RM03199401
87100 WildLineCount = 0
CALL SkipLine(1)
CALL QuickTPut1 (ZFGA$ + " Here are the files that matched your request" + ZEmphasizeOff$) ' RM03049401
CALL QuickTPut1 (ZFGF$ + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + _
ZEmphasizeOff$) ' RM03049401
InList = ZFalse
LowRec& = 1
CountRec& = 0
TempRec& = 1
WildPrint = ZPageLength - 1
WildLineCount = WildLineCount + 5
ZNonStop = ZFalse
IF ZRightMargin > 50 THEN _
WildCol = 3
IF ZRightMargin > 30 AND ZRightMargin < 51 THEN _
WildCol = 2
IF ZRightMargin < 31 THEN _
WildCol = 1
ZJumpSupported = ZFalse
87110 WildName$ = ZNodeWorkDrvPath$ + "WILD" + ZNodeId$ + ".DEF"
FilNum = FREEFILE ' RM03049401
CALL OpenRSeq (WildName$,HighRec&,DGSWasX,13,FilNum) ' DGS011601-DS/RM03049401
FIELD FilNum, 12 AS WildFileName$, _ ' DGS011601-DS/RM03049401
1 AS WildCr$ ' DGS011601-DS/RM03049401
LowRec& = TempRec&
FOR Count& = LowRec& TO HighRec&-1
IF InList THEN _
InList = ZFalse : _
GOTO 87120
GET FilNum, Count& ' DGS011601-DS/RM03049401
IF (Count& MOD WildCol) = 0 OR Count& = HighRec&-1 THEN _
ZSubParm = 5 : _
WildLineCount = WildLineCount + 1 _
ELSE ZSubParm = 4
ZOutTxt$ = ZFGA$ + STR$(Count&) + "."
ZOutTxt$ = ZOutTxt$ + SPACE$(5-LEN(STR$(Count&))) + ZFGF$ + _
WildFileName$ + SPACE$(5) + ZEmphasizeOff$
CALL TPut
IF WildLineCount > WildPrint AND ZNonStop = ZFalse THEN
87120 CALL AskMore (",M)ark",ZTrue,ZFalse,WasX,ZFalse)
IF ZNo OR WasX = 32000 THEN _
EXIT FOR _
ELSE WildLineCount = 0
WasX$ = LEFT$(ZUserIn$(1),1)
CALL AllCaps (WasX$)
IF WasX$ = "M" THEN _
InList = ZTrue : _
GOSUB 87150 : _
GOTO 87110
END IF
NEXT
CLOSE FilNum ' DGS011601-DS/RM03049401
InList = ZFalse
GOTO 87200
87150 CALL SkipLine(1)
CALL QuickTPut1 (ZFGC$ + "Enter" + ZFGF$ + " File NUMBER(s)" + _
ZFGC$+ " to Mark," + ZEmphasizeOff$) ' RM03049401
ZOutTxt$ = ZFGF$ + "Ex: " + ZFGA$ + "1 2 5-9 14 " + _ ' RM03049401
ZFGF$ + "etc." + ZFGC$ + " (" + _
ZFGA$ + ZFGF$ + "[ENTER]" + _
ZFG0$ + ZFGC$ + " Quits)" + ZEmphasizeOff$
ZStackC = ZTrue ' RM03139401
ZTurbokey = -ZTurboKeyUser ' RM03139401
CALL PopCmdStack
UseMultiCheck = ZFalse
FOR Temp = ZAnsIndex to ZLastIndex
Test = VAL(ZUserIn$(Temp))
IF Test = 0 THEN
CALL SkipLine(1)
CALL QuickTPut1 (ZFGA$ + "*** Please use " + ZFGF$ + _
"FILE NUMBERS" + ZFGA$ + " when marking WildCard files" + _
ZEmphasizeOff$ + ZBellRinger$) ' RM03049401
CALL DelayTime(2)
ZLastIndex = 1
GOTO 87150
END IF
IF INSTR(ZUserIn$(Temp),"-") > 1 THEN _ ' RM03199401
UseMultiCheck = ZTrue
NEXT
IF ZSubParm < 0 THEN _ ' RM03059401
EXIT SUB ' RM03059401
TempRec& = Count&
IF ZWasQ = 0 THEN _
IF InList THEN _
RETURN _
ELSE GOTO 87200
TempMarked$ = FileList$ ' RM03279401
IF UseMultiCheck THEN _
CALL MultiFile ' DGS110301-DS
CALL AskItems ("W","W",ZFalse,"wild",FileList$,ZPersonalDnld) ' RM03279401
IF TempMarked$ <> FileList$ THEN _ ' RM03279401
WildLineCount = 0 : _
WildParm = 1
IF InList THEN _
RETURN
87200 CALL SkipLine(1)
IF ZExpertUser THEN _ ' RM03059401
GOTO 87220 ' RM03059401
87210 CALL Graphic2 (WildMenu$) ' DGS022001-DS/RM03059401/RM03199402
IF ZOK THEN _ ' RM03059401
CALL BufFile2 (WildMenu$,X) ' DGS022001-DS/RM03199402
87220 ZOutTxt$ = "WildCommand: " + LEFT$("M)ark",-4 * (NOT ZExpertUser) + 1) + _
LEFT$(",E)dit Files",-10 * (NOT ZExpertUser) + 2) + _
LEFT$(",R)elist Files",-12 * (NOT ZExpertUser) + 2) + _
LEFT$(",[Q]uit",-3 * (NOT ZExpertUser) + 4) + ",?" + _
LEFT$(",H)elp",-4 * (NOT ZExpertUser) + 2) ' RM03059401
ZStackC = ZTrue ' RM03059401
ZTurboKey = -ZTurboKeyUser
CALL PopCmdStack ' DGS010501-DS
IF ZSubParm < 0 THEN _ ' RM03059401
EXIT SUB ' RM03059401
WildLineCount = 7
CALL AllCaps(ZUserIn$(ZAnsIndex)) ' RM03059401
IF ZWasQ = 0 THEN _ ' RM03059401
GOTO 87400
ON INSTR("QMREH?",ZUserIn$(ZAnsIndex)) GOTO 87400,87150,87100,87300,87210,87210 ' RM03059401
GOTO 87220 ' DGS010501-DS
87300 CALL WildMark (FileList$) ' RM03279401
GOTO 87200
87400 EXIT SUB
END SUB
'
90000 ' $SUBTITLE: 'WildMark - edit marked files after wildcard marking' ' DGS102703-DS
' $PAGE
'
' NAME -- WildMark
' MEANING
'
' INPUTS -- ZMarkedFiles$ List of files that were marked
' from the wildcard file display
'
' OUTPUTS -- ZMarkedFiles$ Modified list of marked files
' which only contain the files
' the user answered yes to keep
' in the marked files list
'
' PURPOSE -- To read the ZMarkedFiles$ variable and give the user
' an opportunity to edit the files in it.
'
'
SUB WildMark (FileList$) ' RM03279401
IF FileList$ = "" THEN _ ' RM03279401
CALL SkipLine(1) : _
CALL QuickTPut (ZFGC$ + "You have not marked any files " + _
"to be able to edit" + ZEmphasizeOff$,2) : _
CALL AskMore ("",ZTrue,ZFalse,WasX,ZTrue) : _ ' DGS022004-DS/WildEdit
EXIT SUB
ZWasZ$ = "M"
ZAnsIndex = 1
LastDnld = 1
CALL UnMarkItems (FileList$,ZAnsIndex,LastDnld,FoundMarked,ZTrue) ' RM03279401
IF NOT FoundMarked THEN _
EXIT SUB
90100 FOR Temp = ZAnsIndex TO LastDnld
TempName$ = ZUserIn$(Temp)
ZOutTxt$ = ZFGC$ + "Keep " + ZFGF$ + TempName$ + _
ZFGC$ + " in marked file list?" + ZEmphasizeOff$ + _
" (Y,[N])"
ZTurboKey = - ZTurboKeyUser
CALL PopCmdStack
IF ZSubParm < 0 THEN _
EXIT SUB
IF ZYes THEN
FileList$ = FileList$ + TempName$ + ZCarriageReturn$ ' RM03279401
END IF
NEXT
END SUB
'
91000 ' $SUBTITLE: 'MultiFile - Check user entry for a range of numbers' ' DGS110301-DS
' $PAGE
'
' NAME -- WildMark
' MEANING
'
' INPUTS -- ZUserIn$() User entered data in this array
' ZAnsIndex Starting number of array values
' ZLastIndex Ending number of array values
'
' OUTPUTS -- ZUserIn$() Modified array of data
' ZLastIndex Modified to reflect true
' number of array values
'
'
' PURPOSE -- To process user input (when marking files) in
' wildcard downloading to see if one of the entries
' is for a range of files (ex. 2-12 would be to mark
' files 2 through 12 inclusive).
'
'
SUB MultiFile ' DGS110301-DS
HoldInfo$ = ""
FOR Count = ZAnsIndex TO ZLastIndex
HyphLoc = INSTR(ZUserIn$(Count),"-")
IF HyphLoc > 1 THEN ' RM03199401
StartNum = VAL(MID$(ZUserIn$(Count),1,HyphLoc-1))
EndNum = VAL(MID$(ZUserIn$(Count),HyphLoc+1))
IF EndNum > StartNum THEN
FOR Count2 = StartNum TO EndNum
HoldInfo$ = HoldInfo$ + STR$(Count2) + ZCarriageReturn$
NEXT
END IF
ELSE
HoldInfo$ = HoldInfo$ + ZUserIn$(Count) + ZCarriageReturn$
END IF
NEXT
StartFile = 1
EndFile = LEN (HoldInfo$)
Count = 1
ZUserIn$ = ""
WHILE StartFile < EndFile
Temp = INSTR(StartFile,HoldInfo$,ZCarriageReturn$)
Temp$ = MID$(HoldInfo$,StartFile,Temp-StartFile)
ZUserIn$(Count) = Temp$
Count = Count + 1
StartFile = Temp + 1
WEND
ZAnsIndex = 1 ' DGS010501-DS
ZLastIndex = Count - 1
END SUB