home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-385-Vol-1of3.iso / w / wrb100c2.zip / WFILEXFR.BAT < prev    next >
DOS Batch File  |  1993-01-18  |  20KB  |  491 lines

  1. @ECHO OFF
  2. REM
  3. REM          ** REMOVE COMMENTS FOR FASTER OPERATION **
  4. REM
  5. REM
  6. REM          This is the batch file that controls all file transfers when
  7. REM          a caller requests a download from  (or an upload to) WR-BBS.
  8. REM
  9. REM          You can use this file without modification,    or edit it to 
  10. REM          suit the needs of your WR-BBS installation. This is the same
  11. REM          copy of WFILEXFR.BAT that is presently being used by the WR-
  12. REM          BBS Headquarters BBS as of January 18, 1993.
  13. REM
  14. REM
  15. REM          If you wish to use this file without changes,  the following
  16. REM          requirements must be met:
  17. REM
  18. REM          1.  You must have a copy of  DSZ.COM, in the home directory.
  19. REM              See the WR-BBS documentation for information on what the
  20. REM              home directory is, as it relates to WR-BBS.
  21. REM
  22. REM          2.  The copy of DSZ.COM you have should be a registered copy
  23. REM              for full functionality.  Some of DSZ's extended features 
  24. REM              are only available in the registered version.   The cost
  25. REM              to register DSZ is nominal,  and I personally think that
  26. REM              it is an excellent value.  See the documentation for the
  27. REM              number of Omen Technology's BBS,  where you can obtain a
  28. REM              copy of DSZ and register your copy. The author of WR-BBS
  29. REM              has no connection with Omen Technology.
  30. REM
  31. REM          3.  This batch file, WFILEXFR.BAT must also be in the WR-BBS
  32. REM              home directory.
  33. REM
  34. REM          If all of the three above requirements are met,  you can use
  35. REM          WFILEXFR.BAT as a "plug 'n play" ready-to-use file.  If your
  36. REM          copy of DSZ is not registered, you will at least have use of 
  37. REM          the Xmodem protocol until you get your registration from the
  38. REM          author of DSZ.
  39. REM
  40. REM
  41. REM          You are by no means limited to using DSZ for your protocols.
  42. REM          Any file transfer protocol can be used,  but this batch file
  43. REM          will control its operation.
  44. REM
  45. REM          When WR-BBS invokes a file transfer, it passes the following
  46. REM          parameters to WFILEXFR.BAT:
  47. REM
  48. REM
  49. REM          %1  -  Single character describing the communications port that
  50. REM                 was in use on WR-BBS when this batch file was called. It
  51. REM                 will be one of the folllowing:  1, 2, 3, 4, or N.    The
  52. REM                 numbers represent COM ports, while "N" means the session
  53. REM                 is local and the communications port is not in use.
  54. REM
  55. REM          %2  -  A numeric string, representing the baud rate that was in
  56. REM                 effect when this batch file was called.   If the session
  57. REM                 is local, then the string "LOCAL" will be passed as this
  58. REM                 parameter.  Examples include:  300, 1200, 2400, etc.
  59. REM
  60. REM          %3  -  This parameter indicates whether the file transfer is an
  61. REM                 upload to this BBS ("RECEIVE"),  or a download from this
  62. REM                 BBS ("SEND").  These are the only values possible.
  63. REM
  64. REM          %4  -  The protocol keyword.
  65. REM
  66. REM          %5  -  The name of the file to be transferred, or the file name
  67. REM                 of a list file which contains several filenames that are
  68. REM                 to be transferred.   A list file will be created only if 
  69. REM                 the protocol is configured for batch transmission.  This
  70. REM                 means that all upload (RECEIVE) protocols and all single
  71. REM                 action download (SEND) protocols will have a single file
  72. REM                 name here. If a batch protocol is used but only one file
  73. REM                 is selected for download,   then a single file name will 
  74. REM                 appear here as well.  The next parameter (%6) designates  
  75. REM                 whether the transmission is "batch" or "single".  A list
  76. REM                 file, if needed, will be created in the home path, using
  77. REM                 the name DL.LST.
  78. REM
  79. REM          %6  -  A numeric string, representing the number of files to be
  80. REM                 transferred.  This string will always be "1" for uploads
  81. REM                 (RECEIVE), non-batch downloads, and batch downloads when
  82. REM                 a single file is requested.  If a multiple file download
  83. REM                 (batch) is requested, then this string will be a numeric
  84. REM                 value between 2 and 65355.
  85. REM
  86. REM
  87. REM          (The comments from here on relate to specific operations)
  88. REM
  89. REM          Verify that all expected parameters were passed.
  90. REM
  91. IF W%1==WW GOTO ERROR01
  92. IF W%2==WW GOTO ERROR02
  93. IF W%3==WW GOTO ERROR02
  94. IF W%4==WW GOTO ERROR02
  95. IF W%5==WW GOTO ERROR02
  96. IF W%6==WW GOTO ERROR02
  97. REM
  98. REM          Echo the parameters to the local screen.
  99. REM
  100. ECHO Parameters passed to %0:
  101. ECHO.
  102. ECHO 1  -  %1
  103. ECHO 2  -  %2
  104. ECHO 3  -  %3
  105. ECHO 4  -  %4
  106. ECHO 5  -  %5
  107. ECHO 6  -  %6
  108. ECHO 7  -  %7
  109. ECHO 8  -  %8
  110. ECHO.
  111. REM
  112. REM          Check for LOCAL session, and warn user accordingly.
  113. REM
  114. IF EXIST $FAILURE DEL $FAILURE
  115. IF %1==N GOTO LOCAL
  116. IF %2==LOCAL GOTO LOCAL
  117. REM
  118. REM          Branch processing based on the protocol keyword.
  119. REM
  120. IF %4==KERMIT GOTO KERMIT
  121. IF %4==XMODEM_CS GOTO XMODEMCRC
  122. IF %4==XMODEM1K GOTO XMODEM1K
  123. IF %4==XMODEMCRC GOTO XMODEMCRC
  124. IF %4==YMODEM GOTO YMODEM
  125. IF %4==YMODEM1K GOTO YMOD1K
  126. IF %4==YMODEMG GOTO YMODEMG
  127. IF %4==ZMODEM GOTO ZMODEM
  128. GOTO ERROR04
  129. REM -------------------------------------------------------------------------
  130. :KERMIT
  131. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  132. REM          $$$$$$$$$$$$$$$$$$$$  KERMIT PROCESSING  $$$$$$$$$$$$$$$$$$$$$$$
  133. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  134. REM
  135. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  136. REM
  137. IF %3==RECEIVE GOTO KERMRECV
  138. IF %3==SEND GOTO KERMSEND
  139. REM
  140. REM
  141. REM          If match for %3 was not found, there is something wrong.
  142. GOTO ERROR03
  143. :KERMRECV
  144. %WR-BBS%\PCKERMIT -b %2 -l COM%1 -r -a %5 -c
  145. GOTO FINISHED
  146. :KERMSEND
  147. %WR-BBS%\PCKERMIT -l COM%1 -b %2 -s %5 -c
  148. GOTO FINISHED
  149. REM -------------------------------------------------------------------------
  150. :XMODEM1K
  151. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  152. REM          $$$$$$$$$$$$$$$$$$  XMODEM-1K PROCESSING $$$$$$$$$$$$$$$$$$$$$$$
  153. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  154. REM
  155. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  156. REM
  157. IF %3==RECEIVE GOTO XM1_RECV
  158. IF %3==SEND GOTO XM1_SEND
  159. REM
  160. REM          If match for %3 was not found, there is something wrong.
  161. GOTO ERROR03
  162. :XM1_RECV
  163. REM
  164. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  165. REM          details on command line arguments.  Notice lower case letters,
  166. REM          which are required for correct  DSZ operation except where the
  167. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  168. REM          register your copy of DSZ with DSZ's author!
  169. REM
  170. dsz port %1 rx %5
  171. REM
  172. REM          DSZ, like most file transfer protocols, will set the DOS
  173. REM          ERRORLEVEL to something other than zero  if any problems
  174. REM          were encountered. If a non-zero errorlevel was detected,
  175. REM          the following line simply puts  a  breif message  on the 
  176. REM          screen for the SysOp.
  177. REM
  178. IF ERRORLEVEL 1 GOTO ERROR05
  179. GOTO FINISHED
  180. :XM1_SEND
  181. REM
  182. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  183. REM          details on command line arguments.  Notice lower case letters,
  184. REM          which are required for correct  DSZ operation except where the
  185. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  186. REM          register your copy of DSZ with DSZ's author!
  187. REM
  188. dsz port %1 sx -k %5
  189. REM
  190. REM          DSZ, like most file transfer protocols, will set the DOS
  191. REM          ERRORLEVEL to something other than zero  if any problems
  192. REM          were encountered. If a non-zero errorlevel was detected,
  193. REM          the following line simply puts  a  breif message  on the 
  194. REM          screen for the SysOp.
  195. REM
  196. IF ERRORLEVEL 1 GOTO ERROR05 
  197. GOTO FINISHED
  198. REM ------------------------------------------------------------------------
  199. :XMODEMCRC
  200. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  201. REM          $$$$$$$$$$$$$$$$$  XMODEM-CRC PROCESSING $$$$$$$$$$$$$$$$$$$$$$$
  202. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  203. REM
  204. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  205. REM
  206. IF %3==RECEIVE GOTO XMC_RECV
  207. IF %3==SEND GOTO XMC_SEND
  208. REM
  209. REM          If match for %3 was not found, there is something wrong.
  210. GOTO ERROR03
  211. :XMC_RECV
  212. REM
  213. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  214. REM          details on command line arguments.  Notice lower case letters,
  215. REM          which are required for correct  DSZ operation except where the
  216. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  217. REM          register your copy of DSZ with DSZ's author!
  218. REM
  219. dsz port %1 rc %5
  220. REM
  221. REM          DSZ, like most file transfer protocols, will set the DOS
  222. REM          ERRORLEVEL to something other than zero  if any problems
  223. REM          were encountered. If a non-zero errorlevel was detected,
  224. REM          the following line simply puts  a  breif message  on the 
  225. REM          screen for the SysOp.
  226. REM
  227. IF ERRORLEVEL 1 GOTO ERROR05
  228. GOTO FINISHED
  229. :XMC_SEND
  230. REM
  231. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  232. REM          details on command line arguments.  Notice lower case letters,
  233. REM          which are required for correct  DSZ operation except where the
  234. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  235. REM          register your copy of DSZ with DSZ's author!
  236. REM
  237. dsz port %1 sx %5
  238. REM
  239. REM          DSZ, like most file transfer protocols, will set the DOS
  240. REM          ERRORLEVEL to something other than zero  if any problems
  241. REM          were encountered. If a non-zero errorlevel was detected,
  242. REM          the following line simply puts  a  breif message  on the 
  243. REM          screen for the SysOp.
  244. REM
  245. IF ERRORLEVEL 1 GOTO ERROR05
  246. GOTO FINISHED
  247. REM ------------------------------------------------------------------------
  248. :YMODEM
  249. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  250. REM          $$$$$$$$$$$$$$$$$$$$$ YMODEM PROCESSING $$$$$$$$$$$$$$$$$$$$$$$$
  251. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  252. REM
  253. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  254. REM
  255. IF %3==RECEIVE GOTO YM_RECV
  256. IF %3==SEND GOTO YM_SEND
  257. REM
  258. REM          If match for %3 was not found, there is something wrong.
  259. GOTO ERROR03
  260. :YM_RECV
  261. REM
  262. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  263. REM          details on command line arguments.  Notice lower case letters,
  264. REM          which are required for correct  DSZ operation except where the
  265. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  266. REM          register your copy of DSZ with DSZ's author!
  267. REM
  268. dsz port %1 restrict rb %5
  269. REM
  270. REM          DSZ, like most file transfer protocols, will set the DOS
  271. REM          ERRORLEVEL to something other than zero  if any problems
  272. REM          were encountered. If a non-zero errorlevel was detected,
  273. REM          the following line simply puts  a  breif message  on the 
  274. REM          screen for the SysOp.
  275. REM
  276. IF ERRORLEVEL 1 GOTO ERROR05
  277. GOTO FINISHED
  278. :YM_SEND
  279. REM
  280. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  281. REM          details on command line arguments.  Notice lower case letters,
  282. REM          which are required for correct  DSZ operation except where the
  283. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  284. REM          register your copy of DSZ with DSZ's author!
  285. REM
  286. dsz port %1 sb %5
  287. REM
  288. REM          DSZ, like most file transfer protocols, will set the DOS
  289. REM          ERRORLEVEL to something other than zero  if any problems
  290. REM          were encountered. If a non-zero errorlevel was detected,
  291. REM          the following line simply puts  a  breif message  on the 
  292. REM          screen for the SysOp.
  293. REM
  294. IF ERRORLEVEL 1 GOTO ERROR05
  295. GOTO FINISHED
  296.  
  297.  
  298. :YMOD1K
  299. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  300. REM          $$$$$$$$$$$$$$$$$$$ YMODEM-1K PROCESSING $$$$$$$$$$$$$$$$$$$$$$$
  301. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  302. REM
  303. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  304. REM
  305. IF %3==RECEIVE GOTO YM1RECV
  306. IF %3==SEND GOTO YM1SEND
  307. REM
  308. REM          If match for %3 was not found, there is something wrong.
  309. GOTO ERROR03
  310. :YM1RECV
  311. REM
  312. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  313. REM          details on command line arguments.  Notice lower case letters,
  314. REM          which are required for correct  DSZ operation except where the
  315. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  316. REM          register your copy of DSZ with DSZ's author!
  317. REM
  318. dsz port %1 restrict rb %5
  319. REM
  320. REM          DSZ, like most file transfer protocols, will set the DOS
  321. REM          ERRORLEVEL to something other than zero  if any problems
  322. REM          were encountered. If a non-zero errorlevel was detected,
  323. REM          the following line simply puts  a  breif message  on the 
  324. REM          screen for the SysOp.
  325. REM
  326. IF ERRORLEVEL 1 GOTO ERROR05
  327. GOTO FINISHED
  328. :YM1SEND
  329. REM
  330. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  331. REM          details on command line arguments.  Notice lower case letters,
  332. REM          which are required for correct  DSZ operation except where the
  333. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  334. REM          register your copy of DSZ with DSZ's author!
  335. REM
  336. dsz port %1 sb -k %5
  337. REM
  338. REM          DSZ, like most file transfer protocols, will set the DOS
  339. REM          ERRORLEVEL to something other than zero  if any problems
  340. REM          were encountered. If a non-zero errorlevel was detected,
  341. REM          the following line simply puts  a  breif message  on the 
  342. REM          screen for the SysOp.
  343. REM
  344. IF ERRORLEVEL 1 GOTO ERROR05
  345. GOTO FINISHED
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352. :YMODEMG
  353. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  354. REM          $$$$$$$$$$$$$$$$$$$$ YMODEM-G PROCESSING $$$$$$$$$$$$$$$$$$$$$$$
  355. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  356. REM
  357. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  358. REM
  359. IF %3==RECEIVE GOTO YMGRECV
  360. IF %3==SEND GOTO YMGSEND
  361. REM
  362. REM          If match for %3 was not found, there is something wrong.
  363. GOTO ERROR03
  364. :YMGRECV
  365. REM
  366. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  367. REM          details on command line arguments.  Notice lower case letters,
  368. REM          which are required for correct  DSZ operation except where the
  369. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  370. REM          register your copy of DSZ with DSZ's author!
  371. REM
  372. dsz port %1 restrict rb -g %5
  373. REM
  374. REM          DSZ, like most file transfer protocols, will set the DOS
  375. REM          ERRORLEVEL to something other than zero  if any problems
  376. REM          were encountered. If a non-zero errorlevel was detected,
  377. REM          the following line simply puts  a  breif message  on the 
  378. REM          screen for the SysOp.
  379. REM
  380. IF ERRORLEVEL 1 GOTO ERROR05
  381. GOTO FINISHED
  382. :YMGSEND
  383. REM
  384. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  385. REM          details on command line arguments.  Notice lower case letters,
  386. REM          which are required for correct  DSZ operation except where the
  387. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  388. REM          register your copy of DSZ with DSZ's author!
  389. REM
  390. dsz port %1 sb -k %5
  391. REM
  392. REM          DSZ, like most file transfer protocols, will set the DOS
  393. REM          ERRORLEVEL to something other than zero  if any problems
  394. REM          were encountered. If a non-zero errorlevel was detected,
  395. REM          the following line simply puts  a  breif message  on the 
  396. REM          screen for the SysOp.
  397. REM
  398. IF ERRORLEVEL 1 GOTO ERROR05
  399. GOTO FINISHED
  400. REM ------------------------------------------------------------------------
  401. :ZMODEM
  402. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  403. REM          $$$$$$$$$$$$$$$$$$$$$ ZMODEM PROCESSING $$$$$$$$$$$$$$$$$$$$$$$$
  404. REM          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  405. REM
  406. REM          Parameter %3 determines if this is a SEND or RECEIVE.
  407. REM
  408. IF %3==RECEIVE GOTO ZM_RECV
  409. IF %3==SEND GOTO ZM_SEND
  410. REM
  411. REM          If match for %3 was not found, there is something wrong.
  412. GOTO ERROR03
  413. :ZM_RECV
  414. REM
  415. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  416. REM          details on command line arguments.  Notice lower case letters,
  417. REM          which are required for correct  DSZ operation except where the
  418. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  419. REM          register your copy of DSZ with DSZ's author!
  420. REM
  421. dsz port %1 restrict handshake slow rz %5
  422. REM
  423. REM          DSZ, like most file transfer protocols, will set the DOS
  424. REM          ERRORLEVEL to something other than zero  if any problems
  425. REM          were encountered. If a non-zero errorlevel was detected,
  426. REM          the following line simply puts  a  breif message  on the 
  427. REM          screen for the SysOp.
  428. REM
  429. IF ERRORLEVEL 1 GOTO ERROR05
  430. GOTO FINISHED
  431. :ZM_SEND
  432. REM
  433. REM          Invoke DSZ for the file transfer.    See DSZ documentation for
  434. REM          details on command line arguments.  Notice lower case letters,
  435. REM          which are required for correct  DSZ operation except where the
  436. REM          DSZ documentation explicitly indicates otherwise.  Remember to
  437. REM          register your copy of DSZ with DSZ's author!
  438. REM
  439. dsz port %1 sz %5
  440. REM
  441. REM          DSZ, like most file transfer protocols, will set the DOS
  442. REM          ERRORLEVEL to something other than zero  if any problems
  443. REM          were encountered. If a non-zero errorlevel was detected,
  444. REM          the following line simply puts  a  breif message  on the 
  445. REM          screen for the SysOp.
  446. REM
  447. IF ERRORLEVEL 1 GOTO ERROR05
  448. GOTO FINISHED
  449. REM ------------------------------------------------------------------------
  450. :LOCAL
  451. REM          (Local session in progress - can't use protocols)
  452. ECHO File transfer protocols cannot be used during local logon!
  453. GOTO FINISHED
  454. :ERROR01
  455. REM          (No parameters at all)
  456. ECHO ERROR:  No parameters!
  457. GOTO FINISHED
  458. :ERROR02
  459. REM          (An incorrect number of parameters was passed to this batch)
  460. ECHO ERROR:  Invalid number of parameters!
  461. ECHO.
  462. IF NOT W%1W==WW ECHO PARAMETER 1 = %1
  463. IF NOT W%2W==WW ECHO PARAMETER 2 = %1
  464. IF NOT W%3W==WW ECHO PARAMETER 3 = %1
  465. IF NOT W%4W==WW ECHO PARAMETER 4 = %1
  466. IF NOT W%5W==WW ECHO PARAMETER 5 = %1
  467. IF NOT W%6W==WW ECHO PARAMETER 6 = %1
  468. IF NOT W%7W==WW ECHO PARAMETER 7 = %1
  469. GOTO FINISHED
  470. :ERROR03
  471. REM         (Parameter # 3 is invalid)
  472. ECHO ERROR: Invalid keyword (%3)
  473. GOTO FINISHED
  474. :ERROR04
  475. REM         (Protocol keyword not found)
  476. ECHO  ERROR: Undefined protocol (%4)
  477. GOTO FINISHED
  478. :ERROR05
  479. REM         (Transfer failure detected: non-zero errorlevel )
  480. REM
  481. REM         To signal to WR-BBS that an error has occurred,  a "flag" file
  482. REM         is created by redirecting a string into a file named $FAILURE,
  483. REM         which will be created in the current directory. 
  484. REM
  485. ECHO Error detected during %3 of %5. > $FAILURE
  486. ECHO.
  487. ECHO ERROR OCCUURED DURING %4 %3 OF %5!
  488. ECHO.
  489. :FINISHED
  490. REM   (this used to be a pause)
  491.